设计符合性流程、任务清单列表、设计符合性流程定时器(消息,三天与当天。)
This commit is contained in:
+1
-1
@@ -70,7 +70,7 @@ public class ProjectTaskInventoryEOController extends JeroController<ProjectTask
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<ProjectTaskInventoryEO>> queryList(ProjectTaskInventoryEO projectTaskInventoryEO,HttpServletRequest req) {
|
||||
List<ProjectTaskInventoryEO> list = projectTaskInventoryEOService.queryList(projectTaskInventoryEO,req);
|
||||
return Result.OK(list);
|
||||
return Result.OK(projectTaskInventoryEO.getCut(),list);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+7
@@ -117,8 +117,14 @@ public class ProjectTaskInventoryEO implements Serializable {
|
||||
/**认证进度*/
|
||||
@Excel(name = "认证进度", width = 15)
|
||||
@ApiModelProperty(value = "认证进度")
|
||||
@Dict(dicCode = "certification_progress")
|
||||
private String certificationProgress;
|
||||
|
||||
/**认证进度备注*/
|
||||
@Excel(name = "认证进度备注", width = 15)
|
||||
@ApiModelProperty(value = "认证进度备注")
|
||||
private String certificationProgressRemark;
|
||||
|
||||
/**项目状态评估*/
|
||||
@Excel(name = "项目状态评估", width = 15)
|
||||
@ApiModelProperty(value = "项目状态评估")
|
||||
@@ -138,6 +144,7 @@ public class ProjectTaskInventoryEO implements Serializable {
|
||||
|
||||
/**责任领域**/
|
||||
@TableField(exist = false)
|
||||
@Dict(dicCode ="duty_territory")
|
||||
private String dutyTerritory;
|
||||
|
||||
/**设计符合性 待办id**/
|
||||
|
||||
+145
@@ -0,0 +1,145 @@
|
||||
package com.jero.modules.project.job;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.jero.modules.project.entity.*;
|
||||
import com.jero.modules.project.enums.DesignComplianceStatusEnum;
|
||||
import com.jero.modules.project.enums.SendMsgFlagEnum;
|
||||
import com.jero.modules.project.mapper.ProjectLawsInventoryEOMapper;
|
||||
import com.jero.modules.project.mapper.ProjectLibraryBaseMapper;
|
||||
import com.jero.modules.project.mapper.ProjectNameInfoEOMapper;
|
||||
import com.jero.modules.project.service.IProjectLawsInventoryEOService;
|
||||
import com.jero.modules.project.service.IProjectTaskInventoryEOService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.quartz.Job;
|
||||
import org.quartz.JobExecutionContext;
|
||||
import org.quartz.JobExecutionException;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 设计符合性流程 - 定时器
|
||||
*/
|
||||
@Slf4j
|
||||
public class designComplianceJob implements Job {
|
||||
@Autowired
|
||||
private ProjectLawsInventoryEOMapper projectLawsInventoryEOMapper;
|
||||
|
||||
@Autowired
|
||||
private ProjectLibraryBaseMapper projectLibraryBaseMapper;
|
||||
|
||||
@Autowired
|
||||
private IProjectLawsInventoryEOService projectLawsInventoryEOService;
|
||||
|
||||
@Autowired
|
||||
private ProjectNameInfoEOMapper projectNameInfoEOMapper;
|
||||
|
||||
@Autowired
|
||||
private IProjectTaskInventoryEOService projectTaskInventoryEOService;
|
||||
|
||||
@Override
|
||||
public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
|
||||
|
||||
//查询出已经启动了设计符合性流程的数据。 并且流程没有结束。
|
||||
QueryWrapper<ProjectTaskInventoryEO> queryProjectTaskInventoryWrapper = new QueryWrapper<>();
|
||||
queryProjectTaskInventoryWrapper.isNotNull("design_p_id");
|
||||
queryProjectTaskInventoryWrapper.lambda().ne(ProjectTaskInventoryEO::getDesignStatus, DesignComplianceStatusEnum.REVIEW_COMPLETED.getValue());
|
||||
List<ProjectTaskInventoryEO> projectTaskInventoryEOList = projectTaskInventoryEOService.getBaseMapper().selectList(queryProjectTaskInventoryWrapper);
|
||||
|
||||
if(CollectionUtils.isNotEmpty(projectTaskInventoryEOList)){
|
||||
List<String> projectLawsInventoryIdList = projectTaskInventoryEOList.stream().distinct().map(ProjectTaskInventoryEO::getProjectLawsInventoryId).collect(Collectors.toList());
|
||||
//根据已经启动了设计符合性流程的 法规清单id。查询法规清单
|
||||
QueryWrapper<ProjectLawsInventoryEO> queryWrapperInventory = new QueryWrapper<>();
|
||||
queryWrapperInventory.lambda().in(ProjectLawsInventoryEO::getId, projectLawsInventoryIdList);
|
||||
List<ProjectLawsInventoryEO> projectLawsInventoryEOList = projectLawsInventoryEOMapper.selectList(queryWrapperInventory);
|
||||
|
||||
if(CollectionUtils.isNotEmpty(projectLawsInventoryEOList)){
|
||||
List<String> projectLibraryIdList = projectLawsInventoryEOList.stream().distinct().map(ProjectLawsInventoryEO::getProjectLibraryId).collect(Collectors.toList());
|
||||
|
||||
QueryWrapper<ProjectLibraryBase> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.lambda().in(ProjectLibraryBase::getId,projectLibraryIdList);
|
||||
List<ProjectLibraryBase> projectLibraryBaseList = projectLibraryBaseMapper.selectList(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(projectLibraryBaseList)){
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd");
|
||||
|
||||
Date currentDate = new Date();
|
||||
|
||||
//获取后三天前的时间
|
||||
Calendar calendar=new GregorianCalendar();
|
||||
calendar.setTime(new Date());
|
||||
calendar.add(Calendar.DATE,3);
|
||||
Date threeDays = calendar.getTime();
|
||||
|
||||
String threeDaysStr = sdf.format(threeDays);
|
||||
String currentDateStr = sdf.format(currentDate);
|
||||
|
||||
for (ProjectLibraryBase projectLibraryBase : projectLibraryBaseList) {
|
||||
QueryWrapper<ProjectNameInfoEO> projectNameInfoEOQueryWrapper = new QueryWrapper<>();
|
||||
projectNameInfoEOQueryWrapper.lambda().eq(ProjectNameInfoEO::getId,projectLibraryBase.getProjectNameId());
|
||||
ProjectNameInfoEO projectNameInfoEO = projectNameInfoEOMapper.selectOne(projectNameInfoEOQueryWrapper);
|
||||
|
||||
|
||||
for (ProjectLawsInventoryEO projectLawsInventoryEO: projectLawsInventoryEOList) {
|
||||
List<String> threeDaysUserIdList = new ArrayList<>();
|
||||
List<String> currentDaysUserIdList = new ArrayList<>();
|
||||
|
||||
for (ProjectTaskInventoryEO projectTaskInventoryEO : projectTaskInventoryEOList) {
|
||||
if(StringUtils.equals(projectTaskInventoryEO.getProjectLawsInventoryId(),projectLawsInventoryEO.getId())){
|
||||
//如果设计符合性 - 结束日期是当前日期
|
||||
if(StringUtils.equals(currentDateStr,sdf.format(projectLawsInventoryEO.getDesignDueDate()))){
|
||||
if(StringUtils.isEmpty(projectTaskInventoryEO.getDesignSendMsgFlag())){
|
||||
if(StringUtils.isNotEmpty(projectLawsInventoryEO.getDesignDutyId())){
|
||||
currentDaysUserIdList.add(projectLawsInventoryEO.getDesignDutyId());
|
||||
}if(StringUtils.isNotEmpty(projectLawsInventoryEO.getDesignInitiatorId())){
|
||||
currentDaysUserIdList.add(projectLawsInventoryEO.getDesignInitiatorId());
|
||||
}
|
||||
projectTaskInventoryEO.setDesignSendMsgFlag(SendMsgFlagEnum.FALSE.getValue());
|
||||
projectTaskInventoryEOService.updateById(projectTaskInventoryEO);
|
||||
}
|
||||
}
|
||||
//如果设计符合性 - 结束日期是三天后的日期
|
||||
if(StringUtils.equals(threeDaysStr,sdf.format(projectLawsInventoryEO.getDesignDueDate()))){
|
||||
if(StringUtils.isEmpty(projectTaskInventoryEO.getDesignSendMsgCurrentFlag())){
|
||||
if(StringUtils.isNotEmpty(projectLawsInventoryEO.getDesignDutyId())){
|
||||
threeDaysUserIdList.add(projectLawsInventoryEO.getDesignDutyId());
|
||||
}if(StringUtils.isNotEmpty(projectLawsInventoryEO.getDesignInitiatorId())){
|
||||
threeDaysUserIdList.add(projectLawsInventoryEO.getDesignInitiatorId());
|
||||
}
|
||||
projectTaskInventoryEO.setDesignSendMsgCurrentFlag(SendMsgFlagEnum.FALSE.getValue());
|
||||
projectTaskInventoryEOService.updateById(projectTaskInventoryEO);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if(CollectionUtils.isNotEmpty(threeDaysUserIdList)){
|
||||
threeDaysUserIdList = threeDaysUserIdList.stream().distinct().collect(Collectors.toList());
|
||||
|
||||
//您XXX(项目名称)中GB 7258的设计符合性确认剩余处理时间还有3天,请及时查看处理
|
||||
String msgContentEN = "The remaining processing time for the design compliance confirmation of "
|
||||
+ projectLawsInventoryEO.getSerialNumber() + " in " + projectNameInfoEO.getProjectName()
|
||||
+ " (project name) is 3 days. Please check and handle it in time.";
|
||||
//发送消息
|
||||
projectLawsInventoryEOService.sendMessage(msgContentEN,threeDaysUserIdList,projectLawsInventoryEO.getId());
|
||||
}
|
||||
|
||||
if(CollectionUtils.isNotEmpty(currentDaysUserIdList)){
|
||||
currentDaysUserIdList = currentDaysUserIdList.stream().distinct().collect(Collectors.toList());
|
||||
|
||||
//您XXX(项目名称)中GB 7258的设计符合性确认任务今天即将结束,请及时查看处理
|
||||
String msgContentEN = "The the design compliance confirmation of "
|
||||
+ projectLawsInventoryEO.getSerialNumber() + " in " + projectNameInfoEO.getProjectName()
|
||||
+ " (project name) is coming to an end today. Please check and deal with it in time.";
|
||||
//发送消息
|
||||
projectLawsInventoryEOService.sendMessage(msgContentEN,currentDaysUserIdList,projectLawsInventoryEO.getId());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+11
-2
@@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.modules.project.entity.*;
|
||||
import com.jero.modules.project.enums.*;
|
||||
@@ -133,8 +134,11 @@ public class ProjectTaskInventoryEOServiceImpl extends ServiceImpl<ProjectTaskIn
|
||||
}
|
||||
|
||||
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
|
||||
QueryWrapper<ProjectLawsInventoryEO> lawsInventoryEOQueryWrapper = new QueryWrapper<>();
|
||||
ProjectLawsInventoryEO projectLawsInventoryEO = new ProjectLawsInventoryEO();
|
||||
projectLawsInventoryEO.setSerialNumber(projectTaskInventoryEO.getSerialNumber());
|
||||
projectLawsInventoryEO.setDutyTerritory(projectTaskInventoryEO.getDutyTerritory());
|
||||
QueryWrapper<ProjectLawsInventoryEO> lawsInventoryEOQueryWrapper = QueryGenerator.initQueryWrapper(projectLawsInventoryEO,req.getParameterMap());
|
||||
//QueryWrapper<ProjectLawsInventoryEO> lawsInventoryEOQueryWrapper = new QueryWrapper<>();
|
||||
lawsInventoryEOQueryWrapper.lambda().eq(ProjectLawsInventoryEO::getProjectLibraryId,projectLibraryId);
|
||||
lawsInventoryEOQueryWrapper.lambda().eq(ProjectLawsInventoryEO::getInventoryAffirmStatus, InventoryAffirmStatusEnum.ACCEPTED.getValue());
|
||||
lawsInventoryEOQueryWrapper.lambda().eq(ProjectLawsInventoryEO::getTaskAffirmStatus, TaskAffirmStatusEnum.ACCEPTED.getValue());
|
||||
@@ -438,7 +442,12 @@ public class ProjectTaskInventoryEOServiceImpl extends ServiceImpl<ProjectTaskIn
|
||||
projectTaskInventoryEO.setVerifyTaskDefinitionKey(verifyTaskDefinitionKey);
|
||||
projectTaskInventoryEO.setVerifyTaskDetailId(verifyTaskDetailId);
|
||||
}
|
||||
|
||||
projectTaskInventoryEO.setCertificationProgress(projectTaskInventoryEO.getCertificationProgress());
|
||||
projectTaskInventoryEO.setCertificationProgressRemark(projectTaskInventoryEO.getCertificationProgressRemark());
|
||||
}else {
|
||||
projectTaskInventoryEO.setCertificationProgress("");
|
||||
projectTaskInventoryEO.setCertificationProgressRemark("");
|
||||
if(StringUtils.equals(currentUser.getId(),projectTaskInventoryDetailEO.getUserId())){
|
||||
actiProcInstId = projectTaskInventoryDetailEO.getActiProcInstId();
|
||||
if(StringUtils.equals(projectTaskInventoryDetailEO.getFlowType(),FlowTypeEnum.SJFHXSHLC.getValue())){
|
||||
|
||||
Reference in New Issue
Block a user