
Java project
- or -
Post a project like this1709
£125(approx. $166)
- Posted:
- Proposals: 8
- Remote
- #2940662
- Awarded
WordPress Expert✮Shopify Expert✮Graphic Designer✮AutoCAD 2D & 3D✮CV Writer & Designer✮Fullstack developer

Website Developer, Graphic Designer, Transcriber, Content writer, CAD Expert, Python Developer, Photo Editor, Web Scrapper, JAVA developer, Android developer, Wix/Shopify Expert,

Android Developer | Web Developer | Programmer | Database designer | UI Designer
4610863636573254377812441653254694457722540451053683544




Description
Experience Level: Entry
i need the following to be done in core Java
supermarket.com is an online marketplace, here is a sample of some of the products available on our site:
Product code | Name | Price ----------------------------------------------------------
001 | Travel Card Holder | £9.25
002 | Personalised cufflinks | £45.00
003 | Kids T-shirt | £19.95
Our marketing team want to offer promotions as an incentive for our customers to purchase these items. If you spend over £60, then you get 10% off your purchase If you buy 2 or more travel card holders then the price drops to £8.50. Our check-out can scan items in any order, and because our promotions will change, it needs to be flexible regarding our promotional rules.
The interface to our checkout looks like this (shown in Java):
Checkout co = new Checkout(promotionalRules);
co.scan(item);
co.scan(item);
Double price = co.total();
Implement a checkout system that fulfils these requirements.
Test data ---------
Basket: 001,002,003
Total price expected: £66.78
Basket: 001,003,001
Total price expected: £36.95
Basket: 001,002,001,003
Total price expected: £73.76
AIM: to have a base Promotion class and a specific implementations for different promotions e.g. FixedDiscount, TotalDiscount etc and then feed those in via the constructor the values taken from a file e.g. productCode, number, discountAmount etc.
Also to have test cases
no need for any databases the product info and promotions can be passed in as a list hardcoded.
to use only core java and no rest services
Please let me know your availability and cost.
supermarket.com is an online marketplace, here is a sample of some of the products available on our site:
Product code | Name | Price ----------------------------------------------------------
001 | Travel Card Holder | £9.25
002 | Personalised cufflinks | £45.00
003 | Kids T-shirt | £19.95
Our marketing team want to offer promotions as an incentive for our customers to purchase these items. If you spend over £60, then you get 10% off your purchase If you buy 2 or more travel card holders then the price drops to £8.50. Our check-out can scan items in any order, and because our promotions will change, it needs to be flexible regarding our promotional rules.
The interface to our checkout looks like this (shown in Java):
Checkout co = new Checkout(promotionalRules);
co.scan(item);
co.scan(item);
Double price = co.total();
Implement a checkout system that fulfils these requirements.
Test data ---------
Basket: 001,002,003
Total price expected: £66.78
Basket: 001,003,001
Total price expected: £36.95
Basket: 001,002,001,003
Total price expected: £73.76
AIM: to have a base Promotion class and a specific implementations for different promotions e.g. FixedDiscount, TotalDiscount etc and then feed those in via the constructor the values taken from a file e.g. productCode, number, discountAmount etc.
Also to have test cases
no need for any databases the product info and promotions can be passed in as a list hardcoded.
to use only core java and no rest services
Please let me know your availability and cost.

Paul B.
100% (7)Projects Completed
2
Freelancers worked with
2
Projects awarded
33%
Last project
4 Oct 2020
United Kingdom
New Proposal
Login to your account and send a proposal now to get this project.
Log inClarification Board Ask a Question
-
There are no clarification messages.
We collect cookies to enable the proper functioning and security of our website, and to enhance your experience. By clicking on 'Accept All Cookies', you consent to the use of these cookies. You can change your 'Cookies Settings' at any time. For more information, please read ourCookie Policy
Cookie Settings
Accept All Cookies