diff --git a/src/main/java/com/hotwj/platform/securityManagement/hiddenDangerPlan/domain/vo/HotHiddenDangerPlanVo.java b/src/main/java/com/hotwj/platform/securityManagement/hiddenDangerPlan/domain/vo/HotHiddenDangerPlanVo.java index 301c255..9e60c34 100644 --- a/src/main/java/com/hotwj/platform/securityManagement/hiddenDangerPlan/domain/vo/HotHiddenDangerPlanVo.java +++ b/src/main/java/com/hotwj/platform/securityManagement/hiddenDangerPlan/domain/vo/HotHiddenDangerPlanVo.java @@ -97,5 +97,17 @@ public class HotHiddenDangerPlanVo implements Serializable { @ExcelProperty(value = "计划周期Key") private String planDateKey; + /** + * 已完成数 + */ + @ExcelProperty(value = "已完成数") + private Long completedCount; + + /** + * 未完成数 + */ + @ExcelProperty(value = "未完成数") + private Long pendingCount; + } diff --git a/src/main/java/com/hotwj/platform/securityManagement/hiddenDangerPlan/mapper/HotHiddenDangerPlanMapper.java b/src/main/java/com/hotwj/platform/securityManagement/hiddenDangerPlan/mapper/HotHiddenDangerPlanMapper.java index dd74e34..ad1509b 100644 --- a/src/main/java/com/hotwj/platform/securityManagement/hiddenDangerPlan/mapper/HotHiddenDangerPlanMapper.java +++ b/src/main/java/com/hotwj/platform/securityManagement/hiddenDangerPlan/mapper/HotHiddenDangerPlanMapper.java @@ -2,9 +2,15 @@ package com.hotwj.platform.securityManagement.hiddenDangerPlan.mapper; import com.hotwj.platform.securityManagement.hiddenDangerPlan.domain.HotHiddenDangerPlan; import com.hotwj.platform.securityManagement.hiddenDangerPlan.domain.vo.HotHiddenDangerPlanVo; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import java.util.List; + /** * 隐患排查Mapper接口 * @@ -14,4 +20,8 @@ import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; @Mapper public interface HotHiddenDangerPlanMapper extends BaseMapperPlus { + Page queryPageList(Page page, + @Param(Constants.WRAPPER) Wrapper queryWrapper); + + List queryList(@Param(Constants.WRAPPER) Wrapper queryWrapper); } diff --git a/src/main/java/com/hotwj/platform/securityManagement/hiddenDangerPlan/service/impl/HotHiddenDangerPlanServiceImpl.java b/src/main/java/com/hotwj/platform/securityManagement/hiddenDangerPlan/service/impl/HotHiddenDangerPlanServiceImpl.java index 85967cb..a18c4e9 100644 --- a/src/main/java/com/hotwj/platform/securityManagement/hiddenDangerPlan/service/impl/HotHiddenDangerPlanServiceImpl.java +++ b/src/main/java/com/hotwj/platform/securityManagement/hiddenDangerPlan/service/impl/HotHiddenDangerPlanServiceImpl.java @@ -90,7 +90,7 @@ public class HotHiddenDangerPlanServiceImpl implements IHotHiddenDangerPlanServi @Override public TableDataInfo queryPageList(HotHiddenDangerPlanBo bo, PageQuery pageQuery) { LambdaQueryWrapper lqw = buildQueryWrapper(bo); - Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + Page result = baseMapper.queryPageList(pageQuery.build(), lqw); return TableDataInfo.build(result); } @@ -103,7 +103,7 @@ public class HotHiddenDangerPlanServiceImpl implements IHotHiddenDangerPlanServi @Override public List queryList(HotHiddenDangerPlanBo bo) { LambdaQueryWrapper lqw = buildQueryWrapper(bo); - return baseMapper.selectVoList(lqw); + return baseMapper.queryList(lqw); } /** diff --git a/src/main/resources/mapper/securityManagement/HotHiddenDangerPlanMapper.xml b/src/main/resources/mapper/securityManagement/HotHiddenDangerPlanMapper.xml index ef62edc..7d4668f 100644 --- a/src/main/resources/mapper/securityManagement/HotHiddenDangerPlanMapper.xml +++ b/src/main/resources/mapper/securityManagement/HotHiddenDangerPlanMapper.xml @@ -3,4 +3,41 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> + + SELECT + p.id, + p.company_id, + p.inspect_id, + p.inspect_name, + p.plan_name, + p.start_date, + p.end_date, + p.progress, + p.remark, + p.is_deleted, + p.is_auto_generated_by_backend, + p.plan_date_key, + COALESCE(stats.completed_count, 0) AS completedCount, + COALESCE(stats.pending_count, 0) AS pendingCount + FROM hot_hidden_danger_plan p + LEFT JOIN ( + SELECT + i.plan_id, + SUM(CASE WHEN i.status IN (3, 9) THEN 1 ELSE 0 END) AS completed_count, + SUM(CASE WHEN i.status IS NULL OR i.status NOT IN (3, 9) THEN 1 ELSE 0 END) AS pending_count + FROM hot_hidden_danger_inspection i + WHERE i.is_deleted = 0 + GROUP BY i.plan_id + ) stats ON stats.plan_id = p.id + + + + +