Browse Source

项目列表修改

dev_shibei_match
zhaoqifeng 5 years ago
parent
commit
71f81bf847
  1. 12
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java
  2. 6
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java
  3. 12
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java
  4. 32
      epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml

12
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java

@ -2,6 +2,7 @@ package com.epmet.feign;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.CustomerStaffDTO;
import com.epmet.dto.form.StaffsInAgencyFromDTO;
import com.epmet.dto.form.UserResiInfoListFormDTO;
import com.epmet.dto.result.StaffInfoResultDTO;
@ -36,4 +37,15 @@ public interface EpmetUserFeignClient {
*/
@PostMapping("/epmetuser/customerstaff/stafflist")
Result<List<StaffInfoResultDTO>> getStaffList(@RequestBody StaffsInAgencyFromDTO fromDTO);
/**
* 根据用户ID获取工作人员基本信息
*
* @param formDTO
* @return com.epmet.commons.tools.utils.Result<com.epmet.dto.CustomerStaffDTO>
* @author zhaoqifeng
* @date 2020/4/22 10:05
**/
@PostMapping(value = "epmetuser/customerstaff/getstaffinfobyuserid")
Result<CustomerStaffDTO> getCustomerStaffInfoByUserId(@RequestBody CustomerStaffDTO formDTO);
}

6
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java

@ -3,6 +3,7 @@ package com.epmet.feign.fallback;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.ModuleUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.CustomerStaffDTO;
import com.epmet.dto.form.StaffsInAgencyFromDTO;
import com.epmet.dto.form.UserResiInfoListFormDTO;
import com.epmet.dto.result.StaffInfoResultDTO;
@ -28,4 +29,9 @@ public class EpmetUserFeignClientFallBack implements EpmetUserFeignClient {
public Result<List<StaffInfoResultDTO>> getStaffList(StaffsInAgencyFromDTO fromDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getStaffList", fromDTO);
}
@Override
public Result<CustomerStaffDTO> getCustomerStaffInfoByUserId(CustomerStaffDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "CustomerStaffDTO", formDTO);
}
}

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

@ -29,6 +29,7 @@ import com.epmet.constant.ParameterKeyConstant;
import com.epmet.constant.ProjectConstant;
import com.epmet.dao.ProjectDao;
import com.epmet.dto.CustomerProjectParameterDTO;
import com.epmet.dto.CustomerStaffDTO;
import com.epmet.dto.IssueDTO;
import com.epmet.dto.ProjectDTO;
import com.epmet.dto.ProjectStaffDTO;
@ -38,6 +39,7 @@ import com.epmet.entity.ProjectEntity;
import com.epmet.entity.ProjectProcessEntity;
import com.epmet.entity.ProjectStaffEntity;
import com.epmet.feign.CommonFeignClient;
import com.epmet.feign.EpmetUserFeignClient;
import com.epmet.feign.GovOrgFeignClient;
import com.epmet.redis.ProjectRedis;
import com.epmet.service.CustomerProjectParameterService;
@ -73,6 +75,8 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
@Autowired
private ProjectProcessService projectProcessService;
@Autowired
private EpmetUserFeignClient epmetUserFeignClient;
@Autowired
private GovOrgFeignClient govOrgFeignClient;
private final static String ONE_DAY = "<1";
@ -206,7 +210,7 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
int pageIndex = (fromDTO.getPageNo() - NumConstant.ONE) * fromDTO.getPageSize();
fromDTO.setPageNo(pageIndex);
List<ProjectDTO> projectList = baseDao.selectCreatedList(fromDTO);
List<ProjectDTO> projectList = baseDao.selectInvolvedList(fromDTO);
//获取客户定制的可滞留天数
Integer finalDays = getDays(fromDTO);
projectList.forEach(p -> {
@ -352,9 +356,12 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
* @date 2020/5/12 16:20
*/
private Integer getDays(ProjectListFromDTO fromDTO) {
CustomerStaffDTO customerStaffDTO = new CustomerStaffDTO();
customerStaffDTO.setUserId(fromDTO.getUserId());
CustomerStaffDTO staffDTO = epmetUserFeignClient.getCustomerStaffInfoByUserId(customerStaffDTO).getData();
//获取客户定制的可滞留天数
CustomerProjectParameterDTO dto = new CustomerProjectParameterDTO();
dto.setCustomerId(fromDTO.getCustomerId());
dto.setCustomerId(staffDTO.getCustomerId());
dto.setParameterKey(ParameterKeyConstant.DETENTION_DAYS);
String value = parameterService.getParameterValueByKey(dto);
Integer days = 5;
@ -380,6 +387,7 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
workDayFormDTO.setId(projectDTO.getId());
workDayFormDTO.setStartDate(format.format(projectDTO.getUpdatedTime()));
workDayFormDTO.setEndDate(format.format(new Date()));
list.add(workDayFormDTO);
Result<List<WorkDayResultDTO>> detentionDays = commonFeignClient.detentionDays(list);
return detentionDays.getData().get(0).getDetentionDays();
}

32
epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml

@ -68,10 +68,22 @@
FROM
project_staff
WHERE DEL_FLAG = '0'
AND IS_HANDLE = 'unhandled'
AND IS_HANDLE = 'handle'
GROUP BY PROJECT_ID) ps ON p.ID = ps.PROJECT_ID
LEFT JOIN project_process pp ON p.ID = pp.PROJECT_ID AND pp.OPERATION = 'close'
WHERE p.DEL_FLAG = '0'
WHERE
NOT EXISTS (
SELECT
PROJECT_ID
FROM
project_staff
WHERE
DEL_FLAG = '0'
AND PROJECT_ID = p.ID
AND STAFF_ID = #{userId}
AND IS_HANDLE = 'unhandled'
)
AND p.DEL_FLAG = '0'
ORDER BY p.CREATED_TIME ASC
LIMIT #{pageNo}, #{pageSize}
</select>
@ -102,10 +114,22 @@
FROM
project_staff
WHERE DEL_FLAG = '0'
AND IS_HANDLE = 'unhandled'
AND IS_HANDLE = 'handle'
GROUP BY PROJECT_ID) ps ON p.ID = ps.PROJECT_ID
LEFT JOIN project_process pp ON p.ID = pp.PROJECT_ID AND pp.OPERATION = 'close'
WHERE p.DEL_FLAG = '0'
WHERE
NOT EXISTS (
SELECT
PROJECT_ID
FROM
project_staff
WHERE
DEL_FLAG = '0'
AND PROJECT_ID = p.ID
AND STAFF_ID = #{userId}
AND IS_HANDLE = 'unhandled'
)
AND p.DEL_FLAG = '0'
ORDER BY p.CREATED_TIME ASC
LIMIT #{pageNo}, #{pageSize}
</select>

Loading…
Cancel
Save