Merge remote-tracking branch 'origin/dev_20230831_problem' into dev_20230831_problem
This commit is contained in:
+1
-1
@@ -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);
|
||||
}
|
||||
|
||||
+2
@@ -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)
|
||||
|
||||
+6
-28
@@ -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 != ''">
|
||||
|
||||
+2
-2
@@ -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>
|
||||
|
||||
+231
-20
@@ -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()){
|
||||
|
||||
+157
-12
@@ -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"))
|
||||
|
||||
+2
-1
@@ -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,
|
||||
|
||||
Reference in New Issue
Block a user