package com.floreantpos.model; import java.util.HashSet; import java.util.Set; import com.floreantpos.model.base.BaseDrawerPullReport; public class DrawerPullReport extends BaseDrawerPullReport { private static final long serialVersionUID = 1L; /*[CONSTRUCTOR MARKER BEGIN]*/ public DrawerPullReport () { super(); } /** * Constructor for primary key */ public DrawerPullReport (java.lang.Integer id) { super(id); } /*[CONSTRUCTOR MARKER END]*/ public void addVoidTicketEntry(DrawerPullVoidTicketEntry entry) { if(getVoidTickets() == null) { setVoidTickets(new HashSet<DrawerPullVoidTicketEntry>()); } getVoidTickets().add(entry); } public void calculate() { setTotalRevenue(getNetSales() + getSalesTax()); setGrossReceipts(getTotalRevenue() + getChargedTips()); double total = getCashReceiptAmount() + getCreditCardReceiptAmount() + getDebitCardReceiptAmount() + getGiftCertReturnAmount() - getGiftCertChangeAmount() - getCashBack(); setReceiptDifferential(getGrossReceipts() - total); setTipsDifferential(getChargedTips() - getTipsPaid()); double totalCash = getCashReceiptAmount(); double tips = getTipsPaid(); double totalPayout = getPayOutAmount(); double beginCash = getBeginCash(); double cashBack = getCashBack(); double drawerBleed = getDrawerBleedAmount(); setDrawerAccountable(beginCash + totalCash - tips - totalPayout - cashBack - drawerBleed); Set<DrawerPullVoidTicketEntry> voidTickets = getVoidTickets(); if(voidTickets != null) { double totalVoidAmount = 0; for (DrawerPullVoidTicketEntry entry : voidTickets) { totalVoidAmount += entry.getAmount(); } setTotalVoid(totalVoidAmount); } } }