From d568c979951dfebff6d35c57bb0e3c2a4bfa6f35 Mon Sep 17 00:00:00 2001 From: llllon Date: Mon, 13 Oct 2025 16:00:37 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E9=98=B2=E6=B0=B4=E6=B6=82=E6=96=99?= =?UTF-8?q?=E5=BA=94=E6=94=B6=E8=AE=A1=E7=AE=97=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../compileJava/previous-compilation-data.bin | Bin 9396389 -> 9396389 bytes .../WaterproofPaintAccountsReceivableJob.java | 123 ++++++++++-------- 2 files changed, 69 insertions(+), 54 deletions(-) diff --git a/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/build/tmp/compileJava/previous-compilation-data.bin b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/build/tmp/compileJava/previous-compilation-data.bin index 8ebab4d15616b0b15f5cf37c7c690984dafa2681..6b79ec18c4c11ffa4ca018e8025b30f7519271ff 100644 GIT binary patch delta 605 zcmWm0+cFdY007X*B8A#=O(j&UyDcOk*V2s&m9j;tC@O3TxfdatreEOQTTdSRQy5@T zQNv|wxk4TFG;ozhnrNnlR@%76b=tYXO>S|UJ9N;=UG8z8F1qRA0S|dZFOPXb9}%AN zjD7}q&I<;4$tzwn#4vAo%Lt>q<2@f3W1I=1eB=|8d}fMiX86J^bIh~AB1MkZC}iP96tjpD z7PEwvJR+zg;3 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 54ac4f4..0af1eaf 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,8 +87,8 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { // 获取所有销售组织-客户组合 String bkgs = section.getBkgs(); - String sql = "SELECT DISTINCT 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"; + 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 ='是'"; @@ -238,6 +238,9 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { // 扩展日期范围:包含去年完整数据和当前时间范围 LocalDate extendedStartDate = monthEndDates.get(0).minusYears(1).withDayOfYear(1); LocalDate extendedEndDate = monthEndDates.get(monthEndDates.size() - 1); + String format = extendedStartDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); + String format2 = extendedEndDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); + LOGGER.info("format:{};format2:{}",format,format2); List extendedMonthEndDates = getMonthEndDates(extendedStartDate, extendedEndDate); // 批量查询应收单数据 Map ysData = batchQueryYSDData(section, saleOrgUnits, custNames, extendedMonthEndDates); @@ -274,17 +277,20 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { // 构建日期条件 StringBuilder dateCondition = new StringBuilder(); - for (LocalDate date : monthEndDates) { - LocalDate monthStart = date.withDayOfMonth(1); - if (dateCondition.length() > 0) { - dateCondition.append(" OR "); - } - dateCondition.append("(DZRQ >= '") - .append(monthStart.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) - .append(" 00:00:00' AND DZRQ <= '") - .append(date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) - .append(" 23:59:59')"); - } + dateCondition.append("DZRQ >= '") + .append(monthEndDates.get(0).format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))).append(" 00:00:00' AND DZRQ <= '") + .append(monthEndDates.get(monthEndDates.size()-1).format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))).append(" 23:59:59'"); +// for (LocalDate date : monthEndDates) { +// LocalDate monthStart = date.withDayOfMonth(1); +// if (dateCondition.length() > 0) { +// dateCondition.append(" OR "); +// } +// dateCondition.append("(DZRQ >= '") +// .append(monthStart.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) +// .append(" 00:00:00' AND DZRQ <= '") +// .append(date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) +// .append(" 23:59:59')"); +// } String bkgs = section.getBkgs(); String sql = "SELECT XSZZ, FCUSTNAME, DATE_FORMAT(DZRQ, '%Y-%m-%d') as BILL_DATE, SUM(SSJERMB) as TOTAL " + @@ -292,14 +298,14 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { " WHERE XSZZ IN (" + inSaleOrgs + ") " + " AND FCUSTNAME IN (" + inCustNames + ") " + " AND (" + dateCondition + ") "; - if (bkgs.equals("北新防水")){ - sql += " AND XSZZ !='北新防水工程(辽宁)有限公司' " + - "AND XSZZ != '北新防水工程(四川)有限公司' AND F_SFNBJY ='是'"; - }else { - sql += " AND F_SFNBJY ='是'"; - } +// if (bkgs.equals("北新防水")){ +// sql += " AND XSZZ !='北新防水工程(辽宁)有限公司' " + +// "AND XSZZ != '北新防水工程(四川)有限公司' AND F_SFNBJY ='是'"; +// }else { +// sql += " AND F_SFNBJY ='是'"; +// } sql += " GROUP BY XSZZ, FCUSTNAME, DATE_FORMAT(DZRQ, '%Y-%m-%d')"; - +// LOGGER.info("应收单数据sql = " + sql); List queryResults = DBSql.getMaps(sql); for (RowMap row : queryResults) { @@ -328,17 +334,20 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { String inCustNames = buildInCondition(custNames); StringBuilder dateCondition = new StringBuilder(); - for (LocalDate date : monthEndDates) { - LocalDate monthStart = date.withDayOfMonth(1); - if (dateCondition.length() > 0) { - dateCondition.append(" OR "); - } - dateCondition.append("(FBILLDATE >= '") - .append(monthStart.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) - .append(" 00:00:00' AND FBILLDATE <= '") - .append(date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) - .append(" 23:59:59')"); - } + dateCondition.append("FBILLDATE >= '") + .append(monthEndDates.get(0).format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))).append(" 00:00:00' AND FBILLDATE <= '") + .append(monthEndDates.get(monthEndDates.size()-1).format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))).append(" 23:59:59'"); +// for (LocalDate date : monthEndDates) { +// LocalDate monthStart = date.withDayOfMonth(1); +// if (dateCondition.length() > 0) { +// dateCondition.append(" OR "); +// } +// dateCondition.append("(DZRQ >= '") +// .append(monthStart.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) +// .append(" 00:00:00' AND DZRQ <= '") +// .append(date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) +// .append(" 23:59:59')"); +// } String bkgs = section.getBkgs(); String sql = "SELECT FSALEORGUNIT, FCUSTNAME, DATE_FORMAT(FBILLDATE, '%Y-%m-%d') as BILL_DATE, SUM(FSALEAMOUNTRMB) as TOTAL " + @@ -346,14 +355,15 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { " WHERE FSALEORGUNIT IN (" + inSaleOrgs + ") " + " AND FCUSTNAME IN (" + inCustNames + ") " + " AND (" + dateCondition + ") "; - if (bkgs.equals("北新防水")){ - sql += " AND FSALEORGUNIT !='北新防水工程(辽宁)有限公司' " + - "AND FSALEORGUNIT != '北新防水工程(四川)有限公司' AND F_SFNBJY ='是'"; - }else { - sql += " AND F_SFNBJY ='是'"; - } +// if (bkgs.equals("北新防水")){ +// sql += " AND FSALEORGUNIT !='北新防水工程(辽宁)有限公司' " + +// "AND FSALEORGUNIT != '北新防水工程(四川)有限公司' AND F_SFNBJY ='是'"; +// }else { +// sql += " AND F_SFNBJY ='是'"; +// } sql += " GROUP BY FSALEORGUNIT, FCUSTNAME, DATE_FORMAT(FBILLDATE, '%Y-%m-%d')"; +// LOGGER.info("收款单数据sql = " + sql); List queryResults = DBSql.getMaps(sql); for (RowMap row : queryResults) { @@ -382,17 +392,20 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { String inCustNames = buildInCondition(custNames); StringBuilder dateCondition = new StringBuilder(); - for (LocalDate date : monthEndDates) { - LocalDate monthStart = date.withDayOfMonth(1); - if (dateCondition.length() > 0) { - dateCondition.append(" OR "); - } - dateCondition.append("(FBILLDATE >= '") - .append(monthStart.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) - .append(" 00:00:00' AND FBILLDATE <= '") - .append(date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) - .append(" 23:59:59')"); - } + dateCondition.append("FBILLDATE >= '") + .append(monthEndDates.get(0).format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))).append(" 00:00:00' AND FBILLDATE <= '") + .append(monthEndDates.get(monthEndDates.size()-1).format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))).append(" 23:59:59'"); +// for (LocalDate date : monthEndDates) { +// LocalDate monthStart = date.withDayOfMonth(1); +// if (dateCondition.length() > 0) { +// dateCondition.append(" OR "); +// } +// dateCondition.append("(DZRQ >= '") +// .append(monthStart.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) +// .append(" 00:00:00' AND DZRQ <= '") +// .append(date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) +// .append(" 23:59:59')"); +// } String bkgs = section.getBkgs(); String sql = "SELECT FSALEORGUNIT, FCUSTNAME, DATE_FORMAT(FBILLDATE, '%Y-%m-%d') as BILL_DATE, SUM(FSALEAMOUNTRMB) as TOTAL " + @@ -400,14 +413,15 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { " WHERE FSALEORGUNIT IN (" + inSaleOrgs + ") " + " AND FCUSTNAME IN (" + inCustNames + ") " + " AND (" + dateCondition + ") "; - if (bkgs.equals("北新防水")){ - sql += " AND FSALEORGUNIT !='北新防水工程(辽宁)有限公司' " + - "AND FSALEORGUNIT != '北新防水工程(四川)有限公司' AND F_SFNBJY ='是'"; - }else { - sql += " AND F_SFNBJY ='是'"; - } +// if (bkgs.equals("北新防水")){ +// sql += " AND FSALEORGUNIT !='北新防水工程(辽宁)有限公司' " + +// "AND FSALEORGUNIT != '北新防水工程(四川)有限公司' AND F_SFNBJY ='是'"; +// }else { +// sql += " AND F_SFNBJY ='是'"; +// } sql += " GROUP BY FSALEORGUNIT, FCUSTNAME, DATE_FORMAT(FBILLDATE, '%Y-%m-%d')"; +// LOGGER.info("收款退款单数据sql = " + sql); List queryResults = DBSql.getMaps(sql); for (RowMap row : queryResults) { @@ -444,6 +458,7 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { " AND KH IN (" + inCustNames + ") " + " AND RQ IN (" + inDates + ")"; +// LOGGER.info("历史余额数据sql = " + sql); List queryResults = DBSql.getMaps(sql); for (RowMap row : queryResults) {