From 3ff10de4961437193846176ce156ef9c6a89cb90 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Mon, 4 Dec 2023 17:10:52 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BC=81=E6=A0=87=E6=9B=B4=E6=94=B9?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E5=88=97=E8=A1=A8=E6=8E=A5=E6=94=B6=E6=95=B0?= =?UTF-8?q?=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../esChange/entity/EsChangeOpinion.java | 95 +++++++++++++++++++ .../esChange/entity/ProcessEsChange.java | 7 ++ .../mapper/EsChangeOpinionMapper.java | 18 ++++ .../service/EsChangeOpinionService.java | 13 +++ .../impl/EsChangeOpinionServiceImpl.java | 22 +++++ .../impl/ProcessEsChangeServiceImpl.java | 33 ++++++- .../LawsEnterpriseStandardServiceImpl.java | 54 +++++------ 7 files changed, 210 insertions(+), 32 deletions(-) create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/entity/EsChangeOpinion.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/mapper/EsChangeOpinionMapper.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/EsChangeOpinionService.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/EsChangeOpinionServiceImpl.java diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/entity/EsChangeOpinion.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/entity/EsChangeOpinion.java new file mode 100644 index 00000000..f4aa56f9 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/entity/EsChangeOpinion.java @@ -0,0 +1,95 @@ +package com.jero.modules.activiti.process.esChange.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.util.Date; + +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 企标修改流程意见内容列表 + * @TableName process_es_change_opinion + */ +@TableName(value ="process_es_change_opinion") +@Data +@NoArgsConstructor +@AllArgsConstructor +public class EsChangeOpinion implements Serializable { + + /** + * 主键ID + */ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键ID") + private String id; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人") + private String createBy; + + /** + * 创建时间 + */ + @ApiModelProperty(value = "创建时间") + private Date createTime; + + /** + * 更新人 + */ + @ApiModelProperty(value = "更新人") + private String updateBy; + + /** + * 更新时间 + */ + @ApiModelProperty(value = "更新时间") + private Date updateTime; + + /** + * 所属部门 + */ + @ApiModelProperty(value = "所属部门") + private String orgCode; + + /** + * 业务id + */ + @ApiModelProperty(value = "业务id") + private String businessId; + + /** + * 条款号 + */ + @ApiModelProperty(value = "条款号") + private String clauseNumber; + + /** + * 条款名称 + */ + @ApiModelProperty(value = "条款名称") + private String clauseName; + + /** + * 修改后 + */ + @ApiModelProperty(value = "修改后") + private String afterUpdate; + + /** + * 修改理由 + */ + @ApiModelProperty(value = "修改理由") + private String updateReason; + + @TableField(exist = false) + private static final long serialVersionUID = 1L; + +} \ No newline at end of file diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/entity/ProcessEsChange.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/entity/ProcessEsChange.java index abe761d6..8d4e2e40 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/entity/ProcessEsChange.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/entity/ProcessEsChange.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; import java.util.Date; +import java.util.List; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModelProperty; @@ -190,6 +191,12 @@ public class ProcessEsChange implements Serializable { @ApiModelProperty(value = "采用国际标准号") private String internationalStandardNum; + /** + * 修改意见内容列表 + */ + @TableField(exist = false) + private List list; + @TableField(exist = false) private static final long serialVersionUID = 1L; } \ No newline at end of file diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/mapper/EsChangeOpinionMapper.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/mapper/EsChangeOpinionMapper.java new file mode 100644 index 00000000..13cbf791 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/mapper/EsChangeOpinionMapper.java @@ -0,0 +1,18 @@ +package com.jero.modules.activiti.process.esChange.mapper; + +import com.jero.modules.activiti.process.esChange.entity.EsChangeOpinion; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author ThinkBook +* @description 针对表【process_es_change_opinion(企标修改流程意见内容列表)】的数据库操作Mapper +* @createDate 2023-12-04 15:22:36 +* @Entity com.jero.modules.activiti.process.esChange.entity.EsChangeOpinion +*/ +public interface EsChangeOpinionMapper extends BaseMapper { + +} + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/EsChangeOpinionService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/EsChangeOpinionService.java new file mode 100644 index 00000000..7cb21389 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/EsChangeOpinionService.java @@ -0,0 +1,13 @@ +package com.jero.modules.activiti.process.esChange.service; + +import com.jero.modules.activiti.process.esChange.entity.EsChangeOpinion; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author ThinkBook +* @description 针对表【process_es_change_opinion(企标修改流程意见内容列表)】的数据库操作Service +* @createDate 2023-12-04 15:22:36 +*/ +public interface EsChangeOpinionService extends IService { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/EsChangeOpinionServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/EsChangeOpinionServiceImpl.java new file mode 100644 index 00000000..93d2e5bd --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/EsChangeOpinionServiceImpl.java @@ -0,0 +1,22 @@ +package com.jero.modules.activiti.process.esChange.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jero.modules.activiti.process.esChange.entity.EsChangeOpinion; +import com.jero.modules.activiti.process.esChange.service.EsChangeOpinionService; +import com.jero.modules.activiti.process.esChange.mapper.EsChangeOpinionMapper; +import org.springframework.stereotype.Service; + +/** +* @author ThinkBook +* @description 针对表【process_es_change_opinion(企标修改流程意见内容列表)】的数据库操作Service实现 +* @createDate 2023-12-04 15:22:36 +*/ +@Service +public class EsChangeOpinionServiceImpl extends ServiceImpl + implements EsChangeOpinionService{ + +} + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/ProcessEsChangeServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/ProcessEsChangeServiceImpl.java index 163d0380..89c51d92 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/ProcessEsChangeServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/ProcessEsChangeServiceImpl.java @@ -15,10 +15,10 @@ import com.jero.modules.activiti.process.common.entity.ProcessDraft; import com.jero.modules.activiti.process.common.enums.ProcessType; import com.jero.modules.activiti.process.common.service.ActFlowCommonService; import com.jero.modules.activiti.process.common.service.ProcessDraftService; -import com.jero.modules.activiti.process.esArchive.entity.ProcessEsArchive; -import com.jero.modules.activiti.process.esArchive.entity.vo.ESArchiveDataVO; +import com.jero.modules.activiti.process.esChange.entity.EsChangeOpinion; import com.jero.modules.activiti.process.esChange.entity.ProcessEsChange; import com.jero.modules.activiti.process.esChange.entity.vo.ESChangeDataVO; +import com.jero.modules.activiti.process.esChange.service.EsChangeOpinionService; import com.jero.modules.activiti.process.esChange.service.ProcessEsChangeService; import com.jero.modules.activiti.process.esChange.mapper.ProcessEsChangeMapper; import com.jero.modules.activiti.service.ProcessAllService; @@ -54,6 +54,9 @@ public class ProcessEsChangeServiceImpl extends ServiceImpl opinionList = esChange.getList(); // 通用数据 CommonVO common = changeData.getCommon(); // 人员数据 @@ -83,6 +87,11 @@ public class ProcessEsChangeServiceImpl extends ServiceImpl opinion.setBusinessId(esChange.getId())); + esChangeOpinionService.saveOrUpdateBatch(opinionList); + } // 保存选人信息 processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, this.getUserMap(variables)); // 根据流程实例id更新流程总表 @@ -118,11 +127,16 @@ public class ProcessEsChangeServiceImpl extends ServiceImpl opinionList = esChange.getList(); + ProcessDraft existDraft = actFlowCommonService.getExistDraftAndRemove(commonVO, ProcessTypeEnum.ES_CHANGE); if (existDraft != null) esChange.setId(existDraft.getProjectId()); - // TODO 底下表格 saveOrUpdate(esChange); - actFlowCommonService.addDraft(commonVO, ProcessTypeEnum.ES_ARCHIVE, esChange.getId()); + if (opinionList != null && !opinionList.isEmpty()) { + // 遍历 opinionList,设置 opinion 的 BusinessId + opinionList.forEach(opinion -> opinion.setBusinessId(esChange.getId())); + esChangeOpinionService.saveOrUpdateBatch(opinionList); + } + actFlowCommonService.addDraft(commonVO, ProcessTypeEnum.ES_CHANGE, esChange.getId()); } public void startRunTask(ESChangeDataVO changeData) { @@ -143,6 +157,11 @@ public class ProcessEsChangeServiceImpl extends ServiceImpl opinionLambdaQueryWrapper = new LambdaQueryWrapper<>(); + opinionLambdaQueryWrapper.eq(EsChangeOpinion::getBusinessId, data.getId()); + List opinionList = esChangeOpinionService.list(opinionLambdaQueryWrapper); + data.setList(opinionList); changeData.setData(data); return changeData; } @@ -185,6 +204,10 @@ public class ProcessEsChangeServiceImpl extends ServiceImpl opinionLambdaQueryWrapper = new LambdaQueryWrapper<>(); + opinionLambdaQueryWrapper.eq(EsChangeOpinion::getBusinessId, data.getId()); + List opinionList = esChangeOpinionService.list(opinionLambdaQueryWrapper); + data.setList(opinionList); changeDataVO.setData(data); return changeDataVO; } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/LawsEnterpriseStandardServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/LawsEnterpriseStandardServiceImpl.java index da324bfb..5dbbf143 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/LawsEnterpriseStandardServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/LawsEnterpriseStandardServiceImpl.java @@ -290,16 +290,16 @@ public class LawsEnterpriseStandardServiceImpl extends ServiceImpl departList = curDeptMap.get(curOrgName); -// if (departList.size() != 0) { -// gb.setResponsibleDepartment(departList.get(0).getId()); -// } -// } -// } + String zrbm = dto.getZrbm(); + if (oldDeptMap.get(zrbm) != null && oldDeptMap.get(zrbm).get(0) != null) { + String curOrgName = oldDeptMap.get(zrbm).get(0).getCurOrgName(); + if (StrUtil.isNotBlank(curOrgName)) { + List departList = curDeptMap.get(curOrgName); + if (departList.size() == 1) { + fb.setResponsibleDepartment(departList.get(0).getId()); + } + } + } String zrr = dto.getZrr(); String zrrid = dto.getZrrid(); if (StrUtil.isNotBlank(zrr) && StrUtil.isNotBlank(zrrid)) { @@ -972,16 +972,16 @@ public class LawsEnterpriseStandardServiceImpl extends ServiceImpl departList = curDeptMap.get(curOrgName); -// if (departList.size() != 0) { -// gb.setResponsibleDepartment(departList.get(0).getId()); -// } -// } -// } + String zrbm = dto.getZrbm(); + if (oldDeptMap.get(zrbm) != null && oldDeptMap.get(zrbm).get(0) != null) { + String curOrgName = oldDeptMap.get(zrbm).get(0).getCurOrgName(); + if (StrUtil.isNotBlank(curOrgName)) { + List departList = curDeptMap.get(curOrgName); + if (departList.size() == 1) { + gb.setResponsibleDepartment(departList.get(0).getId()); + } + } + } String zrr = dto.getZrr(); String zrrid = dto.getZrrid(); if (StrUtil.isNotBlank(zrr) && StrUtil.isNotBlank(zrrid)) { @@ -1027,7 +1027,7 @@ public class LawsEnterpriseStandardServiceImpl extends ServiceImpl> standardNumberToFileMap = ossFileList.stream().collect(Collectors.groupingBy(OSSFile::getStandardNo)); + Map> standardNumberToFileMap = ossFileList.stream().collect(Collectors.groupingBy(OSSFile::getStandardNo)); // 4. 遍历待保存或更新的列表,设置ID StringBuilder oldIds = new StringBuilder(); @@ -1074,12 +1074,12 @@ public class LawsEnterpriseStandardServiceImpl extends ServiceImpl ossFiles = standardNumberToFileMap.get(entity.getStandardNumber()); -// if (ossFiles != null && !ossFiles.isEmpty()) { -// OSSFile ossFile = ossFiles.get(0); -// ossFile.setStandardId(standardId); -// ossFileService.save(ossFile); -// } + List ossFiles = standardNumberToFileMap.get(entity.getStandardNumber()); + if (ossFiles != null && !ossFiles.isEmpty()) { + OSSFile ossFile = ossFiles.get(0); + ossFile.setStandardId(standardId); + ossFileService.save(ossFile); + } } log.info("老法规国标覆盖导入完成"); // 获取当前时间戳(毫秒)