From 3707cf73ce929a30ce21d8512b132f42bc93d167 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=93=88=E5=93=88=E5=93=88=E4=B8=BF?= <421587375@qq.com> Date: Wed, 2 Jul 2025 17:17:30 +0800 Subject: [PATCH] =?UTF-8?q?=E8=81=8C=E5=8A=A1=E6=B6=88=E8=B4=B9=E5=8F=B0?= =?UTF-8?q?=E8=B4=A6=E7=BB=9F=E8=AE=A1=E9=A2=86=E5=AF=BC=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../report/PositionFeesRptQueryPlugin.java | 74 +++++++++---------- 1 file changed, 37 insertions(+), 37 deletions(-) diff --git a/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/report/PositionFeesRptQueryPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/report/PositionFeesRptQueryPlugin.java index 59c8427..7085f1e 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/report/PositionFeesRptQueryPlugin.java +++ b/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/report/PositionFeesRptQueryPlugin.java @@ -307,48 +307,48 @@ public class PositionFeesRptQueryPlugin extends AbstractReportListDataPlugin { } } } - } - //差旅报销单数据 - DynamicObject[] tripreimburseDataSet = getTripreimburseDataSet(userId, year); - for (DynamicObject dynamicObject : tripreimburseDataSet) { - String billno = dynamicObject.getString("billno");//单据编号 - //判罚是否因公出国 - Boolean isBusinessForeign = dynamicObject.getBoolean(DEV_KEY+"_is_business_foreign");//单据编号 - DynamicObjectCollection entrys = dynamicObject.getDynamicObjectCollection("tripentry"); - for (DynamicObject entry : entrys) { - Date happendate = entry.getDate("startdate");//出差开始日期 - String happendateStr = dateFormat.format(happendate);//费用发生日期str - DynamicObjectCollection entryentity = entry.getDynamicObjectCollection("entryentity"); - for (DynamicObject object : entryentity) { - BigDecimal orientryamount = BigDecimal.ZERO; - if(istax){ - orientryamount = object.getBigDecimal("orientryamount");//报销金额 - }else{ - orientryamount = object.getBigDecimal("notaxamount");//不含税金额 - } - // 生成唯一的键:报销人 + 单据编号 + 费用发生日期 - String key = userId + "-" + billno + "-" + happendateStr; - userSet.add(userId); - // 根据键获取报表对象 - ExpenseReport report = reportMap.get(key); - if (report == null) { - report = new ExpenseReport(userId, billno, happendateStr); - reportMap.put(key, report); - } - if(!isBusinessForeign){ - //费用明细中的所有金额因公临时出国费用 - BigDecimal travel = report.getTravel().add(orientryamount); - report.setTravel(travel); - }else{ - //费用明细中的所有金额因公临时出国费用 - BigDecimal abroadTravel = report.getAbroadTravel().add(orientryamount); - report.setAbroadTravel(abroadTravel); + + //差旅报销单数据 + DynamicObject[] tripreimburseDataSet = getTripreimburseDataSet(userId, year); + for (DynamicObject dynamicObject : tripreimburseDataSet) { + String billno = dynamicObject.getString("billno");//单据编号 + //判罚是否因公出国 + Boolean isBusinessForeign = dynamicObject.getBoolean(DEV_KEY+"_is_business_foreign");//单据编号 + DynamicObjectCollection entrys = dynamicObject.getDynamicObjectCollection("tripentry"); + for (DynamicObject entry : entrys) { + Date happendate = entry.getDate("startdate");//出差开始日期 + String happendateStr = dateFormat.format(happendate);//费用发生日期str + DynamicObjectCollection entryentity = entry.getDynamicObjectCollection("entryentity"); + for (DynamicObject object : entryentity) { + BigDecimal orientryamount = BigDecimal.ZERO; + if(istax){ + orientryamount = object.getBigDecimal("orientryamount");//报销金额 + }else{ + orientryamount = object.getBigDecimal("notaxamount");//不含税金额 + } + // 生成唯一的键:报销人 + 单据编号 + 费用发生日期 + String key = userId + "-" + billno + "-" + happendateStr; + userSet.add(userId); + // 根据键获取报表对象 + ExpenseReport report = reportMap.get(key); + if (report == null) { + report = new ExpenseReport(userId, billno, happendateStr); + reportMap.put(key, report); + } + if(!isBusinessForeign){ + //费用明细中的所有金额因公临时出国费用 + BigDecimal travel = report.getTravel().add(orientryamount); + report.setTravel(travel); + }else{ + //费用明细中的所有金额因公临时出国费用 + BigDecimal abroadTravel = report.getAbroadTravel().add(orientryamount); + report.setAbroadTravel(abroadTravel); + } } } } } - } //合计汇总 ExpenseReport totalReport = new ExpenseReport(null, null, null);