Browse Source

fix

release_toaliyun_real
winter 1 year ago
parent
commit
71a11d44f5
2 changed files with 62 additions and 102 deletions
  1. +11
    -5
      mallinkService/src/main/java/com/iformall/print/data/impl/PrintBillDataHandler.java
  2. +51
    -97
      mallinkService/src/main/java/com/iformall/service/impl/WxFinancePrintServiceImpl.java

+ 11
- 5
mallinkService/src/main/java/com/iformall/print/data/impl/PrintBillDataHandler.java View File

@@ -30,10 +30,12 @@ public class PrintBillDataHandler implements PrintDataParser{
return receive.getPay();
}else if (name.equals("setOff")) {
return receive.getSetOff();
}else if (name.equals("returnPay")) {
return receive.getReturnPay();
}else if (name.equals("starttime")) {
return DateUtils.date2String(receive.getStarttime());
return DateUtils.date2String(receive.getStarttime(),DateUtils.DATE_PATTERN);
}else if (name.equals("endtime")) {
return DateUtils.date2String(receive.getEndtime());
return DateUtils.date2String(receive.getEndtime(),DateUtils.DATE_PATTERN);
}else if (name.equals("owe")) {
return receive.getOwe();
}else if (name.equals("statusName")) {
@@ -46,7 +48,7 @@ public class PrintBillDataHandler implements PrintDataParser{
}
}
return "";
}else if (name.equals("energyFeesName")) {
}else if (name.equals("feesName")) {
if (null != feesMap) {
WxEnergyFees f = feesMap.get(receive.getEnergyFeesId());
if (null != f) {
@@ -54,10 +56,14 @@ public class PrintBillDataHandler implements PrintDataParser{
}
}
return "";
}else if (name.equals("returnPay")) {
return receive.getReturnPay();
}else if (name.equals("billRemark")) {
return receive.getBillRemark();
}else if (name.equals("shopNumber")) {
if (null != shopNumber) {
String m = shopNumber.get(receive.getMerchantId());
return m;
}
return "";
}
return null;
}


+ 51
- 97
mallinkService/src/main/java/com/iformall/service/impl/WxFinancePrintServiceImpl.java View File

@@ -192,8 +192,10 @@ public class WxFinancePrintServiceImpl implements WxFinancePrintService {
return isSetDefaultValue;
}
private void handleComponentData(JSONArray items,PrintDataParser objectParser,Object object,PrintDataParser listParser,List listdata,Object... params) {
private PrintVo handleComponentData(Long templateId,JSONObject templateContent,JSONArray items,PrintDataParser objectParser,Object object,PrintDataParser listParser,List listdata,Object... params) {
if (null != items) {
PrintVo vo = new PrintVo();
vo.setDataId(templateId);
for (int j = 0 ; j < items.size() ; j ++) {
JSONObject ov = items.getJSONObject(j);
//是否是定制化的表格
@@ -205,7 +207,6 @@ public class WxFinancePrintServiceImpl implements WxFinancePrintService {
String componentContent = ov.getString("value");
if (null != listdata) {
ov.put("defaultValue",printCustomedTableDataHandler.getTableContent(componentContent, objectParser,object,listParser,listdata,params));
ov.put("value", "");
}
}else {
String fieldName = ov.getString("name");
@@ -214,14 +215,16 @@ public class WxFinancePrintServiceImpl implements WxFinancePrintService {
}else {
if (isSetDefaultValue) {
ov.put("defaultValue", objectParser.getObjectValue(fieldName,object,params));
ov.put("value", "");
}else {
ov.put("value", objectParser.getObjectValue(fieldName,object,params));
}
}
}
}
vo.setTemplate(templateContent);
return vo;
}
return null;
}
@Override
@@ -258,9 +261,6 @@ public class WxFinancePrintServiceImpl implements WxFinancePrintService {
List<PrintVo> voList = new ArrayList<PrintVo>();
for (int i = 0 ; i < receiveList.size(); i ++) {
WxFinanceReceive re = receiveList.get(i);
PrintVo vo = new PrintVo();
vo.setDataId(templateId);
WxFinanceReceiveBill rb = new WxFinanceReceiveBill();
rb.updateTenantInfo(re);
rb.setReceiveId(re.getId());
@@ -272,9 +272,10 @@ public class WxFinancePrintServiceImpl implements WxFinancePrintService {
billq.setIds(billIdList);
billList = wxAllBillService.list(billq);
}
handleComponentData(items, printFinanceReceiveDataHandler,re,printBillDataHandler, billList,merchantMap,feesMap,feesMap);
vo.setTemplate(o);
voList.add(vo);
PrintVo vo = handleComponentData(templateId,o,items, printFinanceReceiveDataHandler,re,printBillDataHandler, billList,merchantMap,feesMap,feesMap);
if (null != vo) {
voList.add(vo);
}
}
return voList;
}else if (printDatatype.getCode().intValue() == EnumFinancePrintDataType.BILL.getCode()) {
@@ -288,34 +289,10 @@ public class WxFinancePrintServiceImpl implements WxFinancePrintService {
List<PrintVo> voList = new ArrayList<PrintVo>();
for (int i = 0 ; i < billAllList.size(); i ++) {
WxAllBill re = billAllList.get(i);
PrintVo vo = new PrintVo();
vo.setDataId(templateId);
if (null != items) {
for (int j = 0 ; j < items.size() ; j ++) {
JSONObject ov = items.getJSONObject(j);
//是否是定制化的表格
Integer isCustomedTable = ov.getInteger("isFmCustomizedTable");
boolean isSetDefaultValue = isSetDefaultValue(ov);
if (null != isCustomedTable && EnumYesOrNo.YES.getCode().intValue() == isCustomedTable.intValue()) {
//表格解析
String componentContent = ov.getString("value");
//if (null != billList) {
// printCustomedTableDataHandler.getTableContent(componentContent, JSON.parseArray(JSON.toJSONString(billList)));
//}
}else {
if (isSetDefaultValue) {
ov.put("defaultValue", printBillDataHandler.getObjectValue(ov.getString("name"),re,merchantMap,feesMap,shopNumber));
ov.put("value", "");
}else {
ov.put("value", printBillDataHandler.getObjectValue(ov.getString("name"),re,merchantMap,feesMap,shopNumber));
}
}
}
}
vo.setTemplate(o);
voList.add(vo);
PrintVo vo = handleComponentData(templateId,o,items, printBillDataHandler,re,null, null,merchantMap,feesMap,feesMap);
if (null != vo) {
voList.add(vo);
}
}
return voList;
}else if (printDatatype.getCode().intValue() == EnumFinancePrintDataType.RENT_OWE.getCode()) {
@@ -324,66 +301,43 @@ public class WxFinancePrintServiceImpl implements WxFinancePrintService {
List<Long> feesId = dataIds;
List<PrintVo> voList = new ArrayList<PrintVo>();
PrintVo vo = new PrintVo();
vo.setDataId(templateId);
if (null != items) {
for (int j = 0 ; j < items.size() ; j ++) {
JSONObject ov = items.getJSONObject(j);
//是否是定制化的表格
Integer isCustomedTable = ov.getInteger("isFmCustomizedTable");
boolean isSetDefaultValue = isSetDefaultValue(ov);
if (null != isCustomedTable && EnumYesOrNo.YES.getCode().intValue() == isCustomedTable.intValue()) {
//表格解析
List<WxBillSum> sumlist = new ArrayList<WxBillSum>();
BigDecimal receiveTotal = new BigDecimal(0);
BigDecimal payTotal = new BigDecimal(0);
BigDecimal oweTotal = new BigDecimal(0);
for (int k = 0 ; k< bq.getBillSumList().size() ; k++) {
WxBillSum billSum = bq.getBillSumList().get(k);
if (feesId.contains(billSum.getEnergyFeesId())) {
WxEnergyFees fee = feesMap.get(billSum.getEnergyFeesId());
billSum.setTaxRate(fee.getTaxRate());
sumlist.add(billSum);
receiveTotal = receiveTotal.add(billSum.getNeedPayNumber());
payTotal = payTotal.add(billSum.getPaidNumber());
oweTotal = oweTotal.add(billSum.getOweNumber());
}
}
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);
String componentContent = ov.getString("value");
if (null != sumlist && sumlist.size() > 0 ) {
ov.put("defaultValue",printCustomedTableDataHandler.getTableContent(componentContent, printMerchantSettleDataHandler,bq,
printMerchantSettleDataHandler,sumlist,merchantMap,feesMap,shopNumber));
ov.put("value", "");
}
}else {
if (isSetDefaultValue) {
ov.put("defaultValue", printMerchantSettleDataHandler.getObjectValue(ov.getString("name"),bq,merchantMap,feesMap,shopNumber));
ov.put("value", "");
}else {
ov.put("value", printMerchantSettleDataHandler.getObjectValue(ov.getString("name"),bq,merchantMap,feesMap,shopNumber));
}
}
}
}
vo.setTemplate(o);
voList.add(vo);
List<WxBillSum> sumlist = new ArrayList<WxBillSum>();
BigDecimal receiveTotal = new BigDecimal(0);
BigDecimal payTotal = new BigDecimal(0);
BigDecimal oweTotal = new BigDecimal(0);
for (int k = 0 ; k< bq.getBillSumList().size() ; k++) {
WxBillSum billSum = bq.getBillSumList().get(k);
if (feesId.contains(billSum.getEnergyFeesId())) {
WxEnergyFees fee = feesMap.get(billSum.getEnergyFeesId());
billSum.setTaxRate(fee.getTaxRate());
sumlist.add(billSum);
receiveTotal = receiveTotal.add(billSum.getNeedPayNumber());
payTotal = payTotal.add(billSum.getPaidNumber());
oweTotal = oweTotal.add(billSum.getOweNumber());
}
}
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(templateId,o,items, printMerchantSettleDataHandler,bq,printMerchantSettleDataHandler, sumlist,merchantMap,feesMap,feesMap);
if (null != vo) {
voList.add(vo);
}
return voList;
}
return null;


Loading…
Cancel
Save