From 34d86bdc42486889f9ced5fb7bec5c5afa2c820b Mon Sep 17 00:00:00 2001 From: niujiyi <18272501226@163.com> Date: Tue, 19 May 2026 11:17:14 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=A7=E6=B3=95=E7=AB=AF-=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E6=89=A7=E6=B3=95=E7=99=BB=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AppEnforcementRegistrationController.java | 31 +++- .../domain/bo/EnforcementRegistrationBo.java | 3 + .../domain/vo/EnforcementRegistrationVo.java | 5 + .../mapper/EnforcementRegistrationMapper.java | 6 +- .../IEnforcementRegistrationService.java | 7 + .../IEnterpriseLawEnforcementService.java | 8 + .../EnforcementRegistrationServiceImpl.java | 159 ++++++++++++++---- .../EnterpriseLawEnforcementServiceImpl.java | 15 ++ 8 files changed, 200 insertions(+), 34 deletions(-) diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppEnforcementRegistrationController.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppEnforcementRegistrationController.java index 652802c3..74ba9960 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppEnforcementRegistrationController.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppEnforcementRegistrationController.java @@ -2,10 +2,13 @@ package com.zdxt.enforcementcode.controller.app.enforcement; import com.zdxt.enforcementcode.domain.EnforcementRegistration; +import com.zdxt.enforcementcode.domain.EnterpriseLawEnforcement; import com.zdxt.enforcementcode.domain.bo.EnforcementLawCheckPlanBo; import com.zdxt.enforcementcode.domain.bo.EnforcementRegistrationBo; +import com.zdxt.enforcementcode.domain.bo.EnterpriseLawEnforcementBo; import com.zdxt.enforcementcode.domain.vo.EnforcementRegistrationVo; import com.zdxt.enforcementcode.service.IEnforcementRegistrationService; +import com.zdxt.enforcementcode.service.IEnterpriseLawEnforcementService; import io.swagger.v3.oas.annotations.responses.ApiResponse; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.RequiredArgsConstructor; @@ -20,6 +23,7 @@ import org.dromara.common.web.core.BaseController; import org.dromara.system.domain.SysDept; import org.dromara.system.domain.vo.SysDeptVo; import org.dromara.system.service.ISysDeptService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -39,7 +43,8 @@ public class AppEnforcementRegistrationController extends BaseController { private final IEnforcementRegistrationService enforcementRegistrationService; private final ISysDeptService sysDeptService; - + @Autowired + private IEnterpriseLawEnforcementService enterpriseLawEnforcementService; /** * 执法端-执法登记新增保存 */ @@ -83,5 +88,29 @@ public class AppEnforcementRegistrationController extends BaseController { return R.ok(result); } + /** + * 修改保存执法端-执法登记 + */ + @PostMapping("/edit") + @ResponseBody + public R editSave(@RequestBody EnforcementRegistrationBo bo) + { + int resNum = 0; + if (StringUtils.isNotEmpty(bo.getId())) { + resNum = enforcementRegistrationService.updateEnforcementRegistration(bo); + } else { + resNum = enforcementRegistrationService.insertEnforcementRegistration(bo); + if (resNum > 0 && StringUtils.isNotEmpty(bo.getLawId())) { + bo.setId(null); + } + } + if (StringUtils.isNotEmpty(bo.getLawId())) { + EnterpriseLawEnforcementBo eleBo = new EnterpriseLawEnforcementBo(); + eleBo.setId(bo.getLawId()); + eleBo.setIsReg(1L); + resNum = enterpriseLawEnforcementService.updateEnterpriseLawEnforcement(eleBo); + } + return toAjax(resNum); + } } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EnforcementRegistrationBo.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EnforcementRegistrationBo.java index 635950db..c260d8b8 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EnforcementRegistrationBo.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EnforcementRegistrationBo.java @@ -314,4 +314,7 @@ public class EnforcementRegistrationBo extends BaseEntity { private String numLeft; private String numRight; private String num; + private String region; + private String regionId; + } 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 22e522e5..cc2298ca 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 @@ -377,6 +377,11 @@ public class EnforcementRegistrationVo implements Serializable { @ExcelProperty(value = "创建时间") private Date createTime; + /** + * 修改时间 + */ + @ExcelProperty(value = "修改时间") + private Date updateTime; /** * 所属区域 */ diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/EnforcementRegistrationMapper.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/EnforcementRegistrationMapper.java index 22b16e2e..95885da9 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/EnforcementRegistrationMapper.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/EnforcementRegistrationMapper.java @@ -46,7 +46,7 @@ public interface EnforcementRegistrationMapper extends BaseMapperPlus selectEnforcementRegistrationList(EnforcementRegistrationBo bo,PageQuery pageQuery); + + + /** + * 执法端-修改执法登记 + * @return 结果 + */ + int updateEnforcementRegistration(EnforcementRegistrationBo bo); } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IEnterpriseLawEnforcementService.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IEnterpriseLawEnforcementService.java index ed4683fb..6372ea85 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IEnterpriseLawEnforcementService.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IEnterpriseLawEnforcementService.java @@ -65,4 +65,12 @@ public interface IEnterpriseLawEnforcementService { * @return 是否删除成功 */ Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + + /** + * 修改企业端-执法部门预约记录 + * + * @param enterpriseLawEnforcement 企业端-执法部门预约记录 + * @return 结果 + */ + public int updateEnterpriseLawEnforcement(EnterpriseLawEnforcementBo bo); } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementRegistrationServiceImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementRegistrationServiceImpl.java index 11371dbd..73262111 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementRegistrationServiceImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementRegistrationServiceImpl.java @@ -506,16 +506,13 @@ public class EnforcementRegistrationServiceImpl implements IEnforcementRegistrat List raw_unions = baseMapper.selectEnforcementRegistrationByUnion(er); if (raw_unions.size() <= 2) { // 将原自身 union_no 清空 将所有关联的 has_union 置 0 - EnforcementRegistration updateUnionParams1 = new EnforcementRegistration(); - updateUnionParams1.setUnionNo("-1"); - updateUnionParams1.setId(raw_data.getId()); - baseMapper.updateEnforcementRegistration(updateUnionParams1); - - EnforcementRegistration updateUnionParams2 = new EnforcementRegistration(); - updateUnionParams2.setUnionNo(raw_data.getUnionNo()); - updateUnionParams2.setHasUnion(0L); - updateUnionParams2.setIsRealUnion(0L); - baseMapper.updateRegToUnionFlag(updateUnionParams2); + bo.setUnionNo("-1"); + bo.setId(raw_data.getId()); + baseMapper.updateEnforcementRegistration(bo); + bo.setUnionNo(raw_data.getUnionNo()); + bo.setHasUnion(0L); + bo.setIsRealUnion(0L); + baseMapper.updateRegToUnionFlag(bo); } } } @@ -525,22 +522,22 @@ public class EnforcementRegistrationServiceImpl implements IEnforcementRegistrat // 检查编号为空:说明没有选择关联那条联合检查; hasUnion==1: 说明开启了联合检查, 那么就是新开一条联合检查 EnforcementRegistrationVo vo = new EnforcementRegistrationVo(); if (StringUtils.isEmpty(bo.getUnionNo()) && 1 == bo.getHasUnion()) { - vo.setHasUnion(0L); // 新开的联合检查先设置为0, 以为不确定后面来的人会不会与其关联, 如果都不关联, 只有它一条数据, 则不算联合检查 - vo.setIsRealUnion(0L); + bo.setHasUnion(0L); // 新开的联合检查先设置为0, 以为不确定后面来的人会不会与其关联, 如果都不关联, 只有它一条数据, 则不算联合检查 + bo.setIsRealUnion(0L); String unionNo = IdUtil.simpleUUID(); - vo.setUnionNo(unionNo); - vo.setUniteCheck("1"); // 为了适应来代码中的联合执法编码 + bo.setUnionNo(unionNo); + bo.setUniteCheck("1"); // 为了适应来代码中的联合执法编码 // enforcementRegistration.setCheckCss(unionNo); // 为了适应来代码中的联合执法编码 } // 新增检查登记 // 业务又改了 保存和提交都走新增, 区别是保存后的可以修改, 提交后的不能修改.(这块在controller控制了isSubmit状态) - vo.setId(IdUtil.simpleUUID()); - vo.setCreateBy(LoginHelper.getUsername()); - vo.setCreateTime(DateUtils.getNowDate()); - vo.setUserId(LoginHelper.getUserId()); - vo.setDeptId(LoginHelper.getDeptId()); + bo.setId(IdUtil.simpleUUID()); + bo.setCreateBy(LoginHelper.getUserId()); + bo.setCreateTime(DateUtils.getNowDate()); + bo.setUserId(Convert.toStr(LoginHelper.getUserId())); + bo.setDeptId(LoginHelper.getDeptId()); //默认评价状态为 0 否 - vo.setIsEvaluate(0L); + bo.setIsEvaluate(0L); // 地址处理 String district = ""; String street = ""; @@ -550,24 +547,23 @@ public class EnforcementRegistrationServiceImpl implements IEnforcementRegistrat } vo.setDistrict(district); vo.setStreet(street); - resNum = baseMapper.insertEnforcementRegistration(vo); + resNum = baseMapper.insertEnforcementRegistration(bo); // unionNo 上来不等于null, 那么说明关联了联合检查, 则直接新增, 并且将之前的所有 uninoNo相同的 hasUnion更新为 1 if (resNum > 0 && 1 == bo.getHasUnion()) { - EnforcementRegistration updateUnionParams = new EnforcementRegistration(); - updateUnionParams.setUnionNo(bo.getUnionNo()); - updateUnionParams.setHasUnion(1L); - updateUnionParams.setIsRealUnion(1L); - vo.setUniteCheck("0"); // 为了适应来代码中的联合执法编码 - baseMapper.updateRegToUnionFlag(updateUnionParams); + bo.setUnionNo(bo.getUnionNo()); + bo.setHasUnion(1L); + bo.setIsRealUnion(1L); + bo.setUniteCheck("0"); // 为了适应来代码中的联合执法编码 + baseMapper.updateRegToUnionFlag(bo); } if(StrUtil.isNotEmpty(bo.getBureauDeptId())){ //查询人员所在区 SysDept sysDept = iterationDeptParentRegion(bo.getBureauDeptId()); //存储数据产生的所在行政区 - vo.setRegion(null!=sysDept?sysDept.getDeptName():""); - vo.setRegionId(null!=sysDept?sysDept.getDeptId():""); + bo.setRegion(null!=sysDept?sysDept.getDeptName():""); + bo.setRegionId(null!=sysDept?sysDept.getDeptId():""); } // 重新加入附件 @@ -578,7 +574,7 @@ public class EnforcementRegistrationServiceImpl implements IEnforcementRegistrat zdxtFile.setBusinessId(bo.getId()); zdxtFile.setGuid(IdUtil.simpleUUID()); zdxtFile.setUploadPath(res); - zdxtFile.setUploadPersonId(LoginHelper.getUserId().toString()); + zdxtFile.setUploadPersonId(Convert.toStr(LoginHelper.getUserId())); zdxtFile.setUploadPersonName(LoginHelper.getUsername()); zdxtFileMapper.insertZdxtFile(zdxtFile); }); @@ -661,4 +657,107 @@ public class EnforcementRegistrationServiceImpl implements IEnforcementRegistrat return vo; } + /** + * 执法端-修改执法登记 + * + * @return 结果 + */ + @Override + public int updateEnforcementRegistration(EnforcementRegistrationBo bo) + { + // 先获取修改前的数据, 用于判断 + if (StringUtils.isNotEmpty(bo.getId())) { + EnforcementRegistrationVo raw_data = selectEnforcementRegistrationById(bo.getId()); + // 如果是联合执法 + if (1 == raw_data.getHasUnion() && 1 == bo.getHasUnion()) { + // 如果联合的部门没改变, 则无需处理! + if (!raw_data.getUnionNo().equals(bo.getUnionNo())) { + // 如果改变, 这通过原联合code查出已联合数量, 数量>2则无需修改他人数据, 2<=则将他人的联合标签hasUnion设为0 + // 获取出原联合执法的数据列 + EnforcementRegistration er = new EnforcementRegistration(); + er.setUnionNo(raw_data.getUnionNo()); + List raw_unions = baseMapper.selectEnforcementRegistrationByUnion(er); + if (raw_unions.size() <= 2) { + // 将原自身 union_no 清空 将所有关联的 has_union 置 0 + bo.setUnionNo("-1"); + bo.setId(raw_data.getId()); + baseMapper.updateEnforcementRegistration(bo); + bo.setUnionNo(raw_data.getUnionNo()); + bo.setHasUnion(0L); + bo.setIsRealUnion(0L); + baseMapper.updateRegToUnionFlag(bo); + } + } + } else { + EnforcementRegistration er = new EnforcementRegistration(); + er.setUnionNo(raw_data.getUnionNo()); + List raw_unions = baseMapper.selectEnforcementRegistrationByUnion(er); + if (raw_unions.size() <= 2) { + // 将原自身 union_no 清空 将所有关联的 has_union 置 0 + bo.setUnionNo("-1"); + bo.setId(raw_data.getId()); + baseMapper.updateEnforcementRegistration(bo); + bo.setUnionNo(raw_data.getUnionNo()); + bo.setHasUnion(0L); + bo.setIsRealUnion(0L); + baseMapper.updateRegToUnionFlag(bo); + } + } + } + // 然后开始走新增联合执法的流程 + // 登记可以直接进行联合检查, 选择了联合检查后, 如果未选择到联合检查用的分组id, 则随机生成一个, 否则用选定的unionNo, 并且修改这个unionNo的所有hasUnion为1 + // 检查编号为空:说明没有选择关联那条联合检查; hasUnion==1: 说明开启了联合检查, 那么就是新开一条联合检查 + if (StringUtils.isEmpty(bo.getUnionNo()) && 1 == bo.getHasUnion()) { + bo.setHasUnion(0L); // 新开的联合检查先设置为0, 以为不确定后面来的人会不会与其关联, 如果都不关联, 只有它一条数据, 则不算联合检查 + bo.setIsRealUnion(0L); + String unionNo = IdUtil.simpleUUID(); + bo.setUnionNo(unionNo); + bo.setUniteCheck("1"); // 为了适应来代码中的联合执法编码 + } + + bo.setUpdateTime(DateUtils.getNowDate()); + bo.setIsSubmit(1L); + String district = ""; + String street = ""; + if (StringUtils.isNotEmpty(bo.getEnterpriseAddress())) { + district = extract(bo.getEnterpriseAddress(), "([^\\s市]+?区)"); + street = extract(bo.getEnterpriseAddress(), "([^\\s区]+?街道)"); + } + bo.setDistrict(district); + bo.setStreet(street); + int i = baseMapper.updateEnforcementRegistration(bo); + + // unionNo 上来不等于null, 那么说明关联了联合检查, 则直接新增, 并且将之前的所有 uninoNo相同的 hasUnion更新为 1 + if (i > 0 && 1 == bo.getHasUnion()) { + bo.setUnionNo(bo.getUnionNo()); + bo.setHasUnion(1L); + bo.setIsRealUnion(1L); + bo.setUniteCheck("0"); // 为了适应来代码中的联合执法编码 + baseMapper.updateRegToUnionFlag(bo); + } + + // 先清空之前的附件, 不然删除会有问题 + zdxtFileMapper.deleteZdxtFileByBusinessIds(Convert.toStrArray(bo.getId())); + // 重新加入附件 + if (i > 0 && bo.getFileList().size() > 0) { + zdxtFileMapper.deleteZdxtFileByBusinessIds(Convert.toStrArray(bo.getId())); + bo.getFileList().forEach(res -> { + ZdxtFile zdxtFile = new ZdxtFile(); + zdxtFile.setBusinessId(bo.getId()); + zdxtFile.setGuid(IdUtil.simpleUUID()); + zdxtFile.setUploadPath(res); + zdxtFile.setUploadPersonId(Convert.toStr(LoginHelper.getUserId())); + zdxtFile.setUploadPersonName(LoginHelper.getUsername()); + zdxtFileMapper.insertZdxtFile(zdxtFile); + }); + } + //判断数据修改成功且状态为1时同步推送至 + if(i > 0 && null != bo.getStatus() && bo.getStatus() == 1){ + //TODO 提交相对应的数据到后台管理,同时绑定对应的商户。相关的执法数据推送到其它平台 + + } + return i; + } + + } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnterpriseLawEnforcementServiceImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnterpriseLawEnforcementServiceImpl.java index a401baa5..2d94e521 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnterpriseLawEnforcementServiceImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnterpriseLawEnforcementServiceImpl.java @@ -1,5 +1,7 @@ package com.zdxt.enforcementcode.service.impl; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import org.dromara.common.core.utils.DateUtils; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.TableDataInfo; @@ -160,4 +162,17 @@ public class EnterpriseLawEnforcementServiceImpl implements IEnterpriseLawEnforc } return baseMapper.deleteByIds(ids) > 0; } + + /** + * 修改企业端-执法部门预约记录 + * @return 结果 + */ + @Override + public int updateEnterpriseLawEnforcement(EnterpriseLawEnforcementBo bo) + { + LambdaUpdateWrapper lqw = new LambdaUpdateWrapper<>(); + lqw.eq(StringUtils.isNotBlank(bo.getId()), EnterpriseLawEnforcement::getId, bo.getId()); + lqw.set(EnterpriseLawEnforcement::getUpdateTime,DateUtils.getNowDate()); + return baseMapper.update(lqw); + } }