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

This commit is contained in:
zyx.net
2023-09-07 14:29:04 +08:00
9 changed files with 423 additions and 71 deletions
@@ -58,7 +58,7 @@ public class NcrTrackController {
HttpServletRequest req) {
List<NcrTrackVO> pageInfo = iNcrTrackService.getPageInfo(ncrTrackVO);
//表头排序
orderHeader(ncrTrackVO, pageInfo);
// orderHeader(ncrTrackVO, pageInfo);
Page pages = iNcrTrackService.getPages(pageNo, pageSize, pageInfo);
return Result.OK(ncrTrackVO.getCut(),pages);
}
@@ -71,6 +71,8 @@ public class ProblemManagementEO implements Serializable {
@Excel(name = "问题类型", width = 15)
@ApiModelProperty(value = "问题类型")
private java.lang.String problemType;
@TableField(exist = false)
private String problemType_dictText;
/**ps_issue*/
@Excel(name = "ps_issue", width = 15)
@@ -27,20 +27,6 @@
<select id="getInfoList" resultMap="NcrTrackVOResultMap">
<!--
SELECT
pni.project_name,plb.target_market,plb.project_version,pyni.year_name,
pli.serial_number,pli.title,pli.duty_territory,pli.create_time,pli.project_library_id,pli.stand_id,
pti.design_flow_task_status,pti.prehomo_flow_task_status,pti.verify_flow_task_status,pti.design_p_id,pti.prehomo_p_id,pti.verify_p_id,pti.id,pti.project_laws_inventory_id,
pli.design_initiator_id,pli.design_duty_id,pli.prehomo_initiator_id,pli.prehomo_duty_id,pli.verify_initiator_id,pli.verify_duty_id
FROM project_task_inventory pti
left join project_laws_inventory pli on pti.project_laws_inventory_id = pli.id
left join project_library_base plb on plb.id = pli.project_library_id
left join project_name_info pni on pni.id = plb.project_name_id
left join project_task_inventory_detail ptid on ptid.project_task_inventory_id = pti.project_laws_inventory_id
left join project_year_name_info pyni on pyni.id = plb.year_name_id
-->
SELECT
pni.project_name,
plb.target_market,
@@ -76,14 +62,10 @@
LEFT JOIN project_name_info pni ON pni.id = plb.project_name_id
LEFT JOIN project_year_name_info pyni ON pyni.id = plb.year_name_id
where
<if test="ncrTrackVO.projectLibraryId != null and ncrTrackVO.projectLibraryId != ''">
<!--<if test="ncrTrackVO.projectLibraryId != null and ncrTrackVO.projectLibraryId != ''">
plb.id =#{ncrTrackVO.projectLibraryId}
and
</if>
<!--<if test="ncrTrackVO.userId != null and ncrTrackVO.userId != ''">
ptid.user_id =#{ncrTrackVO.userId}
and
</if>-->
<if test="ncrTrackVO.serialNumber != null and ncrTrackVO.serialNumber != ''">
pli.serial_number like concat(concat('%',#{ncrTrackVO.serialNumber}),'%')
and
@@ -100,10 +82,6 @@
pni.project_name =#{ncrTrackVO.projectName}
and
</if>
<!--<if test="ncrTrackVO.problemType != null and ncrTrackVO.problemType != ''">
(pti.design_flow_task_status =#{ncrTrackVO.problemType} or pti.prehomo_flow_task_status =#{ncrTrackVO.problemType} or pti.verify_flow_task_status =#{ncrTrackVO.problemType})
and
</if>-->
<if test="ncrTrackVO.initiator != null and ncrTrackVO.initiator != ''">
(pli.design_initiator_id =#{ncrTrackVO.initiator} or pli.prehomo_initiator_id =#{ncrTrackVO.initiator} or pli.verify_initiator_id =#{ncrTrackVO.initiator})
and
@@ -111,15 +89,15 @@
<if test="ncrTrackVO.duty != null and ncrTrackVO.duty != ''">
(pli.design_duty_id =#{ncrTrackVO.duty} or pli.prehomo_duty_id =#{ncrTrackVO.duty} or pli.verify_duty_id =#{ncrTrackVO.duty})
and
</if>
(
</if>-->
<!--(
design_flow_status =#{ncrTrackVO.inconformity}
or verify_flow_status =#{ncrTrackVO.inconformity}
)
<!--(
)-->
(
design_flow_status =#{ncrTrackVO.inconformity} or design_flow_status =#{ncrTrackVO.track}
or verify_flow_status =#{ncrTrackVO.inconformity} or verify_flow_status =#{ncrTrackVO.track}
)-->
)
<!--如果当前操作人不是系统管理员角色,查询跟自己相关的数据,如果是系统管理员,查询所有的-->
<if test="ncrTrackVO.administrator == 'false'">
<if test="ncrTrackVO.userId != null and ncrTrackVO.userId != ''">
@@ -159,7 +159,7 @@
</foreach>
) temp
<!--<include refid="BaseQuerySql"/>-->
<if test="params.orderByField != null and params.orderByField != ''">
<!--<if test="params.orderByField != null and params.orderByField != ''">
order by temp.${params.orderByField}
<if test="params.orderBy == 1">
asc
@@ -167,7 +167,7 @@
<if test="params.orderBy == 2">
desc
</if>
</if>
</if>-->
<if test="params.orderByField == null or params.orderByField == ''">
order by temp.serial_number desc
</if>
@@ -1,6 +1,5 @@
package com.jero.modules.project.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -11,6 +10,7 @@ import com.jero.common.system.vo.DictModel;
import com.jero.common.system.vo.LoginUser;
import com.jero.modules.document.entity.BussDocumentLibraryEO;
import com.jero.modules.document.service.IBussDocumentLibraryEOService;
import com.jero.modules.dummy.enums.OrderEnum;
import com.jero.modules.oss.entity.OSSFile;
import com.jero.modules.oss.service.IOSSFileService;
import com.jero.modules.project.entity.ProblemManagementEO;
@@ -23,15 +23,14 @@ import com.jero.modules.project.enums.ReviewResultEnum;
import com.jero.modules.project.mapper.NcrTrackMapper;
import com.jero.modules.project.mapper.ProblemManagementEOMapper;
import com.jero.modules.project.service.INcrTrackService;
import com.jero.modules.project.service.IProblemManagementEOService;
import com.jero.modules.project.vo.NcrTrackInfoVO;
import com.jero.modules.project.vo.NcrTrackVO;
import com.jero.modules.project.vo.ProblemManagementVO;
import com.jero.modules.system.entity.SysDictItem;
import com.jero.modules.system.entity.SysUser;
import com.jero.modules.system.enums.DicCodeEnum;
import com.jero.modules.system.service.ISysDictService;
import com.jero.modules.system.service.IProjectUserDutyTerritoryService;
import com.jero.modules.system.service.ISysDictService;
import com.jero.modules.system.service.ISysUserService;
import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
import com.jero.modules.wkflow.enums.FlowTypeEnum;
@@ -52,11 +51,15 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.OutputStream;
import java.text.Collator;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Locale;
import java.util.Set;
import java.util.UUID;
import java.util.stream.Collectors;
@@ -94,18 +97,18 @@ public class NcrTrackServiceImpl extends ServiceImpl<NcrTrackMapper, NcrTrackVO>
public List<NcrTrackVO> getPageInfo(NcrTrackVO ncrTrackVO) {
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
ncrTrackVO.setUserId(loginUser.getId());
if(StringUtils.isNotBlank(ncrTrackVO.getSerialNumber())){
if(ncrTrackVO.getSerialNumber().contains("%")){
ncrTrackVO.setSerialNumber(ncrTrackVO.getSerialNumber().replaceAll("%", "/%"));
}
ncrTrackVO.setSerialNumber(ncrTrackVO.getSerialNumber().replace("*",""));
}
if(StringUtils.isNotBlank(ncrTrackVO.getTitle())){
if(ncrTrackVO.getTitle().contains("%")){
ncrTrackVO.setTitle(ncrTrackVO.getTitle().replace("%","/%"));
}
ncrTrackVO.setTitle(ncrTrackVO.getTitle().replace("*",""));
}
// if(StringUtils.isNotBlank(ncrTrackVO.getSerialNumber())){
// if(ncrTrackVO.getSerialNumber().contains("%")){
// ncrTrackVO.setSerialNumber(ncrTrackVO.getSerialNumber().replaceAll("%", "/%"));
// }
// ncrTrackVO.setSerialNumber(ncrTrackVO.getSerialNumber().replace("*",""));
// }
// if(StringUtils.isNotBlank(ncrTrackVO.getTitle())){
// if(ncrTrackVO.getTitle().contains("%")){
// ncrTrackVO.setTitle(ncrTrackVO.getTitle().replace("%","/%"));
// }
// ncrTrackVO.setTitle(ncrTrackVO.getTitle().replace("*",""));
// }
// List<SysUser> sysUserList = sysUserService.list();
@@ -327,6 +330,8 @@ public class NcrTrackServiceImpl extends ServiceImpl<NcrTrackMapper, NcrTrackVO>
if(!ncrTrackVOList.isEmpty()){
trackVOListTemp.addAll(ncrTrackVOList);
}
//条件查询
trackVOListTemp = parameterQuery(ncrTrackVO, trackVOListTemp);
return trackVOListTemp;
}else{
//旧数据处理
@@ -334,35 +339,228 @@ public class NcrTrackServiceImpl extends ServiceImpl<NcrTrackMapper, NcrTrackVO>
if(!ncrTrackVOList.isEmpty()){
trackVOList.addAll(ncrTrackVOList);
}
//条件查询
trackVOList = parameterQuery(ncrTrackVO, trackVOList);
//表头排序
heartSort(ncrTrackVO, trackVOList);
return trackVOList;
}
}
private void heartSort(NcrTrackVO ncrTrackVO, List<NcrTrackVO> trackVOList) {
Collator comparator = Collator.getInstance(Locale.CHINESE);
if ("title".equals(ncrTrackVO.getOrderByField())) {
if (OrderEnum.POSITIVE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, (e1, e2) -> {
String e1Field = StringUtils.isNotBlank(e1.getTitle()) ? e1.getTitle() : "";
String e2Field = StringUtils.isNotBlank(e2.getTitle()) ? e2.getTitle() : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, (e1, e2) -> {
String e1Field = StringUtils.isNotBlank(e1.getTitle()) ? e1.getTitle() : "";
String e2Field = StringUtils.isNotBlank(e2.getTitle()) ? e2.getTitle() : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("lawsName".equals(ncrTrackVO.getOrderByField())) {
if (OrderEnum.POSITIVE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, (e1, e2) -> {
String e1Field = StringUtils.isNotBlank(e1.getLawsName()) ? e1.getLawsName() : "";
String e2Field = StringUtils.isNotBlank(e2.getLawsName()) ? e2.getLawsName() : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, (e1, e2) -> {
String e1Field = StringUtils.isNotBlank(e1.getLawsName()) ? e1.getLawsName() : "";
String e2Field = StringUtils.isNotBlank(e2.getLawsName()) ? e2.getLawsName() : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("projectName".equals(ncrTrackVO.getOrderByField())) {
if (OrderEnum.POSITIVE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, (e1, e2) -> {
String e1Field = StringUtils.isNotBlank(e1.getProjectName()) ? e1.getProjectName() : "";
String e2Field = StringUtils.isNotBlank(e2.getProjectName()) ? e2.getProjectName() : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, (e1, e2) -> {
String e1Field = StringUtils.isNotBlank(e1.getProjectName()) ? e1.getProjectName() : "";
String e2Field = StringUtils.isNotBlank(e2.getProjectName()) ? e2.getProjectName() : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("problemType_dictText".equals(ncrTrackVO.getOrderByField())) {
if (OrderEnum.POSITIVE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, (e1, e2) -> {
String e1Field = StringUtils.isNotBlank(e1.getProblemType_dictText()) ? e1.getProblemType_dictText() : "";
String e2Field = StringUtils.isNotBlank(e2.getProblemType_dictText()) ? e2.getProblemType_dictText() : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, (e1, e2) -> {
String e1Field = StringUtils.isNotBlank(e1.getProblemType_dictText()) ? e1.getProblemType_dictText() : "";
String e2Field = StringUtils.isNotBlank(e2.getProblemType_dictText()) ? e2.getProblemType_dictText() : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("dutyTerritory".equals(ncrTrackVO.getOrderByField())) {
if (OrderEnum.POSITIVE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, (e1, e2) -> {
String e1Field = StringUtils.isNotBlank(e1.getDutyTerritory()) ? e1.getDutyTerritory() : "";
String e2Field = StringUtils.isNotBlank(e2.getDutyTerritory()) ? e2.getDutyTerritory() : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, (e1, e2) -> {
String e1Field = StringUtils.isNotBlank(e1.getDutyTerritory()) ? e1.getDutyTerritory() : "";
String e2Field = StringUtils.isNotBlank(e2.getDutyTerritory()) ? e2.getDutyTerritory() : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("problemState".equals(ncrTrackVO.getOrderByField())) {
if (OrderEnum.POSITIVE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, (e1, e2) -> {
String e1Field = StringUtils.isNotBlank(e1.getProblemState()) ? e1.getProblemState() : "";
String e2Field = StringUtils.isNotBlank(e2.getProblemState()) ? e2.getProblemState() : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, (e1, e2) -> {
String e1Field = StringUtils.isNotBlank(e1.getProblemState()) ? e1.getProblemState() : "";
String e2Field = StringUtils.isNotBlank(e2.getProblemState()) ? e2.getProblemState() : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("createBy".equals(ncrTrackVO.getOrderByField())) {
if (OrderEnum.POSITIVE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, (e1, e2) -> {
String e1Field = StringUtils.isNotBlank(e1.getCreateBy()) ? e1.getCreateBy() : "";
String e2Field = StringUtils.isNotBlank(e2.getCreateBy()) ? e2.getCreateBy() : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, (e1, e2) -> {
String e1Field = StringUtils.isNotBlank(e1.getCreateBy()) ? e1.getCreateBy() : "";
String e2Field = StringUtils.isNotBlank(e2.getCreateBy()) ? e2.getCreateBy() : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("createTime".equals(ncrTrackVO.getOrderByField())) {
if (OrderEnum.POSITIVE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, new Comparator<NcrTrackVO>() {
@Override
public int compare(NcrTrackVO o1, NcrTrackVO o2) {
if (o1.getCreateTime() == null || o2.getCreateTime() == null) {
return 0;
}
return o1.getCreateTime().compareTo(o2.getCreateTime());
}
});
} else if (OrderEnum.REVERSE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, new Comparator<NcrTrackVO>() {
@Override
public int compare(NcrTrackVO o1, NcrTrackVO o2) {
if (o1.getCreateTime() == null || o2.getCreateTime() == null) {
return 0;
}
return o2.getCreateTime().compareTo(o1.getCreateTime());
}
});
}
}
if ("updateTime".equals(ncrTrackVO.getOrderByField())) {
if (OrderEnum.POSITIVE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, new Comparator<NcrTrackVO>() {
@Override
public int compare(NcrTrackVO o1, NcrTrackVO o2) {
if (o1.getUpdateTime() == null || o2.getUpdateTime() == null) {
return 0;
}
return o1.getUpdateTime().compareTo(o2.getUpdateTime());
}
});
} else if (OrderEnum.REVERSE.getValue().equals(ncrTrackVO.getOrderBy())) {
Collections.sort(trackVOList, new Comparator<NcrTrackVO>() {
@Override
public int compare(NcrTrackVO o1, NcrTrackVO o2) {
if (o1.getUpdateTime() == null || o2.getUpdateTime() == null) {
return 0;
}
return o2.getUpdateTime().compareTo(o1.getUpdateTime());
}
});
}
}
}
@NotNull
private List<NcrTrackVO> parameterQuery(NcrTrackVO ncrTrackVO, List<NcrTrackVO> trackVOList) {
if(!trackVOList.isEmpty()){
if(StringUtils.isNotBlank(ncrTrackVO.getTitle())){
trackVOList = trackVOList.stream().filter(e->StringUtils.isNotBlank(e.getTitle())
&& e.getTitle().contains(ncrTrackVO.getTitle())).collect(Collectors.toList());
}
if(StringUtils.isNotBlank(ncrTrackVO.getLawsName())){
trackVOList = trackVOList.stream().filter(e->StringUtils.isNotBlank(e.getLawsName())
&& e.getLawsName().contains(ncrTrackVO.getLawsName())).collect(Collectors.toList());
}
if(StringUtils.isNotBlank(ncrTrackVO.getProjectId())){
trackVOList = trackVOList.stream().filter(e->StringUtils.isNotBlank(e.getProjectId())
&& e.getProjectId().contains(ncrTrackVO.getProjectId())).collect(Collectors.toList());
}
if(StringUtils.isNotBlank(ncrTrackVO.getProblemType_dictText())){
trackVOList = trackVOList.stream().filter(e->StringUtils.isNotBlank(e.getProblemType_dictText())
&& e.getProblemType_dictText().contains(ncrTrackVO.getProblemType_dictText())).collect(Collectors.toList());
}
if(StringUtils.isNotBlank(ncrTrackVO.getDutyTerritory())){
trackVOList = trackVOList.stream().filter(e->StringUtils.isNotBlank(e.getDutyTerritory())
&& e.getDutyTerritory().contains(ncrTrackVO.getDutyTerritory())).collect(Collectors.toList());
}
if(StringUtils.isNotBlank(ncrTrackVO.getProblemState())){
trackVOList = trackVOList.stream().filter(e->StringUtils.isNotBlank(e.getProblemState())
&& e.getProblemState().contains(ncrTrackVO.getProblemState())).collect(Collectors.toList());
}
}
return trackVOList;
}
private void oldData(NcrTrackVO ncrTrackVO, List<NcrTrackVO> trackVOListTemp) {
for (NcrTrackVO trackVO : trackVOListTemp) {
String problemType = trackVO.getProblemType();
trackVO.setTitle(trackVO.getTitle()+problemType);
trackVO.setCreateBy(trackVO.getDuty());
trackVO.setLawsName(trackVO.getSerialNumber());
trackVO.setFlag(DataEnum.OLD.getValue());
if(ComplianceFlowStatusEnum.INCONFORMITY.getCnName().equals(problemType)
|| ComplianceFlowStatusEnum.INCONFORMITY.getEnName().equals(problemType)){
if(CutEnum.CN.getValue().equals(ncrTrackVO.getCut())){
trackVO.setProblemType(ComplianceFlowStatusEnum.LAWS_INCONFORMITY.getCnName());
trackVO.setProblemType_dictText(ComplianceFlowStatusEnum.LAWS_INCONFORMITY.getCnName());
}else{
trackVO.setProblemType(ComplianceFlowStatusEnum.LAWS_INCONFORMITY.getEnName());
trackVO.setProblemType_dictText(ComplianceFlowStatusEnum.LAWS_INCONFORMITY.getEnName());
}
trackVO.setProblemState(ColourEnum.RED.getName());
}
if(ComplianceFlowStatusEnum.TO_TRACK.getCnName().equals(problemType)
||ComplianceFlowStatusEnum.TO_TRACK.getEnName().equals(problemType)){
if(CutEnum.CN.getValue().equals(ncrTrackVO.getCut())){
trackVO.setProblemType(ComplianceFlowStatusEnum.LAWS_TO_TRACK.getCnName());
trackVO.setProblemType_dictText(ComplianceFlowStatusEnum.LAWS_TO_TRACK.getCnName());
}else{
trackVO.setProblemType(ComplianceFlowStatusEnum.LAWS_TO_TRACK.getEnName());
trackVO.setProblemType_dictText(ComplianceFlowStatusEnum.LAWS_TO_TRACK.getEnName());
}
trackVO.setProblemState(ColourEnum.YELLOW.getName());
}
trackVO.setTitle(trackVO.getFlowType()+trackVO.getProblemType_dictText());
}
}
@@ -428,8 +626,21 @@ public class NcrTrackServiceImpl extends ServiceImpl<NcrTrackMapper, NcrTrackVO>
projectLibraryBaseList = problemManagementEOMapper.queryByIds(StringUtils.join(projectIdSet,","));
}
}
//wen4_ti2_lei4_xing2 问题类型
List<DictModel> problemTypeList = sysDictService.queryDictItemsByCode(DicCodeEnum.PROBLEM_TYPE.getCode());
List<NcrTrackVO> ncrTrackVOList = new ArrayList<>();
for (ProblemManagementEO problemManagementEO : managementEOList) {
//问题类型
List<DictModel> dictModelList = problemTypeList.stream().filter(e -> e.getValue().equals(problemManagementEO.getProblemType())).collect(Collectors.toList());
if(!dictModelList.isEmpty()){
if(CutEnum.CN.getValue().equals(cut)){
problemManagementEO.setProblemType_dictText(dictModelList.get(0).getText());
}else{
problemManagementEO.setProblemType_dictText(dictModelList.get(0).getTextEn());
}
}
//相关法规
if(StringUtils.isNotBlank(problemManagementEO.getLawsId())){
if(!documentLibraryEOList.isEmpty()){
@@ -10341,18 +10341,18 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
if(StringUtils.isNotEmpty(flowStatus)){
String textByValue = ComplianceFlowStatusEnum.getTextByValue(flowStatus, cut);
if(ComplianceFlowStatusEnum.INCONFORMITY.getCnName().equals(textByValue)
|| ComplianceFlowStatusEnum.INCONFORMITY.getEnName().equals(flowStatus)){
|| ComplianceFlowStatusEnum.INCONFORMITY.getEnName().equals(textByValue)){
//问题类型
if(CutEnum.CN.getValue().equals(cut)){
dataMap.put("problemType",ComplianceFlowStatusEnum.LAWS_INCONFORMITY.getCnName());
dataMap.put("problemType_dictText",ComplianceFlowStatusEnum.LAWS_INCONFORMITY.getCnName());
}else{
dataMap.put("problemType",ComplianceFlowStatusEnum.LAWS_INCONFORMITY.getEnName());
dataMap.put("problemType_dictText",ComplianceFlowStatusEnum.LAWS_INCONFORMITY.getEnName());
}
//问题状态
dataMap.put("problemState",ColourEnum.RED.getName());
}
if(ComplianceFlowStatusEnum.TO_TRACK.getCnName().equals(flowStatus)
||ComplianceFlowStatusEnum.TO_TRACK.getEnName().equals(flowStatus)){
if(ComplianceFlowStatusEnum.TO_TRACK.getCnName().equals(textByValue)
||ComplianceFlowStatusEnum.TO_TRACK.getEnName().equals(textByValue)){
//问题类型
if(CutEnum.CN.getValue().equals(cut)){
dataMap.put("problemType",ComplianceFlowStatusEnum.LAWS_TO_TRACK.getCnName());
@@ -10399,16 +10399,163 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}
}
}
//旧数据查询
result = dataParameter(params, result);
//新数据
List<Map<String, Object>> mapList = getNewData(params, cut);
if(ObjectUtils.isNotEmpty(mapList)){
result.addAll(mapList);
}
//条件查询
result = dataParameter(params, result);
//表头排序
heartSort(params, result);
return result;
}
private void heartSort(Map<String, Object> params, List<Map<String, Object>> result) {
Collator comparator = Collator.getInstance(Locale.CHINESE);
if ("title".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("title")) ? String.valueOf(e1.get("title")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("title")) ? String.valueOf(e2.get("title")) : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("title")) ? String.valueOf(e1.get("title")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("title")) ? String.valueOf(e2.get("title")) : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("lawsName".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("lawsName")) ? String.valueOf(e1.get("lawsName")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("lawsName")) ? String.valueOf(e2.get("lawsName")) : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("lawsName")) ? String.valueOf(e1.get("lawsName")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("lawsName")) ? String.valueOf(e2.get("lawsName")) : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("projectName".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("projectName")) ? String.valueOf(e1.get("projectName")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("projectName")) ? String.valueOf(e2.get("projectName")) : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("projectName")) ? String.valueOf(e1.get("projectName")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("projectName")) ? String.valueOf(e2.get("projectName")) : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("problemType_dictText".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("problemType_dictText")) ? String.valueOf(e1.get("problemType_dictText")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("problemType_dictText")) ? String.valueOf(e2.get("problemType_dictText")) : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("problemType_dictText")) ? String.valueOf(e1.get("problemType_dictText")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("problemType_dictText")) ? String.valueOf(e2.get("problemType_dictText")) : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("dutyTerritory".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("dutyTerritory")) ? String.valueOf(e1.get("dutyTerritory")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("dutyTerritory")) ? String.valueOf(e2.get("dutyTerritory")) : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("dutyTerritory")) ? String.valueOf(e1.get("dutyTerritory")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("dutyTerritory")) ? String.valueOf(e2.get("dutyTerritory")) : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("createBy".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("createBy")) ? String.valueOf(e1.get("createBy")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("createBy")) ? String.valueOf(e2.get("createBy")) : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("createBy")) ? String.valueOf(e1.get("createBy")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("createBy")) ? String.valueOf(e2.get("createBy")) : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("problemState".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("problemState")) ? String.valueOf(e1.get("problemState")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("problemState")) ? String.valueOf(e2.get("problemState")) : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("problemState")) ? String.valueOf(e1.get("problemState")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("problemState")) ? String.valueOf(e2.get("problemState")) : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("createTime".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
if (e1.get("createTime") == null || e2.get("createTime") == null) {
return 0;
}
return comparator.compare(e1.get("createTime"), e2.get("createTime"));
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
if (e1.get("createTime") == null || e2.get("createTime") == null) {
return 0;
}
return comparator.compare(e2.get("createTime"), e1.get("createTime"));
});
}
}
if ("updateTime".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
if (e1.get("updateTime") == null || e2.get("updateTime") == null) {
return 0;
}
return comparator.compare(e1.get("updateTime"), e2.get("updateTime"));
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
if (e1.get("updateTime") == null || e2.get("updateTime") == null) {
return 0;
}
return comparator.compare(e2.get("updateTime"), e1.get("updateTime"));
});
}
}
}
@NotNull
private List<Map<String, Object>> getNewData(Map<String, Object> params, String cut) {
//新数据
@@ -10592,8 +10739,6 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
ncrTrackVOTemp.setFlag(DataEnum.NEW.getValue());
ncrTrackVOList.add(ncrTrackVOTemp);
}
//查询条件
mapList = dataParameter(params, mapList);
return mapList;
}
@@ -10610,9 +10755,9 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
mapList = mapList.stream().filter(e->ObjectUtils.isNotEmpty(e.get("projectId"))
&& String.valueOf(e.get("projectId")).equals(String.valueOf(params.get("projectId")))).collect(Collectors.toList());
}
if(ObjectUtils.isNotEmpty(params.get("problemType"))){//问题类型
mapList = mapList.stream().filter(e->ObjectUtils.isNotEmpty(e.get("problemType"))
&& e.get("problemType").toString().equals(params.get("problemType").toString())).collect(Collectors.toList());
if(ObjectUtils.isNotEmpty(params.get("problemType_dictText"))){//问题类型
mapList = mapList.stream().filter(e->ObjectUtils.isNotEmpty(e.get("problemType_dictText"))
&& e.get("problemType_dictText").toString().equals(params.get("problemType_dictText").toString())).collect(Collectors.toList());
}
if(ObjectUtils.isNotEmpty(params.get("dutyTerritory"))){//责任领域
mapList = mapList.stream().filter(e->ObjectUtils.isNotEmpty(e.get("dutyTerritory"))
@@ -85,9 +85,10 @@ public class NcrTrackVO implements Serializable {
private String projectVersion;
//问题类型
@Dict(dicCode ="wen4_ti2_lei4_xing2")
// @Dict(dicCode ="wen4_ti2_lei4_xing2")
@Excel(name = "问题类型", width = 20)
private String problemType;
private String problemType_dictText;
//发起人
@Excel(name = "发起人", width = 20)
@@ -54,6 +54,7 @@
<j-dict-select-tag class="box-input" v-model="queryParam.problemType"
:placeholder="$t('PleaseSelect')+$t('problemType')"
:type="'select'"
@changeQuery="onChange"
:triggerChange="false" :dictCode="'wen4_ti2_lei4_xing2'"/>
</div>
</a-col>
@@ -164,9 +165,9 @@
{{result.problemState ? result.problemState : ''}}
</span>
</div>
<span slot="problemType" slot-scope="text,result">
<span>{{result.flag== 'NEW'?result.problemType_dictText:result.problemType}}</span>
</span>
<!-- <span slot="problemType" slot-scope="text,result">-->
<!-- <span>{{result.flag== 'NEW'?result.problemType_dictText:result.problemType}}</span>-->
<!-- </span>-->
<span slot="operation" slot-scope="text,record">
<a class="text-operation"
@click="detil(record)">
@@ -420,8 +421,14 @@ export default {
this.orderByField = sorter.columnKey
this.getList()
},
onChange(value){
console.log(value)
this.queryParam.problemType_dictText = value
},
getList() {
console.log(this.$route.query)
if(this.queryParam.problemType_dictText){
delete this.queryParam.problemType
}
let query = {
pageNo: this.pageNo,
pageSize: this.pageSize,
@@ -54,6 +54,7 @@
<j-dict-select-tag class="box-input" v-model="queryParam.problemType"
:placeholder="$t('PleaseSelect')+$t('problemType')"
:type="'select'"
@changeQuery="onChange"
:triggerChange="false" :dictCode="'wen4_ti2_lei4_xing2'"/>
</div>
</a-col>
@@ -164,9 +165,9 @@
{{result.problemState ? result.problemState : ''}}
</span>
</div>
<span slot="problemType" slot-scope="text,result">
<span>{{result.flag== 'NEW'?result.problemType_dictText:result.problemType}}</span>
</span>
<!-- <span slot="problemType" slot-scope="text,result">-->
<!-- <span>{{result.flag== 'NEW'?result.problemType_dictText:result.problemType}}</span>-->
<!-- </span>-->
<span slot="operation" slot-scope="text,record">
<a class="text-operation"
@click="detil(record)">
@@ -381,6 +382,10 @@
addModelForm(){
this.getList()
},
onChange(value){
console.log(value)
this.queryParam.problemType_dictText = value
},
onSelectChange(value) {
this.content = []
this.selectedRowKeys = value
@@ -421,6 +426,9 @@
this.getList()
},
getList() {
if(this.queryParam.problemType_dictText){
delete this.queryParam.problemType
}
let query = {
pageNo: this.pageNo,
pageSize: this.pageSize,