From 666e9b9c7a3fd0a5e31809209101529d3ac5386a Mon Sep 17 00:00:00 2001 From: niujiyi <18272501226@163.com> Date: Thu, 7 May 2026 17:34:04 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=81=E4=B8=9A=E7=AB=AF-=E6=89=A7=E6=B3=95?= =?UTF-8?q?=E6=A1=88=E4=BB=B6=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AppEntLawEnforcementCaseController.java | 66 ++++++++ .../domain/EnforcementRegistration.java | 5 + .../AppLawEnforcementCaseQueryDTO.java | 31 ++++ .../AppEnforcementRegistrationVo.java | 11 ++ .../enterprise/AppLawEnforcementCaseVo.java | 138 +++++++++++++++ .../AppLawEnforcementCaseMapper.java | 46 +++++ .../IAppLawEnforcementCaseService.java | 32 ++++ .../AppLawEnforcementCaseServiceImpl.java | 89 ++++++++++ .../AppLawenforcementCaseMapper.xml | 159 ++++++++++++++++++ 9 files changed, 577 insertions(+) create mode 100644 zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppEntLawEnforcementCaseController.java create mode 100644 zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/dto/enterprise/AppLawEnforcementCaseQueryDTO.java create mode 100644 zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/enterprise/AppLawEnforcementCaseVo.java create mode 100644 zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/enterprise/AppLawEnforcementCaseMapper.java create mode 100644 zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/IAppLawEnforcementCaseService.java create mode 100644 zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/impl/AppLawEnforcementCaseServiceImpl.java create mode 100644 zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/AppLawenforcementCaseMapper.xml diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppEntLawEnforcementCaseController.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppEntLawEnforcementCaseController.java new file mode 100644 index 00000000..5bf77835 --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppEntLawEnforcementCaseController.java @@ -0,0 +1,66 @@ +package com.zdxt.enforcementcode.controller.app.enterprise; + + +import com.zdxt.enforcementcode.domain.dto.enterprise.AppLawEnforcementCaseQueryDTO; +import com.zdxt.enforcementcode.domain.vo.enterprise.AppEnforcementRegistrationVo; +import com.zdxt.enforcementcode.domain.vo.enterprise.AppLawEnforcementCaseVo; +import com.zdxt.enforcementcode.service.enterprise.IAppLawEnforcementCaseService; +import io.swagger.v3.oas.annotations.responses.ApiResponse; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +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.beans.factory.annotation.Autowired; +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; + +/** + * 企业端-执法案件信息控制器 + */ +@Tag(name = "企业端-执法案件信息") +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/app-ent/lawEnforcementCase") +public class AppEntLawEnforcementCaseController extends BaseController { + + + + @Autowired + private IAppLawEnforcementCaseService appLawEnforcementCaseService; + + /** + * 企业端-执法案件信息列表 + */ + @ApiResponse(description = "企业端-执法案件信息列表") + @GetMapping("/list") + public TableDataInfo list(AppLawEnforcementCaseQueryDTO queryDTO, PageQuery pageQuery) { + return appLawEnforcementCaseService.selectAppLawEnforcementCaseList(queryDTO, pageQuery); + } + + /** + * 企业端-执法案件信息详情 + * @param dto + * @return + */ + @ApiResponse(description = "企业端-执法案件信息详情") + @GetMapping("/lawCasedetail") + public AppLawEnforcementCaseVo lawCasedetail(AppLawEnforcementCaseQueryDTO dto) { + return appLawEnforcementCaseService.selectAppLawEnforcementCaseById(dto); + } + + /** + * 企业端-执法信息详情 + * @param dto + * @return + */ + @ApiResponse(description = "企业端-执法信息详情") + @GetMapping("/lawDetail") + public AppEnforcementRegistrationVo lawDetail(AppLawEnforcementCaseQueryDTO dto) { + return appLawEnforcementCaseService.selectAppLawEnforcementLawDetailById(dto); + } + +} diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/EnforcementRegistration.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/EnforcementRegistration.java index 1f5ce0e2..cc86d5f2 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/EnforcementRegistration.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/EnforcementRegistration.java @@ -307,4 +307,9 @@ public class EnforcementRegistration { */ @TableField(fill = FieldFill.INSERT_UPDATE) private Date updateTime; + + /** + * 执法案件id + */ + private String lawCaseId; } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/dto/enterprise/AppLawEnforcementCaseQueryDTO.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/dto/enterprise/AppLawEnforcementCaseQueryDTO.java new file mode 100644 index 00000000..dfe6086f --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/dto/enterprise/AppLawEnforcementCaseQueryDTO.java @@ -0,0 +1,31 @@ +package com.zdxt.enforcementcode.domain.dto.enterprise; + + +import lombok.Data; + +import java.util.Date; + +@Data +public class AppLawEnforcementCaseQueryDTO { + + /** + * 主键ID + */ + private String id; + /** + * 执法时间 + */ + private Date lawEnforcementTime; + /** + * 执法类型 + */ + private Integer lawEnforcementType; + /** + * 统一社会信用代码 + */ + private String socialCreditCode; + /** + * 当事人证件号码 + */ + private String idNumber; +} diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/enterprise/AppEnforcementRegistrationVo.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/enterprise/AppEnforcementRegistrationVo.java index 2263919c..d6de904b 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/enterprise/AppEnforcementRegistrationVo.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/enterprise/AppEnforcementRegistrationVo.java @@ -1,6 +1,8 @@ package com.zdxt.enforcementcode.domain.vo.enterprise; import cn.idev.excel.annotation.ExcelProperty; +import com.zdxt.enforcementcode.domain.vo.ZdxtFileVo; +import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; @@ -14,6 +16,7 @@ import java.util.List; * 企业端-执法登记记录 */ @Data +@AutoMapper(target = com.zdxt.enforcementcode.domain.EnforcementRegistration.class) public class AppEnforcementRegistrationVo implements Serializable { @Serial private static final long serialVersionUID = 1L; @@ -351,4 +354,12 @@ public class AppEnforcementRegistrationVo implements Serializable { * 其他执法人员展示列表(姓名+执法证号) */ private List lawEnforcer2List; + + /** + * 执法案件ID + */ + private String lawCaseId; + + @ExcelProperty(value = "文件列表") + private List fileList; } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/enterprise/AppLawEnforcementCaseVo.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/enterprise/AppLawEnforcementCaseVo.java new file mode 100644 index 00000000..358a6d70 --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/enterprise/AppLawEnforcementCaseVo.java @@ -0,0 +1,138 @@ +package com.zdxt.enforcementcode.domain.vo.enterprise; + + +import lombok.Data; + +@Data +public class AppLawEnforcementCaseVo { + + /** + * 主键ID + */ + private String id; + + /** + * 案件编号 + */ + private String caseCode; + /** + * 案件名称 + */ + private String caseName; + /** + * 执法时间 + */ + private Data lawEnforcementTime; + /** + * 执法类型 + */ + private Integer lawEnforcementType; + /** + * 执法单位 + */ + private String lawEnforcementUnit; + /** + * 统一社会信用代码 + */ + private String socialCreditCode; + + /** + * 当事人类型 + */ + private String partyType; + /** + * 当事人证件号码 + */ + private String idNumber; + + /** + * 行政强制类型 + */ + private String enforcementType; + + /** + * 决定文书名称 + */ + private String decisionDocumentName; + + /** + * 决定文书号 + */ + private String decisionDocumentNumber; + + /** + * 行政检查类型 + */ + private String administrativeCheckType; + + /** + * 行政检查类型名称 + */ + private String administrativeCheckTypeName; + + /** + * 决定日期 + */ + private Data decisionDate; + + /** + * 内容 + */ + private String content; + + /** + * 行政检查结果 + */ + private String administrativeCheckResult; + + /** + * 行政检查决定 + */ + private String administrativeCheckDecision; + + /** + * 执法主体名称 + */ + private String lawEnforcementSubjectName; + + /** + * 备注 + */ + private String remark; + + /** + * 行政强制措施理由 + */ + private String enforcementReason; + + /** + * 依据 + */ + private String basis; + + /** + * 事实 + */ + private String fact; + /** + * 处罚依据 + */ + private String penaltyBasis; + + /** + * 处罚类别 + */ + private String penaltyCategory; + /** + * 处罚金额 + */ + private String penaltyAmount; + /** + * 没收金额 + */ + private String collectionAmount; + + + +} + diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/enterprise/AppLawEnforcementCaseMapper.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/enterprise/AppLawEnforcementCaseMapper.java new file mode 100644 index 00000000..13158183 --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/enterprise/AppLawEnforcementCaseMapper.java @@ -0,0 +1,46 @@ +package com.zdxt.enforcementcode.mapper.enterprise; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.zdxt.enforcementcode.domain.dto.enterprise.AppLawEnforcementCaseQueryDTO; +import com.zdxt.enforcementcode.domain.vo.enterprise.AppLawEnforcementCaseVo; +import org.apache.ibatis.annotations.Param; + +/** + * 企业端-执法案件Mapper接口 + */ +public interface AppLawEnforcementCaseMapper { + + /** + * 查询企业端-执法案件列表 + * + * @param dto 查询条件 + * @param page 分页参数 + * @return 企业端-执法案件列表 + */ + IPage selectAppLawEnforcementCaseList(@Param("dto") AppLawEnforcementCaseQueryDTO dto, @Param("page") Page page); + + /** + * 查询企业端-行政检查案件详情 + * + * @param id 主键 + * @return 企业端-执法案件 + */ + AppLawEnforcementCaseVo selectAppLawEnforcementCaseCheckById(@Param("id") String id); + + /** + * 查询企业端-行政强制案件详情 + * + * @param id 主键 + * @return 企业端-执法案件 + */ + AppLawEnforcementCaseVo selectAppLawEnforcementCaseCompulsoryById(@Param("id") String id); + + /** + * 查询企业端-行政处罚案件详情 + * + * @param id 主键 + * @return 企业端-执法案件 + */ + AppLawEnforcementCaseVo selectAppLawEnforcementCasePunishmentById(@Param("id") String id); +} diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/IAppLawEnforcementCaseService.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/IAppLawEnforcementCaseService.java new file mode 100644 index 00000000..a64fde5d --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/IAppLawEnforcementCaseService.java @@ -0,0 +1,32 @@ +package com.zdxt.enforcementcode.service.enterprise; + +import com.zdxt.enforcementcode.domain.dto.enterprise.AppLawEnforcementCaseQueryDTO; +import com.zdxt.enforcementcode.domain.vo.enterprise.AppEnforcementRegistrationVo; +import com.zdxt.enforcementcode.domain.vo.enterprise.AppLawEnforcementCaseVo; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; + +public interface IAppLawEnforcementCaseService { + + /** + * 企业端-执法案件列表 + * @param queryDTO + * @param pageQuery + * @return + */ + TableDataInfo selectAppLawEnforcementCaseList(AppLawEnforcementCaseQueryDTO queryDTO, PageQuery pageQuery); + + /** + * 企业端-执法案件详情 + * @param dto + * @return + */ + AppLawEnforcementCaseVo selectAppLawEnforcementCaseById(AppLawEnforcementCaseQueryDTO dto); + + /** + * 企业端-执法信息详情 + * @param dto + * @return + */ + AppEnforcementRegistrationVo selectAppLawEnforcementLawDetailById(AppLawEnforcementCaseQueryDTO dto); +} diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/impl/AppLawEnforcementCaseServiceImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/impl/AppLawEnforcementCaseServiceImpl.java new file mode 100644 index 00000000..b90aac9f --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/impl/AppLawEnforcementCaseServiceImpl.java @@ -0,0 +1,89 @@ +package com.zdxt.enforcementcode.service.enterprise.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.zdxt.enforcementcode.common.commonenum.LawTypeEnum; +import com.zdxt.enforcementcode.domain.EnforcementRegistration; +import com.zdxt.enforcementcode.domain.ZdxtFile; +import com.zdxt.enforcementcode.domain.dto.enterprise.AppLawEnforcementCaseQueryDTO; +import com.zdxt.enforcementcode.domain.vo.enterprise.AppEnforcementRegistrationVo; +import com.zdxt.enforcementcode.domain.vo.enterprise.AppLawEnforcementCaseVo; +import com.zdxt.enforcementcode.mapper.ZdxtFileMapper; +import com.zdxt.enforcementcode.mapper.enterprise.AppEnforcementRegistrationMapper; +import com.zdxt.enforcementcode.mapper.enterprise.AppLawEnforcementCaseMapper; +import com.zdxt.enforcementcode.service.enterprise.IAppLawEnforcementCaseService; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +@Service +public class AppLawEnforcementCaseServiceImpl implements IAppLawEnforcementCaseService { + + + @Autowired + private AppLawEnforcementCaseMapper appLawEnforcementCaseMapper; + + @Autowired + private AppEnforcementRegistrationMapper appEnforcementRegistrationMapper; + + @Autowired + private ZdxtFileMapper zdxtFileMapper; + + /** + * 企业端-查询案件列表 + * @param queryDTO + * @param pageQuery + * @return + */ + @Override + public TableDataInfo selectAppLawEnforcementCaseList(AppLawEnforcementCaseQueryDTO queryDTO, PageQuery pageQuery) { + Page page = pageQuery.build(); + IPage result = appLawEnforcementCaseMapper.selectAppLawEnforcementCaseList(queryDTO, page); + return TableDataInfo.build(result); + } + + /** + * 企业端-查询案件详情 + * @param dto + * @return + */ + @Override + public AppLawEnforcementCaseVo selectAppLawEnforcementCaseById(AppLawEnforcementCaseQueryDTO dto) { + Integer type = dto.getLawEnforcementType(); + + if (LawTypeEnum.ADMIN_CHECK.getKey().equals(type)) { + return appLawEnforcementCaseMapper.selectAppLawEnforcementCaseCheckById(dto.getId()); + } else if (LawTypeEnum.ADMIN_PUNISH.getKey().equals(type)) { + return appLawEnforcementCaseMapper.selectAppLawEnforcementCasePunishmentById(dto.getId()); + } else { + return appLawEnforcementCaseMapper.selectAppLawEnforcementCaseCompulsoryById(dto.getId()); + } + } + /** + * 企业端-查询案执法信息详情 + * @param dto + * @return + */ + @Override + public AppEnforcementRegistrationVo selectAppLawEnforcementLawDetailById(AppLawEnforcementCaseQueryDTO dto) { + // 1. 查询执法登记主信息 + LambdaQueryWrapper lqw = new LambdaQueryWrapper() + .eq(EnforcementRegistration::getLawCaseId, dto.getId()) + .eq(EnforcementRegistration::getLawEnforceCategory, dto.getLawEnforcementType()); + + AppEnforcementRegistrationVo vo = appEnforcementRegistrationMapper.selectVoOne(lqw); + + // 2. 如果有主信息,则关联查询附件列表 + if (vo != null && vo.getId() != null) { + LambdaQueryWrapper fileLqw = new LambdaQueryWrapper() + .eq(ZdxtFile::getBusinessId, vo.getId()); + vo.setFileList(zdxtFileMapper.selectVoList(fileLqw)); + } + + return vo; + } + + +} diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/AppLawenforcementCaseMapper.xml b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/AppLawenforcementCaseMapper.xml new file mode 100644 index 00000000..8dba96f5 --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/AppLawenforcementCaseMapper.xml @@ -0,0 +1,159 @@ + + + + + + + + + + + + + +