diff --git a/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/build/classes/java/main/com/awspaas/user/apps/bnbm/datalinkup/job/SaleDataLinkUpJob.class b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/build/classes/java/main/com/awspaas/user/apps/bnbm/datalinkup/job/SaleDataLinkUpJob.class index 1c753de..010f8f8 100644 Binary files a/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/build/classes/java/main/com/awspaas/user/apps/bnbm/datalinkup/job/SaleDataLinkUpJob.class and b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/build/classes/java/main/com/awspaas/user/apps/bnbm/datalinkup/job/SaleDataLinkUpJob.class differ diff --git a/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/build/classes/java/main/com/awspaas/user/apps/bnbm/datalinkup/service/impl/SaleCountDimensionImpl.class b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/build/classes/java/main/com/awspaas/user/apps/bnbm/datalinkup/service/impl/SaleCountDimensionImpl.class index cd04e0f..d092272 100644 Binary files a/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/build/classes/java/main/com/awspaas/user/apps/bnbm/datalinkup/service/impl/SaleCountDimensionImpl.class and b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/build/classes/java/main/com/awspaas/user/apps/bnbm/datalinkup/service/impl/SaleCountDimensionImpl.class differ diff --git a/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/build/classes/java/main/com/awspaas/user/apps/bnbm/datalinkup/service/impl/SaleDataSyncServiceImpl.class b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/build/classes/java/main/com/awspaas/user/apps/bnbm/datalinkup/service/impl/SaleDataSyncServiceImpl.class index fda278a..3040459 100644 Binary files a/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/build/classes/java/main/com/awspaas/user/apps/bnbm/datalinkup/service/impl/SaleDataSyncServiceImpl.class and b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/build/classes/java/main/com/awspaas/user/apps/bnbm/datalinkup/service/impl/SaleDataSyncServiceImpl.class differ 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 f956245..1223efe 100644 Binary files a/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/build/tmp/compileJava/previous-compilation-data.bin and b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/build/tmp/compileJava/previous-compilation-data.bin differ 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/NineGridCountJob.java b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/job/NineGridCountJob.java index 6db7a52..af4a06d 100644 --- a/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/job/NineGridCountJob.java +++ b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/job/NineGridCountJob.java @@ -53,7 +53,7 @@ public class NineGridCountJob implements IJob { int year = now.minusMonths(1).getYear(); RowMap cwsj = DBSql.getMap("SELECT DNSJLJ FROM BO_EU_CWSJ_INTERFACE_LRZE " + "WHERE BK = '公司整体' AND DWMC = '合并' AND YEAR = '" + year + "' AND MONTH = '" + lastMonthValue + "'"); - bo.set("ZB3",cwsj.getString("DNSJLJ"));//利润总额 + bo.set("ZB3",cwsj==null?"":cwsj.getString("DNSJLJ"));//利润总额 //预算完成率 RowMap yswcl = DBSql.getMap("select hz.ysze AS ysze,BUDGETTARGET,(hz.ysze / mb.BUDGETTARGET)*100 AS yewcl " + " from " + 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 c1478f6..54ac4f4 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 @@ -86,10 +86,16 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { LOGGER.info("已删除目标表[{}]中{}条数据", section.getTargetTable(), deleteCount); // 获取所有销售组织-客户组合 - List customerMaps = DBSql.getMaps( - "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 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"; +// if (bkgs.equals("北新防水")){ +// sql += " AND XSZZ !='北新防水工程(辽宁)有限公司' " + +// "AND XSZZ != '北新防水工程(四川)有限公司' AND F_SFNBJY ='是'"; +// }else { +// sql += " AND F_SFNBJY ='是'"; +// } + List customerMaps = DBSql.getMaps(sql); if (customerMaps == null || customerMaps.isEmpty()) { LOGGER.warn("{}板块未查询到销售组织和客户数据", sectionName); @@ -142,6 +148,7 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { // 获取需要处理的所有月末日期 List monthEndDates = getMonthEndDates(startDate, endDate); + LOGGER.info("查看时间范围:{}",Arrays.toString(monthEndDates.toArray())); // 批量预加载所有需要的数据 Map preloadedResults = preloadAllData( @@ -155,13 +162,18 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { String saleOrgUnit = customer.getString("XSZZ"); String custName = customer.getString("FCUSTNAME"); String keyPrefix = saleOrgUnit + "_" + custName + "_"; +// LOGGER.info("客户、销售组织:{}",keyPrefix); try { // 从预加载数据中获取计算结果 BigDecimal qcye = getPreloadedValue(preloadedResults, keyPrefix + "QCYE_" + monthEndDate); +// LOGGER.info("计算出来的期初余额:{}",qcye.doubleValue()); BigDecimal ljxs = getPreloadedValue(preloadedResults, keyPrefix + "LJXS_" + monthEndDate); +// LOGGER.info("计算出来的累计销售:{}",ljxs.doubleValue()); BigDecimal ljhk = getPreloadedValue(preloadedResults, keyPrefix + "LJHK_" + monthEndDate); +// LOGGER.info("计算出来的累计还款:{}",ljhk.doubleValue()); BigDecimal ysye = qcye.add(ljxs).subtract(ljhk); +// LOGGER.info("计算出来的应收余额:{}",ysye.doubleValue()); // 从预加载数据中获取账龄分析 Map zlfx = new HashMap<>(); @@ -223,21 +235,20 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { Map results = new HashMap<>(); try { + // 扩展日期范围:包含去年完整数据和当前时间范围 + LocalDate extendedStartDate = monthEndDates.get(0).minusYears(1).withDayOfYear(1); + LocalDate extendedEndDate = monthEndDates.get(monthEndDates.size() - 1); + List extendedMonthEndDates = getMonthEndDates(extendedStartDate, extendedEndDate); // 批量查询应收单数据 - Map ysData = batchQueryYSDData(section, saleOrgUnits, custNames, monthEndDates); - + Map ysData = batchQueryYSDData(section, saleOrgUnits, custNames, extendedMonthEndDates); // 批量查询收款单数据 - Map skData = batchQuerySKDData(section, saleOrgUnits, custNames, monthEndDates); - + Map skData = batchQuerySKDData(section, saleOrgUnits, custNames, extendedMonthEndDates); // 批量查询收款退款单数据 - Map sktkData = batchQuerySKTKDData(section, saleOrgUnits, custNames, monthEndDates); - + Map sktkData = batchQuerySKTKDData(section, saleOrgUnits, custNames, extendedMonthEndDates); // 批量查询历史余额数据 - Map historyData = batchQueryHistoryBalance(section, saleOrgUnits, custNames, monthEndDates); - + Map historyData = batchQueryHistoryBalance(section, saleOrgUnits, custNames, extendedMonthEndDates); // 计算所有需要的指标 - calculateAllMetrics(results, ysData, skData, sktkData, historyData, saleOrgUnits, custNames, monthEndDates); - + calculateAllMetrics(results, ysData, skData, sktkData, historyData, saleOrgUnits, custNames, monthEndDates,extendedMonthEndDates); } catch (Exception e) { LOGGER.error("预加载数据时发生错误", e); } @@ -275,12 +286,19 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { .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 " + "FROM " + section.getYsdTable() + " WHERE XSZZ IN (" + inSaleOrgs + ") " + " AND FCUSTNAME IN (" + inCustNames + ") " + - " AND (" + dateCondition + ") " + - " GROUP BY XSZZ, FCUSTNAME, DATE_FORMAT(DZRQ, '%Y-%m-%d')"; + " AND (" + dateCondition + ") "; + 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')"; List queryResults = DBSql.getMaps(sql); @@ -322,12 +340,19 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { .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 " + "FROM " + section.getSkdTable() + " WHERE FSALEORGUNIT IN (" + inSaleOrgs + ") " + " AND FCUSTNAME IN (" + inCustNames + ") " + - " AND (" + dateCondition + ") " + - " GROUP BY FSALEORGUNIT, FCUSTNAME, DATE_FORMAT(FBILLDATE, '%Y-%m-%d')"; + " AND (" + dateCondition + ") "; + 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')"; List queryResults = DBSql.getMaps(sql); @@ -369,12 +394,19 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { .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 " + "FROM " + section.getSktkdTable() + " WHERE FSALEORGUNIT IN (" + inSaleOrgs + ") " + " AND FCUSTNAME IN (" + inCustNames + ") " + - " AND (" + dateCondition + ") " + - " GROUP BY FSALEORGUNIT, FCUSTNAME, DATE_FORMAT(FBILLDATE, '%Y-%m-%d')"; + " AND (" + dateCondition + ") "; + 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')"; List queryResults = DBSql.getMaps(sql); @@ -433,7 +465,8 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { private void calculateAllMetrics(Map results, Map ysData, Map skData, Map sktkData, Map historyData, - List saleOrgUnits, List custNames, List monthEndDates) { + List saleOrgUnits, List custNames, List monthEndDates, + List extendedMonthEndDates) { // 计算每个客户每个月的指标 for (String saleOrgUnit : saleOrgUnits) { @@ -444,32 +477,40 @@ public class WaterproofPaintAccountsReceivableJob implements IJob { String dateKey = monthEndDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); String fullKeyPrefix = keyPrefix + dateKey; - // 计算期初余额(上一年度累计) - LocalDate previousYearStart = monthEndDate.minusYears(1).withDayOfYear(1); - LocalDate previousYearEnd = monthEndDate.minusYears(1).withDayOfYear(365); - BigDecimal qcye = calculatePeriodBalance(ysData, skData, sktkData, saleOrgUnit, custName, previousYearStart, previousYearEnd); + try { + // 计算期初余额(上一年度末余额) + LocalDate previousYearEnd = monthEndDate.minusYears(1).withDayOfYear(monthEndDate.minusYears(1).lengthOfYear()); + BigDecimal qcye = calculatePeriodBalance(ysData, skData, sktkData, saleOrgUnit, custName, previousYearEnd.withDayOfYear(1), previousYearEnd); - // 计算累计销售(本年年初到当前月末) - LocalDate yearStart = monthEndDate.withDayOfYear(1); - BigDecimal ljxs = calculatePeriodBalance(ysData, null, null, saleOrgUnit, custName, yearStart, monthEndDate); + // 计算累计销售(本年年初到当前月末) + LocalDate yearStart = monthEndDate.withDayOfYear(1); + BigDecimal ljxs = calculatePeriodBalance(ysData, null, null, saleOrgUnit, custName, yearStart, monthEndDate); - // 计算累计还款(本年年初到当前月末) - BigDecimal ljhk = calculatePeriodBalance(null, skData, sktkData, saleOrgUnit, custName, yearStart, monthEndDate); + // 计算累计还款(本年年初到当前月末) + BigDecimal ljhk = calculatePeriodBalance(null, skData, sktkData, saleOrgUnit, custName, yearStart, monthEndDate); - // 计算应收余额 - BigDecimal ysye = qcye.add(ljxs).subtract(ljhk); + // 计算应收余额 + BigDecimal ysye = qcye.add(ljxs).subtract(ljhk); - // 计算账龄分析 - Map zlfx = calculateAgingAnalysis(historyData, saleOrgUnit, custName, monthEndDate, ysye); + // 计算账龄分析 + Map zlfx = calculateAgingAnalysis(historyData, saleOrgUnit, custName, monthEndDate, ysye); - // 存储计算结果 - results.put(keyPrefix + "QCYE_" + monthEndDate, qcye); - results.put(keyPrefix + "LJXS_" + monthEndDate, ljxs); - results.put(keyPrefix + "LJHK_" + monthEndDate, ljhk); - results.put(keyPrefix + "YSYE_" + monthEndDate, ysye); + // 存储计算结果 + results.put(keyPrefix + "QCYE_" + monthEndDate, qcye); + results.put(keyPrefix + "LJXS_" + monthEndDate, ljxs); + results.put(keyPrefix + "LJHK_" + monthEndDate, ljhk); + results.put(keyPrefix + "YSYE_" + monthEndDate, ysye); +// LOGGER.info("计算{}:{}",keyPrefix + "QCYE_" + monthEndDate,qcye); +// LOGGER.info("计算{}:{}",keyPrefix + "LJXS_" + monthEndDate, ljxs); +// LOGGER.info("计算{}:{}",keyPrefix + "LJHK_" + monthEndDate, ljhk); +// LOGGER.info("计算{}:{}",keyPrefix + "YSYE_" + monthEndDate, ysye); - for (Map.Entry entry : zlfx.entrySet()) { - results.put(keyPrefix + entry.getKey() + "_" + monthEndDate, entry.getValue()); + for (Map.Entry entry : zlfx.entrySet()) { + results.put(keyPrefix + entry.getKey() + "_" + monthEndDate, entry.getValue()); + } + } catch (Exception e) { + LOGGER.error("计算指标时发生错误,销售组织: {}, 客户: {}, 日期: {}", + saleOrgUnit, custName, monthEndDate, e); } } } diff --git a/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/service/impl/SaleCountDimensionImpl.java b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/service/impl/SaleCountDimensionImpl.java index e27474f..95722a5 100644 --- a/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/service/impl/SaleCountDimensionImpl.java +++ b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/service/impl/SaleCountDimensionImpl.java @@ -448,7 +448,7 @@ public class SaleCountDimensionImpl implements DataSummaryService { " LB_2, LB_3, SQ, CS, QY, SUM(ZSSL) AS XL," + " SUM(SSJERMB) AS XE, SUM(XSSL) AS TSXL, SUM(NMNY) AS BHSXE,YEARMONTH" + " FROM " + SALES_DETAIL_TABLE + - " WHERE DZRQ >= ? AND BKGS = ?" + + " WHERE DZRQ >= DATE_FORMAT(?, '%Y-%m-01') AND BKGS = ?" + " GROUP BY QYGS, KCZZ, " + " CASE " + " WHEN BKGS = '龙牌' AND LB_1 IN ('装饰石膏板', '鲁班装饰万能板', '石膏板') THEN '石膏板'" + @@ -501,12 +501,14 @@ public class SaleCountDimensionImpl implements DataSummaryService { bo.set("JD", location.getLongitude()); bo.set("WD", location.getLatitude()); } - if ("石膏板".equals(lb_1) - || (bkgs.equals("北新防水") && ("高分子".equals(lb_1) || "卷材".equals(lb_1) || "涂料".equals(lb_1))) - || (bkgs.equals("北新涂料") && "涂料".equals(lb_1))){ + if ("石膏板".equals(lb_1)){ bo.set("XL", map.getDouble("TSXL")); bo.set("SNTQXL", map.getString("sntqtsxl")); - }else { + } else if ((bkgs.equals("北新防水") && ("高分子".equals(lb_1) || "卷材".equals(lb_1) || "涂料".equals(lb_1))) + || (bkgs.equals("北新涂料") && "涂料".equals(lb_1))) { + bo.set("XL", map.getDouble("TSXL")); + bo.set("SNTQXL", map.getString("sntqtsxl")); + } else { bo.set("XL", map.getDouble("XL")); bo.set("SNTQXL", map.getString("sntqXL")); } @@ -582,7 +584,7 @@ public class SaleCountDimensionImpl implements DataSummaryService { " END AS LB_1," + " LB_2, LB_3, SQ, CS, QY, SUM(NMNY) as BHSYYSR, SUM(SSJERMB) AS YYSR, YEARMONTH" + " FROM " + SALES_DETAIL_TABLE + - " WHERE DZRQ >= ? AND DZRQ < ? AND BKGS = ?" + + " WHERE DZRQ >= DATE_FORMAT(?, '%Y-%m-01') AND DZRQ < ? AND BKGS = ?" + " GROUP BY QYGS, KCZZ, " + " CASE " + " WHEN BKGS = '龙牌' AND LB_1 IN ('装饰石膏板', '鲁班装饰万能板', '石膏板') THEN '石膏板'" + diff --git a/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/service/impl/SaleDataSyncServiceImpl.java b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/service/impl/SaleDataSyncServiceImpl.java index 66826fc..8d065ee 100644 --- a/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/service/impl/SaleDataSyncServiceImpl.java +++ b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/service/impl/SaleDataSyncServiceImpl.java @@ -104,6 +104,10 @@ public class SaleDataSyncServiceImpl implements DataSyncService { LOGGER.info("处理配置:BindID={}, 源表={}, 目标表={}, CC_ID={}, 时间字段={}, 分区字段配置={}, 板块={}", bindId, tableName, targetTable, ccId,timeField,partitionField,bkgs); + if (tablename.equals("应收表") && (bkgs.equals("北新防水") || bkgs.equals("北新涂料"))) { + LOGGER.info("北新防水、北新涂料不需要定时器拉取应收单数据"); + return dateRange; + } // 查询子表字段映射配置 List fieldMappings = SDK.getBOAPI() diff --git a/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/util/SaleUtil.java b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/util/SaleUtil.java index 1acd25d..8217645 100644 --- a/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/util/SaleUtil.java +++ b/com.awspaas.user.apps.bnbm.datalinkup/com.awspaas.user.apps.bnbm.datalinkup/src/main/java/com/awspaas/user/apps/bnbm/datalinkup/util/SaleUtil.java @@ -1,7 +1,9 @@ package com.awspaas.user.apps.bnbm.datalinkup.util; import com.actionsoft.bpms.bo.engine.BO; +import com.actionsoft.bpms.util.UtilString; import com.actionsoft.sdk.local.SDK; +import org.apache.commons.lang3.StringUtils; import java.util.List; @@ -18,6 +20,9 @@ public class SaleUtil { if (boList == null || boList.isEmpty()) { return new String[]{defaultJzgz, defaultJcmc,defaultProdCat}; } + lb_1 = StringUtils.isBlank(lb_1)?"":lb_1; + lb_2 = StringUtils.isBlank(lb_2)?"":lb_2; + lb_3 = StringUtils.isBlank(lb_3)?"":lb_3; for (BO bo : boList) { String bbgs = bo.getString("BBGS"); String cpdl = bo.getString("CPDL");