Commit a2116f1a authored by zhangyingbin's avatar zhangyingbin

项目立项流程修改

parent 1f010e61
...@@ -57,4 +57,6 @@ public interface ProjectMapper extends BaseMapper<Project> { ...@@ -57,4 +57,6 @@ public interface ProjectMapper extends BaseMapper<Project> {
List<Map<String,String>> getProjectComplete(@Param("projectIds") Set<Long> projectIds); List<Map<String,String>> getProjectComplete(@Param("projectIds") Set<Long> projectIds);
ProjectProcessDto getProjectProcessDto(Long sequenceNbr); ProjectProcessDto getProjectProcessDto(Long sequenceNbr);
String getContext(String instanceId,String taskName);
} }
...@@ -284,4 +284,8 @@ ...@@ -284,4 +284,8 @@
where up.sequence_nbr=#{sequenceNbr} where up.sequence_nbr=#{sequenceNbr}
</select> </select>
<select id="getContext" resultType="java.lang.String">
SELECT log.context FROM tz_ugp_initiation_log log WHERE log.instance_id = #{instanceId} AND log.task_name = #{taskName} ORDER BY log.rec_date DESC LIMIT 1
</select>
</mapper> </mapper>
...@@ -264,7 +264,8 @@ public class InstallNoticeServiceImpl extends BaseService<InstallNoticeDto,Insta ...@@ -264,7 +264,8 @@ public class InstallNoticeServiceImpl extends BaseService<InstallNoticeDto,Insta
LambdaQueryWrapper<ProcessRelation> relationsWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<ProcessRelation> relationsWrapper = new LambdaQueryWrapper<>();
relationsWrapper.eq(ProcessRelation::getSourceId,projectDto.getSequenceNbr()) relationsWrapper.eq(ProcessRelation::getSourceId,projectDto.getSequenceNbr())
.eq(ProcessRelation::getDefCode, ProcessTypeEnum.项目立项.getType()); .eq(ProcessRelation::getDefCode, ProcessTypeEnum.项目立项.getType());
installNoticeDto.setInstanceId(processRelationService.getOne(relationsWrapper).getInstanceId()); ProcessRelation processRelation = processRelationService.getOne(relationsWrapper);
installNoticeDto.setInstanceId(org.springframework.util.ObjectUtils.isEmpty(processRelation) ? null : processRelation.getInstanceId());
return installNoticeDto; return installNoticeDto;
} }
} }
\ No newline at end of file
...@@ -226,15 +226,21 @@ public class ProjectInitiationServiceImpl extends BaseService<ProjectInitiationD ...@@ -226,15 +226,21 @@ public class ProjectInitiationServiceImpl extends BaseService<ProjectInitiationD
logger.error("当前用户存在多个任务"); logger.error("当前用户存在多个任务");
JSONObject jsonObject = JSON.parseObject(JSON.toJSONString(Workflow.taskClient.getTaskList(instanceId))); JSONObject jsonObject = JSON.parseObject(JSON.toJSONString(Workflow.taskClient.getTaskList(instanceId)));
JSONArray jsonArray = jsonObject.getJSONArray("data"); JSONArray jsonArray = jsonObject.getJSONArray("data");
boolean isEnd = false;
for(Object o:jsonArray){ for(Object o:jsonArray){
String name = JSON.parseObject(JSON.toJSONString(o)).getString("name"); String name = JSON.parseObject(JSON.toJSONString(o)).getString("name");
if(ProjectInitiationEnum.安装开工资料修改.getName().equals(name)){ if(ProjectInitiationEnum.安装开工资料修改.getName().equals(name) || ProjectInitiationEnum.设计开工资料修改.getName().equals(name) ){
dataObject = JSON.parseObject(JSON.toJSONString(o)); dataObject = JSON.parseObject(JSON.toJSONString(o));
isEnd = false;
break;
} }
if(ProjectInitiationEnum.设计开工资料修改.getName().equals(name)){ if(ProjectInitiationEnum.监检员审核.getName().equals(name)){
dataObject = JSON.parseObject(JSON.toJSONString(o)); isEnd = true;
} }
} }
if(isEnd){
dataObject = jsonArray.getJSONObject(0);
}
} }
taskName = dataObject.getString("name"); taskName = dataObject.getString("name");
...@@ -465,6 +471,7 @@ public class ProjectInitiationServiceImpl extends BaseService<ProjectInitiationD ...@@ -465,6 +471,7 @@ public class ProjectInitiationServiceImpl extends BaseService<ProjectInitiationD
*/ */
public String getFlowTaskName(String instanceId){ public String getFlowTaskName(String instanceId){
JSONObject dataObject = new JSONObject(); JSONObject dataObject = new JSONObject();
boolean isEnd = false;
try { try {
AjaxResult ajaxResult = Workflow.taskClient.getTask(instanceId); AjaxResult ajaxResult = Workflow.taskClient.getTask(instanceId);
dataObject = JSON.parseObject(JSON.toJSONString(ajaxResult.get("data"))); dataObject = JSON.parseObject(JSON.toJSONString(ajaxResult.get("data")));
...@@ -482,9 +489,12 @@ public class ProjectInitiationServiceImpl extends BaseService<ProjectInitiationD ...@@ -482,9 +489,12 @@ public class ProjectInitiationServiceImpl extends BaseService<ProjectInitiationD
return ProjectInitiationEnum.提交资料.getName(); return ProjectInitiationEnum.提交资料.getName();
} }
if(ProjectInitiationEnum.监检员审核.getName().equals(name)){ if(ProjectInitiationEnum.监检员审核.getName().equals(name)){
return ProjectInitiationEnum.监检员审核.getName(); isEnd = true;
} }
} }
if(isEnd){
return ProjectInitiationEnum.监检员审核.getName();
}
} }
String taskName = "流程结束!"; String taskName = "流程结束!";
try { try {
...@@ -523,6 +533,9 @@ public class ProjectInitiationServiceImpl extends BaseService<ProjectInitiationD ...@@ -523,6 +533,9 @@ public class ProjectInitiationServiceImpl extends BaseService<ProjectInitiationD
taskName = ProjectInitiationEnum.设计开工资料修改.getTaskName(); taskName = ProjectInitiationEnum.设计开工资料修改.getTaskName();
} }
} }
if(ProjectInitiationEnum.监检员审核.getName().equals(project.getStatus())&&ProjectInitiationEnum.监检员审核.getName().equals(taskName)){
taskName = "流程结束!";
}
project.setStatus(taskName); project.setStatus(taskName);
projectService.updateById(project); projectService.updateById(project);
......
...@@ -202,7 +202,8 @@ public class ProjectServiceImpl extends BaseService<ProjectDto, Project, Project ...@@ -202,7 +202,8 @@ public class ProjectServiceImpl extends BaseService<ProjectDto, Project, Project
LambdaQueryWrapper<ProcessRelation> relationsWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<ProcessRelation> relationsWrapper = new LambdaQueryWrapper<>();
relationsWrapper.eq(ProcessRelation::getSourceId,projectDto.getSequenceNbr()) relationsWrapper.eq(ProcessRelation::getSourceId,projectDto.getSequenceNbr())
.eq(ProcessRelation::getDefCode, ProcessTypeEnum.项目立项.getType()); .eq(ProcessRelation::getDefCode, ProcessTypeEnum.项目立项.getType());
projectDto.setInstanceId(processRelationService.getOne(relationsWrapper).getInstanceId()); ProcessRelation one = processRelationService.getOne(relationsWrapper);
projectDto.setInstanceId(ObjectUtils.isEmpty(one) ? null : one.getInstanceId());
return projectDto; return projectDto;
} }
...@@ -521,6 +522,8 @@ public class ProjectServiceImpl extends BaseService<ProjectDto, Project, Project ...@@ -521,6 +522,8 @@ public class ProjectServiceImpl extends BaseService<ProjectDto, Project, Project
return page; return page;
} }
public List<ProjectDto> getPage(List<ProjectDto> projects){ public List<ProjectDto> getPage(List<ProjectDto> projects){
ArrayList<ProjectDto> list = Lists.newArrayList(); ArrayList<ProjectDto> list = Lists.newArrayList();
for(ProjectDto projectDto:projects){ for(ProjectDto projectDto:projects){
...@@ -544,6 +547,8 @@ public class ProjectServiceImpl extends BaseService<ProjectDto, Project, Project ...@@ -544,6 +547,8 @@ public class ProjectServiceImpl extends BaseService<ProjectDto, Project, Project
} }
list.add(projectDto); list.add(projectDto);
}else if (!ValidationUtil.isEmpty(projectDto.getContext()) && ProjectInitiationEnum.监检员审核.getName().equals(projectDto.getStatus())) { }else if (!ValidationUtil.isEmpty(projectDto.getContext()) && ProjectInitiationEnum.监检员审核.getName().equals(projectDto.getStatus())) {
String context = this.projectMapper.getContext(projectDto.getInstanceId(),ProjectInitiationEnum.监检员分配.getName());
projectDto.setContext(context);
if (JSONObject.parseObject(projectDto.getContext()).containsKey("insPerson")) { if (JSONObject.parseObject(projectDto.getContext()).containsKey("insPerson")) {
String insPerson = JSONObject.parseObject(projectDto.getContext()).getString("insPerson"); String insPerson = JSONObject.parseObject(projectDto.getContext()).getString("insPerson");
if (!ValidationUtil.isEmpty(insPerson)) { if (!ValidationUtil.isEmpty(insPerson)) {
...@@ -730,7 +735,8 @@ public class ProjectServiceImpl extends BaseService<ProjectDto, Project, Project ...@@ -730,7 +735,8 @@ public class ProjectServiceImpl extends BaseService<ProjectDto, Project, Project
LambdaQueryWrapper<ProcessRelation> relationsWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<ProcessRelation> relationsWrapper = new LambdaQueryWrapper<>();
relationsWrapper.eq(ProcessRelation::getSourceId,sequenceNbr) relationsWrapper.eq(ProcessRelation::getSourceId,sequenceNbr)
.eq(ProcessRelation::getDefCode, ProcessTypeEnum.项目立项.getType()); .eq(ProcessRelation::getDefCode, ProcessTypeEnum.项目立项.getType());
fileDto.setInstanceId(processRelationService.getOne(relationsWrapper).getInstanceId()); ProcessRelation one = processRelationService.getOne(relationsWrapper);
fileDto.setInstanceId(ObjectUtils.isEmpty(one) ? null : one.getInstanceId());
return fileDto; return fileDto;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment