Browse Source

项目超期滞留提醒

dev_shibei_match
zhaoqifeng 5 years ago
parent
commit
b9f3d3d8c6
  1. 34
      epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/form/CostDayFormDTO.java
  2. 31
      epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/result/CostDayResultDTO.java
  3. 22
      epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/feign/EpmetCommonServiceOpenFeignClient.java
  4. 28
      epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/feign/fallback/EpmetCommonServiceOpenFeignClientFallback.java
  5. 30
      epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/controller/WorkDayController.java
  6. 20
      epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/WorkDayService.java
  7. 98
      epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/WorkDayServiceImpl.java
  8. 37
      epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/StaffUnHandledDTO.java
  9. 30
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/ParameterKeyConstant.java
  10. 13
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/CustomerProjectParameterDao.java
  11. 10
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectStaffDao.java
  12. 9
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/CustomerProjectParameterService.java
  13. 9
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectService.java
  14. 10
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectStaffService.java
  15. 13
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/CustomerProjectParameterServiceImpl.java
  16. 67
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java
  17. 14
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectStaffServiceImpl.java
  18. 9
      epmet-module/gov-project/gov-project-server/src/main/resources/mapper/CustomerProjectParameterDao.xml
  19. 43
      epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectStaffDao.xml

34
epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/form/CostDayFormDTO.java

@ -0,0 +1,34 @@
package com.epmet.dto.form;
import lombok.Data;
import java.io.Serializable;
/**
* @author zhaoqifeng
* @dscription
* @date 2020/10/21 17:34
*/
@Data
public class CostDayFormDTO implements Serializable {
private static final long serialVersionUID = -1002961480112906533L;
/**
* 项目ID
*/
private String id;
/**
* 工作人员ID
*/
private String staffId;
/**
* 起始日期
*/
private String startDate;
/**
* 终止日期
*/
private String endDate;
}

31
epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/dto/result/CostDayResultDTO.java

@ -0,0 +1,31 @@
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
/**
* @author zhaoqifeng
* @dscription
* @date 2020/10/21 17:53
*/
@Data
public class CostDayResultDTO implements Serializable {
private static final long serialVersionUID = -1575208332115510050L;
/**
* 项目ID
*/
private String id;
/**
* 工作人员ID
*/
private String staffId;
/**
* 已滞留工作日
*/
private Integer detentionDays;
}

22
epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/feign/EpmetCommonServiceOpenFeignClient.java

@ -2,8 +2,10 @@ package com.epmet.feign;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.form.CostDayFormDTO;
import com.epmet.dto.form.ExternalAppAuthFormDTO;
import com.epmet.dto.form.WorkDayFormDTO;
import com.epmet.dto.result.CostDayResultDTO;
import com.epmet.dto.result.ExternalAppAuthResultDTO;
import com.epmet.dto.result.WorkDayResultDTO;
import com.epmet.feign.fallback.EpmetCommonServiceOpenFeignClientFallback;
@ -53,4 +55,24 @@ public interface EpmetCommonServiceOpenFeignClient {
*/
@PostMapping("/commonservice/externalapp/get-secret")
Result getSecret(@RequestBody String appId);
/**
* 工作日计算
* @author zhaoqifeng
* @date 2020/10/22 9:25
* @param formDTO
* @return com.epmet.commons.tools.utils.Result<java.util.List<com.epmet.dto.result.CostDayResultDTO>>
*/
@PostMapping("commonservice/workday/workdays")
Result<List<CostDayResultDTO>> costWorkDays(@RequestBody List<CostDayFormDTO> formDTO);
/**
* 日历天计算
* @author zhaoqifeng
* @date 2020/10/22 9:25
* @param formDTO
* @return com.epmet.commons.tools.utils.Result<java.util.List<com.epmet.dto.result.CostDayResultDTO>>
*/
@PostMapping("commonservice/workday/calendardays")
Result<List<CostDayResultDTO>> costCalendarDays(@RequestBody List<CostDayFormDTO> formDTO);
}

28
epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/feign/fallback/EpmetCommonServiceOpenFeignClientFallback.java

@ -3,8 +3,10 @@ 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.form.CostDayFormDTO;
import com.epmet.dto.form.ExternalAppAuthFormDTO;
import com.epmet.dto.form.WorkDayFormDTO;
import com.epmet.dto.result.CostDayResultDTO;
import com.epmet.dto.result.ExternalAppAuthResultDTO;
import com.epmet.dto.result.WorkDayResultDTO;
import com.epmet.feign.EpmetCommonServiceOpenFeignClient;
@ -39,4 +41,30 @@ public class EpmetCommonServiceOpenFeignClientFallback implements EpmetCommonSer
public Result getSecret(String appId) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_COMMON_SERVICE, "getSecret", appId);
}
/**
* 工作日计算
*
* @param formDTO
* @return com.epmet.commons.tools.utils.Result<java.util.List < com.epmet.dto.result.CostDayResultDTO>>
* @author zhaoqifeng
* @date 2020/10/22 9:25
*/
@Override
public Result<List<CostDayResultDTO>> costWorkDays(List<CostDayFormDTO> formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_COMMON_SERVICE, "costWorkDays", formDTO);
}
/**
* 日历天计算
*
* @param formDTO
* @return com.epmet.commons.tools.utils.Result<java.util.List < com.epmet.dto.result.CostDayResultDTO>>
* @author zhaoqifeng
* @date 2020/10/22 9:25
*/
@Override
public Result<List<CostDayResultDTO>> costCalendarDays(List<CostDayFormDTO> formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_COMMON_SERVICE, "costCalendarDays", formDTO);
}
}

30
epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/controller/WorkDayController.java

@ -1,7 +1,9 @@
package com.epmet.controller;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.form.CostDayFormDTO;
import com.epmet.dto.form.WorkDayFormDTO;
import com.epmet.dto.result.CostDayResultDTO;
import com.epmet.dto.result.WorkDayResultDTO;
import com.epmet.service.WorkDayService;
import org.springframework.beans.factory.annotation.Autowired;
@ -36,5 +38,33 @@ public class WorkDayController {
List<WorkDayResultDTO> list = workDayService.detentionDays(formDTO);
return new Result<List<WorkDayResultDTO>>().ok(list);
}
/**
* 工作日计算
* @author zhaoqifeng
* @date 2020/10/22 9:23
* @param formDTO
* @return com.epmet.commons.tools.utils.Result<java.util.List<com.epmet.dto.result.CostDayResultDTO>>
*/
@PostMapping("workdays")
public Result<List<CostDayResultDTO>> costWorkDays(@RequestBody List<CostDayFormDTO> formDTO) {
List<CostDayResultDTO> list = workDayService.costWorkDays(formDTO);
return new Result<List<CostDayResultDTO>>().ok(list);
}
/**
* 日历天计算
* @author zhaoqifeng
* @date 2020/10/22 9:23
* @param formDTO
* @return com.epmet.commons.tools.utils.Result<java.util.List<com.epmet.dto.result.CostDayResultDTO>>
*/
@PostMapping("calendardays")
public Result<List<CostDayResultDTO>> costCalendarDays(@RequestBody List<CostDayFormDTO> formDTO) {
List<CostDayResultDTO> list = workDayService.costCalendarDays(formDTO);
return new Result<List<CostDayResultDTO>>().ok(list);
}
}

20
epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/WorkDayService.java

@ -1,6 +1,8 @@
package com.epmet.service;
import com.epmet.dto.form.CostDayFormDTO;
import com.epmet.dto.form.WorkDayFormDTO;
import com.epmet.dto.result.CostDayResultDTO;
import com.epmet.dto.result.WorkDayResultDTO;
import java.util.List;
@ -13,4 +15,22 @@ import java.util.Set;
*/
public interface WorkDayService {
List<WorkDayResultDTO> detentionDays(List<WorkDayFormDTO> formDTO);
/**
* 工作日计算
* @author zhaoqifeng
* @date 2020/10/21 17:56
* @param formDTO
* @return java.util.List<com.epmet.dto.result.CostDayResultDTO>
*/
List<CostDayResultDTO> costWorkDays(List<CostDayFormDTO> formDTO);
/**
* 日历日计算
* @author zhaoqifeng
* @date 2020/10/21 17:56
* @param formDTO
* @return java.util.List<com.epmet.dto.result.CostDayResultDTO>
*/
List<CostDayResultDTO> costCalendarDays(List<CostDayFormDTO> formDTO);
}

98
epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/WorkDayServiceImpl.java

@ -2,7 +2,9 @@ package com.epmet.service.impl;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.dao.CalenderDao;
import com.epmet.dto.form.CostDayFormDTO;
import com.epmet.dto.form.WorkDayFormDTO;
import com.epmet.dto.result.CostDayResultDTO;
import com.epmet.dto.result.WorkDayResultDTO;
import com.epmet.entity.CalenderEntity;
import com.epmet.service.WorkDayService;
@ -44,6 +46,54 @@ public class WorkDayServiceImpl implements WorkDayService {
return list;
}
/**
* 工作日计算
*
* @param formDTO
* @return java.util.List<com.epmet.dto.result.CostDayResultDTO>
* @author zhaoqifeng
* @date 2020/10/21 17:56
*/
@Override
public List<CostDayResultDTO> costWorkDays(List<CostDayFormDTO> formDTO) {
List<CostDayResultDTO> list = new ArrayList<>();
if (formDTO.isEmpty()) {
throw new RenException("起始时间、终止时间不能为空");
}
for (CostDayFormDTO form : formDTO) {
CostDayResultDTO result = new CostDayResultDTO();
result.setId(form.getId());
result.setStaffId(form.getStaffId());
result.setDetentionDays(this.getWorkDays(form.getStartDate(), form.getEndDate()));
list.add(result);
}
return list;
}
/**
* 日历日计算
*
* @param formDTO
* @return java.util.List<com.epmet.dto.result.CostDayResultDTO>
* @author zhaoqifeng
* @date 2020/10/21 17:56
*/
@Override
public List<CostDayResultDTO> costCalendarDays(List<CostDayFormDTO> formDTO) {
List<CostDayResultDTO> list = new ArrayList<>();
if (formDTO.isEmpty()) {
throw new RenException("起始时间、终止时间不能为空");
}
for (CostDayFormDTO form : formDTO) {
CostDayResultDTO result = new CostDayResultDTO();
result.setId(form.getId());
result.setStaffId(form.getStaffId());
result.setDetentionDays(this.getCalendarDays(form.getStartDate(), form.getEndDate()));
list.add(result);
}
return list;
}
//公式: 当前日期 - 被吹日期 - 期间的节假日
private String caculateDetentionDays(String startDateStr, String endDateStr) {
if (startDateStr.equals(endDateStr)) {
@ -78,5 +128,53 @@ public class WorkDayServiceImpl implements WorkDayService {
}
private Integer getWorkDays(String startDateStr, String endDateStr) {
if (startDateStr.equals(endDateStr)) {
logger.info(String.format("%s-%s起止时间一致,返回<1,",startDateStr,endDateStr));
return 0;
}
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");
try {
Date startDate = simpleDateFormat.parse(startDateStr);
Date endDate = simpleDateFormat.parse(endDateStr);
long day = (endDate.getTime() - startDate.getTime()) / (24 * 60 * 60 * 1000);
logger.info(String.format("当前日期[%s]-被吹日期[%s]=%s", endDateStr, startDateStr, day));
List<CalenderEntity> list = calenderDao.selectByStartAndEnd(startDateStr, endDateStr);
long totalHoliday = 0;
for (CalenderEntity calenderEntity : list) {
if (!"1".equals(calenderEntity.getType())) {
totalHoliday += 1;
}
}
logger.info(String.format("期间的节假日[%s-%s]=%s", endDateStr, startDateStr, totalHoliday));
long detentionDay = day - totalHoliday;
logger.info(String.format("当前日期[%s]-被吹日期[%s]-期间的节假日[%s]=%s", endDateStr, startDateStr, totalHoliday, detentionDay));
return (int)detentionDay;
} catch (Exception e) {
e.printStackTrace();
}
return -1;
}
private Integer getCalendarDays(String startDateStr, String endDateStr) {
if (startDateStr.equals(endDateStr)) {
logger.info(String.format("%s-%s起止时间一致,返回<1,",startDateStr,endDateStr));
return 0;
}
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");
try {
Date startDate = simpleDateFormat.parse(startDateStr);
Date endDate = simpleDateFormat.parse(endDateStr);
long day = (endDate.getTime() - startDate.getTime()) / (24 * 60 * 60 * 1000);
return (int)day;
} catch (Exception e) {
e.printStackTrace();
}
return -1;
}
}

37
epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/StaffUnHandledDTO.java

@ -0,0 +1,37 @@
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @author zhaoqifeng
* @dscription
* @date 2020/10/21 16:48
*/
@Data
public class StaffUnHandledDTO implements Serializable {
private static final long serialVersionUID = 5257146338113364709L;
/**
* 项目ID
*/
private String id;
/**
* 项目标题
*/
private String title;
/**
* 工作人员ID
*/
private String staffId;
/**
* 吹哨时间
*/
private Date createdTime;
/**
* 响应处理时间
*/
private Date updatedTime;
}

30
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/ParameterKeyConstant.java

@ -11,4 +11,34 @@ public interface ParameterKeyConstant {
* 可滞留天数
*/
String DETENTION_DAYS = "detention_days";
/**
* 计算方式
*/
String CALCULATION = "calculation";
/**
* 计算方式-工作日
*/
String WORK = "work";
/**
* 计算方式-日历天
*/
String CALENDAR = "calendar";
/**
* 即将超期提醒时间
*/
String REMIND_TIME = "remind_time";
/**
* 推送时间
*/
String PUSH_TIME = "push_time";
/**
* 起止时间
*/
String START_AND_END_TIME = "start_and_end_time";
}

13
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/CustomerProjectParameterDao.java

@ -18,10 +18,14 @@
package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.CustomerProjectParameterDTO;
import com.epmet.entity.CustomerProjectParameterEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
* 项目客户参数订制表
*
@ -38,5 +42,14 @@ public interface CustomerProjectParameterDao extends BaseDao<CustomerProjectPara
* @return java.lang.String
*/
String selectParameterValueByKey(CustomerProjectParameterEntity entity);
/**
* 获取客户下所有配置参数
* @author zhaoqifeng
* @date 2020/10/21 14:18
* @param customerId
* @return java.util.List<com.epmet.dto.CustomerProjectParameterDTO>
*/
List<CustomerProjectParameterDTO> getParameterByCustomer(@Param("customerId") String customerId);
}

10
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectStaffDao.java

@ -20,6 +20,7 @@ package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.ProjectStaffDTO;
import com.epmet.dto.result.DepartmentResultDTO;
import com.epmet.dto.result.StaffUnHandledDTO;
import com.epmet.entity.ProjectStaffEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -79,4 +80,13 @@ public interface ProjectStaffDao extends BaseDao<ProjectStaffEntity> {
* @return java.util.List<java.lang.String>
*/
List<String> selectCreatedProcess(ProjectStaffDTO dto);
/**
* 获取未做处理的节点
* @author zhaoqifeng
* @date 2020/10/21 16:56
* @param customerId
* @return java.util.List<com.epmet.dto.result.StaffUnHandledDTO>
*/
List<StaffUnHandledDTO> getStaffUnHandledList(@Param("customerId") String customerId);
}

9
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/CustomerProjectParameterService.java

@ -101,4 +101,13 @@ public interface CustomerProjectParameterService extends BaseService<CustomerPro
* @return CustomerProjectParameterDTO
*/
String getParameterValueByKey(CustomerProjectParameterDTO dto);
/**
* 获取客户下所有配置参数
* @author zhaoqifeng
* @date 2020/10/21 14:24
* @param customerId
* @return java.util.List<com.epmet.dto.CustomerProjectParameterDTO>
*/
List<CustomerProjectParameterDTO> getParameterByCustomer(String customerId);
}

9
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectService.java

@ -188,4 +188,13 @@ public interface ProjectService extends BaseService<ProjectEntity> {
* @return void
*/
void response(ProjectResponseFormDTO formDTO);
/**
* 项目滞留超期提醒
* @author zhaoqifeng
* @date 2020/10/21 15:21
* @param customerId
* @return void
*/
void sendMessage(String customerId);
}

10
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectStaffService.java

@ -23,6 +23,7 @@ import com.epmet.dto.ProjectStaffDTO;
import com.epmet.dto.form.DepartmentStaffListFormDTO;
import com.epmet.dto.result.DepartmentResultDTO;
import com.epmet.dto.result.DepartmentStaffListResultDTO;
import com.epmet.dto.result.StaffUnHandledDTO;
import com.epmet.entity.ProjectStaffEntity;
import java.util.List;
@ -140,4 +141,13 @@ public interface ProjectStaffService extends BaseService<ProjectStaffEntity> {
* @return java.util.List<java.lang.String>
*/
List<String> getCreatedProcess(ProjectStaffDTO dto);
/**
* 获取未做处理的节点
* @author zhaoqifeng
* @date 2020/10/21 16:54
* @param customerId
* @return java.util.List<com.epmet.dto.result.StaffUnHandledDTO>
*/
List<StaffUnHandledDTO> getStaffUnHandledList(String customerId);
}

13
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/CustomerProjectParameterServiceImpl.java

@ -107,4 +107,17 @@ public class CustomerProjectParameterServiceImpl extends BaseServiceImpl<Custome
return baseDao.selectParameterValueByKey(entity);
}
/**
* 获取客户下所有配置参数
*
* @param customerId
* @return java.util.List<com.epmet.dto.CustomerProjectParameterDTO>
* @author zhaoqifeng
* @date 2020/10/21 14:16
*/
@Override
public List<CustomerProjectParameterDTO> getParameterByCustomer(String customerId) {
return baseDao.getParameterByCustomer(customerId);
}
}

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

@ -31,6 +31,7 @@ import com.epmet.commons.tools.scan.param.TextScanParamDTO;
import com.epmet.commons.tools.scan.param.TextTaskDTO;
import com.epmet.commons.tools.scan.result.SyncScanResult;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.utils.ScanContentUtils;
import com.epmet.constant.ParameterKeyConstant;
@ -712,4 +713,70 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
projectProcessService.insert(projectProcessEntity);
}
/**
* 项目滞留超期提醒
*
* @param customerId
* @return void
* @author zhaoqifeng
* @date 2020/10/21 15:21
*/
@Override
public void sendMessage(String customerId) {
List<CustomerProjectParameterDTO> paramList = parameterService.getParameterByCustomer(customerId);
//可滞留天数
int detentionDays = 5;
//计算方式
String calculation = ParameterKeyConstant.WORK;
//即将超期提醒时间
int remindTime = 0;
//推送时间
String pushTime = "08:00";
if (null != paramList && paramList.size() > NumConstant.ZERO) {
for (CustomerProjectParameterDTO dto : paramList) {
if (ParameterKeyConstant.DETENTION_DAYS.equals(dto.getParameterKey())) {
detentionDays = Integer.parseInt(dto.getParameterValue());
} else if (ParameterKeyConstant.CALCULATION.equals(dto.getParameterKey())) {
calculation = dto.getParameterValue();
} else if (ParameterKeyConstant.REMIND_TIME.equals(dto.getParameterKey())) {
remindTime = Integer.parseInt(dto.getParameterValue());
} else if (ParameterKeyConstant.PUSH_TIME.equals(dto.getParameterKey())) {
pushTime = dto.getParameterValue();
}
}
}
//获取工作人员未处理的节点
List<StaffUnHandledDTO> unHandledList = projectStaffService.getStaffUnHandledList(customerId);
List<CostDayFormDTO> formDTOS = unHandledList.stream().map(item -> {
CostDayFormDTO dto = new CostDayFormDTO();
dto.setId(item.getId());
dto.setStaffId(item.getStaffId());
if (null != item.getUpdatedTime()) {
dto.setStartDate(DateUtils.format(item.getUpdatedTime(), DateUtils.DATE_PATTERN_YYYYMMDD));
} else {
dto.setStartDate(DateUtils.format(item.getCreatedTime(), DateUtils.DATE_PATTERN_YYYYMMDD));
}
dto.setEndDate(DateUtils.format(new Date(), DateUtils.DATE_PATTERN_YYYYMMDD));
return dto;
}).collect(Collectors.toList());
List<CostDayResultDTO> costDayList = new ArrayList<>();
if (ParameterKeyConstant.WORK.equals(calculation)) {
//工作日计算
Result<List<CostDayResultDTO>> result = epmetCommonServiceOpenFeignClient.costWorkDays(formDTOS);
if (!result.success()) {
throw new RenException(result.getCode(), result.getMsg());
}
costDayList = result.getData();
} else {
//日历日计算
Result<List<CostDayResultDTO>> result = epmetCommonServiceOpenFeignClient.costCalendarDays(formDTOS);
if (!result.success()) {
throw new RenException(result.getCode(), result.getMsg());
}
costDayList = result.getData();
}
}
}

14
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectStaffServiceImpl.java

@ -32,6 +32,7 @@ import com.epmet.dto.form.DepartmentStaffListFormDTO;
import com.epmet.dto.form.TransferOptionalStaffListFormDTO;
import com.epmet.dto.result.DepartmentResultDTO;
import com.epmet.dto.result.DepartmentStaffListResultDTO;
import com.epmet.dto.result.StaffUnHandledDTO;
import com.epmet.entity.ProjectStaffEntity;
import com.epmet.feign.GovOrgFeignClient;
import com.epmet.redis.ProjectStaffRedis;
@ -155,4 +156,17 @@ public class ProjectStaffServiceImpl extends BaseServiceImpl<ProjectStaffDao, Pr
return baseDao.selectCreatedProcess(dto);
}
/**
* 获取未做处理的节点
*
* @param customerId
* @return java.util.List<com.epmet.dto.result.StaffUnHandledDTO>
* @author zhaoqifeng
* @date 2020/10/21 16:54
*/
@Override
public List<StaffUnHandledDTO> getStaffUnHandledList(String customerId) {
return null;
}
}

9
epmet-module/gov-project/gov-project-server/src/main/resources/mapper/CustomerProjectParameterDao.xml

@ -26,6 +26,15 @@
and CUSTOMER_ID = #{customerId}
and PARAMETER_KEY = #{parameterKey}
</select>
<select id="getParameterByCustomer" resultType="com.epmet.dto.CustomerProjectParameterDTO">
select
PARAMETER_NAME,
PARAMETER_VALUE
from
customer_project_parameter
where DEL_FLAG = '0'
and CUSTOMER_ID = #{customerId}
</select>
</mapper>

43
epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectStaffDao.xml

@ -65,5 +65,48 @@
AND ps.STAFF_ID = #{staffId}
AND IS_HANDLE = 'unhandled'
</select>
<select id="getStaffUnHandledList" resultType="com.epmet.dto.result.StaffUnHandledDTO">
SELECT DISTINCT
p.ID,
p.TITLE,
ps.STAFF_ID,
ps.CREATED_TIME,
pp.UPDATED_TIME
FROM
project_staff ps
INNER JOIN project p ON ps.PROJECT_ID = p.ID
AND p.`STATUS` != "closed"
LEFT JOIN (
SELECT
pp.AGENCY_ID,
pp.GRID_ID,
pp.DEPARTMENT_ID,
pp.DEPARTMENT_NAME,
pp.STAFF_ID,
pp.PROJECT_ID,
MAX( pp.CREATED_TIME ) AS "UPDATED_TIME"
FROM
project_process pp
INNER JOIN project p ON pp.PROJECT_ID = p.ID
AND p.`STATUS` != "closed"
WHERE
OPERATION = 'response'
GROUP BY
pp.AGENCY_ID,
pp.GRID_ID,
pp.DEPARTMENT_ID,
pp.DEPARTMENT_NAME,
pp.STAFF_ID,
pp.PROJECT_ID
) pp ON ps.ORG_ID = pp.AGENCY_ID
AND ps.GRID_ID = pp.GRID_ID
AND ps.DEPARTMENT_ID = pp.DEPARTMENT_ID
AND ps.STAFF_ID = pp.STAFF_ID
AND ps.PROJECT_ID = pp.PROJECT_ID
AND ps.DEPARTMENT_NAME = pp.DEPARTMENT_NAME
WHERE
ps.IS_HANDLE = 'unhandled'
AND ps.CUSTOMER_ID = #{customerId}
</select>
</mapper>
Loading…
Cancel
Save