Browse Source

新增项目计划立项部分变更

master
zhouhaibin 2 months ago
parent
commit
ac0d2fc571
  1. 3
      huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouMergesplitinfoServiceImpl.java
  2. 6
      huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouPlaninfoServiceImpl.java
  3. 222
      huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouPlaninfofileServiceImpl.java
  4. 1
      huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouProjectinfoServiceImpl.java
  5. 12
      huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/WorkflowServiceImpl.java

3
huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouMergesplitinfoServiceImpl.java

@ -134,6 +134,9 @@ public class HuzhouMergesplitinfoServiceImpl extends ServiceImpl<HuzhouMergespli
queryWrapper1.eq(HuzhouMergesplitinfo::getId, projectid); queryWrapper1.eq(HuzhouMergesplitinfo::getId, projectid);
queryWrapper1.eq(HuzhouMergesplitinfo::getMergeOrSplit, "split"); queryWrapper1.eq(HuzhouMergesplitinfo::getMergeOrSplit, "split");
huzhouMergesplitinfos = mergesplitinfoMapper.selectList(queryWrapper1); huzhouMergesplitinfos = mergesplitinfoMapper.selectList(queryWrapper1);
if(huzhouMergesplitinfos==null||huzhouMergesplitinfos.size()==0){
return huzhouProjectinfos;
}
huzhouProjectinfos.add(huzhouMergesplitinfos.get(0)); huzhouProjectinfos.add(huzhouMergesplitinfos.get(0));
return huzhouProjectinfos; return huzhouProjectinfos;
}else{ }else{

6
huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouPlaninfoServiceImpl.java

@ -568,8 +568,10 @@ public class HuzhouPlaninfoServiceImpl extends ServiceImpl<HuzhouPlaninfoMapper,
.processInstanceId(processInstanceId) .processInstanceId(processInstanceId)
.active() .active()
.list(); .list();
String name = taskList.get(0).getName(); String name="";
if(taskList.size()>0){
name = taskList.get(0).getName();
}
if("发起人".equals(name)){ if("发起人".equals(name)){
hashMap.put("isEdit","1"); hashMap.put("isEdit","1");
}else { }else {

222
huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouPlaninfofileServiceImpl.java

@ -1,5 +1,6 @@
package com.easy.admin.modules.huzhou.service.impl; package com.easy.admin.modules.huzhou.service.impl;
import cn.hutool.core.util.StrUtil;
import com.alibaba.excel.util.StringUtils; import com.alibaba.excel.util.StringUtils;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
@ -55,9 +56,9 @@ public class HuzhouPlaninfofileServiceImpl extends ServiceImpl<HuzhouPlaninfofil
@Autowired @Autowired
private HuzhouContractinfoMapper contractinfoMapper; private HuzhouContractinfoMapper contractinfoMapper;
// private String[] names ={"可研技术审查报告(初稿)确认","可研技术审查报告(复审稿)确认","可研技术审查报告(终稿)确认","造价评估报告确认","可行性研究报告审批(发改)","合同签订","首付支付","初验阶段","终验阶段","初步设计审批"}; // private String[] names ={"可研技术审查报告(初稿)确认","可研技术审查报告(复审稿)确认","可研技术审查报告(终稿)确认","造价评估报告确认","可行性研究报告审批(发改)","合同签订","首付支付","初验阶段","终验阶段","初步设计审批"};
private String[] names ={"可研技术审查报告(初稿)确认","可研技术审查报告(终稿)确认","造价评估报告确认","可行性研究报告审批(发改)","合同签订","首付支付","初验阶段","终验阶段","初步设计审批"}; private String[] names ={"合同签订","首付支付","初验阶段","终验阶段","初步设计审批"};
private String[] tNames ={"可研报告初稿编制","可研报告终稿编制","造价评估"}; // private String[] tNames ={"可研报告初稿编制","可研报告终稿编制","造价评估"};
@Override @Override
public Page<HuzhouPlaninfofile> getplanFilePageList(HuzhouPlaninfofile planinfofile,Integer pageNo, Integer pageSize) { public Page<HuzhouPlaninfofile> getplanFilePageList(HuzhouPlaninfofile planinfofile,Integer pageNo, Integer pageSize) {
Page<HuzhouPlaninfofile> page = new Page<>(pageNo,pageSize); Page<HuzhouPlaninfofile> page = new Page<>(pageNo,pageSize);
@ -92,6 +93,7 @@ public class HuzhouPlaninfofileServiceImpl extends ServiceImpl<HuzhouPlaninfofil
} }
planinfoService.saveOrModifyPlanUploadFile(files,planinfoid,"1","1"); planinfoService.saveOrModifyPlanUploadFile(files,planinfoid,"1","1");
String taskName = planinfo.getTaskName(); String taskName = planinfo.getTaskName();
taskName=StrUtil.trim(taskName);
String projectId = planinfoService.getById(planinfoid).getProjectId(); String projectId = planinfoService.getById(planinfoid).getProjectId();
HuzhouProjectinfo huzhouProjectinfo = projectinfoService.getById(projectId); HuzhouProjectinfo huzhouProjectinfo = projectinfoService.getById(projectId);
String superLeader = ""; String superLeader = "";
@ -131,61 +133,61 @@ public class HuzhouPlaninfofileServiceImpl extends ServiceImpl<HuzhouPlaninfofil
strings.add(userid); strings.add(userid);
} }
if (Arrays.asList(tNames).contains(taskName)) { // if (Arrays.asList(tNames).contains(taskName)) {
WorkFlow workFlow = workflowService.createFlow("feasibilityReportPreparation",planinfoid); // WorkFlow workFlow = workflowService.createFlow("feasibilityReportPreparation",planinfoid);
Task task = workFlow.getTask(); // Task task = workFlow.getTask();
String taskId = task.getId(); // String taskId = task.getId();
String processInstanceId = workFlow.getProcessInstanceId(); // String processInstanceId = workFlow.getProcessInstanceId();
Map<String, Object> variables = new HashMap<>(); // Map<String, Object> variables = new HashMap<>();
variables.put("taskLeadingDepartment",strings); // variables.put("taskLeadingDepartment",strings);
runtimeService.setVariable(processInstanceId, "taskLeadingDepartment", strings);//设置第四个人变量信息 // runtimeService.setVariable(processInstanceId, "taskLeadingDepartment", strings);//设置第四个人变量信息
variables.clear(); // variables.clear();
//根据行政区县判断审批人 // //根据行政区县判断审批人
if("市本级".equals(adminDivision)){ // if("市本级".equals(adminDivision)){
//是市本级,判读责任单位 // //是市本级,判读责任单位
String dutyWorkplace = huzhouProjectinfo.getDutyWorkplace(); // String dutyWorkplace = huzhouProjectinfo.getDutyWorkplace();
if(dutyWorkplace.contains("湖州市中心医院")){ // if(dutyWorkplace.contains("湖州市中心医院")){
//是湖州市中心医院 则由吴兴区负责人审批 // //是湖州市中心医院 则由吴兴区负责人审批
adminDivision="吴兴区"; // adminDivision="吴兴区";
}else if(dutyWorkplace.contains("湖州市第一人民医院")){ // }else if(dutyWorkplace.contains("湖州市第一人民医院")){
//是湖州市第一人民医院,则有南浔区负责人审批 // //是湖州市第一人民医院,则有南浔区负责人审批
adminDivision="南浔区"; // adminDivision="南浔区";
}else if(dutyWorkplace.contains("湖州市第三人民医院")){ // }else if(dutyWorkplace.contains("湖州市第三人民医院")){
//是湖州市第三人民医院,则有德清县负责人审批 // //是湖州市第三人民医院,则有德清县负责人审批
adminDivision="德清县"; // adminDivision="德清县";
}else if(dutyWorkplace.contains("湖州市妇幼保健院")){ // }else if(dutyWorkplace.contains("湖州市妇幼保健院")){
adminDivision="安吉县"; // adminDivision="安吉县";
}else if(dutyWorkplace.contains("湖州市中医院")){ // }else if(dutyWorkplace.contains("湖州市中医院")){
adminDivision="长兴县"; // adminDivision="长兴县";
} // }
} // }
//行政区县名称查询角色有哪些人 // //行政区县名称查询角色有哪些人
userDictByRoles = userService.getUserDictByRoles(adminDivision); // userDictByRoles = userService.getUserDictByRoles(adminDivision);
ArrayList<String> strings2 = new ArrayList<>(); // ArrayList<String> strings2 = new ArrayList<>();
if(userDictByRoles==null||userDictByRoles.size()==0){ // if(userDictByRoles==null||userDictByRoles.size()==0){
String error = "信息化保障团队"+adminDivision+"负责人未找到"; // String error = "信息化保障团队"+adminDivision+"负责人未找到";
throw new EasyException(error); // throw new EasyException(error);
} // }
for (HashMap<String, String> map:userDictByRoles // for (HashMap<String, String> map:userDictByRoles
) { // ) {
String userid = map.get("value"); // String userid = map.get("value");
strings2.add(userid); // strings2.add(userid);
} // }
variables.put("informationSecurityTeam",strings2);//设置第二个人 // variables.put("informationSecurityTeam",strings2);//设置第二个人
//发起人节点处理 // //发起人节点处理
taskService.setVariableLocal(taskId,"approvalStatue","1");//添加审批状态 通过 // taskService.setVariableLocal(taskId,"approvalStatue","1");//添加审批状态 通过
String comment = "同意"; // String comment = "同意";
taskService.addComment(taskId,processInstanceId,comment);//添加审批意见 // taskService.addComment(taskId,processInstanceId,comment);//添加审批意见
taskService.complete(taskId, variables); // taskService.complete(taskId, variables);
HuzhouPlaninfo huzhouPlaninfo = new HuzhouPlaninfo(); // HuzhouPlaninfo huzhouPlaninfo = new HuzhouPlaninfo();
huzhouPlaninfo.setId(planinfoid); // huzhouPlaninfo.setId(planinfoid);
huzhouPlaninfo.setIsfinish("1"); // huzhouPlaninfo.setIsfinish("1");
huzhouPlaninfo.setActualStartTime(new Date()); // huzhouPlaninfo.setActualStartTime(new Date());
//
planinfoService.updateById(huzhouPlaninfo); // planinfoService.updateById(huzhouPlaninfo);
} // }
else if(Arrays.asList(names).contains(taskName)||existsContractinfo){ if(Arrays.asList(names).contains(taskName)||existsContractinfo){
WorkFlow workFlow = workflowService.createFlow("createPlaninfoFile",planinfoid); WorkFlow workFlow = workflowService.createFlow("createPlaninfoFile",planinfoid);
Task task = workFlow.getTask(); Task task = workFlow.getTask();
String taskId = task.getId(); String taskId = task.getId();
@ -238,10 +240,58 @@ public class HuzhouPlaninfofileServiceImpl extends ServiceImpl<HuzhouPlaninfofil
huzhouPlaninfo.setId(planinfoid); huzhouPlaninfo.setId(planinfoid);
huzhouPlaninfo.setIsfinish("1"); huzhouPlaninfo.setIsfinish("1");
huzhouPlaninfo.setActualStartTime(new Date()); huzhouPlaninfo.setActualStartTime(new Date());
planinfoService.updateById(huzhouPlaninfo); planinfoService.updateById(huzhouPlaninfo);
} } else if ("可研报告初稿编制".equals(taskName)) {
else{ //审批通过但是要开始下一阶段流程
HuzhouPlaninfo huzhouPlaninfo = new HuzhouPlaninfo();
huzhouPlaninfo.setId(planinfoid);
huzhouPlaninfo.setIsfinish("2");
huzhouPlaninfo.setActualStartTime(new Date());
huzhouPlaninfo.setActualEndTime(new Date());
planinfoService.updateById(huzhouPlaninfo);
//获取可研技术审查报告确认节点id
String projectId1 = planinfo.getProjectId();
LambdaQueryWrapper<HuzhouPlaninfo> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(HuzhouPlaninfo::getProjectId,projectId1);
wrapper.eq(HuzhouPlaninfo::getTaskName,"可研技术审查报告确认");
List<HuzhouPlaninfo> list = planinfoService.list(wrapper);
if(list.size()==0){
throw new EasyException("未找到可研技术审查报告确认阶段");
}
HuzhouPlaninfo planinfo1 = list.get(0);
String planinfo1Id = planinfo1.getId();
//启动流程
WorkFlow workFlow = workflowService.createFlow("feasibilityTechReviewConfirm",planinfo1Id);
String processInstanceId = workFlow.getProcessInstanceId();
runtimeService.setVariable(processInstanceId, "taskLeadingDepartment", strings);//设置第四个人变量信息
//修改可研技术审查报告确认节点id
HuzhouPlaninfo huzhouPlaninfo1 = new HuzhouPlaninfo();
huzhouPlaninfo1.setId(planinfo1Id);
huzhouPlaninfo1.setIsfinish("1");
huzhouPlaninfo1.setActualStartTime(new Date());
huzhouPlaninfo1.setActualEndTime(new Date());
planinfoService.updateById(huzhouPlaninfo1);
} else if ("可研报告终稿编制".equals(taskName)) {
//finalFeasibilityReportDraft
WorkFlow workFlow = workflowService.createFlow("finalFeasibilityReportDraft",planinfoid);
Task task = workFlow.getTask();
String taskId = task.getId();
String processInstanceId = workFlow.getProcessInstanceId();
Map<String, Object> variables = new HashMap<>();
variables.put("taskLeadingDepartment",strings);
runtimeService.setVariable(processInstanceId, "taskLeadingDepartment", strings);//设置第四个人变量信息
//发起人节点处理
taskService.setVariableLocal(taskId,"approvalStatue","1");//添加审批状态 通过
String comment = "同意";
taskService.addComment(taskId,processInstanceId,comment);//添加审批意见
taskService.complete(taskId, variables);
HuzhouPlaninfo huzhouPlaninfo = new HuzhouPlaninfo();
huzhouPlaninfo.setId(planinfoid);
huzhouPlaninfo.setIsfinish("1");
huzhouPlaninfo.setActualStartTime(new Date());
planinfoService.updateById(huzhouPlaninfo);
} else{
HuzhouPlaninfo huzhouPlaninfo = new HuzhouPlaninfo(); HuzhouPlaninfo huzhouPlaninfo = new HuzhouPlaninfo();
huzhouPlaninfo.setId(planinfoid); huzhouPlaninfo.setId(planinfoid);
huzhouPlaninfo.setIsfinish("2"); huzhouPlaninfo.setIsfinish("2");
@ -333,6 +383,60 @@ public class HuzhouPlaninfofileServiceImpl extends ServiceImpl<HuzhouPlaninfofil
projectinfoService.modifyStageById(projectId,"6"); projectinfoService.modifyStageById(projectId,"6");
} }
} }
if(processInstance==null&&"1".equals(flag)){
HuzhouPlaninfo byId = planinfoService.getById(planinfoid);
String taskName = StrUtil.trim(byId.getTaskName());
if("可研报告终稿编制".equals(taskName)){
//获取造价评估报告确认节点id
String projectId1 = byId.getProjectId();
LambdaQueryWrapper<HuzhouPlaninfo> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(HuzhouPlaninfo::getProjectId,projectId1);
wrapper.eq(HuzhouPlaninfo::getTaskName,"造价评估报告确认");
List<HuzhouPlaninfo> list = planinfoService.list(wrapper);
if(list.size()==0){
throw new EasyException("未找到造价评估报告确认阶段");
}
HuzhouPlaninfo planinfo1 = list.get(0);
String planinfo1Id = planinfo1.getId();
//获取项目上级指导室
String projectId = planinfo1.getProjectId();
HuzhouProjectinfo huzhouProjectinfo = projectinfoService.getById(projectId);
String superLeader = "";
//如果项目信息为空说明是子项目
if(huzhouProjectinfo==null){
HuzhouSubProjectinfo byId1 = subProjectinfoService.getById(projectId);
superLeader = byId1.getSuperLeader();
}else {
superLeader=huzhouProjectinfo.getSuperLeader();
}
SysDict dict = sysDictService.getDictByCode("superLeader", superLeader);
String dictName = dict.getName();
//上级指导室中文名称查询角色有哪些人
List<HashMap<String, String>> userDictByRoles = userService.getUserDictByRoles(dictName);
ArrayList<String> strings = new ArrayList<>();
if(userDictByRoles==null||userDictByRoles.size()==0){
String error = "任务牵头处室"+dictName+"负责人未找到";
throw new EasyException(error);
}
for (HashMap<String, String> map:userDictByRoles
) {
String userid = map.get("value");
strings.add(userid);
}
//启动流程
WorkFlow workFlow1 = workflowService.createFlow("costEvalReportConfirm",planinfo1Id);
String processInstanceId = workFlow1.getProcessInstanceId();
runtimeService.setVariable(processInstanceId, "startP", planinfo1.getCreateUser());//设置第四个人变量信息
runtimeService.setVariable(processInstanceId, "taskLeadingDepartment", strings.get(0));//设置第四个人变量信息
//修改可研技术审查报告确认节点id
HuzhouPlaninfo huzhouPlaninfo1 = new HuzhouPlaninfo();
huzhouPlaninfo1.setId(planinfo1Id);
huzhouPlaninfo1.setIsfinish("1");
huzhouPlaninfo1.setActualStartTime(new Date());
huzhouPlaninfo1.setActualEndTime(new Date());
planinfoService.updateById(huzhouPlaninfo1);
}
}
} }
@Override @Override

1
huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouProjectinfoServiceImpl.java

@ -151,6 +151,7 @@ public class HuzhouProjectinfoServiceImpl extends ServiceImpl<HuzhouProjectinfoM
@Override @Override
public void batchImportProjects(MultipartFile multipartFile) throws Exception { public void batchImportProjects(MultipartFile multipartFile) throws Exception {
int[] a= {};
//是否有文件 //是否有文件
if (multipartFile == null && multipartFile.getSize() == 0) { if (multipartFile == null && multipartFile.getSize() == 0) {
throw new EasyException("文件上传错误,重新上传"); throw new EasyException("文件上传错误,重新上传");

12
huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/WorkflowServiceImpl.java

@ -236,13 +236,15 @@ public class WorkflowServiceImpl implements IWorkflowService {
Select select1 = new Select(); Select select1 = new Select();
select1.setLabel("同意"); select1.setLabel("同意");
select1.setValue("1"); select1.setValue("1");
// HashMap<String, String> hashMap1 = new HashMap<>();
// hashMap1.put("label","同意");
// hashMap1.put("value","1");
actionButtons.add(select1); actionButtons.add(select1);
workflowActionParamOV.setIsEdit(true); workflowActionParamOV.setIsEdit(true);
// outRes.put("IsEdit",true); } else if ("总咨询单位".equals(name)&&(task.getProcessDefinitionId().contains("feasibilityTechReviewConfirm")||task.getProcessDefinitionId().contains("costEvalReportConfirm"))) {
}else { Select select1 = new Select();
select1.setLabel("同意");
select1.setValue("1");
actionButtons.add(select1);
workflowActionParamOV.setIsEdit(true);
} else {
Select select1 = new Select(); Select select1 = new Select();
select1.setLabel("同意"); select1.setLabel("同意");
select1.setValue("1"); select1.setValue("1");

Loading…
Cancel
Save