APO_automat/z1-prototype/menu.js
2019-10-08 17:44:05 +02:00

35 lines
962 B
JavaScript

const VendingMachine = require('./vendingMachine');
let vendingMachine = new VendingMachine();
const readline = require('readline-sync');
function setupMachine() {
vendingMachine.fillMachine();
}
function listProducts() {
const products = vendingMachine.getProducts();
products.forEach((element) => {
if (element.quantity > 0) {
console.log(`${element.id}) ${element.name} - ${element.price}`);
}
});
}
(async () => {
setupMachine();
let credit = readline.question(`Insert coins:\n`);
listProducts();
let id = readline.question(`Choose product from the list:\n`);
let product = vendingMachine.getProductById(id);
if (product.price > credit) {
console.log('Insuficient credit');
} else {
console.log(
'Your change ',
vendingMachine.calculateChange(credit - product.price)
);
console.log('Please take your product');
}
})();