Browse Source

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

dev
yinzuomei 3 years ago
parent
commit
fe3f980449
  1. 5
      epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectManageListResultDTO.java
  2. 40
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java

5
epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectManageListResultDTO.java

@ -69,8 +69,13 @@ public class ProjectManageListResultDTO implements Serializable {
@JsonIgnore
private Date updatedTime;
@JsonIgnore
private String isHandle;
private Boolean processable;
private Boolean returnable;
public ProjectManageListResultDTO() {
this.gridName = "";
this.title = "";

40
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java

@ -3227,6 +3227,8 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
if (ProjectConstant.CLOSED.equals(p.getStatus())) {
p.setDepartmentNameList(departmentNameList);
p.setDetentionDays(NumConstant.ZERO_STR);
p.setProcessable(false);
p.setReturnable(false);
} else {
ProjectDTO projectDTO = ConvertUtils.sourceToTarget(p, ProjectDTO.class);
projectDTO.setId(p.getProjectId());
@ -3240,6 +3242,44 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
}
departmentNameList = baseDao.selectDepartmentNameList(projectDTO);
p.setDepartmentNameList(departmentNameList);
ProjectStaffDTO projectStaffDTO = new ProjectStaffDTO();
projectStaffDTO.setProjectId(p.getProjectId());
projectStaffDTO.setStaffId(formDTO.getUserId());
List<DepartmentResultDTO> departmentList = projectStaffService.getDepartmentNameList(projectStaffDTO);
if (null != departmentList && departmentList.size() > NumConstant.ZERO) {
//TODO external_system值为1时,根据departmentList里的projectStaffId在project_sub_process表找最新的一条记录,
// 如果没有记录或者INTERNAL_STATUS是closed,processable的值为true
CustomerProjectParameterDTO customerProjectParameterDTO = new CustomerProjectParameterDTO();
customerProjectParameterDTO.setCustomerId(formDTO.getCustomerId());
customerProjectParameterDTO.setParameterKey(ProjectConstant.EXTERNAL_SYSTEM);
String parameterValue = parameterService.getParameterValueByKey(customerProjectParameterDTO);
if (StringUtils.isNotEmpty(parameterValue)){
if (parameterValue.equals(NumConstant.ONE_STR)) {
List<String> projectStaffIds = departmentList.stream().map(m -> m.getProjectStaffId()).distinct().collect(Collectors.toList());
// 根据departmentList里的projectStaffId在project_sub_process表找最新的一条记录
ProjectSubProcessDTO projectSubProcessDTO = projectSubProcessService.selectSubProcess(projectStaffIds);
if (null == projectSubProcessDTO || projectSubProcessDTO.getInternalStatus().equals(ProjectConstant.CLOSED)) {
p.setProcessable(true);
} else {
p.setProcessable(false);
}
} else {
p.setProcessable(true);
}
} else {
p.setProcessable(true);
}
} else {
p.setProcessable(false);
}
ReturnListFromDTO returnListFromDTO = new ReturnListFromDTO();
returnListFromDTO.setProjectId(p.getProjectId());
List<ReturnListResultDTO> returnableList = projectProcessService.getReturnableList(returnListFromDTO);
if (null != returnableList && returnableList.size() > NumConstant.ZERO) {
p.setReturnable(true);
} else {
p.setReturnable(false);
}
}
});
result.setTotal(Integer.valueOf(String.valueOf(pageInfo.getTotal())));

Loading…
Cancel
Save