public static void ReturnTicketItem(TicketItem ticketItem, double amount) { TicketItemReturn.Add(RegisterManager.ActiveRegisterDrawer.Id, SessionManager.ActiveEmployee.Id, SessionManager.ActiveTicket.PrimaryKey, ticketItem.ItemId, ticketItem.QuantityPendingReturn, amount); //AdjustInventory(ticketItem, increase) }
private static double RefundTicket(Ticket selectedTicket, TicketRefundType refundType) { double sumOfPayments = TicketPayment.GetAll(selectedTicket.PrimaryKey) .Sum(payment => payment.Amount); // Don't refund money for items that were already returned sumOfPayments = TicketItemReturn.GetAllForTicket(selectedTicket.PrimaryKey) .Aggregate(sumOfPayments, (current, ticketItemReturn) => current - ticketItemReturn.Amount); RegisterManager.ActiveRegisterDrawer.RemoveFromCurrentAmount(sumOfPayments); TicketPayment.DeleteAll(selectedTicket.PrimaryKey); TicketRefund.Add(selectedTicket.PrimaryKey, SessionManager.ActiveEmployee.Id, RegisterManager.ActiveRegisterDrawer.Id, sumOfPayments, refundType); return(sumOfPayments); }
private static void ResetTransactionalTables() { SettingManager.SetStoreSetting("DailyIdOffset", 0); DayOfOperation.Reset(typeof(DayOfOperation)); EmployeeTimesheet.Reset(typeof(EmployeeTimesheet)); EmployeeTimesheetChangeLog.Reset(typeof(EmployeeTimesheetChangeLog)); Lock.Reset(typeof(Lock)); Party.Reset(typeof(Party)); PartyInvite.Reset(typeof(PartyInvite)); RegisterDeposit.Reset(typeof(RegisterDeposit)); RegisterDrawer.Reset(typeof(RegisterDrawer)); RegisterDrop.Reset(typeof(RegisterDrop)); RegisterNoSale.Reset(typeof(RegisterNoSale)); RegisterPayout.Reset(typeof(RegisterPayout)); Ticket.Reset(typeof(Ticket)); TicketCoupon.Reset(typeof(TicketCoupon)); TicketDiscount.Reset(typeof(TicketDiscount)); TicketItem.Reset(typeof(TicketItem)); TicketItemOption.Reset(typeof(TicketItemOption)); TicketItemReturn.Reset(typeof(TicketItemReturn)); TicketPayment.Reset(typeof(TicketPayment)); TicketRefund.Reset(typeof(TicketRefund)); TicketVoid.Reset(typeof(TicketVoid)); }