法规清单如果关联了平台件数据,流程状态按平台件中设置的顺序展示

This commit is contained in:
zhn
2023-09-21 19:25:27 +08:00
parent 0852e87c23
commit d4c4f2305a
2 changed files with 91 additions and 6 deletions
@@ -0,0 +1,66 @@
package com.jero.modules.project.enums;
import java.util.LinkedList;
import java.util.List;
/**
* 消息类型枚举类
*/
public enum FlowStateEnum {
INCONFORMITY("不符合","Non-Compliance","Non-Compliance"),
TO_TRACK("待追踪","To be tracked","To be tracked"),
CONFORMITY("符合","Compliance","Compliance"),
UNINVOLVED("不涉及","NA","NA"),
LIST_TO_BE_RELEASED("清单待发布","List to be released","List to be released"),
LIST_TO_BE_CHECKED("任务待发起","Task to be initiated","List to be checked"),
REGULATORY_ENGINEER_RETURNS("法规工程师退回","Regulatory engineer returns","Regulatory engineer returns"),
REFUSAL_OF_RESPONSIBLE_PERSON("责任人拒绝","Refusal of responsible person","Refusal of responsible person"),
TASK_TO_BE_CONFIRMED("任务待确认","Task to be confirmed","Task to be confirmed"),
RESULTS_TO_BE_SUBMITTED("结果待提交","Results to be submitted","Results to be submitted"),
RESULTS_TO_BE_REVIEWED("结果待审查","Results to be reviewed","Results to be reviewed"),
;
String nameCn;
String nameEn;
String value;
private FlowStateEnum(String nameCn, String nameEn, String value) {
this.nameCn = nameCn;
this.nameEn = nameEn;
this.value = value;
}
public String getNameCn() {
return nameCn;
}
public void setNameCn(String nameCn) {
this.nameCn = nameCn;
}
public String getNameEn() {
return nameEn;
}
public void setNameEn(String nameEn) {
this.nameEn = nameEn;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
public static List<String> getValueInfo() {
List<String> result = new LinkedList<>();
FlowStateEnum[] values = values();
for (FlowStateEnum flowStateEnum : values) {
result.add(flowStateEnum.getValue());
}
return result;
}
}
@@ -11735,6 +11735,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}
private void platformDispose(ProjectLawsInventoryEO projectLawsInventoryEO, List<ProjectLawsInventoryEO> result) {
List<String> valueList = FlowStateEnum.getValueInfo();
List<LawsInventoryPlatformEO> lawsInventoryPlatformEOList = new ArrayList<>();
List<ProjectLawsInventoryEO> projectLawsInventoryEOS = new ArrayList<>();
@@ -11756,8 +11757,8 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
inventoryIdList = projectLawsInventoryEOS.stream().map(ProjectLawsInventoryEO::getId).collect(Collectors.toList());
List<String> collect1 = projectLawsInventoryEOS.stream().map(ProjectLawsInventoryEO::getDesignDutyId).distinct().collect(Collectors.toList());
List<String> collect2 = projectLawsInventoryEOS.stream().map(ProjectLawsInventoryEO::getVerifyDutyId).distinct().collect(Collectors.toList());
List<String> collect3 = projectLawsInventoryEOS.stream().map(ProjectLawsInventoryEO::getDesignDeliverableTemplate).distinct().collect(Collectors.toList());
List<String> collect4 = projectLawsInventoryEOS.stream().map(ProjectLawsInventoryEO::getVerifyDeliverableTemplate).distinct().collect(Collectors.toList());
List<String> collect3 = projectLawsInventoryEOS.stream().filter(e->StringUtils.isNotBlank(e.getDesignDeliverableTemplate())).map(ProjectLawsInventoryEO::getDesignDeliverableTemplate).distinct().collect(Collectors.toList());
List<String> collect4 = projectLawsInventoryEOS.stream().filter(e->StringUtils.isNotBlank(e.getVerifyDeliverableTemplate())).map(ProjectLawsInventoryEO::getVerifyDeliverableTemplate).distinct().collect(Collectors.toList());
if(!collect1.isEmpty()){
userIdList.addAll(collect1);
}
@@ -11798,6 +11799,24 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
.map(LawsInventoryPlatformEO::getPlatformLawsInventoryId).collect(Collectors.toList());
List<ProjectLawsInventoryEO> lawsInventoryEOS = projectLawsInventoryEOS.stream()
.filter(e -> idList.contains(e.getId())).collect(Collectors.toList());
if(ObjectUtils.isNotEmpty(lawsInventoryEOS)){
for (String value : valueList) {
List<ProjectLawsInventoryEO> collect = lawsInventoryEOS.stream()
.filter(e -> value.equals(e.getDesignFlowStatus())).collect(Collectors.toList());
if(ObjectUtils.isNotEmpty(collect)){
lawsInventoryEO.setDesignFlowStatus(value);
break;
}
}
for (String value : valueList) {
List<ProjectLawsInventoryEO> collect = lawsInventoryEOS.stream()
.filter(e -> value.equals(e.getVerifyFlowStatus())).collect(Collectors.toList());
if(ObjectUtils.isNotEmpty(collect)){
lawsInventoryEO.setVerifyFlowStatus(value);
break;
}
}
}
lawsInventoryEO.setProjectLawsInventoryEOS(lawsInventoryEOS);
if(!lawsInventoryEOS.isEmpty()){
projectLawsInventoryEOList.addAll(lawsInventoryEOS);
@@ -11892,7 +11911,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
List<ProjectLibraryBase> libraryBaseList = projectLibraryBaseService.list(wrapper);
for (ProjectLawsInventoryEO lawsInventoryEO : result) {
List<ProjectLawsInventoryEO> lawsInventoryEOS = lawsInventoryEO.getProjectLawsInventoryEOS();
if(!lawsInventoryEOS.isEmpty()){
if(ObjectUtils.isNotEmpty(lawsInventoryEOS)){
for (ProjectLawsInventoryEO inventoryEO : lawsInventoryEOS) {
List<ProjectLibraryBase> collect = libraryBaseList.stream().filter(e -> inventoryEO.getProjectLibraryId().equals(e.getId())).collect(Collectors.toList());
if(!collect.isEmpty()){
@@ -11904,11 +11923,11 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
//平台件信息默认按项目名称正序排序
for (ProjectLawsInventoryEO lawsInventoryEO : result) {
List<ProjectLawsInventoryEO> nventoryEOList = lawsInventoryEO.getProjectLawsInventoryEOS();
if(!nventoryEOList.isEmpty()){
if(ObjectUtils.isNotEmpty(nventoryEOList)){
Collator comparator = Collator.getInstance(Locale.CHINESE);
Collections.sort(nventoryEOList,(e1,e2)->{
String e1ProjectName = StringUtils.isNotBlank(e1.getProjectName()) ? e1.getAttestationType() : "";
String e2ProjectName = StringUtils.isNotBlank(e2.getProjectName()) ? e2.getAttestationType() : "";
String e1ProjectName = StringUtils.isNotBlank(e1.getProjectName()) ? e1.getProjectName() : "";
String e2ProjectName = StringUtils.isNotBlank(e2.getProjectName()) ? e2.getProjectName() : "";
return comparator.compare(e1ProjectName,e2ProjectName);
});
lawsInventoryEO.setProjectLawsInventoryEOS(nventoryEOList);