fix 81561 法规合规评估流程--部所主管级领导选择不涉及的数据,驳回后回显数据错误

This commit is contained in:
lijiarao
2024-02-01 17:21:47 +08:00
parent 2340fd2610
commit 60407a365f
3 changed files with 46 additions and 24 deletions
@@ -28,6 +28,7 @@ public class ProcessProjectStandardCommon {
//部所主管级领导下发
public static final String BSZGJLDXF_ = "bszgjldxf_";
public static final String BSZGJLDXF_1 = "bszgjldxf_1";
public static final String BSZGJLDXF_2 = "bszgjldxf_2";
//模块责任人分发
public static final String MKZRRFF_ = "mkzrrff_";
public static final String MKZRRFF_1 = "mkzrrff_1";
@@ -53,8 +53,8 @@
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}
<if test="hasModuleOwner">
and ppstu.module_owner is not null
<if test="!hasModuleOwner">
and ppstu.module_owner is null
</if>
and ppstu.id is not null
</select>
@@ -128,7 +128,9 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
String executionParentId = task.getFormKey();
String taskDefinitionKey = task.getTaskDefinitionKey();
if (taskDefinitionKey.contains("_") && !taskDefinitionKey.contains(ProcessProjectStandardCommon.MKZRRFF_)){
if (taskDefinitionKey.contains("_")
&& !taskDefinitionKey.contains(ProcessProjectStandardCommon.MKZRRFF_)
&& !taskDefinitionKey.contains(ProcessProjectStandardCommon.BSZGJLDXF_)){
taskDefinitionKey = taskDefinitionKey.substring(0,taskDefinitionKey.length()-1);
}
List<ProcessProjectStandardTermUser> processProjectStandardTermUserList = new ArrayList<>();
@@ -147,7 +149,11 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
List<ProcessProjectStandardTermUser> termUserList = new ArrayList<>();
switch (taskDefinitionKey) {
//部所主管级领导下发
case ProcessProjectStandardCommon.BSZGJLDXF_:
case ProcessProjectStandardCommon.BSZGJLDXF_1:
processProjectStandardTermList = termMapper.getByResponsibleUnitLeader(processId, originUserId, true);
break;
//驳回后部所主管级领导下发
case ProcessProjectStandardCommon.BSZGJLDXF_2:
processProjectStandardTermList = termMapper.getByResponsibleUnitLeader(processId, originUserId, false);
break;
//模块责任人分发
@@ -251,12 +257,14 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
String projectApprovalFlag;
if (ProcessProjectStandardCommon.FGGCSSP.equals(taskDefinitionKey)){
projectApprovalFlag = YesOrNoEnum.NO.getValue();
List<ProcessProjectStandardTermApproval> termApprovalList = termIdApprovalListMap.get(termId);
for (ProcessProjectStandardTermApproval termApproval : termApprovalList) {
String projectApprovalFlag1 = termApproval.getProjectApprovalFlag();
if (YesOrNoEnum.YES.getValue().equals(projectApprovalFlag1)){
projectApprovalFlag = YesOrNoEnum.YES.getValue();
break;
if (termIdApprovalListMap.containsKey(termId)){
List<ProcessProjectStandardTermApproval> termApprovalList = termIdApprovalListMap.get(termId);
for (ProcessProjectStandardTermApproval termApproval : termApprovalList) {
String projectApprovalFlag1 = termApproval.getProjectApprovalFlag();
if (YesOrNoEnum.YES.getValue().equals(projectApprovalFlag1)){
projectApprovalFlag = YesOrNoEnum.YES.getValue();
break;
}
}
}
}else if (AssessCommon.NOT_COMPLIANT.equals(assessResults)) {
@@ -287,16 +295,18 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
processProjectStandardVO.setProcessProjectStandardTermList(processProjectStandardTermList);
if (ProcessProjectStandardCommon.FGGCSSP.equals(taskDefinitionKey)){
String termId = processProjectStandardTermList.get(0).getId();
List<ProcessProjectStandardTermApproval> approvalList = termIdApprovalListMap.get(termId);
for (ProcessProjectStandardTermApproval termApproval : approvalList) {
String responsibleUnitLeader = termApproval.getResponsibleUnitLeader();
termApproval.setResponsibleUnitLeader(userNameMap.get(responsibleUnitLeader));
String assessResults = termApproval.getAssessResults();
termApproval.setAssessResults(assessResultsMap.get(assessResults));
String projectApprovalFlag = termApproval.getProjectApprovalFlag();
termApproval.setProjectApprovalFlag(YesOrNoEnum.YES.getValue().equals(projectApprovalFlag)?YesOrNoEnum.YES.getName():YesOrNoEnum.NO.getName());
if (termIdApprovalListMap.containsKey(termId)) {
List<ProcessProjectStandardTermApproval> approvalList = termIdApprovalListMap.get(termId);
for (ProcessProjectStandardTermApproval termApproval : approvalList) {
String responsibleUnitLeader = termApproval.getResponsibleUnitLeader();
termApproval.setResponsibleUnitLeader(userNameMap.get(responsibleUnitLeader));
String assessResults = termApproval.getAssessResults();
termApproval.setAssessResults(assessResultsMap.get(assessResults));
String projectApprovalFlag = termApproval.getProjectApprovalFlag();
termApproval.setProjectApprovalFlag(YesOrNoEnum.YES.getValue().equals(projectApprovalFlag)?YesOrNoEnum.YES.getName():YesOrNoEnum.NO.getName());
}
processProjectStandardVO.setProcessProjectStandardTermApprovalList(approvalList);
}
processProjectStandardVO.setProcessProjectStandardTermApprovalList(approvalList);
}
processInfoVO.setBusinessInfoDTO(processProjectStandardVO);
@@ -398,14 +408,20 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
processInfoVO.setBusinessId(processAll.getProjectId());
Task task = processDTO.getTask();
String taskDefinitionKey = task.getTaskDefinitionKey();
if (taskDefinitionKey.contains("_") && !taskDefinitionKey.contains(ProcessProjectStandardCommon.MKZRRFF_)){
if (taskDefinitionKey.contains("_")
&& !taskDefinitionKey.contains(ProcessProjectStandardCommon.MKZRRFF_)
&& !taskDefinitionKey.contains(ProcessProjectStandardCommon.BSZGJLDXF_)){
taskDefinitionKey = taskDefinitionKey.substring(0,taskDefinitionKey.length()-1);
}
processHandleService.updateApprovalRecord(processInfoVO);
switch (taskDefinitionKey){
//部所主管级领导下发
case ProcessProjectStandardCommon.BSZGJLDXF_:
bszgjldxfSubmit(processInfoVO, processDTO);
case ProcessProjectStandardCommon.BSZGJLDXF_1:
bszgjldxfSubmit(processInfoVO, processDTO,false);
break;
//部所主管级领导下发
case ProcessProjectStandardCommon.BSZGJLDXF_2:
bszgjldxfSubmit(processInfoVO, processDTO,true);
break;
//模块责任人分发
//驳回后模块责任人分发
@@ -439,7 +455,9 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
processInfoVO.setBusinessId(processAll.getProjectId());
Task task = processDTO.getTask();
String taskDefinitionKey = task.getTaskDefinitionKey();
if (taskDefinitionKey.contains("_") && !taskDefinitionKey.contains(ProcessProjectStandardCommon.MKZRRFF_)){
if (taskDefinitionKey.contains("_")
&& !taskDefinitionKey.contains(ProcessProjectStandardCommon.MKZRRFF_)
&& !taskDefinitionKey.contains(ProcessProjectStandardCommon.BSZGJLDXF_)){
taskDefinitionKey = taskDefinitionKey.substring(0,taskDefinitionKey.length()-1);
}
processHandleService.updateApprovalRecord(processInfoVO);
@@ -759,7 +777,7 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
}
//部所主管级领导下发
private void bszgjldxfSubmit(ProcessInfoVO<ProcessProjectStandardVO> processInfoVO, ProcessDTO processDTO) {
private void bszgjldxfSubmit(ProcessInfoVO<ProcessProjectStandardVO> processInfoVO, ProcessDTO processDTO, boolean isAfterReject) {
String businessId = processInfoVO.getBusinessId();
ProcessApprovalRecord processApprovalRecord = processDTO.getProcessApprovalRecord();
String originUserId = processApprovalRecord.getOriginUserId();
@@ -770,6 +788,9 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
LambdaQueryWrapper<ProcessProjectStandardTermUser> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(ProcessProjectStandardTermUser::getProcessId, businessId);
wrapper.eq(ProcessProjectStandardTermUser::getResponsibleUnitLeader, originUserId);
if (isAfterReject){
wrapper.isNull(ProcessProjectStandardTermUser::getModuleOwner);
}
List<ProcessProjectStandardTermUser> termUserList = termUserService.list(wrapper);
ProcessProjectStandardVO businessInfoDTO = processInfoVO.getBusinessInfoDTO();