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

This commit is contained in:
yjz
2024-01-30 15:50:22 +08:00
18 changed files with 95 additions and 49 deletions
@@ -109,6 +109,8 @@ public class ProcessEsAbolishServiceImpl extends ServiceImpl<ProcessEsAbolishMap
// 强制撤回 // 强制撤回
commonVO.setProcessInstanceId(processInstanceId); commonVO.setProcessInstanceId(processInstanceId);
actFlowCommonService.saveFirstNodeDraft(commonVO, ProcessTypeEnum.ES_ABOLISH, jsonData); actFlowCommonService.saveFirstNodeDraft(commonVO, ProcessTypeEnum.ES_ABOLISH, jsonData);
// 更新审批表为完成,填充数据
actFlowCommonService.updateApprovalInfo(commonVO, taskId, true);
// 自动完成第一个任务 // 自动完成第一个任务
actFlowCommonService.completeTask(taskId, userId); actFlowCommonService.completeTask(taskId, userId);
// 根据流程实例id更新流程总表 // 根据流程实例id更新流程总表
@@ -159,7 +159,7 @@ public class ProcessEsAnnualInit implements Serializable {
/** /**
* 企标体系 * 企标体系
*/ */
@Excel(name = "*标准体系", width = 25, orderNum = "7") @Excel(name = "标准体系", width = 25, orderNum = "7")
@Dict(dictTable = "laws_tree_node", dicCode = "id", dicText = "node_name") @Dict(dictTable = "laws_tree_node", dicCode = "id", dicText = "node_name")
@ApiModelProperty(value = "企标体系") @ApiModelProperty(value = "企标体系")
private String enStandardSystem; private String enStandardSystem;
@@ -246,7 +246,7 @@ public class ProcessEsAnnualInit implements Serializable {
/** /**
* 零部件名称 * 零部件名称
*/ */
@Excel(name = "*零部件名称", width = 15, orderNum = "13") @Excel(name = "零部件名称", width = 15, orderNum = "13")
@Dict(dictTable = "laws_part_name", dicCode = "code", dicText = "name") @Dict(dictTable = "laws_part_name", dicCode = "code", dicText = "name")
@ApiModelProperty(value = "零部件名称") @ApiModelProperty(value = "零部件名称")
private String componentName; private String componentName;
@@ -254,7 +254,7 @@ public class ProcessEsAnnualInit implements Serializable {
/** /**
* 授权部门 * 授权部门
*/ */
@Excel(name = "*授权部门", width = 15, orderNum = "14") @Excel(name = "授权部门", width = 15, orderNum = "14")
@Dict(dictTable = "sys_depart", dicCode = "id", dicText = "depart_name") @Dict(dictTable = "sys_depart", dicCode = "id", dicText = "depart_name")
@ApiModelProperty(value = "授权部门") @ApiModelProperty(value = "授权部门")
private String authDept; private String authDept;
@@ -132,6 +132,8 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl<ProcessEsAnnualI
// 强制撤回 // 强制撤回
commonVO.setProcessInstanceId(processInstanceId); commonVO.setProcessInstanceId(processInstanceId);
actFlowCommonService.saveFirstNodeDraft(commonVO, ProcessTypeEnum.ES_ANNUAL_INIT, jsonData); actFlowCommonService.saveFirstNodeDraft(commonVO, ProcessTypeEnum.ES_ANNUAL_INIT, jsonData);
// 更新审批表为完成,填充数据
actFlowCommonService.updateApprovalInfo(commonVO, taskId, true);
// 自动完成第一个任务 // 自动完成第一个任务
actFlowCommonService.completeTask(taskId, userId); actFlowCommonService.completeTask(taskId, userId);
// 根据流程实例id更新流程总表 // 根据流程实例id更新流程总表
@@ -525,14 +527,6 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl<ProcessEsAnnualI
} }
private void cleanData(List<ProcessEsAnnualInit> list) { private void cleanData(List<ProcessEsAnnualInit> list) {
// List<String> originStandardNoList = list.stream().map(ProcessEsAnnualInit::getOriginEnStandardNo).collect(Collectors.toList());
// LambdaQueryWrapper<LawsEnterpriseStandard> esWrapper = new LambdaQueryWrapper<>();
// esWrapper.in(LawsEnterpriseStandard::getStandardNumber, originStandardNoList);
// List<LawsEnterpriseStandard> esList = enterpriseStandardService.list(esWrapper);
// // 转换成key为企标编号的map
// Map<String, LawsEnterpriseStandard> esMap = esList.stream().collect(Collectors.toMap(LawsEnterpriseStandard::getStandardNumber, item -> item));
list.forEach(item -> { list.forEach(item -> {
// 如果是制定则去除掉所有的原企标名称 原企标编号 // 如果是制定则去除掉所有的原企标名称 原企标编号
if (ESPProjectType.ENACT.getValue().equals(item.getProjectType())) { if (ESPProjectType.ENACT.getValue().equals(item.getProjectType())) {
@@ -567,10 +561,10 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl<ProcessEsAnnualI
item.setContactUser(excelUtils.translateDictValue("CONCAT(realname, '(', username, ')')", "id", "sys_user", item.getContactUser(), listDict)); item.setContactUser(excelUtils.translateDictValue("CONCAT(realname, '(', username, ')')", "id", "sys_user", item.getContactUser(), listDict));
item.setStandardType(excelUtils.translateDictValue("esp_standard_type", item.getStandardType(), listDict)); item.setStandardType(excelUtils.translateDictValue("esp_standard_type", item.getStandardType(), listDict));
item.setEnStandardClassification(excelUtils.translateDictValue("standard_grade_classify", item.getEnStandardClassification(), listDict)); item.setEnStandardClassification(excelUtils.translateDictValue("standard_grade_classify", item.getEnStandardClassification(), listDict));
item.setComponentName(excelUtils.translateDictValue("part_name", item.getComponentName(), listDict));
item.setDraftPlannedCompleteDate(importUtil.convertDate(item.getDraftPlannedCompleteDateString())); item.setDraftPlannedCompleteDate(importUtil.convertDate(item.getDraftPlannedCompleteDateString()));
item.setSolicitationDraftPlanCompleteDate(importUtil.convertDate(item.getSolicitationDraftPlanCompleteDateString())); item.setSolicitationDraftPlanCompleteDate(importUtil.convertDate(item.getSolicitationDraftPlanCompleteDateString()));
item.setPlanApprovalDate(importUtil.convertDate(item.getPlanApprovalDateString())); item.setPlanApprovalDate(importUtil.convertDate(item.getPlanApprovalDateString()));
item.setComponentName(excelUtils.translateDictValue("name", "code", "laws_part_name", item.getComponentName(), listDict));
}); });
} }
@@ -616,11 +610,10 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl<ProcessEsAnnualI
// 检查制修订类型 编号 名称 // 检查制修订类型 编号 名称
errMsg.append(validProjectType(plan, listDict, esList)); errMsg.append(validProjectType(plan, listDict, esList));
// 检查标准等级分类和授权部门 // 检查标准等级分类和授权部门
errMsg.append(excelUtils.validAuthDept(authDept, listDict, standardClassification, authDeptMap)); errMsg.append(excelUtils.validAuthDept(authDept, listDict, mainDraftingUnit, standardClassification, authDeptMap, false));
// 检查所有数据字典校验的字段 // 检查所有数据字典校验的字段
errMsg.append(excelUtils.validCooperateUnit(cooperationUnit, listDict)); errMsg.append(excelUtils.validCooperateUnit(cooperationUnit, listDict));
errMsg.append(excelUtils.validMainDraftingUser(mainDraftingUser, listDict)); errMsg.append(excelUtils.validMainDraftingUser(mainDraftingUser, listDict));
errMsg.append(excelUtils.validMainDraftingUnit(mainDraftingUnit, listDict));
errMsg.append(excelUtils.validMainDraftingUnitResponsiblePerson(mainDraftingUnitResponsiblePerson, listDict)); errMsg.append(excelUtils.validMainDraftingUnitResponsiblePerson(mainDraftingUnitResponsiblePerson, listDict));
errMsg.append(excelUtils.validStandardPromoter(standardPromoter, listDict)); errMsg.append(excelUtils.validStandardPromoter(standardPromoter, listDict));
errMsg.append(excelUtils.validStandardSystem(standardSystem, listDict, false)); errMsg.append(excelUtils.validStandardSystem(standardSystem, listDict, false));
@@ -179,7 +179,7 @@ public class ProcessEsAnnualReport implements Serializable {
/** /**
* 企标等级分类 * 企标等级分类
*/ */
@Excel(name = "*标准等级分类", width = 15, orderNum = "10") @Excel(name = "标准等级分类", width = 15, orderNum = "10")
@Dict(dicCode = "standard_grade_classify") @Dict(dicCode = "standard_grade_classify")
@ApiModelProperty(value = "企标等级分类") @ApiModelProperty(value = "企标等级分类")
private String enStandardClassification; private String enStandardClassification;
@@ -235,6 +235,7 @@ public class ProcessEsAnnualReport implements Serializable {
/** /**
* 零部件名称 * 零部件名称
*/ */
@Dict(dictTable = "laws_part_name", dicCode = "code", dicText = "name")
@ApiModelProperty(value = "零部件名称") @ApiModelProperty(value = "零部件名称")
private String componentName; private String componentName;
/** /**
@@ -315,7 +316,7 @@ public class ProcessEsAnnualReport implements Serializable {
/** /**
* 授权部门 * 授权部门
*/ */
@Excel(name = "*授权部门", width = 15, orderNum = "5") @Excel(name = "授权部门", width = 15, orderNum = "5")
@Dict(dictTable = "sys_depart", dicCode = "id", dicText = "depart_name") @Dict(dictTable = "sys_depart", dicCode = "id", dicText = "depart_name")
@ApiModelProperty(value = "授权部门") @ApiModelProperty(value = "授权部门")
private String authDept; private String authDept;
@@ -128,6 +128,8 @@ public class ProcessEsAnnualReportServiceImpl extends ServiceImpl<ProcessEsAnnua
// 强制撤回 // 强制撤回
commonVO.setProcessInstanceId(processInstanceId); commonVO.setProcessInstanceId(processInstanceId);
actFlowCommonService.saveFirstNodeDraft(commonVO, ProcessTypeEnum.ES_ANNUAL_REPORT, jsonData); actFlowCommonService.saveFirstNodeDraft(commonVO, ProcessTypeEnum.ES_ANNUAL_REPORT, jsonData);
// 更新审批表为完成,填充数据
actFlowCommonService.updateApprovalInfo(commonVO, taskId, true);
// 自动完成第一个任务 // 自动完成第一个任务
actFlowCommonService.completeTask(taskId, userId); actFlowCommonService.completeTask(taskId, userId);
// 根据流程实例id更新流程总表 // 根据流程实例id更新流程总表
@@ -427,14 +429,6 @@ public class ProcessEsAnnualReportServiceImpl extends ServiceImpl<ProcessEsAnnua
} }
private void cleanData(List<ProcessEsAnnualReport> list) { private void cleanData(List<ProcessEsAnnualReport> list) {
// List<String> originStandardNoList = list.stream().map(ProcessEsAnnualReport::getOriginEnStandardNo).collect(Collectors.toList());
//
// LambdaQueryWrapper<LawsEnterpriseStandard> esWrapper = new LambdaQueryWrapper<>();
// esWrapper.in(LawsEnterpriseStandard::getStandardNumber, originStandardNoList);
// List<LawsEnterpriseStandard> esList = enterpriseStandardService.list(esWrapper);
// // 转换成key为企标编号的map
// Map<String, LawsEnterpriseStandard> esMap = esList.stream().collect(Collectors.toMap(LawsEnterpriseStandard::getStandardNumber, item -> item));
list.forEach(item -> { list.forEach(item -> {
// 如果是制定则去除掉所有的原企标名称 原企标编号 // 如果是制定则去除掉所有的原企标名称 原企标编号
if (ESPProjectType.ENACT.getValue().equals(item.getProjectType())) { if (ESPProjectType.ENACT.getValue().equals(item.getProjectType())) {
@@ -472,6 +466,7 @@ public class ProcessEsAnnualReportServiceImpl extends ServiceImpl<ProcessEsAnnua
item.setDraftPlannedCompleteDate(importUtil.convertDate(item.getDraftPlannedCompleteDateString())); item.setDraftPlannedCompleteDate(importUtil.convertDate(item.getDraftPlannedCompleteDateString()));
item.setSolicitationDraftPlanCompleteDate(importUtil.convertDate(item.getSolicitationDraftPlanCompleteDateString())); item.setSolicitationDraftPlanCompleteDate(importUtil.convertDate(item.getSolicitationDraftPlanCompleteDateString()));
item.setPlanApprovalDate(importUtil.convertDate(item.getPlanApprovalDateString())); item.setPlanApprovalDate(importUtil.convertDate(item.getPlanApprovalDateString()));
item.setComponentName(excelUtils.translateDictValue("name", "code", "laws_part_name", item.getComponentName(), listDict));
}); });
} }
@@ -507,6 +502,7 @@ public class ProcessEsAnnualReportServiceImpl extends ServiceImpl<ProcessEsAnnua
String draftPlannedCompleteDateString = plan.getDraftPlannedCompleteDateString(); String draftPlannedCompleteDateString = plan.getDraftPlannedCompleteDateString();
String solicitationDraftPlanCompleteDateString = plan.getSolicitationDraftPlanCompleteDateString(); String solicitationDraftPlanCompleteDateString = plan.getSolicitationDraftPlanCompleteDateString();
String planApprovalDateString = plan.getPlanApprovalDateString(); String planApprovalDateString = plan.getPlanApprovalDateString();
String partName = plan.getComponentName();
StringBuilder errMsgHeader = new StringBuilder(); StringBuilder errMsgHeader = new StringBuilder();
StringBuilder errMsg = new StringBuilder(); StringBuilder errMsg = new StringBuilder();
@@ -515,11 +511,10 @@ public class ProcessEsAnnualReportServiceImpl extends ServiceImpl<ProcessEsAnnua
// 检查制修订类型 编号 名称 // 检查制修订类型 编号 名称
errMsg.append(validProjectType(plan, listDict, esList)); errMsg.append(validProjectType(plan, listDict, esList));
// 检查标准等级分类和授权部门 // 检查标准等级分类和授权部门
errMsg.append(excelUtils.validAuthDept(authDept, listDict, standardClassification, authDeptMap)); errMsg.append(excelUtils.validAuthDept(authDept, listDict, mainDraftingUnit, standardClassification, authDeptMap, false));
// 检查所有数据字典校验的字段 // 检查所有数据字典校验的字段
errMsg.append(excelUtils.validCooperateUnit(cooperationUnit, listDict)); errMsg.append(excelUtils.validCooperateUnit(cooperationUnit, listDict));
errMsg.append(excelUtils.validMainDraftingUser(mainDraftingUser, listDict)); errMsg.append(excelUtils.validMainDraftingUser(mainDraftingUser, listDict));
errMsg.append(excelUtils.validMainDraftingUnit(mainDraftingUnit, listDict));
errMsg.append(excelUtils.validMainDraftingUnitResponsiblePerson(mainDraftingUnitResponsiblePerson, listDict)); errMsg.append(excelUtils.validMainDraftingUnitResponsiblePerson(mainDraftingUnitResponsiblePerson, listDict));
errMsg.append(excelUtils.validStandardPromoter(standardPromoter, listDict)); errMsg.append(excelUtils.validStandardPromoter(standardPromoter, listDict));
errMsg.append(excelUtils.validWorkGroup(workGroup, listDict)); errMsg.append(excelUtils.validWorkGroup(workGroup, listDict));
@@ -528,6 +523,7 @@ public class ProcessEsAnnualReportServiceImpl extends ServiceImpl<ProcessEsAnnua
errMsg.append(excelUtils.validSingleDateMustInputNotBeforeToday(draftPlannedCompleteDateString, "草稿计划完成日期")); errMsg.append(excelUtils.validSingleDateMustInputNotBeforeToday(draftPlannedCompleteDateString, "草稿计划完成日期"));
errMsg.append(excelUtils.validSingleDateMustInputNotBeforeToday(solicitationDraftPlanCompleteDateString, "征求意见稿计划完成日期")); errMsg.append(excelUtils.validSingleDateMustInputNotBeforeToday(solicitationDraftPlanCompleteDateString, "征求意见稿计划完成日期"));
errMsg.append(excelUtils.validSingleDateMustInputNotBeforeToday(planApprovalDateString, "计划报批日期")); errMsg.append(excelUtils.validSingleDateMustInputNotBeforeToday(planApprovalDateString, "计划报批日期"));
errMsg.append(excelUtils.validPartName(partName, listDict, false));
// 如果数据有问题,则将提示信息添加到 errorMsgs 中 // 如果数据有问题,则将提示信息添加到 errorMsgs 中
if (errMsg.length() > 0) { if (errMsg.length() > 0) {
errorMsgs.add(errMsgHeader.append(errMsg).toString()); errorMsgs.add(errMsgHeader.append(errMsg).toString());
@@ -112,6 +112,8 @@ public class ProcessEsArchiveServiceImpl extends ServiceImpl<ProcessEsArchiveMap
// 强制撤回 // 强制撤回
common.setProcessInstanceId(processInstanceId); common.setProcessInstanceId(processInstanceId);
actFlowCommonService.saveFirstNodeDraft(common, ProcessTypeEnum.ES_ARCHIVE, jsonData); actFlowCommonService.saveFirstNodeDraft(common, ProcessTypeEnum.ES_ARCHIVE, jsonData);
// 更新审批表为完成,填充数据
actFlowCommonService.updateApprovalInfo(common, taskId, true);
// 自动完成第一个任务 // 自动完成第一个任务
actFlowCommonService.completeTask(taskId, userId); actFlowCommonService.completeTask(taskId, userId);
// 根据流程实例id更新流程总表 // 根据流程实例id更新流程总表
@@ -125,6 +125,8 @@ public class ProcessEsChangeServiceImpl extends ServiceImpl<ProcessEsChangeMappe
// 强制撤回 // 强制撤回
common.setProcessInstanceId(processInstanceId); common.setProcessInstanceId(processInstanceId);
actFlowCommonService.saveFirstNodeDraft(common, ProcessTypeEnum.ES_CHANGE, jsonData); actFlowCommonService.saveFirstNodeDraft(common, ProcessTypeEnum.ES_CHANGE, jsonData);
// 更新审批表为完成,填充数据
actFlowCommonService.updateApprovalInfo(common, taskId, true);
// 自动完成第一个任务 // 自动完成第一个任务
actFlowCommonService.completeTask(taskId, userId); actFlowCommonService.completeTask(taskId, userId);
// 根据流程实例id更新流程总表 // 根据流程实例id更新流程总表
@@ -108,6 +108,8 @@ public class ProcessEsEnableServiceImpl extends ServiceImpl<ProcessEsEnableMappe
// 强制撤回 // 强制撤回
common.setProcessInstanceId(processInstanceId); common.setProcessInstanceId(processInstanceId);
actFlowCommonService.saveFirstNodeDraft(common, ProcessTypeEnum.ES_ENABLE, jsonData); actFlowCommonService.saveFirstNodeDraft(common, ProcessTypeEnum.ES_ENABLE, jsonData);
// 更新审批表为完成,填充数据
actFlowCommonService.updateApprovalInfo(common, taskId, true);
// 自动完成第一个任务 // 自动完成第一个任务
actFlowCommonService.completeTask(taskId, userId); actFlowCommonService.completeTask(taskId, userId);
// 根据流程实例id更新流程总表 // 根据流程实例id更新流程总表
@@ -138,6 +138,8 @@ public class ProcessEsInitChangeServiceImpl extends ServiceImpl<ProcessEsInitCha
// 强制撤回 // 强制撤回
commonVO.setProcessInstanceId(processInstanceId); commonVO.setProcessInstanceId(processInstanceId);
actFlowCommonService.saveFirstNodeDraft(commonVO, ProcessTypeEnum.ES_INIT_CHANGE, jsonData); actFlowCommonService.saveFirstNodeDraft(commonVO, ProcessTypeEnum.ES_INIT_CHANGE, jsonData);
// 更新审批表为完成,填充数据
actFlowCommonService.updateApprovalInfo(commonVO, taskId, true);
// 自动完成第一个任务 // 自动完成第一个任务
actFlowCommonService.completeTask(taskId, userId); actFlowCommonService.completeTask(taskId, userId);
// 根据流程实例id更新流程总表 // 根据流程实例id更新流程总表
@@ -104,6 +104,8 @@ public class ProcessEsRecheckServiceImpl extends ServiceImpl<ProcessEsRecheckMap
// 强制撤回 // 强制撤回
common.setProcessInstanceId(processInstanceId); common.setProcessInstanceId(processInstanceId);
actFlowCommonService.saveFirstNodeDraft(common, ProcessTypeEnum.ES_RECHECK, jsonData); actFlowCommonService.saveFirstNodeDraft(common, ProcessTypeEnum.ES_RECHECK, jsonData);
// 更新审批表为完成,填充数据
actFlowCommonService.updateApprovalInfo(common, taskId, true);
// 自动完成第一个任务 // 自动完成第一个任务
actFlowCommonService.completeTask(taskId, userId); actFlowCommonService.completeTask(taskId, userId);
// 根据流程实例id更新流程总表 // 根据流程实例id更新流程总表
@@ -149,6 +149,8 @@ public class EsRevisionServiceImpl extends ServiceImpl<EsRevisionMapper, Process
Date dueTime = commonVO.getDueTime(); Date dueTime = commonVO.getDueTime();
Integer prcType = ProcessTypeEnum.ES_REVISION.getValue(); Integer prcType = ProcessTypeEnum.ES_REVISION.getValue();
actFlowCommonService.updateProcessAll(processInstanceId, userId, prcName, prcMes, prcType, dueTime); actFlowCommonService.updateProcessAll(processInstanceId, userId, prcName, prcMes, prcType, dueTime);
// 更新审批表为完成,填充数据
actFlowCommonService.updateApprovalInfo(commonVO, taskId, true);
// 自动完成第一个任务 // 自动完成第一个任务
actFlowCommonService.completeTask(taskId, userId); actFlowCommonService.completeTask(taskId, userId);
} }
@@ -14,6 +14,8 @@ import java.util.List;
public interface ProcessProjectStandardTermMapper extends BaseMapper<ProcessProjectStandardTerm> { public interface ProcessProjectStandardTermMapper extends BaseMapper<ProcessProjectStandardTerm> {
List<ProcessProjectStandardTerm> getByResponsibleUnitLeader(@Param("processId") String processId, @Param("originUserId") String originUserId, @Param("hasModuleOwner") Boolean hasModuleOwner); List<ProcessProjectStandardTerm> getByResponsibleUnitLeader(@Param("processId") String processId, @Param("originUserId") String originUserId, @Param("hasModuleOwner") Boolean hasModuleOwner);
List<ProcessProjectStandardTerm> getByResponsibleUnitLeaderSp(@Param("processId") String processId, @Param("originUserId") String originUserId);
List<ProcessProjectStandardTerm> getByModuleOwner(@Param("processId") String processId, @Param("originUserId") String originUserId, @Param("executionParentId") String executionParentId, @Param("hasDesignEngineer") Boolean hasDesignEngineer); List<ProcessProjectStandardTerm> getByModuleOwner(@Param("processId") String processId, @Param("originUserId") String originUserId, @Param("executionParentId") String executionParentId, @Param("hasDesignEngineer") Boolean hasDesignEngineer);
List<ProcessProjectStandardTerm> getByRejectModuleOwner(@Param("processId") String processId, @Param("originUserId") String originUserId, @Param("executionParentId") String executionParentId); List<ProcessProjectStandardTerm> getByRejectModuleOwner(@Param("processId") String processId, @Param("originUserId") String originUserId, @Param("executionParentId") String executionParentId);
@@ -59,6 +59,21 @@
and ppstu.id is not null and ppstu.id is not null
</select> </select>
<select id="getByResponsibleUnitLeaderSp" resultMap="BaseResultMap">
select
group_concat(ppstu.module_owner) module_owner,
<include refid="Base_Column_List">
<property name="alias" value="ppst"/>
</include>
from process_project_standard_term ppst
left join process_project_standard_term_user ppstu on ppst.id = ppstu.term_id
where ppst.process_id = #{processId}
and ppstu.responsible_unit_leader = #{originUserId}
and ppstu.module_owner is not null
and ppstu.id is not null
group by ppst.id
</select>
<select id="getByModuleOwner" resultMap="BaseResultMap"> <select id="getByModuleOwner" resultMap="BaseResultMap">
select select
ppstu.id term_user_id, ppstu.id term_user_id,
@@ -43,6 +43,9 @@
<if test="termUser.id != null and termUser.id != ''"> <if test="termUser.id != null and termUser.id != ''">
and ppstu.term_id = #{termUser.id} and ppstu.term_id = #{termUser.id}
</if> </if>
<if test="termUser.responsibleUnitLeader != null and termUser.responsibleUnitLeader != ''">
and ppstu.responsible_unit_leader = #{termUser.responsibleUnitLeader}
</if>
<if test="termUser.userName != null and termUser.userName != ''"> <if test="termUser.userName != null and termUser.userName != ''">
and su.username like concat('%', #{termUser.userName}, '%') and su.username like concat('%', #{termUser.userName}, '%')
</if> </if>
@@ -173,7 +173,7 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
break; break;
//部所主管级领导审批 //部所主管级领导审批
case ProcessProjectStandardCommon.BSZGJLDSP_: case ProcessProjectStandardCommon.BSZGJLDSP_:
processProjectStandardTermList = termMapper.getByResponsibleUnitLeader(processId, originUserId, true); processProjectStandardTermList = termMapper.getByResponsibleUnitLeaderSp(processId, originUserId);
wrapper.eq(ProcessProjectStandardTermUser::getResponsibleUnitLeader, originUserId); wrapper.eq(ProcessProjectStandardTermUser::getResponsibleUnitLeader, originUserId);
termUserList = termUserService.list(wrapper); termUserList = termUserService.list(wrapper);
break; break;
@@ -199,26 +199,27 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
Map<String, List<ProcessProjectStandardTermUser>> termIdListMap = CollStreamUtil.groupByKey(termUserList, ProcessProjectStandardTermUser::getTermId); Map<String, List<ProcessProjectStandardTermUser>> termIdListMap = CollStreamUtil.groupByKey(termUserList, ProcessProjectStandardTermUser::getTermId);
for (ProcessProjectStandardTerm term : processProjectStandardTermList) { for (ProcessProjectStandardTerm term : processProjectStandardTermList) {
String termId = term.getId(); String termId = term.getId();
String assessResults = term.getAssessResults();
if (termIdListMap.containsKey(termId)) { if (termIdListMap.containsKey(termId)) {
List<ProcessProjectStandardTermUser> termUsers = termIdListMap.get(termId); List<ProcessProjectStandardTermUser> termUsers = termIdListMap.get(termId);
String assessResults = AssessCommon.NOT_INVOLVED;
String projectApprovalFlag = YesOrNoEnum.NO.getValue();
List<String> moduleOwnerList = new ArrayList<>(); List<String> moduleOwnerList = new ArrayList<>();
List<String> responsibleUnitLeaderList = new ArrayList<>(); List<String> responsibleUnitLeaderList = new ArrayList<>();
for (ProcessProjectStandardTermUser termUser : termUsers) { if (!ProcessProjectStandardCommon.MKZRRSP_.equals(taskDefinitionKey)){
moduleOwnerList.add(termUser.getModuleOwner()); for (ProcessProjectStandardTermUser termUser : termUsers) {
responsibleUnitLeaderList.add(termUser.getResponsibleUnitLeader()); moduleOwnerList.add(termUser.getModuleOwner());
String assessResults1 = termUser.getAssessResults(); responsibleUnitLeaderList.add(termUser.getResponsibleUnitLeader());
if (AssessCommon.NOT_COMPLIANT.equals(assessResults1)) {
assessResults = AssessCommon.NOT_COMPLIANT;
projectApprovalFlag = YesOrNoEnum.YES.getValue();
break;
} }
if (AssessCommon.ACCORD_WITH.equals(assessResults1)) { List<String> assessResultList = CollStreamUtil.toList(termUsers, ProcessProjectStandardTermUser::getAssessResults);
if (assessResultList.contains(AssessCommon.NOT_COMPLIANT)){
assessResults = AssessCommon.NOT_COMPLIANT;
}else if (assessResultList.contains(AssessCommon.ACCORD_WITH)){
assessResults = AssessCommon.ACCORD_WITH; assessResults = AssessCommon.ACCORD_WITH;
projectApprovalFlag = YesOrNoEnum.NO.getValue(); }else {
assessResults = AssessCommon.NOT_INVOLVED;
} }
} }
if (ProcessProjectStandardCommon.BSZGJLDSP_.equals(taskDefinitionKey)){ if (ProcessProjectStandardCommon.BSZGJLDSP_.equals(taskDefinitionKey)){
List<String> userNameList = new ArrayList<>(); List<String> userNameList = new ArrayList<>();
moduleOwnerList.stream() moduleOwnerList.stream()
@@ -238,10 +239,17 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
term.setResponsibleUnitLeader(String.join(",", userNameList)); term.setResponsibleUnitLeader(String.join(",", userNameList));
} }
term.setProjectApprovalFlag(projectApprovalFlag);
term.setAssessResults(assessResults); term.setAssessResults(assessResults);
term.setAssessResults_dictText(assessResultsMap.get(assessResults));
} }
term.setAssessResults_dictText(assessResultsMap.get(assessResults));
String projectApprovalFlag;
if (AssessCommon.NOT_COMPLIANT.equals(assessResults)) {
projectApprovalFlag = YesOrNoEnum.YES.getValue();
}else {
projectApprovalFlag = YesOrNoEnum.NO.getValue();
}
term.setProjectApprovalFlag(projectApprovalFlag);
String modelSeries = term.getModelSeries(); String modelSeries = term.getModelSeries();
term.setModelSeries_dictText(sysBaseAPI.translateByDictMap(modelSeriesDictMap,modelSeries)); term.setModelSeries_dictText(sysBaseAPI.translateByDictMap(modelSeriesDictMap,modelSeries));
String designEngineer = term.getDesignEngineer(); String designEngineer = term.getDesignEngineer();
@@ -934,6 +942,10 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
public IPage<ProcessProjectStandardTermUser> getTermUserList(ProcessProjectStandardTermUser termUser, Integer pageNo, Integer pageSize) { public IPage<ProcessProjectStandardTermUser> getTermUserList(ProcessProjectStandardTermUser termUser, Integer pageNo, Integer pageSize) {
Page<ProcessProjectStandardTermUser> page = new Page<>(pageNo, pageSize); Page<ProcessProjectStandardTermUser> page = new Page<>(pageNo, pageSize);
Page<ProcessProjectStandardTermUser> pageList = termUserMapper.selectPageByUser(page, termUser); Page<ProcessProjectStandardTermUser> pageList = termUserMapper.selectPageByUser(page, termUser);
for (ProcessProjectStandardTermUser record : pageList.getRecords()) {
String moduleOwner = record.getModuleOwner();
record.setModuleOwner(sysBaseAPI.translateUserRealNameFromTable(moduleOwner));
}
return pageList; return pageList;
} }
@@ -261,8 +261,11 @@ public class ExcelUtils {
return ""; return "";
} }
public String validAuthDept(String authDept, List<SysDictItemCore> listDict, public String validAuthDept(String authDept, List<SysDictItemCore> listDict, String mainDraftingUnit,
String standardClassification, Map<String, List<String>> authDeptMap) { String standardClassification, Map<String, List<String>> authDeptMap, boolean mustInput) {
// 先校验主起草部门
this.validMainDraftingUnit(mainDraftingUnit, listDict);
if (StrUtil.isBlank(authDept) && StrUtil.isBlank(standardClassification)) { if (StrUtil.isBlank(authDept) && StrUtil.isBlank(standardClassification)) {
return ""; return "";
} }
@@ -280,7 +283,11 @@ public class ExcelUtils {
String level = translateDictValue("standard_grade_classify", standardClassification, listDict); String level = translateDictValue("standard_grade_classify", standardClassification, listDict);
if (StrUtil.isBlank(authDept)) { if (StrUtil.isBlank(authDept)) {
return "'授权部门'不能为空。"; if (mustInput) {
return "'授权部门'不能为空。";
} else {
return "";
}
} }
// 检查授权部门 // 检查授权部门
if (!excelUtils.validDict("depart_name", authDept, "sys_depart", "id", false, listDict)) { if (!excelUtils.validDict("depart_name", authDept, "sys_depart", "id", false, listDict)) {
@@ -288,11 +295,14 @@ public class ExcelUtils {
} }
// 将授权部门转换为idList // 将授权部门转换为idList
String deptIds = excelUtils.translateDictValue("depart_name", "id", "sys_depart", authDept, listDict); String deptIds = excelUtils.translateDictValue("depart_name", "id", "sys_depart", authDept, listDict);
List<String> deptList = new ArrayList<>(Arrays.asList(deptIds.split(",")));
String mainDraftUnitId = excelUtils.translateDictValue("depart_name", "id", "sys_depart", mainDraftingUnit, listDict);
if (level.equals("2") || level.equals("3")) { if (level.equals("2") || level.equals("3")) {
boolean isMatching = isMatchingAuthDept( List<String> levelOneIds = authDeptMap.get("1");
Arrays.asList(deptIds.split(",")), levelOneIds.add(mainDraftUnitId);
level.equals("2") ? authDeptMap.get("1") : authDeptMap.get("2") List<String> levelTwoIds = authDeptMap.get("2");
); levelTwoIds.add(mainDraftUnitId);
boolean isMatching = isMatchingAuthDept(deptList, level.equals("2") ? levelOneIds : levelTwoIds);
if (!isMatching) { if (!isMatching) {
return "'授权部门'和'标准等级分类'不匹配。"; return "'授权部门'和'标准等级分类'不匹配。";
} }
@@ -435,7 +445,7 @@ public class ExcelUtils {
} }
} }
// 检查工作组 // 检查工作组
if (!excelUtils.validDict("part_name", value, null, null, true, listDict)) { if (!excelUtils.validDict("code", value, "laws_part_name", "name", true, listDict)) {
return "'零部件名称'无效。"; return "'零部件名称'无效。";
} }
return ""; return "";