设计符合性流程。

This commit is contained in:
wangzhijiang
2022-05-09 16:12:53 +08:00
parent 40ca8bfa5a
commit 7916649b91
5 changed files with 107 additions and 18 deletions
@@ -176,8 +176,9 @@ public class ProjectTaskInventoryDetailEOController extends JeroController<Proje
@AutoLog(value = "项目库-任务清单明细表-通过流程实例id查询") @AutoLog(value = "项目库-任务清单明细表-通过流程实例id查询")
@ApiOperation(value="项目库-任务清单明细表-通过流程实例id查询", notes="项目库-任务清单明细表-通过流程实例id查询") @ApiOperation(value="项目库-任务清单明细表-通过流程实例id查询", notes="项目库-任务清单明细表-通过流程实例id查询")
@GetMapping(value = "/queryByActiProcInstId") @GetMapping(value = "/queryByActiProcInstId")
public Result<?> queryByActiProcInstId(@RequestParam(name="actiProcInstId",required=true) String actiProcInstId) { public Result<?> queryByActiProcInstId(@RequestParam(name="actiProcInstId",required=true) String actiProcInstId,
return this.projectTaskInventoryDetailEOService.queryByActiProcInstId(actiProcInstId); @RequestParam(name="taskDefinitionKey",required=true)String taskDefinitionKey) {
return this.projectTaskInventoryDetailEOService.queryByActiProcInstId(actiProcInstId, taskDefinitionKey);
} }
} }
@@ -112,4 +112,8 @@ public class ProjectTaskInventoryDetailEO implements Serializable {
/**消息类型*/ /**消息类型*/
@TableField(exist = false) @TableField(exist = false)
private String msgType; private String msgType;
/**用户名*/
@TableField(exist = false)
private String userName;
} }
@@ -65,5 +65,5 @@ public interface IProjectTaskInventoryDetailEOService extends IService<ProjectTa
* @param actiProcInstId * @param actiProcInstId
* @return * @return
*/ */
Result<?> queryByActiProcInstId(String actiProcInstId); Result<?> queryByActiProcInstId(String actiProcInstId,String taskDefinitionKey);
} }
@@ -14,6 +14,8 @@ import com.jero.modules.project.mapper.ProjectNameInfoEOMapper;
import com.jero.modules.project.mapper.ProjectTaskInventoryDetailEOMapper; import com.jero.modules.project.mapper.ProjectTaskInventoryDetailEOMapper;
import com.jero.modules.project.service.IProjectTaskInventoryDetailEOService; import com.jero.modules.project.service.IProjectTaskInventoryDetailEOService;
import com.jero.modules.project.util.SendMessageUtils; import com.jero.modules.project.util.SendMessageUtils;
import com.jero.modules.system.entity.SysUser;
import com.jero.modules.system.service.ISysUserService;
import me.zhyd.oauth.utils.StringUtils; import me.zhyd.oauth.utils.StringUtils;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.shiro.SecurityUtils; import org.apache.shiro.SecurityUtils;
@@ -43,6 +45,8 @@ public class ProjectTaskInventoryDetailEOServiceImpl extends ServiceImpl<Project
@Autowired @Autowired
private ProjectNameInfoEOMapper projectNameInfoEOMapper; private ProjectNameInfoEOMapper projectNameInfoEOMapper;
@Autowired
private ISysUserService sysUserService;
/** /**
* 保存 * 保存
@@ -135,13 +139,41 @@ public class ProjectTaskInventoryDetailEOServiceImpl extends ServiceImpl<Project
} }
@Override @Override
public Result<?> queryByActiProcInstId(String actiProcInstId) { public Result<?> queryByActiProcInstId(String actiProcInstId,String taskDefinitionKey) {
QueryWrapper<ProjectTaskInventoryDetailEO> queryWrapper = new QueryWrapper<>(); QueryWrapper<ProjectTaskInventoryDetailEO> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().eq(ProjectTaskInventoryDetailEO::getActiProcInstId,actiProcInstId); queryWrapper.lambda().eq(ProjectTaskInventoryDetailEO::getActiProcInstId,actiProcInstId);
queryWrapper.lambda().eq(ProjectTaskInventoryDetailEO::getTaskDefinitionKey,taskDefinitionKey);
List<ProjectTaskInventoryDetailEO> projectTaskInventoryDetailEOS = this.baseMapper.selectList(queryWrapper); List<ProjectTaskInventoryDetailEO> projectTaskInventoryDetailEOS = this.baseMapper.selectList(queryWrapper);
if(CollectionUtils.isNotEmpty(projectTaskInventoryDetailEOS)){
disposeData(projectTaskInventoryDetailEOS);
}
return Result.OK(projectTaskInventoryDetailEOS); return Result.OK(projectTaskInventoryDetailEOS);
} }
/**
* 处理数据
* @param projectTaskInventoryDetailEOList
*/
public void disposeData(List<ProjectTaskInventoryDetailEO> projectTaskInventoryDetailEOList){
if(CollectionUtils.isNotEmpty(projectTaskInventoryDetailEOList)){
List<String> userIdList = new ArrayList<>();
for (ProjectTaskInventoryDetailEO projectTaskInventoryDetailEO : projectTaskInventoryDetailEOList) {
userIdList.add(projectTaskInventoryDetailEO.getUserId());
}
List<SysUser> sysUserList = new ArrayList<>();
if(CollectionUtils.isNotEmpty(userIdList)){
sysUserList = sysUserService.querySysUserListByIdList(userIdList);
}
for (ProjectTaskInventoryDetailEO projectTaskInventoryDetailEO : projectTaskInventoryDetailEOList) {
for (SysUser sysUser : sysUserList) {
if(org.apache.commons.lang3.StringUtils.equals(projectTaskInventoryDetailEO.getUserId(),sysUser.getId())){
projectTaskInventoryDetailEO.setUserName(sysUser.getUsername());
}
}
}
}
}
public void sendMessage(ProjectTaskInventoryDetailEO projectTaskInventoryDetailEO,List<String> userIdList){ public void sendMessage(ProjectTaskInventoryDetailEO projectTaskInventoryDetailEO,List<String> userIdList){
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
@@ -324,6 +324,21 @@ public class ProjectTaskInventoryEOServiceImpl extends ServiceImpl<ProjectTaskIn
projectTaskInventoryEO.setRoleCode(roleCode); projectTaskInventoryEO.setRoleCode(roleCode);
String designPid = "";
String designTaskId = "";
String designTaskStatus = "";
String designTaskDefinitionKey = "";
String prehomoPid = "";
String prehomoTaskId = "";
String prehomoTaskStatus = "";
String prehomoTaskDefinitionKey = "";
String verifyPid = "";
String verifyTaskId = "";
String verifyTaskStatus = "";
String verifyTaskDefinitionKey = "";
for (ProjectTaskInventoryDetailEO projectTaskInventoryDetailEO : projectTaskInventoryDetailEOList) { for (ProjectTaskInventoryDetailEO projectTaskInventoryDetailEO : projectTaskInventoryDetailEOList) {
if(StringUtils.equals(projectTaskInventoryEO.getProjectLawsInventoryId(),projectTaskInventoryDetailEO.getProjectTaskInventoryId())){ if(StringUtils.equals(projectTaskInventoryEO.getProjectLawsInventoryId(),projectTaskInventoryDetailEO.getProjectTaskInventoryId())){
/** /**
@@ -334,31 +349,68 @@ public class ProjectTaskInventoryEOServiceImpl extends ServiceImpl<ProjectTaskIn
if(isStudio || (isRegulationOwner || isHomologationEngineer)){ if(isStudio || (isRegulationOwner || isHomologationEngineer)){
actiProcInstId = projectTaskInventoryDetailEO.getActiProcInstId(); actiProcInstId = projectTaskInventoryDetailEO.getActiProcInstId();
if(StringUtils.equals(projectTaskInventoryDetailEO.getFlowType(),FlowTypeEnum.SJFHXSHLC.getValue())){ if(StringUtils.equals(projectTaskInventoryDetailEO.getFlowType(),FlowTypeEnum.SJFHXSHLC.getValue())){
projectTaskInventoryEO.setDesignPId(actiProcInstId); designPid = actiProcInstId;
projectTaskInventoryEO.setDesignTaskId(projectTaskInventoryDetailEO.getTaskId());
if(StringUtils.equals(currentUser.getId(),projectTaskInventoryDetailEO.getUserId())){ if(StringUtils.equals(currentUser.getId(),projectTaskInventoryDetailEO.getUserId())){
projectTaskInventoryEO.setDesignTaskStatus(projectTaskInventoryDetailEO.getStatus()); designTaskId = projectTaskInventoryDetailEO.getTaskId();
designTaskStatus = projectTaskInventoryDetailEO.getStatus();
designTaskDefinitionKey = projectTaskInventoryDetailEO.getTaskDefinitionKey();
}else { }else {
projectTaskInventoryEO.setDesignTaskStatus(TaskStatusEnum.SHOW_FLAG.getValue()); if(StringUtils.isEmpty(designTaskId)){
designTaskId = projectTaskInventoryDetailEO.getTaskId();
}
if(StringUtils.isEmpty(designTaskStatus)){
designTaskStatus = TaskStatusEnum.SHOW_FLAG.getValue();
}
if(StringUtils.isEmpty(designTaskDefinitionKey)){
designTaskDefinitionKey = projectTaskInventoryDetailEO.getTaskDefinitionKey();
}
} }
projectTaskInventoryEO.setDesignPId(designPid);
projectTaskInventoryEO.setDesignTaskId(designTaskId);
projectTaskInventoryEO.setDesignTaskStatus(designTaskStatus);
}else if(StringUtils.equals(projectTaskInventoryDetailEO.getFlowType(),FlowTypeEnum.PREHOMOQRLC.getValue())){ }else if(StringUtils.equals(projectTaskInventoryDetailEO.getFlowType(),FlowTypeEnum.PREHOMOQRLC.getValue())){
projectTaskInventoryEO.setPrehomoPId(actiProcInstId); prehomoPid = actiProcInstId;
projectTaskInventoryEO.setPrehomoTaskId(projectTaskInventoryDetailEO.getTaskId());
if(StringUtils.equals(currentUser.getId(),projectTaskInventoryDetailEO.getUserId())){ if(StringUtils.equals(currentUser.getId(),projectTaskInventoryDetailEO.getUserId())){
projectTaskInventoryEO.setPrehomoTaskStatus(projectTaskInventoryDetailEO.getStatus()); prehomoTaskId = projectTaskInventoryDetailEO.getTaskId();
prehomoTaskStatus = projectTaskInventoryDetailEO.getStatus();
prehomoTaskDefinitionKey = projectTaskInventoryDetailEO.getTaskDefinitionKey();
}else { }else {
projectTaskInventoryEO.setPrehomoTaskStatus(TaskStatusEnum.SHOW_FLAG.getValue()); if(StringUtils.isEmpty(prehomoTaskId)){
prehomoTaskId = projectTaskInventoryDetailEO.getTaskId();
}
if(StringUtils.isEmpty(prehomoTaskStatus)){
prehomoTaskStatus = TaskStatusEnum.SHOW_FLAG.getValue();
}
if(StringUtils.isEmpty(prehomoTaskDefinitionKey)){
prehomoTaskDefinitionKey = projectTaskInventoryDetailEO.getTaskDefinitionKey();
}
} }
projectTaskInventoryEO.setPrehomoPId(prehomoPid);
projectTaskInventoryEO.setPrehomoTaskId(prehomoTaskId);
projectTaskInventoryEO.setPrehomoTaskStatus(prehomoTaskStatus);
}else if(StringUtils.equals(projectTaskInventoryDetailEO.getFlowType(),FlowTypeEnum.YZFHXSCLC.getValue())){ }else if(StringUtils.equals(projectTaskInventoryDetailEO.getFlowType(),FlowTypeEnum.YZFHXSCLC.getValue())){
projectTaskInventoryEO.setVerifyPId(actiProcInstId); verifyPid = actiProcInstId;
projectTaskInventoryEO.setVerifyTaskId(projectTaskInventoryDetailEO.getTaskId());
if(StringUtils.equals(currentUser.getId(),projectTaskInventoryDetailEO.getUserId())){ if(StringUtils.equals(currentUser.getId(),projectTaskInventoryDetailEO.getUserId())){
projectTaskInventoryEO.setVerifyTaskStatus(projectTaskInventoryDetailEO.getStatus()); verifyTaskId = projectTaskInventoryDetailEO.getTaskId();
verifyTaskStatus = projectTaskInventoryDetailEO.getStatus();
verifyTaskDefinitionKey = projectTaskInventoryDetailEO.getTaskDefinitionKey();
}else { }else {
projectTaskInventoryEO.setVerifyTaskStatus(TaskStatusEnum.SHOW_FLAG.getValue()); if(StringUtils.isEmpty(verifyTaskId)){
verifyTaskId = projectTaskInventoryDetailEO.getTaskId();
}
if(StringUtils.isEmpty(verifyTaskStatus)){
verifyTaskStatus = TaskStatusEnum.SHOW_FLAG.getValue();
}
if(StringUtils.isEmpty(verifyTaskDefinitionKey)){
verifyTaskDefinitionKey = projectTaskInventoryDetailEO.getTaskDefinitionKey();
}
} }
projectTaskInventoryEO.setVerifyPId(verifyPid);
projectTaskInventoryEO.setVerifyTaskId(verifyTaskId);
projectTaskInventoryEO.setVerifyTaskStatus(verifyTaskStatus);
} }
}else { }else {
if(StringUtils.equals(currentUser.getId(),projectTaskInventoryDetailEO.getUserId())){ if(StringUtils.equals(currentUser.getId(),projectTaskInventoryDetailEO.getUserId())){