diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/cim/CimDashboardOverviewController.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/cim/CimDashboardOverviewController.java index 8aa2de71..7ce679d8 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/cim/CimDashboardOverviewController.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/cim/CimDashboardOverviewController.java @@ -62,7 +62,7 @@ public class CimDashboardOverviewController { * @return */ - @GetMapping("getAdminLawCount") + @GetMapping("/getAdminLawCount") public R getAdminLawCount(CimDashboardOverviewQueryBo bo){ CimDashboardOverviewVo vo = new CimDashboardOverviewVo(); diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/LawEnfOfficerController.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/LawEnfOfficerController.java new file mode 100644 index 00000000..08b14770 --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/LawEnfOfficerController.java @@ -0,0 +1,78 @@ +package com.zdxt.enforcementcode.controller.web.supervision.report; + + +import cn.dev33.satoken.annotation.SaIgnore; +import com.zdxt.enforcementcode.domain.bo.EnforcementRegistrationBo; +import com.zdxt.enforcementcode.domain.bo.dashboard.DashboardEnterpriseCheckListBo; +import com.zdxt.enforcementcode.domain.vo.EnforcementRegistrationVo; +import com.zdxt.enforcementcode.domain.vo.report.DashboardEnterpriseCheckListVo; +import com.zdxt.enforcementcode.report.ILawEnfOfficerService; +import jakarta.servlet.http.HttpServletResponse; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.dromara.common.excel.utils.ExcelUtil; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * 执法人员情况 + */ +@SaIgnore +@Slf4j +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/web/supervision/report/lawEnfOfficer") +public class LawEnfOfficerController { + + private final ILawEnfOfficerService lawEnfOfficerService; + + /** + * 重点企业-分页列表查询 + */ + @GetMapping("/list") + public TableDataInfo list(EnforcementRegistrationBo bo, PageQuery pageQuery) { + return lawEnfOfficerService.selectLawEnfOfficerPageList( pageQuery,bo); + } + + /** + * 重点企业-查询详情 + * @param bo + * @param pageQuery + * @return + */ + @GetMapping("/details") + public TableDataInfo detatils(EnforcementRegistrationBo bo, PageQuery pageQuery){ + TableDataInfo list=lawEnfOfficerService.selectLawEnfOfficerDetailsPageList(pageQuery,bo); + return list; + } + + + + /** + * 重点企业-导出Excel + */ + @PostMapping("/export") + public void export(EnforcementRegistrationBo bo, HttpServletResponse response) { + try { + List list = lawEnfOfficerService.selectLawEnfOfficerList(bo); + ExcelUtil.exportExcel(list, "重点企业", EnforcementRegistrationVo.class, response); + } catch (Exception e) { + log.error("导出重点企业Excel异常", e); + response.reset(); + response.setContentType("application/json; charset=utf-8"); + try { + response.getWriter().write("{\"code\":500,\"msg\":\"导出失败: " + e.getMessage() + "\"}"); + } catch (Exception ignored) { + log.error("响应重置异常", ignored); + } + } + } +} diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EnforcementRegistrationVo.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EnforcementRegistrationVo.java index 857afc54..e97cec36 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EnforcementRegistrationVo.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EnforcementRegistrationVo.java @@ -424,4 +424,14 @@ public class EnforcementRegistrationVo implements Serializable { * 字典标签 */ private String dictLabel; + + /** + * 区名称 + */ + private String districtName; + + /** + * 执法次数 + */ + private Long zfcs; } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/LawEnfOfficerMapper.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/LawEnfOfficerMapper.java new file mode 100644 index 00000000..b803d7eb --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/LawEnfOfficerMapper.java @@ -0,0 +1,19 @@ +package com.zdxt.enforcementcode.mapper; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.zdxt.enforcementcode.domain.bo.EnforcementRegistrationBo; +import com.zdxt.enforcementcode.domain.vo.EnforcementRegistrationVo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +public interface LawEnfOfficerMapper { + + Page selectLawEnfOfficerPageList(@Param("page") Page page, + @Param("bo") EnforcementRegistrationBo bo); + + List selectLawEnfOfficerList(@Param("bo") EnforcementRegistrationBo bo); + + Page selectLawEnfOfficerDetailsPageList(@Param("page") Page page, + @Param("bo") EnforcementRegistrationBo bo); +} diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/ILawEnfOfficerService.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/ILawEnfOfficerService.java new file mode 100644 index 00000000..b45b0021 --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/ILawEnfOfficerService.java @@ -0,0 +1,18 @@ +package com.zdxt.enforcementcode.report; + + +import com.zdxt.enforcementcode.domain.bo.EnforcementRegistrationBo; +import com.zdxt.enforcementcode.domain.vo.EnforcementRegistrationVo; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; + +import java.util.List; + +public interface ILawEnfOfficerService { + + TableDataInfo selectLawEnfOfficerPageList(PageQuery pageQuery, EnforcementRegistrationBo bo); + + List selectLawEnfOfficerList(EnforcementRegistrationBo bo); + + TableDataInfo selectLawEnfOfficerDetailsPageList(PageQuery pageQuery,EnforcementRegistrationBo bo); +} diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/impl/LawEnfOfficerSericeImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/impl/LawEnfOfficerSericeImpl.java new file mode 100644 index 00000000..cafe6bd2 --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/impl/LawEnfOfficerSericeImpl.java @@ -0,0 +1,36 @@ +package com.zdxt.enforcementcode.report.impl; + + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.zdxt.enforcementcode.domain.bo.EnforcementRegistrationBo; +import com.zdxt.enforcementcode.domain.vo.EnforcementRegistrationVo; +import com.zdxt.enforcementcode.mapper.LawEnfOfficerMapper; +import com.zdxt.enforcementcode.report.ILawEnfOfficerService; +import lombok.RequiredArgsConstructor; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.springframework.stereotype.Service; + +import java.util.List; +@Service +@RequiredArgsConstructor +public class LawEnfOfficerSericeImpl implements ILawEnfOfficerService { + + private final LawEnfOfficerMapper lawEnfOfficerMapper; + @Override + public TableDataInfo selectLawEnfOfficerPageList(PageQuery pageQuery, EnforcementRegistrationBo bo) { + Page list=lawEnfOfficerMapper.selectLawEnfOfficerPageList(pageQuery.build(),bo); + return TableDataInfo.build(list); + } + + @Override + public List selectLawEnfOfficerList(EnforcementRegistrationBo bo) { + return lawEnfOfficerMapper.selectLawEnfOfficerList(bo); + } + + @Override + public TableDataInfo selectLawEnfOfficerDetailsPageList(PageQuery pageQuery, EnforcementRegistrationBo bo) { + Page list=lawEnfOfficerMapper.selectLawEnfOfficerDetailsPageList(pageQuery.build(),bo); + return TableDataInfo.build(list); + } +} diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/LawEnfOfficerMapper.xml b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/LawEnfOfficerMapper.xml new file mode 100644 index 00000000..6dff0699 --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/LawEnfOfficerMapper.xml @@ -0,0 +1,82 @@ + + + + + + select + t1.lawEnforcerId, + t1.lawEnforcer, + t1.bureauDeptId, + t1.bureauDeptName, + t1.zfcs, + t4.name as districtName + from + ( + select + law_enforcer_id as lawEnforcerId, + law_enforcer as lawEnforcer, + bureau_dept_id as bureauDeptId, + bureau_dept_name as bureauDeptName, + count(1) as zfcs + from + enforcement_registration t1 + + t1.is_submit = 1 + and t1.is_delete = 0 + and t1.enterprise_name is not null + and t1.enterprise_number is not null + + and t1.law_enforcer LIKE CONCAT('%', #{bo.lawEnforcer}, '%') + + + and DATE_FORMAT(t1.enforcement_time,'%Y-%m') = DATE_FORMAT(#{bo.enforcementTime},'%Y-%m') + + + group by + lawEnforcerId, + lawEnforcer, + bureauDeptId, + bureauDeptName) t1 + left join sys_user t2 on + t1.lawEnforcerId = t2.user_id + left join sys_dept t3 on + t2.dept_id = t3.dept_id + left join dashboard_area_info t4 on + t3.area_node = t4.code + and t4.level = 3 + + + + + + + +