1、防水涂料修改
This commit is contained in:
parent
e72a362077
commit
639f338c38
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -48,10 +48,30 @@ public class NineGridCountJob implements IJob {
|
|||||||
//查询采购数据
|
//查询采购数据
|
||||||
RowMap cgsj = DBSql.getMap("SELECT (SUM(DHJE)/10000) AS JSHJHYF FROM BO_EU_DWD_ORDER_RKD_HZ WHERE DJRQ >= '" + nowYearFirstDayStr + " 00:00:00'");
|
RowMap cgsj = DBSql.getMap("SELECT (SUM(DHJE)/10000) AS JSHJHYF FROM BO_EU_DWD_ORDER_RKD_HZ WHERE DJRQ >= '" + nowYearFirstDayStr + " 00:00:00'");
|
||||||
bo.set("ZB2",cgsj.getString("JSHJHYF"));//采购总额
|
bo.set("ZB2",cgsj.getString("JSHJHYF"));//采购总额
|
||||||
bo.set("ZB3","");//利润总额
|
//取财务数据
|
||||||
bo.set("ZB4","");//预算完成率
|
int lastMonthValue = now.minusMonths(1).getMonthValue();
|
||||||
bo.set("ZB5","");//石膏板产量
|
int year = now.minusMonths(1).getYear();
|
||||||
bo.set("ZB6","");//龙骨产量
|
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"));//利润总额
|
||||||
|
//预算完成率
|
||||||
|
RowMap yswcl = DBSql.getMap("select hz.ysze AS ysze,BUDGETTARGET,(hz.ysze / mb.BUDGETTARGET)*100 AS yewcl " +
|
||||||
|
" from " +
|
||||||
|
" (select sum( `BHSYYSR`) / 10000 ysze " +
|
||||||
|
" from BO_EU_XS_YESR " +
|
||||||
|
" where `YEARMONTH` >= concat(substring('" + nowYearMonthStr + "', 1, 4), '-01') " +
|
||||||
|
" and `YEARMONTH` <= '" + nowYearMonthStr + "') hz left join " +
|
||||||
|
" (select SUM(`BUDGETTARGET`) AS BUDGETTARGET from BO_EU_ANNUAL_BUDGET WHERE YEAR = '" + year + "') mb on 1=1");
|
||||||
|
bo.set("ZB4",yswcl.getString("yewcl"));//预算完成率
|
||||||
|
String lastMonth = now.minusMonths(1).format(DateTimeFormatter.ofPattern("yyyy-MM"));
|
||||||
|
RowMap cl = DBSql.getMap("SELECT YEARS_MONTH," +
|
||||||
|
" MAX(CASE WHEN PRODEUCT = '石膏板' THEN YTD END) AS SGBYTD," +
|
||||||
|
" MAX(CASE WHEN PRODEUCT = '轻钢龙骨' THEN YTD END) AS QGLGYTD" +
|
||||||
|
" FROM BO_EU_CLMXB" +
|
||||||
|
" WHERE YEARS_MONTH = '" + lastMonth + "' AND GONGCHANG IN ('小计(万㎡)','小计(吨)')" +
|
||||||
|
" AND PRODEUCT IN ('石膏板', '轻钢龙骨') GROUP BY YEARS_MONTH");
|
||||||
|
bo.set("ZB5",cl.getString("SGBYTD"));//石膏板产量
|
||||||
|
bo.set("ZB6",cl.getString("QGLGYTD"));//龙骨产量
|
||||||
bo.set("ZB7",map.getString("gypsum_board_avg_price"));// 石膏板均价
|
bo.set("ZB7",map.getString("gypsum_board_avg_price"));// 石膏板均价
|
||||||
bo.set("ZB8",map.getString("steel_keel_avg_price"));// 龙骨均价
|
bo.set("ZB8",map.getString("steel_keel_avg_price"));// 龙骨均价
|
||||||
bo.set("ZB9","");//总运费
|
bo.set("ZB9","");//总运费
|
||||||
|
|||||||
@ -117,13 +117,8 @@ public class WaterproofPaintAccountsReceivableJob implements IJob {
|
|||||||
// 计算该月的日期范围(月初到月末或昨天)
|
// 计算该月的日期范围(月初到月末或昨天)
|
||||||
LocalDate monthStartDate = monthEndDate.withDayOfMonth(1);
|
LocalDate monthStartDate = monthEndDate.withDayOfMonth(1);
|
||||||
LocalDate monthEnd = monthEndDate;
|
LocalDate monthEnd = monthEndDate;
|
||||||
int i =0;
|
|
||||||
// 遍历每个销售组织-客户组合
|
// 遍历每个销售组织-客户组合
|
||||||
for (RowMap row : maps) {
|
for (RowMap row : maps) {
|
||||||
if (i==1){
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
i++;
|
|
||||||
try {
|
try {
|
||||||
String manageRegionName = row.getString("QYGS");
|
String manageRegionName = row.getString("QYGS");
|
||||||
String saleOrgUnit = row.getString("XSZZ");
|
String saleOrgUnit = row.getString("XSZZ");
|
||||||
@ -149,7 +144,7 @@ public class WaterproofPaintAccountsReceivableJob implements IJob {
|
|||||||
|
|
||||||
// 计算应收余额
|
// 计算应收余额
|
||||||
BigDecimal ysye = qcye.add(ljxs).subtract(ljhk);
|
BigDecimal ysye = qcye.add(ljxs).subtract(ljhk);
|
||||||
LOGGER.info("计算应收余额={}",ysye.doubleValue());
|
// LOGGER.info("计算应收余额={}",ysye.doubleValue());
|
||||||
|
|
||||||
// 计算账龄分析(需要查询历史数据)
|
// 计算账龄分析(需要查询历史数据)
|
||||||
Map<String, BigDecimal> zlfx = calculateMonthlyAgingAnalysis(section, saleOrgUnit, custName, monthEndDate, ysye);
|
Map<String, BigDecimal> zlfx = calculateMonthlyAgingAnalysis(section, saleOrgUnit, custName, monthEndDate, ysye);
|
||||||
@ -255,8 +250,8 @@ public class WaterproofPaintAccountsReceivableJob implements IJob {
|
|||||||
" WHERE XSZZ = ? AND FCUSTNAME = ? AND DZRQ >= ? AND DZRQ< ?",
|
" WHERE XSZZ = ? AND FCUSTNAME = ? AND DZRQ >= ? AND DZRQ< ?",
|
||||||
saleOrgUnit, custName, startDateStr, endDateStr
|
saleOrgUnit, custName, startDateStr, endDateStr
|
||||||
);
|
);
|
||||||
LOGGER.info("期初余额-应收单总额sql:SELECT SUM(SSJERMB) as total FROM " + section.getYsdTable() +
|
// LOGGER.info("期初余额-应收单总额sql:SELECT SUM(SSJERMB) as total FROM " + section.getYsdTable() +
|
||||||
" WHERE XSZZ = "+saleOrgUnit+" AND FCUSTNAME = "+custName+" AND DZRQ >= "+startDateStr+" AND DZRQ< "+endDateStr+"");
|
// " WHERE XSZZ = "+saleOrgUnit+" AND FCUSTNAME = "+custName+" AND DZRQ >= "+startDateStr+" AND DZRQ< "+endDateStr+"");
|
||||||
|
|
||||||
BigDecimal ysTotal = ysResult != null && ysResult.get("total") != null ?
|
BigDecimal ysTotal = ysResult != null && ysResult.get("total") != null ?
|
||||||
new BigDecimal(ysResult.get("total").toString()) : BigDecimal.ZERO;
|
new BigDecimal(ysResult.get("total").toString()) : BigDecimal.ZERO;
|
||||||
@ -267,8 +262,8 @@ public class WaterproofPaintAccountsReceivableJob implements IJob {
|
|||||||
" WHERE FSALEORGUNIT = ? AND FCUSTNAME = ? AND FBILLDATE >= ? AND FBILLDATE < ?",
|
" WHERE FSALEORGUNIT = ? AND FCUSTNAME = ? AND FBILLDATE >= ? AND FBILLDATE < ?",
|
||||||
saleOrgUnit, custName, startDateStr, endDateStr
|
saleOrgUnit, custName, startDateStr, endDateStr
|
||||||
);
|
);
|
||||||
LOGGER.info("期初余额-收款单总额sql:SELECT SUM(FSALEAMOUNTRMB) as total FROM " + section.getSkdTable() +
|
// LOGGER.info("期初余额-收款单总额sql:SELECT SUM(FSALEAMOUNTRMB) as total FROM " + section.getSkdTable() +
|
||||||
" WHERE FSALEORGUNIT = "+saleOrgUnit+" AND FCUSTNAME = "+custName+" AND FBILLDATE >= "+startDateStr+" AND FBILLDATE< "+endDateStr+"");
|
// " WHERE FSALEORGUNIT = "+saleOrgUnit+" AND FCUSTNAME = "+custName+" AND FBILLDATE >= "+startDateStr+" AND FBILLDATE< "+endDateStr+"");
|
||||||
|
|
||||||
BigDecimal skTotal = skResult != null && skResult.get("total") != null ?
|
BigDecimal skTotal = skResult != null && skResult.get("total") != null ?
|
||||||
new BigDecimal(skResult.get("total").toString()) : BigDecimal.ZERO;
|
new BigDecimal(skResult.get("total").toString()) : BigDecimal.ZERO;
|
||||||
@ -279,13 +274,13 @@ public class WaterproofPaintAccountsReceivableJob implements IJob {
|
|||||||
" WHERE FSALEORGUNIT = ? AND FCUSTNAME = ? AND FBILLDATE >= ? AND FBILLDATE < ?",
|
" WHERE FSALEORGUNIT = ? AND FCUSTNAME = ? AND FBILLDATE >= ? AND FBILLDATE < ?",
|
||||||
saleOrgUnit, custName, startDateStr, endDateStr
|
saleOrgUnit, custName, startDateStr, endDateStr
|
||||||
);
|
);
|
||||||
LOGGER.info("期初余额-收款退款单总额sql:SELECT SUM(FSALEAMOUNTRMB) as total FROM " + section.getSktkdTable() +
|
// LOGGER.info("期初余额-收款退款单总额sql:SELECT SUM(FSALEAMOUNTRMB) as total FROM " + section.getSktkdTable() +
|
||||||
" WHERE FSALEORGUNIT = "+saleOrgUnit+" AND FCUSTNAME = "+custName+" AND FBILLDATE >= "+startDateStr+" AND FBILLDATE< "+endDateStr+"");
|
// " WHERE FSALEORGUNIT = "+saleOrgUnit+" AND FCUSTNAME = "+custName+" AND FBILLDATE >= "+startDateStr+" AND FBILLDATE< "+endDateStr+"");
|
||||||
|
|
||||||
BigDecimal sktkTotal = sktkResult != null && sktkResult.get("total") != null ?
|
BigDecimal sktkTotal = sktkResult != null && sktkResult.get("total") != null ?
|
||||||
new BigDecimal(sktkResult.get("total").toString()) : BigDecimal.ZERO;
|
new BigDecimal(sktkResult.get("total").toString()) : BigDecimal.ZERO;
|
||||||
|
|
||||||
LOGGER.info("期初余额:{}",sktkTotal.doubleValue());
|
// LOGGER.info("期初余额:{}",sktkTotal.doubleValue());
|
||||||
// 期初余额 = 应收单总额 - 收款单总额 + 收款退款单总额
|
// 期初余额 = 应收单总额 - 收款单总额 + 收款退款单总额
|
||||||
return ysTotal.subtract(skTotal).add(sktkTotal);
|
return ysTotal.subtract(skTotal).add(sktkTotal);
|
||||||
|
|
||||||
@ -308,8 +303,8 @@ public class WaterproofPaintAccountsReceivableJob implements IJob {
|
|||||||
" WHERE XSZZ = ? AND FCUSTNAME = ? AND DZRQ >= ? AND DZRQ < ?",
|
" WHERE XSZZ = ? AND FCUSTNAME = ? AND DZRQ >= ? AND DZRQ < ?",
|
||||||
saleOrgUnit, custName, startDateStr, endDateStr
|
saleOrgUnit, custName, startDateStr, endDateStr
|
||||||
);
|
);
|
||||||
LOGGER.info("计算累计销售:SELECT SUM(SSJERMB) as total FROM " + section.getYsdTable() +
|
// LOGGER.info("计算累计销售:SELECT SUM(SSJERMB) as total FROM " + section.getYsdTable() +
|
||||||
" WHERE XSZZ = "+saleOrgUnit+" AND FCUSTNAME = "+custName+" AND DZRQ >= "+startDateStr+" AND DZRQ < "+endDateStr+"");
|
// " WHERE XSZZ = "+saleOrgUnit+" AND FCUSTNAME = "+custName+" AND DZRQ >= "+startDateStr+" AND DZRQ < "+endDateStr+"");
|
||||||
|
|
||||||
// LOGGER.info("累计销售={}",result != null && result.get("total") != null ?
|
// LOGGER.info("累计销售={}",result != null && result.get("total") != null ?
|
||||||
// new BigDecimal(result.get("total").toString()) : BigDecimal.ZERO);
|
// new BigDecimal(result.get("total").toString()) : BigDecimal.ZERO);
|
||||||
@ -336,8 +331,8 @@ public class WaterproofPaintAccountsReceivableJob implements IJob {
|
|||||||
" WHERE FSALEORGUNIT = ? AND FCUSTNAME = ? AND FBILLDATE >= ? AND FBILLDATE < ?",
|
" WHERE FSALEORGUNIT = ? AND FCUSTNAME = ? AND FBILLDATE >= ? AND FBILLDATE < ?",
|
||||||
saleOrgUnit, custName, startDateStr, endDateStr
|
saleOrgUnit, custName, startDateStr, endDateStr
|
||||||
);
|
);
|
||||||
LOGGER.info("计算累计还款:SELECT SUM(FSALEAMOUNTRMB) as total FROM " + section.getSkdTable() +
|
// LOGGER.info("计算累计还款:SELECT SUM(FSALEAMOUNTRMB) as total FROM " + section.getSkdTable() +
|
||||||
" WHERE FSALEORGUNIT = "+saleOrgUnit+" AND FCUSTNAME = "+custName+" AND FBILLDATE >= "+startDateStr+" AND FBILLDATE < "+endDateStr+"");
|
// " WHERE FSALEORGUNIT = "+saleOrgUnit+" AND FCUSTNAME = "+custName+" AND FBILLDATE >= "+startDateStr+" AND FBILLDATE < "+endDateStr+"");
|
||||||
|
|
||||||
BigDecimal skTotal = skResult != null && skResult.get("total") != null ?
|
BigDecimal skTotal = skResult != null && skResult.get("total") != null ?
|
||||||
new BigDecimal(skResult.get("total").toString()) : BigDecimal.ZERO;
|
new BigDecimal(skResult.get("total").toString()) : BigDecimal.ZERO;
|
||||||
|
|||||||
@ -448,7 +448,7 @@ public class SaleCountDimensionImpl implements DataSummaryService {
|
|||||||
" LB_2, LB_3, SQ, CS, QY, SUM(ZSSL) AS XL," +
|
" LB_2, LB_3, SQ, CS, QY, SUM(ZSSL) AS XL," +
|
||||||
" SUM(SSJERMB) AS XE, SUM(XSSL) AS TSXL, SUM(NMNY) AS BHSXE,YEARMONTH" +
|
" SUM(SSJERMB) AS XE, SUM(XSSL) AS TSXL, SUM(NMNY) AS BHSXE,YEARMONTH" +
|
||||||
" FROM " + SALES_DETAIL_TABLE +
|
" FROM " + SALES_DETAIL_TABLE +
|
||||||
" WHERE DZRQ >= ? AND DZRQ < ? AND BKGS = ?" +
|
" WHERE DZRQ >= ? AND BKGS = ?" +
|
||||||
" GROUP BY QYGS, KCZZ, " +
|
" GROUP BY QYGS, KCZZ, " +
|
||||||
" CASE " +
|
" CASE " +
|
||||||
" WHEN BKGS = '龙牌' AND LB_1 IN ('装饰石膏板', '鲁班装饰万能板', '石膏板') THEN '石膏板'" +
|
" WHEN BKGS = '龙牌' AND LB_1 IN ('装饰石膏板', '鲁班装饰万能板', '石膏板') THEN '石膏板'" +
|
||||||
@ -471,8 +471,7 @@ public class SaleCountDimensionImpl implements DataSummaryService {
|
|||||||
// " t1.YEARMONTH ORDER BY t1.DZRQ, t1.QYGS, t1.KCZZ";
|
// " t1.YEARMONTH ORDER BY t1.DZRQ, t1.QYGS, t1.KCZZ";
|
||||||
|
|
||||||
LOGGER.info("销量销额数据查询,SQL: {}", querySql);
|
LOGGER.info("销量销额数据查询,SQL: {}", querySql);
|
||||||
List<RowMap> maps = DBSql.getMaps(querySql, DATE_FORMAT.format(dateRange.getStartDate()),
|
List<RowMap> maps = DBSql.getMaps(querySql, DATE_FORMAT.format(dateRange.getStartDate()), bkgs);
|
||||||
DATE_FORMAT.format(dateRange.getEndDate()), bkgs);
|
|
||||||
|
|
||||||
if (maps.isEmpty()) {
|
if (maps.isEmpty()) {
|
||||||
LOGGER.info("销量销额数据无数据,停止查询");
|
LOGGER.info("销量销额数据无数据,停止查询");
|
||||||
|
|||||||
@ -844,7 +844,8 @@ public class SaleDataSyncServiceImpl implements DataSyncService {
|
|||||||
}
|
}
|
||||||
if ("北新防水".equals(map.getString("BKGS")) && "否".equals(map.getString("F_SFNBJY"))
|
if ("北新防水".equals(map.getString("BKGS")) && "否".equals(map.getString("F_SFNBJY"))
|
||||||
&& !map.getString("XSZZ").equals("北新防水工程(辽宁)有限公司")
|
&& !map.getString("XSZZ").equals("北新防水工程(辽宁)有限公司")
|
||||||
&& !map.getString("XSZZ").equals("北新防水工程(四川)有限公司")){
|
&& !map.getString("XSZZ").equals("北新防水工程(四川)有限公司")
|
||||||
|
&& StringUtils.isBlank(map.getString("F_SFNBJY"))){
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
// 复制所有字段(排除系统字段)
|
// 复制所有字段(排除系统字段)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user