diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/rent/WxAllBillController.java b/mallinkAdmin/src/main/java/com/iformall/controller/rent/WxAllBillController.java index 7c744e679..4c52dcaca 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/rent/WxAllBillController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/rent/WxAllBillController.java @@ -248,6 +248,7 @@ public class WxAllBillController extends BillBaseController { WxEnergyFees fees = feesMap.get(s.getEnergyFeesId()); if (null != fees) { s.setBillName(fees.getName()); + s.setEnergyFeesName(fees.getName()); } needpay = needpay.add(s.getNeedPayNumber()); paid = paid.add(s.getPaidNumber()); diff --git a/mallinkService/src/main/java/com/iformall/print/data/impl/PrintMerchantSettleDataHandler.java b/mallinkService/src/main/java/com/iformall/print/data/impl/PrintMerchantSettleDataHandler.java index 6c75a3dee..baa97deb2 100644 --- a/mallinkService/src/main/java/com/iformall/print/data/impl/PrintMerchantSettleDataHandler.java +++ b/mallinkService/src/main/java/com/iformall/print/data/impl/PrintMerchantSettleDataHandler.java @@ -22,45 +22,31 @@ public class PrintMerchantSettleDataHandler implements PrintDataParser{ Map shopNumber = (Map) params[2]; WxMerchantBillVo receive = (WxMerchantBillVo) o; //根据科目来查询对应的信息 -// if (name.equals("id")) { -// return receive.getId(); -// }else if (name.equals("createtime")) { -// return DateUtils.date2String(receive.getCreatetime()); -// }else if (name.equals("receivePay")) { -// return receive.getReceivePay(); -// }else if (name.equals("pay")) { -// return receive.getPay(); -// }else if (name.equals("setOff")) { -// return receive.getSetOff(); -// }else if (name.equals("starttime")) { -// return DateUtils.date2String(receive.getStarttime()); -// }else if (name.equals("endtime")) { -// return DateUtils.date2String(receive.getEndtime()); -// }else if (name.equals("owe")) { -// return receive.getOwe(); -// }else if (name.equals("statusName")) { -// return receive.getStatusName(); -// }else if (name.equals("merchantName")) { -// if (null != merchantMap) { -// WxMerchant m = merchantMap.get(receive.getMerchantId()); -// if (null != m) { -// return m.getName(); -// } -// } -// return ""; -// }else if (name.equals("energyFeesName")) { -// if (null != feesMap) { -// WxEnergyFees f = feesMap.get(receive.getEnergyFeesId()); -// if (null != f) { -// return f.getName(); -// } -// } -// return ""; -// }else if (name.equals("returnPay")) { -// return receive.getReturnPay(); -// }else if (name.equals("billRemark")) { -// return receive.getBillRemark(); -// } + if (name.equals("maxDate")) { + return DateUtils.date2String(receive.getMaxDate(),DateUtils.DATE_PATTERN); + }else if (name.equals("minDate")) { + return DateUtils.date2String(receive.getMinDate(),DateUtils.DATE_PATTERN); + }else if (name.equals("returnPay")) { + return receive.getReturnPay(); + }else if (name.equals("owe")) { + return receive.getOwe(); + }else if (name.equals("paid")) { + return receive.getPaid(); + }else if (name.equals("needPay")) { + return receive.getNeedPay(); + }else if (name.equals("shopNumber")) { + return receive.getShopNumber(); + }else if (name.equals("merchantName")) { + return receive.getMerchantName(); + }else if (name.equals("merchantId")) { + if (null != merchantMap) { + WxMerchant m = merchantMap.get(receive.getMerchantId()); + if (null != m) { + return m.getName(); + } + } + return ""; + } return null; } diff --git a/mallinkService/src/main/java/com/iformall/print/data/impl/PrintMerchantSettleItemDataHandler.java b/mallinkService/src/main/java/com/iformall/print/data/impl/PrintMerchantSettleItemDataHandler.java new file mode 100644 index 000000000..c16f88ed5 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/print/data/impl/PrintMerchantSettleItemDataHandler.java @@ -0,0 +1,62 @@ +package com.iformall.print.data.impl; + +import java.util.Map; + +import org.springframework.stereotype.Service; + +import com.aliyun.openservices.shade.org.apache.commons.lang3.StringUtils; +import com.iformall.domain.po.WxAllBill; +import com.iformall.domain.po.WxEnergyFees; +import com.iformall.domain.po.WxFinanceReceiveBill; +import com.iformall.domain.po.WxMerchant; +import com.iformall.domain.vo.WxBillSum; +import com.iformall.print.data.PrintDataParser; +import com.iformall.utils.DateUtils; + +@Service +public class PrintMerchantSettleItemDataHandler implements PrintDataParser{ + + + @Override + public Object getObjectValue(String name, Object o,Object... params) { + Map merchantMap = (Map) params[0]; + Map feesMap = (Map) params[1]; + Map shopNumber = (Map) params[2]; + WxBillSum receive = (WxBillSum) o; + if (name.equals("energyFeesId")) { + if (null != feesMap && null != receive.getEnergyFeesId()) { + WxEnergyFees f = feesMap.get(receive.getEnergyFeesId()); + if (null != f) { + return f.getName(); + } + } + return ""; + }else if (name.equals("energyFeesName")) { + return receive.getEnergyFeesName(); + }else if (name.equals("needPay")) { + return receive.getNeedPay(); + }else if (name.equals("paid")) { + return receive.getPaid(); + }else if (name.equals("owe")) { + return receive.getOwe(); + }else if (name.equals("minDate")) { + if (null != receive.getMinDate()) { + return DateUtils.date2String(receive.getMinDate(),DateUtils.DATE_PATTERN); + } + return ""; + }else if (name.equals("maxDate")) { + if (null != receive.getMaxDate()) { + return DateUtils.date2String(receive.getMaxDate(),DateUtils.DATE_PATTERN); + } + return ""; + }else if (name.equals("returnPay")) { + return receive.getReturnPay(); + }else if (name.equals("setOff")) { + return receive.getSetOff(); + }else if (name.equals("taxRate")) { + return receive.getTaxRate(); + } + return null; + } + +} diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxFinancePrintServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxFinancePrintServiceImpl.java index 2f91f4fa5..7e21ebe0b 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxFinancePrintServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxFinancePrintServiceImpl.java @@ -34,6 +34,7 @@ import com.iformall.print.data.PrintDataParser; import com.iformall.print.data.impl.PrintBillDataHandler; import com.iformall.print.data.impl.PrintFinanceReceiveDataHandler; import com.iformall.print.data.impl.PrintMerchantSettleDataHandler; +import com.iformall.print.data.impl.PrintMerchantSettleItemDataHandler; import com.iformall.print.data.impl.PrintReceiveBillDataHandler; import com.iformall.service.WxAllBillService; import com.iformall.service.WxEnergyService; @@ -85,6 +86,9 @@ public class WxFinancePrintServiceImpl implements WxFinancePrintService { @Autowired PrintMerchantSettleDataHandler printMerchantSettleDataHandler; + @Autowired + PrintMerchantSettleItemDataHandler printMerchantSettleItemDataHandler; + @Autowired PrintCustomedTableDataHandler printCustomedTableDataHandler; @@ -304,6 +308,11 @@ public class WxFinancePrintServiceImpl implements WxFinancePrintService { return voList; }else if (printDatatype.getCode().intValue() == EnumFinancePrintDataType.RENT_OWE.getCode()) { WxMerchantBillVo bq = (WxMerchantBillVo) entity; + if (null != shopNumber && null != bq.getMerchantId()) { + bq.setShopNumber(shopNumber.get(bq.getMerchantId())); + }else { + bq.setShopNumber(""); + } //打哪些科目 List feesId = dataIds; List voList = new ArrayList(); @@ -324,22 +333,10 @@ public class WxFinancePrintServiceImpl implements WxFinancePrintService { } } - WxBillSum heji = new WxBillSum(); - heji.setBillName("合计"); - heji.setNeedPay(receiveTotal.toPlainString()); - sumlist.add(heji); - - WxBillSum yishou = new WxBillSum(); - yishou.setBillName("已收"); - yishou.setNeedPay(payTotal.toPlainString()); - sumlist.add(yishou); - - WxBillSum owe = new WxBillSum(); - owe.setBillName("本期应收"); - owe.setNeedPay(payTotal.toPlainString()); - sumlist.add(owe); - - PrintVo vo = handleComponentData(bq.getMerchantId(),templateId,o,items, printMerchantSettleDataHandler,bq,printMerchantSettleDataHandler, sumlist,merchantMap,feesMap,shopNumber); + bq.setNeedPay(receiveTotal.toPlainString()); + bq.setPaid(payTotal.toPlainString()); + bq.setOwe(oweTotal.toPlainString()); + PrintVo vo = handleComponentData(bq.getMerchantId(),templateId,o,items, printMerchantSettleDataHandler,bq,printMerchantSettleItemDataHandler, sumlist,merchantMap,feesMap,shopNumber); if (null != vo) { voList.add(vo); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java index b9a40b09d..50533357a 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -2792,7 +2792,7 @@ public class WxRentContractServiceImpl implements WxRentContractService { String bussinessmoney = new BigDecimal(total).multiply(new BigDecimal(rate)).divide(new BigDecimal(100)).setScale(rentcontract.getDecimalSize(),BigDecimal.ROUND_HALF_UP).toPlainString(); if (null != bmbillList && bmbillList.size() > 0 ) { bmbill = bmbillList.get(0); - bmbill.setMoneyChangeDetail("原合同商业管理费金额:"+bmbill.getNeedPay()+"元,计算调整为:"+bussinessmoney+"元。"); + bmbill.setMoneyChangeDetail("原合同商业管理费金额:"+bmbill.getNeedPay()+"元,总计分摊比率为:"+rate+",计算调整为:"+bussinessmoney+"元。"); bmbill.setReceivePay(bussinessmoney); bmbill.setBillRemark("设置销售额,自动计算"); if (new BigDecimal(bmbill.getOwe()).compareTo(new BigDecimal(0)) < 0 ) { @@ -2846,7 +2846,7 @@ public class WxRentContractServiceImpl implements WxRentContractService { String bussinessmoney = new BigDecimal(total).multiply(new BigDecimal(rate)).divide(new BigDecimal(100)).setScale(rentcontract.getDecimalSize(),BigDecimal.ROUND_HALF_UP).toPlainString(); if (null != bmbillList && bmbillList.size() > 0 ) { bmbill = bmbillList.get(0); - bmbill.setMoneyChangeDetail("原合同商业管理费金额:"+bmbill.getNeedPay()+"元,计算调整为:"+bussinessmoney+"元。"); + bmbill.setMoneyChangeDetail("原合同商业管理费金额:"+bmbill.getNeedPay()+"元,总计分摊比率为:"+rate+",计算调整为:"+bussinessmoney+"元。"); bmbill.setReceivePay(bussinessmoney); bmbill.setBillRemark("设置销售额,自动计算"); if (new BigDecimal(bmbill.getOwe()).compareTo(new BigDecimal(0)) < 0 ) {