一体化营业收入代码优化

This commit is contained in:
yujh_java 2025-09-18 17:22:31 +08:00
parent aa424e48d7
commit b34a91ab1a

View File

@ -881,9 +881,9 @@ public class SaleDataSummaryServiceImpl implements DataSummaryService {
+ " WHERE YEARMONTH >= '" + yearMonth + "' AND BKGS = '"+bkgs+"'");
LOGGER.info("准备同步{}年{}月-营业收入累计数据,删除了{}条数据",year, month,delete);
//计算轻钢龙骨和石膏板
String querySql = " SELECT " +
/*String querySql = " SELECT " +
" BKGS, " +
" LB_1, " +
" CASE WHEN LB_1 LIKE '%涂料%' THEN '涂料' ELSE LB_1 END AS LB_1, " +
" CASE " +
" WHEN SQ LIKE '%海南%' THEN '海南' " +
" WHEN SQ LIKE '%新疆%' THEN '新疆' " +
@ -896,7 +896,7 @@ public class SaleDataSummaryServiceImpl implements DataSummaryService {
" (SQ LIKE '%海南%' OR SQ LIKE '%新疆%' OR SQ LIKE '%西藏%') " +
" AND DZRQ >= ? " +
" AND BKGS = ? " +
" AND LB_1 IN ('石膏板', '轻钢龙骨', '涂料') " +
" AND (LB_1 IN ('石膏板', '轻钢龙骨') OR LB_1 LIKE '%涂料%') " +
" GROUP BY " +
" BKGS, " +
" LB_1, " +
@ -911,7 +911,7 @@ public class SaleDataSummaryServiceImpl implements DataSummaryService {
" SELECT " +
" BKGS, " +
" LB_1, " +
" CASE WHEN LB_1 LIKE '%涂料%' THEN '涂料' ELSE LB_1 END AS LB_1, " +
" '一体化' AS PROVINCE, " +
" DATE_FORMAT(DZRQ, '%Y-%m') AS YEARMONTH, " +
" SUM(NMNY) AS REVENUE_AMOUNT " +
@ -920,7 +920,7 @@ public class SaleDataSummaryServiceImpl implements DataSummaryService {
" (SQ LIKE '%海南%' OR SQ LIKE '%新疆%' OR SQ LIKE '%西藏%') " +
" AND DZRQ >= ? " +
" AND BKGS = ? " +
" AND LB_1 IN ('石膏板', '轻钢龙骨', '涂料') " +
" AND (LB_1 IN ('石膏板', '轻钢龙骨') OR LB_1 LIKE '%涂料%') " +
"GROUP BY " +
" BKGS, " +
" LB_1, " +
@ -929,7 +929,69 @@ public class SaleDataSummaryServiceImpl implements DataSummaryService {
"ORDER BY " +
" YEARMONTH ASC, " +
" PROVINCE ASC, " +
" LB_1 ASC";
" LB_1 ASC";*/
String querySql =
"SELECT " +
" BKGS, " +
" CASE WHEN LB_1 LIKE '%涂料%' THEN '涂料' ELSE LB_1 END AS LB_1, " +
" CASE " +
" WHEN SQ LIKE '%海南%' THEN '海南' " +
" WHEN SQ LIKE '%新疆%' THEN '新疆' " +
" WHEN SQ LIKE '%西藏%' THEN '西藏' " +
" END AS PROVINCE, " +
" DATE_FORMAT(DZRQ, '%Y-%m') AS YEARMONTH, " +
" SUM(NMNY) AS REVENUE_AMOUNT " +
"FROM BO_EU_BNBM_DATALINKUP_XS_XSL_HZ " +
"WHERE " +
" (SQ LIKE '%海南%' OR SQ LIKE '%新疆%' OR SQ LIKE '%西藏%') " +
" AND DZRQ >= ? " +
" AND BKGS = ? " +
" AND (" +
" LB_1 IN ('石膏板', '轻钢龙骨') " +
" OR (" +
" ? IN ('北新嘉宝莉', '北新涂料') " +
" AND LB_1 LIKE '%涂料%' " +
" ) " +
" ) " +
"GROUP BY " +
" BKGS, " +
" LB_1, " +
" CASE " +
" WHEN SQ LIKE '%海南%' THEN '海南' " +
" WHEN SQ LIKE '%新疆%' THEN '新疆' " +
" WHEN SQ LIKE '%西藏%' THEN '西藏' " +
" END, " +
" DATE_FORMAT(DZRQ, '%Y-%m') " +
"UNION ALL " +
"SELECT " +
" BKGS, " +
" CASE WHEN LB_1 LIKE '%涂料%' THEN '涂料' ELSE LB_1 END AS LB_1, " +
" '一体化' AS PROVINCE, " +
" DATE_FORMAT(DZRQ, '%Y-%m') AS YEARMONTH, " +
" SUM(NMNY) AS REVENUE_AMOUNT " +
"FROM BO_EU_BNBM_DATALINKUP_XS_XSL_HZ " +
"WHERE " +
" (SQ LIKE '%海南%' OR SQ LIKE '%新疆%' OR SQ LIKE '%西藏%') " +
" AND DZRQ >= ? " +
" AND BKGS = ? " +
" AND (" +
" LB_1 IN ('石膏板', '轻钢龙骨') " +
" OR (" +
" ? IN ('北新嘉宝莉', '北新涂料') " +
" AND LB_1 LIKE '%涂料%' " +
" ) " +
" ) " +
"GROUP BY " +
" BKGS, " +
" LB_1, " +
" '一体化', " +
" DATE_FORMAT(DZRQ, '%Y-%m') " +
"ORDER BY " +
" YEARMONTH ASC, " +
" PROVINCE ASC, " +
" LB_1 ASC";
List<RowMap> rowMaps = DBSql.getMaps(querySql, startDate,bkgs,startDate,bkgs);
LOGGER.info("板块公司:{},本次查询数据:{}",bkgs,rowMaps.size());