Giter VIP home page Giter VIP logo

checkout-library's Introduction

Code | Name | Price

VOUCHER | Voucher | 5.00€ TSHIRT | T-shirt | 20.00€ MUG | Coffee mug | 7.50€

Various departments have suggested some discounts to improve sales:

The marketing department wants a 2-for-1 special on VOUCHER items.

The CFO insists that the best way to increase sales is with (tiny) discounts on bulk purchases. If you buy 3 or more TSHIRT items, the price per unit should be 19.00€.

The checkout process allows for items to be scanned in any order, and calculates the total price. The interface looks like this (in ruby):

checkout = Checkout.new(price_rules)

checkout.scan("VOUCHER")

checkout.scan("VOUCHER")

checkout.scan("TSHIRT")

price = checkout.total

Examples:

Items: VOUCHER, TSHIRT, MUG Total: 32.50€

Items: VOUCHER, TSHIRT, VOUCHER Total: 25.00€

Items: TSHIRT, TSHIRT, TSHIRT, VOUCHER, TSHIRT Total: 81.00€

Items: VOUCHER, TSHIRT, VOUCHER, VOUCHER, MUG, TSHIRT, TSHIRT Total: 74.50€


Example run,

from novicap_checkout.checkout import Checkout

checkout = Checkout('products.json')

print(checkout.scan('VOUCHER', 'TSHIRT', 'MUG'))

checkout-library's People

Contributors

funsholaniyi avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.