Browse Source

cim-查新重点企业修改,查询区域领域季度修改

dev-V1.10.1
niujiyi 1 month ago
parent
commit
7e11ce6ded
  1. 20
      script/sql/zfjd-refactoring-v1/其他/njy/2026-1.10.0.sql
  2. 23
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/DashboardTrendStatArea.java
  3. 23
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/DashboardTrendStatDomain.java
  4. 22
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/CimDashboardOverviewVo.java
  5. 61
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/CimDashboardOverviewDataSumSserviceImpl.java
  6. 57
      zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/CimDashboardOverviewMapper.xml

20
script/sql/zfjd-refactoring-v1/其他/njy/2026-1.10.0.sql

@ -94,3 +94,23 @@ CREATE TABLE `dashboard_overview_personnel` (
KEY `idx_year_month` (`year`,`month`),
KEY `idx_is_delete` (`is_delete`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='大屏总览统计-执法人员数表';
ALTER TABLE dashboard_trend_stat_area ADD firstTime varchar(100) NULL COMMENT '一季度时间';
ALTER TABLE dashboard_trend_stat_area CHANGE firstTime firstTime varchar(100) NULL COMMENT '一季度时间' AFTER firstQuarter;
ALTER TABLE dashboard_trend_stat_area ADD secondTime varchar(100) NULL COMMENT '二季度时间';
ALTER TABLE dashboard_trend_stat_area CHANGE secondTime secondTime varchar(100) NULL COMMENT '二季度时间' AFTER secondQuarter;
ALTER TABLE dashboard_trend_stat_area ADD thirdTime varchar(100) NULL COMMENT '三季度时间';
ALTER TABLE dashboard_trend_stat_area CHANGE thirdTime thirdTime varchar(100) NULL COMMENT '三季度时间' AFTER thirdQuarter;
ALTER TABLE dashboard_trend_stat_area ADD fourthTime varchar(100) NULL COMMENT '四季度时间';
ALTER TABLE dashboard_trend_stat_area CHANGE fourthTime fourthTime varchar(100) NULL COMMENT '四季度时间' AFTER fourthQuarter;
ALTER TABLE dashboard_trend_stat_domain ADD firstTime varchar(100) NULL COMMENT '一季度时间';
ALTER TABLE dashboard_trend_stat_domain CHANGE firstTime firstTime varchar(100) NULL COMMENT '一季度时间' AFTER firstQuarter;
ALTER TABLE dashboard_trend_stat_domain ADD secondTime varchar(100) NULL COMMENT '二季度时间';
ALTER TABLE dashboard_trend_stat_domain CHANGE secondTime secondTime varchar(100) NULL COMMENT '二季度时间' AFTER secondQuarter;
ALTER TABLE dashboard_trend_stat_domain ADD thirdTime varchar(100) NULL COMMENT '三季度时间';
ALTER TABLE dashboard_trend_stat_domain CHANGE thirdTime thirdTime varchar(100) NULL COMMENT '三季度时间' AFTER thirdQuarter;
ALTER TABLE dashboard_trend_stat_domain ADD fourthTime varchar(100) NULL COMMENT '四季度时间';
ALTER TABLE dashboard_trend_stat_domain CHANGE fourthTime fourthTime varchar(100) NULL COMMENT '四季度时间' AFTER fourthQuarter;

23
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/DashboardTrendStatArea.java

@ -52,21 +52,44 @@ public class DashboardTrendStatArea extends BaseEntity {
*/
private Long firstquarter;
/**
* 一季度时间
*/
@TableField(value = "firstTime")
private String firstTime;
/**
* 二季度
*/
private Long secondquarter;
/**
* 二季度时间
*/
@TableField(value = "secondTime")
private String secondTime;
/**
* 三季度
*/
private Long thirdquarter;
/**
* 三季度时间
*/
@TableField(value = "thirdTime")
private String thirdTime;
/**
* 四季度
*/
private Long fourthquarter;
/**
* 四季度时间
*/
@TableField(value = "fourthTime")
private String fourthTime;
/**
* 检查次数
*/

23
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/DashboardTrendStatDomain.java

@ -52,21 +52,44 @@ public class DashboardTrendStatDomain extends BaseEntity {
*/
private Long firstquarter;
/**
* 一季度时间
*/
@TableField(value = "firstTime")
private String firstTime;
/**
* 二季度
*/
private Long secondquarter;
/**
* 二季度时间
*/
@TableField(value = "secondTime")
private String secondTime;
/**
* 三季度
*/
private Long thirdquarter;
/**
* 三季度时间
*/
@TableField(value = "thirdTime")
private String thirdTime;
/**
* 四季度
*/
private Long fourthquarter;
/**
* 四季度时间
*/
@TableField(value = "fourthTime")
private String fourthTime;
/**
* 检查次数
*/

22
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/CimDashboardOverviewVo.java

@ -135,21 +135,43 @@ public class CimDashboardOverviewVo {
*/
private Long firstQuarter;
/**
* 一季度时间
*/
private String firstTime;
/**
* 二季度
*/
private Long secondQuarter;
/**
* 二季度时间
*/
private String secondTime;
/**
* 三季度
*/
private Long thirdQuarter;
/**
* 三季度时间
*/
private String thirdTime;
/**
* 四季度
*/
private Long fourthQuarter;
/**
* 四季度时间
*/
private String fourthTime;
/**
* 领域ID
*/

61
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/CimDashboardOverviewDataSumSserviceImpl.java

@ -472,13 +472,17 @@ public class CimDashboardOverviewDataSumSserviceImpl implements ICimDashboardOve
// 获取当前系统时间
CimDashboardOverviewQueryBo bo=getDateTime() ;
// 锁定基准月份:TbHbUtils.calculate 内部会通过 lambda 反复执行 bo.setMonthTime(...),
// 会导致 bo.monthTime 被污染,后续 calculate 的基准月会取到错误月份。
Date baseMonthTime = bo.getMonthTime();
// 行政执法数 + 同比 + 环比
TbHbUtils.TbHbResult tbHb = TbHbUtils.calculate(
monthTime -> {
bo.setMonthTime(monthTime);
return cimDashboardOverviewMapper.getEnfRegistrationCountByMonth(bo);
},
bo.getMonthTime()
baseMonthTime
);
vo.setXzzfs(tbHb.currentCount);
vo.setXzzfsTb(tbHb.tb);
@ -490,7 +494,7 @@ public class CimDashboardOverviewDataSumSserviceImpl implements ICimDashboardOve
bo.setMonthTime(monthTime);
return cimDashboardOverviewMapper.getCheckCaseCount(bo);
},
bo.getMonthTime()
baseMonthTime
);
vo.setXzjcajs(checkCasetbHb.currentCount);
vo.setXzjcajsTb(checkCasetbHb.tb);
@ -503,7 +507,7 @@ public class CimDashboardOverviewDataSumSserviceImpl implements ICimDashboardOve
bo.setMonthTime(monthTime);
return cimDashboardOverviewMapper.getPenaltyCaseCount(bo);
},
bo.getMonthTime()
baseMonthTime
);
vo.setXzcfajs(xzcfajsTbHb.currentCount);
vo.setXzcfajsTb(xzcfajsTbHb.tb);
@ -515,7 +519,7 @@ public class CimDashboardOverviewDataSumSserviceImpl implements ICimDashboardOve
bo.setMonthTime(monthTime);
return cimDashboardOverviewMapper.getCompulsoryCaseCount( bo);
},
bo.getMonthTime()
baseMonthTime
);
vo.setXzqzajs(xzqzajsTbHb.currentCount);
vo.setXzqzajsTb(xzqzajsTbHb.tb);
@ -672,13 +676,17 @@ public class CimDashboardOverviewDataSumSserviceImpl implements ICimDashboardOve
// 获取当前系统时间
CimDashboardOverviewQueryBo bo=getDateTime() ;
// 锁定基准月份:TbHbUtils.calculate 内部会通过 lambda 反复执行 bo.setMonthTime(...),
// 会导致 bo.monthTime 被污染,后续 calculate 的基准月会取到错误月份。
Date baseMonthTime = bo.getMonthTime();
// 行政执法数 + 同比 + 环比
TbHbUtils.TbHbResult tbHb = TbHbUtils.calculate(
monthTime -> {
bo.setMonthTime(monthTime);
return cimDashboardOverviewMapper.getFileEnfRegistrationCountByMonth(bo);
},
bo.getMonthTime()
baseMonthTime
);
vo.setXzzfs(tbHb.currentCount);
vo.setXzzfsTb(tbHb.tb);
@ -690,7 +698,7 @@ public class CimDashboardOverviewDataSumSserviceImpl implements ICimDashboardOve
bo.setMonthTime(monthTime);
return cimDashboardOverviewMapper.getFieldCheckCaseCount(bo);
},
bo.getMonthTime()
baseMonthTime
);
vo.setXzjcajs(checkCasetbHb.currentCount);
vo.setXzjcajsTb(checkCasetbHb.tb);
@ -703,7 +711,7 @@ public class CimDashboardOverviewDataSumSserviceImpl implements ICimDashboardOve
bo.setMonthTime(monthTime);
return cimDashboardOverviewMapper.getFieldPenaltyCaseCount(bo);
},
bo.getMonthTime()
baseMonthTime
);
vo.setXzcfajs(xzcfajsTbHb.currentCount);
vo.setXzcfajsTb(xzcfajsTbHb.tb);
@ -715,7 +723,7 @@ public class CimDashboardOverviewDataSumSserviceImpl implements ICimDashboardOve
bo.setMonthTime(monthTime);
return cimDashboardOverviewMapper.getFieldCompulsoryCaseCount( bo);
},
bo.getMonthTime()
baseMonthTime
);
vo.setXzqzajs(xzqzajsTbHb.currentCount);
vo.setXzqzajsTb(xzqzajsTbHb.tb);
@ -904,10 +912,28 @@ public class CimDashboardOverviewDataSumSserviceImpl implements ICimDashboardOve
*/
@Override
public Map<String, Object> getKeyEnterprisesMonthDataSumMaps(CimDashboardOverviewQueryBo bo) {
CimDashboardOverviewVo vo = new CimDashboardOverviewVo();
// 获取当前系统时间
bo.setMonthTime(getDateTime().getMonthTime());
//查询重点企业
if(bo.getEnterpriseNumber()== null || bo.getEnterpriseNumber().equals("")){
LambdaQueryWrapper<DashboardEnterpriseCheck> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(DashboardEnterpriseCheck::getIsDelete, "0");
queryWrapper.eq(DashboardEnterpriseCheck::getStatYear, getDateTime().getYear());
queryWrapper.eq(DashboardEnterpriseCheck::getStatMonth, getDateTime().getMonth());
queryWrapper.orderByDesc(DashboardEnterpriseCheck::getXzzfzs);
queryWrapper.last("LIMIT 1");
DashboardEnterpriseCheck entity = dashboardEnterpriseCheckMapper.selectOne(queryWrapper);
bo.setEnterpriseNumber(entity.getEnterpriseNumber());
vo.setEnterpriseNumber(entity.getEnterpriseNumber());
vo.setEnterpriseName(entity.getEnterpriseName());
vo.setEnterpriseAddress(entity.getEnterpriseAddress());
}
// 锁定基准月份:TbHbUtils.calculate 内部会通过 lambda 反复执行 bo.setMonthTime(...),
// 会导致 bo.monthTime 被污染,后续 calculate 的基准月以及趋势/明细查询都会取到错误月份。
Date baseMonthTime = bo.getMonthTime();
// 行政执法数 + 同比 + 环比
TbHbUtils.TbHbResult tbHb = TbHbUtils.calculate(
@ -915,7 +941,7 @@ public class CimDashboardOverviewDataSumSserviceImpl implements ICimDashboardOve
bo.setMonthTime(monthTime);
return cimDashboardOverviewMapper.getFileEnfRegistrationCountByMonth(bo);
},
bo.getMonthTime()
baseMonthTime
);
vo.setXzzfs(tbHb.currentCount);
vo.setXzzfsTb(tbHb.tb);
@ -927,7 +953,7 @@ public class CimDashboardOverviewDataSumSserviceImpl implements ICimDashboardOve
bo.setMonthTime(monthTime);
return cimDashboardOverviewMapper.getNonEnfRegistrationCount(bo);
},
bo.getMonthTime()
baseMonthTime
);
vo.setFxzzfs(fxzzftbHb.currentCount);
vo.setFxzzfsTb(fxzzftbHb.tb);
@ -939,12 +965,14 @@ public class CimDashboardOverviewDataSumSserviceImpl implements ICimDashboardOve
bo.setMonthTime(monthTime);
return cimDashboardOverviewMapper.getUnionLawCount(bo);
},
bo.getMonthTime()
baseMonthTime
);
vo.setLhzfs(lhzfstbHb.currentCount);
vo.setLhzfsTb(lhzfstbHb.tb);
vo.setLhzfsHb(lhzfstbHb.hb);
// 恢复基准月份,保证趋势/明细查询使用正确的月份(上一个月)
bo.setMonthTime(baseMonthTime);
List<CimDashboardOverviewVo> List= cimDashboardOverviewMapper.getEnfRegistrationTrend(bo);
List<CimDashboardOverviewVo> list1=cimDashboardOverviewMapper.getKeyEnterpriseEnfRegDetails(bo);
@ -976,10 +1004,13 @@ public class CimDashboardOverviewDataSumSserviceImpl implements ICimDashboardOve
entity.setDistrictCode(vo.getCode());
entity.setDistrictName(vo.getName());
entity.setFirstquarter(vo.getFirstQuarter());
entity.setFirstTime(vo.getFirstTime());
entity.setSecondquarter(vo.getSecondQuarter());
entity.setSecondTime(vo.getSecondTime());
entity.setThirdquarter(vo.getThirdQuarter());
entity.setThirdTime(vo.getThirdTime());
entity.setFourthquarter(vo.getFourthQuarter());
entity.setFourthTime(vo.getFourthTime());
entity.setIsDelete("0");
areaList.add(entity);
}
@ -1106,9 +1137,13 @@ public class CimDashboardOverviewDataSumSserviceImpl implements ICimDashboardOve
entity.setDomainId(vo.getCode());
entity.setDomainName(vo.getName());
entity.setFirstquarter(vo.getFirstQuarter());
entity.setFirstTime(vo.getFirstTime());
entity.setSecondquarter(vo.getSecondQuarter());
entity.setSecondTime(vo.getSecondTime());
entity.setThirdquarter(vo.getThirdQuarter());
entity.setThirdTime(vo.getThirdTime());
entity.setFourthquarter(vo.getFourthQuarter());
entity.setFourthTime(vo.getFourthTime());
entity.setIsDelete("0");
domainList.add(entity);

57
zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/CimDashboardOverviewMapper.xml

@ -346,7 +346,7 @@
<!-- 获取区域检查趋势分析(季度) -->
<select id="getQuarterlyRegionList" resultType="com.zdxt.enforcementcode.domain.vo.CimDashboardOverviewVo" parameterType="com.zdxt.enforcementcode.domain.bo.CimDashboardOverviewQueryBo">
select
<!--select
t3.code,
t3.name,
sum(case when QUARTER(t1.enforcement_time)= 1 then 1 else 0 end) as firstQuarter,
@ -411,12 +411,32 @@
</if>
<if test="scope =='topFive'">
limit 5
</if>
</if>-->
SELECT
t3.code,
t3.name,
CONCAT(FLOOR((YEAR(NOW())*4+QUARTER(NOW())-4-1)/4),'Q',(YEAR(NOW())*4+QUARTER(NOW())-4-1)%4+1) AS firstTime,
SUM(CASE WHEN YEAR(t1.enforcement_time)*4+QUARTER(t1.enforcement_time)=YEAR(NOW())*4+QUARTER(NOW())-4 THEN 1 ELSE 0 END ) AS firstQuarter,
CONCAT(FLOOR((YEAR(NOW())*4+QUARTER(NOW())-3-1)/4),'Q',(YEAR(NOW())*4+QUARTER(NOW())-3-1)%4+1) AS secondTime,
SUM(CASE WHEN YEAR(t1.enforcement_time)*4+QUARTER(t1.enforcement_time)=YEAR(NOW())*4+QUARTER(NOW())-3 THEN 1 ELSE 0 END ) AS secondQuarter,
CONCAT(FLOOR((YEAR(NOW())*4+QUARTER(NOW())-2-1)/4),'Q',(YEAR(NOW())*4+QUARTER(NOW())-2-1)%4+1) AS thirdTime,
SUM(CASE WHEN YEAR(t1.enforcement_time)*4+QUARTER(t1.enforcement_time)=YEAR(NOW())*4+QUARTER(NOW())-2 THEN 1 ELSE 0 END ) AS thirdQuarter,
CONCAT(FLOOR((YEAR(NOW())*4+QUARTER(NOW())-1-1)/4),'Q',(YEAR(NOW())*4+QUARTER(NOW())-1-1)%4+1) AS fourthTime,
SUM(CASE WHEN YEAR(t1.enforcement_time)*4+QUARTER(t1.enforcement_time)=YEAR(NOW())*4+QUARTER(NOW())-1 THEN 1 ELSE 0 END ) AS fourthQuarter,
COUNT(1) AS total_cnt
FROM enforcement_registration t1
LEFT JOIN sys_dept t2 ON t1.bureau_dept_id = t2.dept_id
LEFT JOIN dashboard_area_info t3 ON t2.area_node = t3.code AND t3.`level` = 3
WHERE t3.code IS NOT NULL
AND t1.is_delete = 0
AND t1.is_submit = 1
AND YEAR(t1.enforcement_time)*4+QUARTER(t1.enforcement_time) BETWEEN YEAR(NOW())*4+QUARTER(NOW())-4 AND YEAR(NOW())*4 + QUARTER(NOW())-1
GROUP BY t3.code, t3.name
</select>
<!-- 获取领域检查趋势分析(季度) -->
<select id="getDomainQuarterList" resultType="com.zdxt.enforcementcode.domain.vo.CimDashboardOverviewVo" parameterType="com.zdxt.enforcementcode.domain.bo.CimDashboardOverviewQueryBo">
select
<!--select
t3.domain_id as code,
t3.domain_name as name,
sum(case when QUARTER(t1.enforcement_time)= 1 then 1 else 0 end) as firstQuarter,
@ -480,7 +500,31 @@
</if>
<if test="scope =='topFive'">
limit 5
</if>
</if>-->
SELECT
t3.domain_id as code,
t3.domain_name as name,
CONCAT(FLOOR((YEAR(NOW())*4+QUARTER(NOW())-4-1)/4),'Q',(YEAR(NOW())*4+QUARTER(NOW())-4-1)%4+1) AS firstTime,
SUM(CASE WHEN YEAR(t1.enforcement_time)*4+QUARTER(t1.enforcement_time)=YEAR(NOW())*4+QUARTER(NOW())-4 THEN 1 ELSE 0 END ) AS firstQuarter,
CONCAT(FLOOR((YEAR(NOW())*4+QUARTER(NOW())-3-1)/4),'Q',(YEAR(NOW())*4+QUARTER(NOW())-3-1)%4+1) AS secondTime,
SUM(CASE WHEN YEAR(t1.enforcement_time)*4+QUARTER(t1.enforcement_time)=YEAR(NOW())*4+QUARTER(NOW())-3 THEN 1 ELSE 0 END ) AS secondQuarter,
CONCAT(FLOOR((YEAR(NOW())*4+QUARTER(NOW())-2-1)/4),'Q',(YEAR(NOW())*4+QUARTER(NOW())-2-1)%4+1) AS thirdTime,
SUM(CASE WHEN YEAR(t1.enforcement_time)*4+QUARTER(t1.enforcement_time)=YEAR(NOW())*4+QUARTER(NOW())-2 THEN 1 ELSE 0 END ) AS thirdQuarter,
CONCAT(FLOOR((YEAR(NOW())*4+QUARTER(NOW())-1-1)/4),'Q',(YEAR(NOW())*4+QUARTER(NOW())-1-1)%4+1) AS fourthTime,
SUM(CASE WHEN YEAR(t1.enforcement_time)*4+QUARTER(t1.enforcement_time)=YEAR(NOW())*4+QUARTER(NOW())-1 THEN 1 ELSE 0 END ) AS fourthQuarter,
COUNT(1) AS total_cnt
from enforcement_registration t1
left join sys_dept t2 on
t1.bureau_dept_id = t2.dept_id
left join dashboard_domain_dept t3 on
t2.dept_id = t3.dept_id
WHERE t3.domain_id is not null
AND t1.is_delete = 0
AND t1.is_submit = 1
AND YEAR(t1.enforcement_time)*4+QUARTER(t1.enforcement_time) BETWEEN YEAR(NOW())*4+QUARTER(NOW())-4 AND YEAR(NOW())*4 + QUARTER(NOW())-1
GROUP BY
t3.domain_id ,
t3.domain_name
</select>
<!-- 获取涉企登记执法类别 (实)-->
@ -1565,7 +1609,7 @@
AND t1.enterprise_number IS NOT NULL
AND t1.enterprise_name IS NOT NULL
<if test="monthTime !=null">
AND DATE_FORMAT(t1.enforcement_time , '%Y-%m') = DATE_FORMAT(#{monthTime}, '%Y-%m')
AND DATE_FORMAT(t1.enforcement_time , '%Y') = DATE_FORMAT(#{monthTime}, '%Y')
</if>
<if test="enterpriseNumber !=null">
AND t1.enterprise_number = #{enterpriseNumber}
@ -1584,7 +1628,7 @@
<where>
t1.has_delete = 0
<if test="monthTime !=null">
AND DATE_FORMAT(t1.enforcement_time , '%Y-%m') = DATE_FORMAT(#{monthTime}, '%Y-%m')
AND DATE_FORMAT(t1.enforcement_time , '%Y') = DATE_FORMAT(#{monthTime}, '%Y')
</if>
<if test="enterpriseNumber !=null">
AND t1.enterprise_number = #{enterpriseNumber}
@ -1592,5 +1636,6 @@
</where>
) temp
GROUP BY enterprise_number, enterprise_name, stat_month
order by stat_month
</select>
</mapper>

Loading…
Cancel
Save