修改法规清单给法规工程师流程重置功能
This commit is contained in:
+84
-1
@@ -4867,10 +4867,93 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
String ids = parmas.getString("ids");
|
||||
String projectLibraryId = parmas.getString("projectLibraryId");
|
||||
String operateType = parmas.getString("operateType");
|
||||
resetFolw(ids, projectLibraryId, operateType);
|
||||
//获取当前用户,如果当前用户为法规工程师,则流程重置到任务待发起
|
||||
String currRole = parmas.getString("currRole");
|
||||
if(StringUtils.isNotBlank(currRole) && com.jero.modules.system.enums.ProjectRoleEnum.REGULATI_ENGINEER.getValue().equals(currRole)){
|
||||
resetFolwByLaw(ids, projectLibraryId, operateType);
|
||||
}else{
|
||||
resetFolw(ids, projectLibraryId, operateType);
|
||||
}
|
||||
return Result.OK("变更成功!");
|
||||
}
|
||||
|
||||
private void resetFolwByLaw(String ids, String projectLibraryId, String operateType) {
|
||||
if (StringUtils.isNotEmpty(ids)) {
|
||||
List<String> piFlowTypeList = new ArrayList<>();
|
||||
QueryWrapper<ProjectLawsInventoryEO> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.lambda().in(ProjectLawsInventoryEO::getId, Arrays.asList(ids.split(",")));
|
||||
queryWrapper.lambda().eq(ProjectLawsInventoryEO::getProjectLibraryId, projectLibraryId);
|
||||
List<ProjectLawsInventoryEO> projectLawsInventoryEOS = this.list(queryWrapper);
|
||||
|
||||
List<String> idList = Arrays.asList(ids.split(","));
|
||||
String projectLawsInventoryIds = ids;
|
||||
String pIds = "";
|
||||
|
||||
ProjectLawsInventoryEO projectLawsInventoryEO = new ProjectLawsInventoryEO();
|
||||
projectLawsInventoryEO.setInventoryAffirmStatus(InventoryAffirmStatusEnum.LIST_TO_CONFIRM.getValue());
|
||||
projectLawsInventoryEO.setTaskAffirmStatus(TaskAffirmStatusEnum.NOT_STARTED.getValue());
|
||||
//清单、任务确认初始化。
|
||||
LambdaUpdateWrapper<ProjectLawsInventoryEO> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.in(ProjectLawsInventoryEO::getId, idList);
|
||||
updateWrapper.set(ProjectLawsInventoryEO::getRegulationOwnerSubmitStatus, null);
|
||||
updateWrapper.set(ProjectLawsInventoryEO::getHomologationEngineerSubmitStatus, null);
|
||||
updateWrapper.set(ProjectLawsInventoryEO::getSendMsgFlag, null);
|
||||
updateWrapper.set(ProjectLawsInventoryEO::getSendMsgCurrentFlag, null);
|
||||
updateWrapper.set(ProjectLawsInventoryEO::getInventoryAffirmDueDate, null);
|
||||
updateWrapper.set(ProjectLawsInventoryEO::getTaskAffirmDueDate, null);
|
||||
|
||||
// 区分重置设计、验证、全部流程
|
||||
if(StringUtils.equals(operateType, OperatorTypeEnum.LAWS_INVENTORY_ALL_RESET_FLOW.getValue())){
|
||||
updateWrapper.set(ProjectLawsInventoryEO::getDesignFlowStatus, ComplianceFlowStatusEnum.LIST_TO_BE_CHECKED.getValue());
|
||||
updateWrapper.set(ProjectLawsInventoryEO::getVerifyFlowStatus, ComplianceFlowStatusEnum.LIST_TO_BE_CHECKED.getValue());
|
||||
piFlowTypeList.add(FlowTypeEnum.SJFHXSHLC.getValue());
|
||||
piFlowTypeList.add(FlowTypeEnum.YZFHXSCLC.getValue());
|
||||
piFlowTypeList.add(FlowTypeEnum.SJ_XGJFWLC.getValue());
|
||||
piFlowTypeList.add(FlowTypeEnum.YZ_XGJFWLC.getValue());
|
||||
}else if(StringUtils.equals(operateType,OperatorTypeEnum.LAWS_INVENTORY_DESIGN_RESET_FLOW.getValue())){
|
||||
updateWrapper.set(ProjectLawsInventoryEO::getDesignFlowStatus, ComplianceFlowStatusEnum.LIST_TO_BE_CHECKED.getValue());
|
||||
piFlowTypeList.add(FlowTypeEnum.SJFHXSHLC.getValue());
|
||||
piFlowTypeList.add(FlowTypeEnum.SJ_XGJFWLC.getValue());
|
||||
}else if(StringUtils.equals(operateType,OperatorTypeEnum.LAWS_INVENTORY_VERIFY_RESET_FLOW.getValue())){
|
||||
updateWrapper.set(ProjectLawsInventoryEO::getVerifyFlowStatus, ComplianceFlowStatusEnum.LIST_TO_BE_CHECKED.getValue());
|
||||
piFlowTypeList.add(FlowTypeEnum.YZFHXSCLC.getValue());
|
||||
piFlowTypeList.add(FlowTypeEnum.YZ_XGJFWLC.getValue());
|
||||
}
|
||||
|
||||
super.update(projectLawsInventoryEO, updateWrapper);
|
||||
|
||||
QueryWrapper<ProcessInfoEO> processInfoQueryWrap = new QueryWrapper<>();
|
||||
processInfoQueryWrap.lambda().in(ProcessInfoEO::getProjectLawsInventoryId, idList);
|
||||
processInfoQueryWrap.lambda().in(ProcessInfoEO::getFlowType,piFlowTypeList);
|
||||
List<ProcessInfoEO> processInfoEOList = this.processInfoEOService.list(processInfoQueryWrap);
|
||||
List<String> actiProcInstIdList = processInfoEOList.stream().map(ProcessInfoEO::getActiProcInstId).distinct().collect(Collectors.toList());
|
||||
|
||||
pIds = actiProcInstIdList.stream().map(String::valueOf).collect(Collectors.joining(","));
|
||||
|
||||
JSONObject params = new JSONObject();
|
||||
params.put("projectLawsInventoryIds", projectLawsInventoryIds);
|
||||
params.put("pIds", pIds);
|
||||
|
||||
//清除流程中心对应的数据
|
||||
params.put("ids", ids);
|
||||
params.put("operateType", operateType);
|
||||
this.processInfoEOService.change(params);
|
||||
|
||||
// 删除流程历史数据
|
||||
this.processHistoryEOService.deleteBiActiProcInstIdList(actiProcInstIdList);
|
||||
|
||||
this.lawsInventoryEOListSortByInventoryAffirmDueDate(projectLawsInventoryEOS);
|
||||
Date inventoryAffirmDueDate = projectLawsInventoryEOS.get(0).getInventoryAffirmDueDate();
|
||||
String endTime = "";
|
||||
if (inventoryAffirmDueDate != null) {
|
||||
endTime = DateUtils.formatDate(inventoryAffirmDueDate);
|
||||
}
|
||||
}
|
||||
//流程重置后,将平台件关联信息删除
|
||||
LambdaQueryWrapper<LawsInventoryPlatformEO> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.in(LawsInventoryPlatformEO::getLawsInventoryId,Arrays.asList(ids.split(",")));
|
||||
lawsInventoryPlatformEOService.remove(wrapper);
|
||||
}
|
||||
private void resetFolw(String ids, String projectLibraryId, String operateType) {
|
||||
if (StringUtils.isNotEmpty(ids)) {
|
||||
|
||||
|
||||
@@ -160,6 +160,11 @@
|
||||
<a-icon type="copy"/>
|
||||
{{ $t('copy') }}
|
||||
</div>
|
||||
<!-- 流程重置-->
|
||||
<div class="operator-text" v-if="this.roleSwitchingCode == '1'" @click="alterationClick">
|
||||
<a-icon type="file-search"/>
|
||||
{{ $t('processReset') }}
|
||||
</div>
|
||||
<!-- 关联平台件-->
|
||||
<!-- v-if="this.roleSwitchingCode == '0'"-->
|
||||
<!-- <div class="operator-text" @click="associatedplatformClick('法规')">-->
|
||||
@@ -2401,7 +2406,8 @@
|
||||
postAction('/project/projectLawsInventoryEO/change', {
|
||||
ids: idList.join(','),
|
||||
projectLibraryId: _this.$route.query.id,
|
||||
operateType: _this.formInlineReset.operateType
|
||||
operateType: _this.formInlineReset.operateType,
|
||||
currRole:this.roleSwitchingCode
|
||||
}).then((res) => {
|
||||
if (res.success) {
|
||||
_this.$message.success(_this.$t('OperationSuccessful'))
|
||||
|
||||
Reference in New Issue
Block a user