diff --git a/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/job/WaterproofPaintAccountsReceivableJob.java b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/job/WaterproofPaintAccountsReceivableJob.java index c10dc91..47e9b0e 100644 --- a/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/job/WaterproofPaintAccountsReceivableJob.java +++ b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/job/WaterproofPaintAccountsReceivableJob.java @@ -87,14 +87,15 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { // 获取所有销售组织-客户组合 String bkgs = section.getBkgs(); - String sql = "SELECT QYGS, FCUSTNAME, SQ AS FPROVINCE, CS AS FCITY, QY AS FDISTRICT, XSZZ " + - " FROM " + section.getYsdTable() + " WHERE QYGS IS NOT NULL AND FCUSTNAME IS NOT NULL GROUP BY FCUSTNAME,XSZZ"; - if (bkgs.equals("北新防水")){ - sql += " AND XSZZ !='北新防水工程(辽宁)有限公司' " + - "AND XSZZ != '北新防水工程(四川)有限公司' AND F_SFNBJY ='否'"; - }else { - sql += " AND F_SFNBJY ='否'"; - } + String sql = "SELECT QYGS, FCUSTNAME,SQ AS FPROVINCE, CS AS FCITY, QY AS FDISTRICT, XSZZ " + + " FROM " + section.getYsdTable() + " WHERE FCUSTNAME IS NOT NULL"; +// if (bkgs.equals("北新防水")){ +// sql += " AND XSZZ !='北新防水工程(辽宁)有限公司' " + +// "AND XSZZ != '北新防水工程(四川)有限公司' AND F_SFNBJY ='否'"; +// }else { +// sql += " AND F_SFNBJY ='否'"; +// } + sql += " GROUP BY FCUSTNAME,XSZZ"; List customerMaps = DBSql.getMaps(sql); // List customerMaps = new ArrayList<>(); // HashMap hashMap = new HashMap<>(); @@ -367,7 +368,8 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { " AND (" + dateCondition + ") "; if (section.getBkgs().equals("北新防水")){ sql += " AND FSALEORGUNIT !='北新防水工程(辽宁)有限公司' " + - "AND FSALEORGUNIT != '北新防水工程(四川)有限公司' AND F_SFNBJY ='否'"; + " AND FSALEORGUNIT != '北新防水工程(四川)有限公司' AND F_SFNBJY ='否'" + + " AND FBILLTYPENAME IN ('价差销售收款单','销售收款单')"; }else { sql += " AND F_SFNBJY ='否'"; } @@ -559,17 +561,24 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { String dateKey = current.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); String fullKey = keyPrefix + dateKey; - if (ysData != null) { + if (ysData != null && skData != null && sktkData != null) { + result = result.add(ysData.getOrDefault(fullKey, BigDecimal.ZERO)); + result = result.subtract(skData.getOrDefault(fullKey, BigDecimal.ZERO)); + result = result.add(sktkData.getOrDefault(fullKey, BigDecimal.ZERO)); + } + + if (ysData != null && skData == null && sktkData == null) { result = result.add(ysData.getOrDefault(fullKey, BigDecimal.ZERO)); } - if (skData != null) { - result = result.subtract(skData.getOrDefault(fullKey, BigDecimal.ZERO)); + if (ysData == null && skData != null && sktkData != null) { + result = result.add(skData.getOrDefault(fullKey, BigDecimal.ZERO)); + result = result.subtract(sktkData.getOrDefault(fullKey, BigDecimal.ZERO)); } - if (sktkData != null) { - result = result.add(sktkData.getOrDefault(fullKey, BigDecimal.ZERO)); - } +// if (sktkData != null) { +// result = result.subtract(sktkData.getOrDefault(fullKey, BigDecimal.ZERO)); +// } current = current.plusDays(1); }