Exemplo n.º 1
0
        public (StringBuilder, double) ChangeBill(double change, Transaction transaction)
        {
            StringBuilder billsString = new StringBuilder();

            List <Bill> bill = IBillRepository.GetAllBills();

            foreach (var bills in bill)
            {
                double calculation = Math.Floor(change / bills.Value);
                change = Math.Round(change, 2);


                if (change == 0)
                {
                    break;
                }

                if (change / bills.Value >= 1)
                {
                    TransactionXBill transactionXBill = new TransactionXBill();

                    billsString.Append(" Nota de " + bills.Value + " " + "= " + calculation);
                    change -= bills.Value * calculation;
                    transactionXBill.Bill        = bills;
                    transactionXBill.Transaction = transaction;
                    transactionXBill.Quantity    = Convert.ToInt32(calculation);

                    ITransactionXBillRepository.InsertTransactionBill(transactionXBill);
                }
            }

            return(billsString, change);
        }
Exemplo n.º 2
0
 public BillsListDTO GetAllBills()
 {
     return(new BillsListDTO()
     {
         Bills = _billRepository.GetAllBills()
     });
 }