fix 81398 法规合规评估流程-模块责任人审批节点,评估结果回显错误

fix 81401 法规合规评估流程-部所主管级领导审批节点回显数据错误
This commit is contained in:
lijiarao
2024-01-30 14:37:01 +08:00
parent 38fb356e26
commit 6b6b1df416
4 changed files with 47 additions and 15 deletions
@@ -14,6 +14,8 @@ import java.util.List;
public interface ProcessProjectStandardTermMapper extends BaseMapper<ProcessProjectStandardTerm> {
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> getByRejectModuleOwner(@Param("processId") String processId, @Param("originUserId") String originUserId, @Param("executionParentId") String executionParentId);
@@ -59,6 +59,21 @@
and ppstu.id is not null
</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
ppstu.id term_user_id,
@@ -43,6 +43,9 @@
<if test="termUser.id != null and termUser.id != ''">
and ppstu.term_id = #{termUser.id}
</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 != ''">
and su.username like concat('%', #{termUser.userName}, '%')
</if>
@@ -173,7 +173,7 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
break;
//部所主管级领导审批
case ProcessProjectStandardCommon.BSZGJLDSP_:
processProjectStandardTermList = termMapper.getByResponsibleUnitLeader(processId, originUserId, true);
processProjectStandardTermList = termMapper.getByResponsibleUnitLeaderSp(processId, originUserId);
wrapper.eq(ProcessProjectStandardTermUser::getResponsibleUnitLeader, originUserId);
termUserList = termUserService.list(wrapper);
break;
@@ -199,26 +199,27 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
Map<String, List<ProcessProjectStandardTermUser>> termIdListMap = CollStreamUtil.groupByKey(termUserList, ProcessProjectStandardTermUser::getTermId);
for (ProcessProjectStandardTerm term : processProjectStandardTermList) {
String termId = term.getId();
String assessResults = term.getAssessResults();
if (termIdListMap.containsKey(termId)) {
List<ProcessProjectStandardTermUser> termUsers = termIdListMap.get(termId);
String assessResults = AssessCommon.NOT_INVOLVED;
String projectApprovalFlag = YesOrNoEnum.NO.getValue();
List<String> moduleOwnerList = new ArrayList<>();
List<String> responsibleUnitLeaderList = new ArrayList<>();
for (ProcessProjectStandardTermUser termUser : termUsers) {
moduleOwnerList.add(termUser.getModuleOwner());
responsibleUnitLeaderList.add(termUser.getResponsibleUnitLeader());
String assessResults1 = termUser.getAssessResults();
if (AssessCommon.NOT_COMPLIANT.equals(assessResults1)) {
assessResults = AssessCommon.NOT_COMPLIANT;
projectApprovalFlag = YesOrNoEnum.YES.getValue();
break;
if (!ProcessProjectStandardCommon.MKZRRSP_.equals(taskDefinitionKey)){
for (ProcessProjectStandardTermUser termUser : termUsers) {
moduleOwnerList.add(termUser.getModuleOwner());
responsibleUnitLeaderList.add(termUser.getResponsibleUnitLeader());
}
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;
projectApprovalFlag = YesOrNoEnum.NO.getValue();
}else {
assessResults = AssessCommon.NOT_INVOLVED;
}
}
if (ProcessProjectStandardCommon.BSZGJLDSP_.equals(taskDefinitionKey)){
List<String> userNameList = new ArrayList<>();
moduleOwnerList.stream()
@@ -238,10 +239,17 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
term.setResponsibleUnitLeader(String.join(",", userNameList));
}
term.setProjectApprovalFlag(projectApprovalFlag);
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();
term.setModelSeries_dictText(sysBaseAPI.translateByDictMap(modelSeriesDictMap,modelSeries));
String designEngineer = term.getDesignEngineer();
@@ -934,6 +942,10 @@ public class ProcessProjectStandardService extends ServiceImpl<ProcessProjectSta
public IPage<ProcessProjectStandardTermUser> getTermUserList(ProcessProjectStandardTermUser termUser, Integer pageNo, Integer pageSize) {
Page<ProcessProjectStandardTermUser> page = new Page<>(pageNo, pageSize);
Page<ProcessProjectStandardTermUser> pageList = termUserMapper.selectPageByUser(page, termUser);
for (ProcessProjectStandardTermUser record : pageList.getRecords()) {
String moduleOwner = record.getModuleOwner();
record.setModuleOwner(sysBaseAPI.translateUserRealNameFromTable(moduleOwner));
}
return pageList;
}