use of de.clearit.kindergarten.domain.export.entity.PayoffDataInternal in project kindergarten by clear-group-ausbildung.
the class ExportDataService method getPayoffDataInternal.
/**
* Returns a {@link PayoffDataInternal} for the Internal Payoff.
*
* @return {@link PayoffDataInternal} to create the internal payoff.
*/
public static PayoffDataInternal getPayoffDataInternal() {
PurchaseService purchaseService = PurchaseService.getInstance();
List<PurchaseBean> purchaseAllList = purchaseService.getAll();
Double totalSum = purchaseService.getItemSumByPurchases(purchaseAllList).doubleValue();
Double totalProfit = purchaseService.getKindergartenProfitByPurchases(purchaseAllList).doubleValue();
Double totalPayout = purchaseService.getVendorPayoutByPurchases(purchaseAllList).doubleValue();
Integer totalItemCount = purchaseService.getItemCountByPurchases(purchaseAllList);
ArrayList<PayoffDataInternalVendor> payoffDataInternalVendorList = new ArrayList<>();
List<VendorBean> vendorList = VendorService.getInstance().getAll();
for (VendorBean vendor : vendorList) {
List<PurchaseBean> vendorPurchaseList = new ArrayList<>();
for (VendorNumberBean vendorNumberBean : vendor.getVendorNumbers()) {
int vendorNumber = vendorNumberBean.getVendorNumber();
List<PurchaseBean> purchaseList = purchaseAllList.stream().filter(purchase -> purchase.getVendorNumber().equals(vendorNumber)).collect(Collectors.toList());
vendorPurchaseList.addAll(purchaseList);
}
payoffDataInternalVendorList.add(new PayoffDataInternalVendor(vendor, purchaseService.getVendorPayoutByPurchases(vendorPurchaseList).doubleValue()));
}
return new PayoffDataInternal(totalSum, totalProfit, totalPayout, totalItemCount, payoffDataInternalVendorList);
}
use of de.clearit.kindergarten.domain.export.entity.PayoffDataInternal in project kindergarten by clear-group-ausbildung.
the class ExportInternalPayoff method createInternalPayoff.
/**
* Creates an receipt in excel for the given vendor.
*/
public void createInternalPayoff() {
try {
wb = new XSSFWorkbook(new FileInputStream("./abrechnung_intern_template.xlsx"));
sheet = wb.getSheetAt(0);
createStyles();
PayoffDataInternal payoffDataInternal = ExportDataService.getPayoffDataInternal();
fillInPlaceholders(payoffDataInternal);
FileOutputStream fileOut = new FileOutputStream(getDateiname());
wb.write(fileOut);
fileOut.close();
wb.close();
} catch (FileNotFoundException e) {
LOGGER.debug("Error - Excel Template not found");
LOGGER.error(e.getMessage());
} catch (IOException e) {
LOGGER.debug("Error Exel Export");
LOGGER.error(e.getMessage());
}
}
Aggregations