Browse Source

Merge remote-tracking branch 'origin/dev' into dev

dev-V1.0.1
庄锐波 3 months ago
parent
commit
03a7824712
  1. 99
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/DashboardEnterpriseCheckController.java
  2. 99
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/DashboardEnterpriseMonitorController.java
  3. 79
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/DashboardEnterpriseCheckController.java
  4. 44
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/DashboardEnterpriseCheckQueryBo.java
  5. 131
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/DashboardEnforcementRegistrationInfoVo.java
  6. 35
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/DashboardEnterpriseCheckInfoVo.java
  7. 19
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/DashboardEnterpriseCheckMapper.java
  8. 12
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IDashboardEnterpriseCheckService.java
  9. 11
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IEnforcementRegistrationService.java
  10. 33
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/DashboardEnterpriseCheckServiceImpl.java
  11. 67
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementRegistrationServiceImpl.java
  12. 21
      zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/DashboardEnterpriseCheckMapper.xml

99
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/DashboardEnterpriseCheckController.java

@ -1,99 +0,0 @@
package com.zdxt.enforcementcode.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import com.zdxt.enforcementcode.domain.vo.DashboardEnterpriseCheckVo;
import com.zdxt.enforcementcode.domain.bo.DashboardEnterpriseCheckBo;
import com.zdxt.enforcementcode.service.IDashboardEnterpriseCheckService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 大屏重点企业监测检查按月统计
*
* @author Lion Li
* @date 2026-05-30
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/enforcementcode/enterpriseCheck")
public class DashboardEnterpriseCheckController extends BaseController {
private final IDashboardEnterpriseCheckService dashboardEnterpriseCheckService;
/**
* 查询大屏重点企业监测检查按月统计列表
*/
@GetMapping("/list")
public TableDataInfo<DashboardEnterpriseCheckVo> list(DashboardEnterpriseCheckBo bo, PageQuery pageQuery) {
return dashboardEnterpriseCheckService.queryPageList(bo, pageQuery);
}
/**
* 导出大屏重点企业监测检查按月统计列表
*/
@Log(title = "大屏重点企业监测检查(按月统计)", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(DashboardEnterpriseCheckBo bo, HttpServletResponse response) {
List<DashboardEnterpriseCheckVo> list = dashboardEnterpriseCheckService.queryList(bo);
ExcelUtil.exportExcel(list, "大屏重点企业监测检查(按月统计)", DashboardEnterpriseCheckVo.class, response);
}
/**
* 获取大屏重点企业监测检查按月统计详细信息
*
* @param id 主键
*/
@GetMapping("/getInfo")
public R<DashboardEnterpriseCheckVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(dashboardEnterpriseCheckService.queryById(id));
}
/**
* 新增大屏重点企业监测检查按月统计
*/
@Log(title = "大屏重点企业监测检查(按月统计)", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody DashboardEnterpriseCheckBo bo) {
return toAjax(dashboardEnterpriseCheckService.insertByBo(bo));
}
/**
* 修改大屏重点企业监测检查按月统计
*/
@Log(title = "大屏重点企业监测检查(按月统计)", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody DashboardEnterpriseCheckBo bo) {
return toAjax(dashboardEnterpriseCheckService.updateByBo(bo));
}
/**
* 删除大屏重点企业监测检查按月统计
*
* @param ids 主键串
*/
@Log(title = "大屏重点企业监测检查(按月统计)", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(dashboardEnterpriseCheckService.deleteWithValidByIds(List.of(ids), true));
}
}

99
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/DashboardEnterpriseMonitorController.java

@ -1,99 +0,0 @@
package com.zdxt.enforcementcode.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import com.zdxt.enforcementcode.domain.vo.DashboardEnterpriseMonitorVo;
import com.zdxt.enforcementcode.domain.bo.DashboardEnterpriseMonitorBo;
import com.zdxt.enforcementcode.service.IDashboardEnterpriseMonitorService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 大屏重点企业监测
*
* @author Lion Li
* @date 2026-05-30
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/enforcementcode/enterpriseMonitor")
public class DashboardEnterpriseMonitorController extends BaseController {
private final IDashboardEnterpriseMonitorService dashboardEnterpriseMonitorService;
/**
* 查询大屏重点企业监测列表
*/
@GetMapping("/list")
public TableDataInfo<DashboardEnterpriseMonitorVo> list(DashboardEnterpriseMonitorBo bo, PageQuery pageQuery) {
return dashboardEnterpriseMonitorService.queryPageList(bo, pageQuery);
}
/**
* 导出大屏重点企业监测列表
*/
@Log(title = "大屏重点企业监测", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(DashboardEnterpriseMonitorBo bo, HttpServletResponse response) {
List<DashboardEnterpriseMonitorVo> list = dashboardEnterpriseMonitorService.queryList(bo);
ExcelUtil.exportExcel(list, "大屏重点企业监测", DashboardEnterpriseMonitorVo.class, response);
}
/**
* 获取大屏重点企业监测详细信息
*
* @param id 主键
*/
@GetMapping("/getInfo")
public R<DashboardEnterpriseMonitorVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(dashboardEnterpriseMonitorService.queryById(id));
}
/**
* 新增大屏重点企业监测
*/
@Log(title = "大屏重点企业监测", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody DashboardEnterpriseMonitorBo bo) {
return toAjax(dashboardEnterpriseMonitorService.insertByBo(bo));
}
/**
* 修改大屏重点企业监测
*/
@Log(title = "大屏重点企业监测", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody DashboardEnterpriseMonitorBo bo) {
return toAjax(dashboardEnterpriseMonitorService.updateByBo(bo));
}
/**
* 删除大屏重点企业监测
*
* @param ids 主键串
*/
@Log(title = "大屏重点企业监测", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(dashboardEnterpriseMonitorService.deleteWithValidByIds(List.of(ids), true));
}
}

79
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/DashboardEnterpriseCheckController.java

@ -0,0 +1,79 @@
package com.zdxt.enforcementcode.controller.web.supervision;
import cn.hutool.core.collection.CollUtil;
import com.zdxt.enforcementcode.domain.bo.DashboardEnterpriseCheckQueryBo;
import com.zdxt.enforcementcode.domain.bo.DashboardEnterpriseMonitorBo;
import com.zdxt.enforcementcode.domain.vo.DashboardEnforcementRegistrationInfoVo;
import com.zdxt.enforcementcode.domain.vo.DashboardEnterpriseCheckInfoVo;
import com.zdxt.enforcementcode.domain.vo.DashboardEnterpriseCheckVo;
import com.zdxt.enforcementcode.domain.vo.DashboardEnterpriseMonitorVo;
import com.zdxt.enforcementcode.domain.vo.enterprise.EnforcementRegistrationListVo;
import com.zdxt.enforcementcode.service.IDashboardEnterpriseCheckService;
import com.zdxt.enforcementcode.service.IDashboardEnterpriseMonitorService;
import com.zdxt.enforcementcode.service.IEnforcementRegistrationService;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* 大屏-重点企业监测检查按月统计
*
* @author Lion Li
* @date 2026-05-30
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/web/dashboard/enterpriseCheck")
public class DashboardEnterpriseCheckController extends BaseController {
private final IDashboardEnterpriseCheckService dashboardEnterpriseCheckService;
private final IDashboardEnterpriseMonitorService dashboardEnterpriseMonitorService;
private final IEnforcementRegistrationService enforcementRegistrationService;
/**
* 大屏-重点企业监测检查列表
* 1查询企业基础信息
* 2查询最近六个月的数据不包含当月数据
*/
@GetMapping("/getEnterpriseCheckInfo")
public DashboardEnterpriseCheckInfoVo getEnterpriseCheckInfo(DashboardEnterpriseCheckQueryBo bo) {
DashboardEnterpriseCheckInfoVo result = new DashboardEnterpriseCheckInfoVo();
// 1. 查询企业基础信息
if (StringUtils.isNotBlank(bo.getEnterpriseNumber())) {
DashboardEnterpriseMonitorBo monitorBo = new DashboardEnterpriseMonitorBo();
monitorBo.setEnterpriseNumber(bo.getEnterpriseNumber());
List<DashboardEnterpriseMonitorVo> monitorList = dashboardEnterpriseMonitorService.queryList(monitorBo);
if (CollUtil.isNotEmpty(monitorList)) {
result.setEnterpriseMonitorVo(monitorList.get(0));
}
}
// 2. 查询最近六个月的数据,不包含当月数据
if (StringUtils.isNotBlank(bo.getEnterpriseNumber())) {
List<DashboardEnterpriseCheckVo> checkVoList = dashboardEnterpriseCheckService
.queryRecentSixMonths(bo.getEnterpriseNumber(), bo.getStatYear(), bo.getStatMonth());
result.setCheckVoList(checkVoList);
}
return result;
}
/**
* 大屏-重点企业监测检查详情
*
*/
@GetMapping("/getEnterpriseCheckDetail")
public TableDataInfo<DashboardEnforcementRegistrationInfoVo> getEnterpriseCheckDetail(DashboardEnterpriseCheckQueryBo bo, PageQuery pageQuery) {
return enforcementRegistrationService.getEnterpriseCheckDetail(bo,pageQuery);
}
}

44
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/DashboardEnterpriseCheckQueryBo.java

@ -0,0 +1,44 @@
package com.zdxt.enforcementcode.domain.bo;
import lombok.Data;
import java.io.Serializable;
/**
* 大屏重点企业监测检查按月统计业务对象 dashboard_enterprise_check
*
* @author Lion Li
* @date 2026-05-30
*/
@Data
public class DashboardEnterpriseCheckQueryBo implements Serializable {
/**
* 统计年份
*/
private Long statYear;
/**
* 统计月份
*/
private Long statMonth;
/**
* 企业ID
*/
private String enterpriseId;
/**
* 企业名称
*/
private String enterpriseName;
/**
* 统一社会信用代码
*/
private String enterpriseNumber;
}

131
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/DashboardEnforcementRegistrationInfoVo.java

@ -0,0 +1,131 @@
package com.zdxt.enforcementcode.domain.vo;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import com.zdxt.enforcementcode.domain.EnforcementRegistration;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.common.core.utils.DateUtils;
import org.dromara.common.core.utils.StringUtils;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.concurrent.TimeUnit;
/**
* 企业端-执法登记记录视图对象 enforcement_registration
*
* @author Lion Li
* @date 2026-04-17
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = EnforcementRegistration.class)
public class DashboardEnforcementRegistrationInfoVo implements Serializable {
/**
* 主键ID
*/
private String id;
/**
* 执法部门
*/
private String lawEnforcement;
/**
* 执法事项
*/
private String lawEnforcementItemText;
/**
* 执法部门ID
*/
private String lawEnforcementId;
/**
* 被执法企业ID
*/
private String enterpriseId;
/**
* 被执法企业
*/
private String enterpriseName;
/**
* 被执法企业税号
*/
private String enterpriseNumber;
/**
* 执法时间
*/
private Date enforcementTime;
/**
* 执法人员姓名
*/
private String lawEnforcer;
/**
* 执法人员ID
*/
private String lawEnforcerId;
/**
* 执法人员联系方式
*/
private String lawEnforcerTel;
/**
* 其他执法人员
*/
private String lawEnforcerTwo;
/**
* 其他执法人员ID
*/
private String lawEnforcerIdTwo;
/**
* 执法人员联系方式
*/
private String lawEnforcerTelTwo;
/**
* 辅助人员姓名
*/
private String subsidiaryer;
/**
* 辅助人员id
*/
private String subsidiaryerId;
/**
* 辅助人员联系方式
*/
private String subsidiaryerTel;
/**
* 执法事项
*/
private String lawEnforcementItem;
/**
* 执法人员1展示文本姓名+执法证号
*/
private String lawEnforcerDisplay;
public String getLawEnforcerDisplay() {
lawEnforcerDisplay = lawEnforcer;
if(StringUtils.isNotBlank(lawEnforcerTwo)){
lawEnforcerDisplay += "、" + lawEnforcerTwo;
}
return lawEnforcerDisplay;
}
}

35
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/DashboardEnterpriseCheckInfoVo.java

@ -0,0 +1,35 @@
package com.zdxt.enforcementcode.domain.vo;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import com.zdxt.enforcementcode.domain.bean.DashboardEnterpriseCheck;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* 大屏重点企业监测检查按月统计视图对象 dashboard_enterprise_check
*
* @author Lion Li
* @date 2026-05-30
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = DashboardEnterpriseCheck.class)
public class DashboardEnterpriseCheckInfoVo implements Serializable {
/**
* 企业基本信息
*/
DashboardEnterpriseMonitorVo enterpriseMonitorVo;
/**
* 最近6个月的统计数据不含当月
*/
List<DashboardEnterpriseCheckVo> checkVoList;
}

19
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/DashboardEnterpriseCheckMapper.java

@ -3,8 +3,11 @@ package com.zdxt.enforcementcode.mapper;
import com.zdxt.enforcementcode.domain.bean.DashboardEnterpriseCheck;
import com.zdxt.enforcementcode.domain.vo.DashboardEnterpriseCheckVo;
import org.apache.ibatis.annotations.Param;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import java.util.List;
/**
* 大屏重点企业监测检查按月统计Mapper接口
*
@ -13,4 +16,20 @@ import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
*/
public interface DashboardEnterpriseCheckMapper extends BaseMapperPlus<DashboardEnterpriseCheck, DashboardEnterpriseCheckVo> {
/**
* 查询指定企业最近六个月的监测检查数据不包含当月按年月升序
*
* @param enterpriseNumber 统一社会信用代码
* @param startYear 区间起始年份
* @param startMonth 区间起始月份
* @param endYear 区间结束年份
* @param endMonth 区间结束月份
* @return 最近六个月统计数据
*/
List<DashboardEnterpriseCheckVo> selectRecentSixMonths(@Param("enterpriseNumber") String enterpriseNumber,
@Param("startYear") long startYear,
@Param("startMonth") long startMonth,
@Param("endYear") long endYear,
@Param("endMonth") long endMonth);
}

12
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IDashboardEnterpriseCheckService.java

@ -2,8 +2,8 @@ package com.zdxt.enforcementcode.service;
import com.zdxt.enforcementcode.domain.bo.DashboardEnterpriseCheckBo;
import com.zdxt.enforcementcode.domain.vo.DashboardEnterpriseCheckVo;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import java.util.Collection;
import java.util.List;
@ -41,6 +41,16 @@ public interface IDashboardEnterpriseCheckService {
*/
List<DashboardEnterpriseCheckVo> queryList(DashboardEnterpriseCheckBo bo);
/**
* 查询指定企业最近六个月的监测检查数据不包含当月
*
* @param enterpriseNumber 统一社会信用代码
* @param statYear 参照年份为空时取当前年份
* @param statMonth 参照月份为空时取当前月份
* @return 最近六个月统计数据按年月升序
*/
List<DashboardEnterpriseCheckVo> queryRecentSixMonths(String enterpriseNumber, Long statYear, Long statMonth);
/**
* 新增大屏重点企业监测检查按月统计
*

11
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IEnforcementRegistrationService.java

@ -1,8 +1,10 @@
package com.zdxt.enforcementcode.service;
import com.zdxt.enforcementcode.domain.EnforcementRegistration;
import com.zdxt.enforcementcode.domain.bo.DashboardEnterpriseCheckQueryBo;
import com.zdxt.enforcementcode.domain.bo.EnforcementRegistrationBo;
import com.zdxt.enforcementcode.domain.bo.EnforcementRegistrationQueryBo;
import com.zdxt.enforcementcode.domain.vo.DashboardEnforcementRegistrationInfoVo;
import com.zdxt.enforcementcode.domain.vo.EnforcementRegistrationVo;
import com.zdxt.enforcementcode.domain.vo.enterprise.EnforcementRegistrationDetailVo;
import com.zdxt.enforcementcode.domain.vo.enterprise.EnforcementRegistrationListVo;
@ -130,4 +132,13 @@ public interface IEnforcementRegistrationService {
* @return
*/
EnforcementRegistrationVo selectEnforcementRegistrationById(String id);
/**
* 大屏-重点企业监测检查详情分页查询执法登记记录
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 执法登记记录分页列表
*/
TableDataInfo<DashboardEnforcementRegistrationInfoVo> getEnterpriseCheckDetail(DashboardEnterpriseCheckQueryBo bo, PageQuery pageQuery);
}

33
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/DashboardEnterpriseCheckServiceImpl.java

@ -16,6 +16,8 @@ import com.zdxt.enforcementcode.domain.vo.DashboardEnterpriseCheckVo;
import com.zdxt.enforcementcode.mapper.DashboardEnterpriseCheckMapper;
import com.zdxt.enforcementcode.service.IDashboardEnterpriseCheckService;
import java.time.YearMonth;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Collection;
@ -70,6 +72,37 @@ public class DashboardEnterpriseCheckServiceImpl implements IDashboardEnterprise
return baseMapper.selectVoList(lqw);
}
/**
* 查询指定企业最近六个月的监测检查数据不包含当月
*
* @param enterpriseNumber 统一社会信用代码
* @param statYear 参照年份为空时取当前年份
* @param statMonth 参照月份为空时取当前月份
* @return 最近六个月统计数据按年月升序
*/
@Override
public List<DashboardEnterpriseCheckVo> queryRecentSixMonths(String enterpriseNumber, Long statYear, Long statMonth) {
if (StringUtils.isBlank(enterpriseNumber)) {
return new ArrayList<>();
}
// 确定参照月份:优先使用传入的年月,否则取当前月
YearMonth current;
if (statYear != null && statMonth != null) {
current = YearMonth.of(statYear.intValue(), statMonth.intValue());
} else {
current = YearMonth.now();
}
// 最近六个月(不含当月)的闭区间:[current-6, current-1]
YearMonth start = current.minusMonths(6);
YearMonth end = current.minusMonths(1);
return baseMapper.selectRecentSixMonths(enterpriseNumber,
(long) start.getYear(), (long) start.getMonthValue(),
(long) end.getYear(), (long) end.getMonthValue());
}
private LambdaQueryWrapper<DashboardEnterpriseCheck> buildQueryWrapper(DashboardEnterpriseCheckBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<DashboardEnterpriseCheck> lqw = Wrappers.lambdaQuery();

67
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementRegistrationServiceImpl.java

@ -9,8 +9,10 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zdxt.enforcementcode.common.annotation.DataScope;
import com.zdxt.enforcementcode.common.commonenum.PlatformTypeEnums;
import com.zdxt.enforcementcode.domain.*;
import com.zdxt.enforcementcode.domain.bo.DashboardEnterpriseCheckQueryBo;
import com.zdxt.enforcementcode.domain.bo.EnforcementRegistrationBo;
import com.zdxt.enforcementcode.domain.bo.EnforcementRegistrationQueryBo;
import com.zdxt.enforcementcode.domain.vo.DashboardEnforcementRegistrationInfoVo;
import com.zdxt.enforcementcode.domain.vo.EnterpriseEvaluateVo;
import com.zdxt.enforcementcode.domain.vo.EnterpriseInformationVo;
import com.zdxt.enforcementcode.domain.vo.enterprise.EnforcementRegistrationDetailVo;
@ -1051,4 +1053,69 @@ public class EnforcementRegistrationServiceImpl implements IEnforcementRegistrat
}
return result;
}
/**
* 大屏-重点企业监测检查详情分页查询执法登记记录
* 根据企业统一社会信用代码年份月份查询执法登记详情
* 默认查询上个月的数据
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 执法登记记录分页列表
*/
@Override
public TableDataInfo<DashboardEnforcementRegistrationInfoVo> getEnterpriseCheckDetail(DashboardEnterpriseCheckQueryBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<EnforcementRegistration> lqw = Wrappers.lambdaQuery();
// 按企业统一社会信用代码查询
if (StringUtils.isNotBlank(bo.getEnterpriseNumber())) {
lqw.eq(EnforcementRegistration::getEnterpriseNumber, bo.getEnterpriseNumber());
}
// 按企业名称模糊查询
if (StringUtils.isNotBlank(bo.getEnterpriseName())) {
lqw.like(EnforcementRegistration::getEnterpriseName, bo.getEnterpriseName());
}
// 按年份和月份查询(执法时间)
if (bo.getStatYear() != null && bo.getStatMonth() != null) {
// 构建该月的起始和结束时间
LocalDate startOfMonth = LocalDate.of(bo.getStatYear().intValue(), bo.getStatMonth().intValue(), 1);
LocalDate endOfMonth = startOfMonth.withDayOfMonth(startOfMonth.lengthOfMonth());
Date startDate = Date.from(startOfMonth.atStartOfDay(ZoneId.systemDefault()).toInstant());
Date endDate = Date.from(endOfMonth.atTime(23, 59, 59).atZone(ZoneId.systemDefault()).toInstant());
lqw.between(EnforcementRegistration::getEnforcementTime, startDate, endDate);
} else if (bo.getStatYear() != null) {
// 只按年份查询
LocalDate startOfYear = LocalDate.of(bo.getStatYear().intValue(), 1, 1);
LocalDate endOfYear = LocalDate.of(bo.getStatYear().intValue(), 12, 31);
Date startDate = Date.from(startOfYear.atStartOfDay(ZoneId.systemDefault()).toInstant());
Date endDate = Date.from(endOfYear.atTime(23, 59, 59).atZone(ZoneId.systemDefault()).toInstant());
lqw.between(EnforcementRegistration::getEnforcementTime, startDate, endDate);
} else {
// 默认查询上个月的数据
LocalDate now = LocalDate.now();
LocalDate lastMonth = now.minusMonths(1);
LocalDate startOfLastMonth = lastMonth.withDayOfMonth(1);
LocalDate endOfLastMonth = lastMonth.withDayOfMonth(lastMonth.lengthOfMonth());
Date startDate = Date.from(startOfLastMonth.atStartOfDay(ZoneId.systemDefault()).toInstant());
Date endDate = Date.from(endOfLastMonth.atTime(23, 59, 59).atZone(ZoneId.systemDefault()).toInstant());
lqw.between(EnforcementRegistration::getEnforcementTime, startDate, endDate);
}
// 按执法时间降序排列
lqw.orderByDesc(EnforcementRegistration::getEnforcementTime);
// 执行分页查询
Page<DashboardEnforcementRegistrationInfoVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw, DashboardEnforcementRegistrationInfoVo.class);
return TableDataInfo.build(result);
}
}

21
zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/DashboardEnterpriseCheckMapper.xml

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zdxt.enforcementcode.mapper.DashboardEnterpriseCheckMapper">
<!-- 查询指定企业最近六个月的监测检查数据(不包含当月,按年月升序) -->
<select id="selectRecentSixMonths" resultType="com.zdxt.enforcementcode.domain.vo.DashboardEnterpriseCheckVo">
SELECT
a.*
FROM dashboard_enterprise_check a
WHERE a.enterprise_number = #{enterpriseNumber}
AND IFNULL(a.is_delete, '0') = '0'
AND (a.stat_year &gt; #{startYear} OR (a.stat_year = #{startYear} AND a.stat_month &gt;= #{startMonth}))
AND (a.stat_year &lt; #{endYear} OR (a.stat_year = #{endYear} AND a.stat_month &lt;= #{endMonth}))
ORDER BY
a.stat_year,
a.stat_month
</select>
</mapper>
Loading…
Cancel
Save