|
@@ -9,11 +9,14 @@ import com.jeeplus.modules.act.entity.Act;
|
|
|
import com.jeeplus.modules.act.service.ActTaskService;
|
|
|
import com.jeeplus.modules.externalUnit.dao.ExternalUnitCapitalDemandDao;
|
|
|
import com.jeeplus.modules.externalUnit.dao.ExternalUnitProjectRecordsDao;
|
|
|
+import com.jeeplus.modules.externalUnit.dao.ExternalUnitUserFileDao;
|
|
|
import com.jeeplus.modules.externalUnit.entity.ExternalUnitCapitalDemand;
|
|
|
import com.jeeplus.modules.externalUnit.entity.ExternalUnitProjectRecords;
|
|
|
+import com.jeeplus.modules.externalUnit.entity.ExternalUnitUserFile;
|
|
|
import com.jeeplus.modules.externalUnit.entity.ExternalUnitWorkClientAttachment;
|
|
|
import com.jeeplus.modules.signatureManagement.electronicSignature.entity.DistrictDirectorApplication;
|
|
|
import com.jeeplus.modules.sys.entity.Office;
|
|
|
+import com.jeeplus.modules.sys.entity.Role;
|
|
|
import com.jeeplus.modules.sys.entity.User;
|
|
|
import com.jeeplus.modules.sys.service.OfficeService;
|
|
|
import com.jeeplus.modules.sys.service.WorkattachmentService;
|
|
@@ -42,6 +45,7 @@ import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.util.*;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
@Service
|
|
|
@Transactional(readOnly = true)
|
|
@@ -88,6 +92,9 @@ public class ExternalUnitCapitalDemandService extends CrudService<ExternalUnitCa
|
|
|
@Autowired
|
|
|
private ExternalUnitProjectRecordsDao unitProjectRecordsDao;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private ExternalUnitUserFileDao externalUnitUserFileDao;
|
|
|
+
|
|
|
|
|
|
|
|
|
public ExternalUnitCapitalDemand get(String id) {
|
|
@@ -146,9 +153,9 @@ public class ExternalUnitCapitalDemandService extends CrudService<ExternalUnitCa
|
|
|
);
|
|
|
long s6=System.currentTimeMillis();
|
|
|
List<User> users = new ArrayList<>();
|
|
|
- List<User> jfsh = new ArrayList<>();
|
|
|
+// List<User> jfsh = new ArrayList<>();
|
|
|
List<User> wjbc = new ArrayList<>();
|
|
|
- List<User> jffh = new ArrayList<>();
|
|
|
+// List<User> jffh = new ArrayList<>();
|
|
|
if (StringUtils.isNotBlank(capitalDemand.getId())){
|
|
|
//通知添加流程实例ID
|
|
|
WorkProjectNotify notify = new WorkProjectNotify();
|
|
@@ -156,13 +163,13 @@ public class ExternalUnitCapitalDemandService extends CrudService<ExternalUnitCa
|
|
|
workProjectNotifyService.readByNotifyId(notify);
|
|
|
}
|
|
|
//甲方审核
|
|
|
- List<User> members = unitProjectRecordsDao.findJf(capitalDemand.getProject().getId(), "");
|
|
|
- jfsh.addAll(members);
|
|
|
+// List<User> members = unitProjectRecordsDao.findJf(capitalDemand.getProject().getId(), "");
|
|
|
+// jfsh.addAll(members);
|
|
|
//文件补充
|
|
|
User user1 = UserUtils.get(capitalDemand.getExaminer());
|
|
|
wjbc.add(user1);
|
|
|
//甲方复核
|
|
|
- jffh.addAll(members);
|
|
|
+// jffh.addAll(members);
|
|
|
long s7=System.currentTimeMillis();
|
|
|
if (StringUtils.isNotBlank(workActivityMenu.getId())) {
|
|
|
workProjectNotify.setNotifyRole("");
|
|
@@ -198,22 +205,22 @@ public class ExternalUnitCapitalDemandService extends CrudService<ExternalUnitCa
|
|
|
}
|
|
|
workProjectNotify.setId("");
|
|
|
} else {
|
|
|
- if (jfsh.size()==0 ){
|
|
|
+ if (wjbc.size()==0 ){
|
|
|
capitalDemand.setStatus("1");//暂存
|
|
|
this.save(capitalDemand);
|
|
|
}
|
|
|
- if (jfsh.size()==0){
|
|
|
+ if (wjbc.size()==0){
|
|
|
return "流程审批人不能为空,请联系管理员!";
|
|
|
}
|
|
|
- variables.put("jfshCount",jfsh.size());
|
|
|
- variables.put("jfshList",jfsh);
|
|
|
+ variables.put("wjbcCount",wjbc.size());
|
|
|
+ variables.put("wjbcList",wjbc);
|
|
|
processType = "capitalDemand";
|
|
|
- users.addAll(jfsh);
|
|
|
+ users.addAll(wjbc);
|
|
|
}
|
|
|
for (User user : users){
|
|
|
workProjectNotify.setUser(user);
|
|
|
workProjectNotify.setId("");
|
|
|
- workProjectNotify.setNotifyRole("甲方审核");
|
|
|
+ workProjectNotify.setNotifyRole("文件补充");
|
|
|
workProjectNotifyService
|
|
|
.save(workProjectNotify);
|
|
|
Map<String,Object> extras = new HashMap<>();
|
|
@@ -254,15 +261,15 @@ public class ExternalUnitCapitalDemandService extends CrudService<ExternalUnitCa
|
|
|
workActivityProcess.setProcessInstanceId(processInstance.getId());
|
|
|
workActivityProcess.setIsApproval("0");
|
|
|
workActivityProcessService.save(workActivityProcess);
|
|
|
- workActivityProcess.setCount(2);
|
|
|
- workActivityProcess.setId("");
|
|
|
- workActivityProcessService.save(workActivityProcess);
|
|
|
- workActivityProcess.setCount(3);
|
|
|
- workActivityProcess.setId("");
|
|
|
- workActivityProcessService.save(workActivityProcess);
|
|
|
- workActivityProcessService.insertAuditsByType(jfsh,processInstance.getId(),1,1);
|
|
|
- workActivityProcessService.insertAuditsByType(wjbc,processInstance.getId(),2,1);
|
|
|
- workActivityProcessService.insertAuditsByType(jffh,processInstance.getId(),3,1);
|
|
|
+// workActivityProcess.setCount(2);
|
|
|
+// workActivityProcess.setId("");
|
|
|
+// workActivityProcessService.save(workActivityProcess);
|
|
|
+// workActivityProcess.setCount(3);
|
|
|
+// workActivityProcess.setId("");
|
|
|
+// workActivityProcessService.save(workActivityProcess);
|
|
|
+// workActivityProcessService.insertAuditsByType(jfsh,processInstance.getId(),1,1);
|
|
|
+ workActivityProcessService.insertAuditsByType(wjbc,processInstance.getId(),1,1);
|
|
|
+// workActivityProcessService.insertAuditsByType(jffh,processInstance.getId(),3,1);
|
|
|
}
|
|
|
return "";
|
|
|
|
|
@@ -370,65 +377,69 @@ public class ExternalUnitCapitalDemandService extends CrudService<ExternalUnitCa
|
|
|
workActivityProcess.setId("");
|
|
|
}
|
|
|
// 审核环节
|
|
|
- if ("jfsh".equals(taskDefKey) && count.contains("1")) {
|
|
|
- taskCount = "1";
|
|
|
- exp = "pass";
|
|
|
- if ("yes".equals(capitalDemand.getAct().getFlag())) {
|
|
|
- //审核通过处理
|
|
|
- workActivityProcessService.insertAuditsByType(auditUsers,capitalDemand.getProcessInstanceId(),2,1);
|
|
|
- notifyRole = "文件补充";
|
|
|
- workActivityProcess.setIsApproval("1");
|
|
|
- enname = "wjbc";
|
|
|
- vars.put("wjbcList", auditUsers);
|
|
|
- vars.put("wjbcCount",auditUsers.size());
|
|
|
-
|
|
|
- }
|
|
|
-// else {
|
|
|
-// notifyRole = "项目-"+capitalDemand.getProject().getName()+"提资需求调整申请";
|
|
|
-// workActivityProcess.setIsApproval("2");
|
|
|
+// if ("jfsh".equals(taskDefKey) && count.contains("1")) {
|
|
|
+// taskCount = "1";
|
|
|
+// exp = "pass";
|
|
|
+// if ("yes".equals(capitalDemand.getAct().getFlag())) {
|
|
|
+// //审核通过处理
|
|
|
+// workActivityProcessService.insertAuditsByType(auditUsers,capitalDemand.getProcessInstanceId(),2,1);
|
|
|
+// notifyRole = "文件补充";
|
|
|
+// workActivityProcess.setIsApproval("1");
|
|
|
+// enname = "wjbc";
|
|
|
+// vars.put("wjbcList", auditUsers);
|
|
|
+// vars.put("wjbcCount",auditUsers.size());
|
|
|
+//
|
|
|
// }
|
|
|
- break;
|
|
|
- } else if ("wjbc".equals(taskDefKey) && count.contains("2")) {
|
|
|
- taskCount = "2";
|
|
|
+//// else {
|
|
|
+//// notifyRole = "项目-"+capitalDemand.getProject().getName()+"提资需求调整申请";
|
|
|
+//// workActivityProcess.setIsApproval("2");
|
|
|
+//// }
|
|
|
+// break;
|
|
|
+// } else
|
|
|
+ if ("wjbc".equals(taskDefKey) && count.contains("1")) {
|
|
|
+ taskCount = "1";
|
|
|
exp = "pass";
|
|
|
if ("yes".equals(capitalDemand.getAct().getFlag())) {
|
|
|
//审核通过处理
|
|
|
- workActivityProcessService.insertAuditsByType(auditUsers,capitalDemand.getProcessInstanceId(),3,1);
|
|
|
- notifyRole = "甲方复核";
|
|
|
+// workActivityProcessService.insertAuditsByType(auditUsers,capitalDemand.getProcessInstanceId(),3,1);
|
|
|
+// notifyRole = "甲方复核";
|
|
|
+ notifyRole = "项目-"+capitalDemand.getProject().getName()+"提资需求审核完成";
|
|
|
workActivityProcess.setIsApproval("1");
|
|
|
- enname = "jffh";
|
|
|
- vars.put("jffhList", auditUsers);
|
|
|
- vars.put("jffhCount",auditUsers.size());
|
|
|
+// enname = "jffh";
|
|
|
+// vars.put("jffhList", auditUsers);
|
|
|
+// vars.put("jffhCount",auditUsers.size());
|
|
|
} else {
|
|
|
notifyRole = "项目-"+capitalDemand.getProject().getName()+"提资需求调整申请";
|
|
|
workActivityProcess.setIsApproval("2");
|
|
|
}
|
|
|
break;
|
|
|
- } else if ("jffh".equals(taskDefKey) && count.contains("3")) {
|
|
|
- taskCount = "3";
|
|
|
- exp = "pass";
|
|
|
- if ("yes".equals(capitalDemand.getAct().getFlag())) {
|
|
|
- //审核通过处理
|
|
|
- notifyRole = "项目-"+capitalDemand.getProject().getName()+"提资需求审核完成";
|
|
|
- workActivityProcess.setIsApproval("1");
|
|
|
- }
|
|
|
-// else {
|
|
|
-// notifyRole = "项目-"+capitalDemand.getProject().getName()+"提资需求调整申请";
|
|
|
-// workActivityProcess.setIsApproval("2");
|
|
|
-// }
|
|
|
- break;
|
|
|
} else if ("modifyApply".equals(taskDefKey)&& count.contains("0")) {
|
|
|
- notifyRole = "甲方审批";
|
|
|
- taskCount = "0";
|
|
|
- exp = "pass";
|
|
|
- workActivityProcess.setCount(0);
|
|
|
- enname ="jfsh";
|
|
|
- if (!"yes".equals(capitalDemand.getAct().getFlag())) {
|
|
|
- capitalDemand.setStatus("3");
|
|
|
+ notifyRole = "文件补充";
|
|
|
+ taskCount = "0";
|
|
|
+ exp = "pass";
|
|
|
+ workActivityProcess.setCount(0);
|
|
|
+ enname ="wjbc";
|
|
|
+ if (!"yes".equals(capitalDemand.getAct().getFlag())) {
|
|
|
+ capitalDemand.setStatus("3");
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ } else if ("apply_end".equals(taskDefKey)) {
|
|
|
}
|
|
|
- break;
|
|
|
- } else if ("apply_end".equals(taskDefKey)) {
|
|
|
- }
|
|
|
+// if ("jffh".equals(taskDefKey) && count.contains("3")) {
|
|
|
+// taskCount = "3";
|
|
|
+// exp = "pass";
|
|
|
+// if ("yes".equals(capitalDemand.getAct().getFlag())) {
|
|
|
+// //审核通过处理
|
|
|
+// notifyRole = "项目-"+capitalDemand.getProject().getName()+"提资需求审核完成";
|
|
|
+// workActivityProcess.setIsApproval("1");
|
|
|
+// }
|
|
|
+//// else {
|
|
|
+//// notifyRole = "项目-"+capitalDemand.getProject().getName()+"提资需求调整申请";
|
|
|
+//// workActivityProcess.setIsApproval("2");
|
|
|
+//// }
|
|
|
+// break;
|
|
|
+// } else
|
|
|
+
|
|
|
|
|
|
}
|
|
|
}
|
|
@@ -528,7 +539,7 @@ public class ExternalUnitCapitalDemandService extends CrudService<ExternalUnitCa
|
|
|
.save(workProjectNotify1);
|
|
|
if (!"modifyApply".equals(taskDefKey)){
|
|
|
Map<String,Object> extras = new HashMap<>();
|
|
|
- if ("wjbc".equals(taskDefKey) || "jffh".equals(taskDefKey)){
|
|
|
+ if ("wjbc".equals(taskDefKey) ){
|
|
|
extras.put("type","7001");
|
|
|
}else {
|
|
|
extras.put("type","7002");
|
|
@@ -587,7 +598,7 @@ public class ExternalUnitCapitalDemandService extends CrudService<ExternalUnitCa
|
|
|
.save(workProjectNotify);
|
|
|
if (!"modifyApply".equals(taskDefKey)){
|
|
|
Map<String,Object> extras = new HashMap<>();
|
|
|
- if ("jfsh".equals(taskDefKey)){
|
|
|
+ if ("wjbc".equals(taskDefKey)){
|
|
|
extras.put("type","7001");
|
|
|
}else {
|
|
|
extras.put("type","7002");
|
|
@@ -655,6 +666,74 @@ public class ExternalUnitCapitalDemandService extends CrudService<ExternalUnitCa
|
|
|
workClientAttachmentDao.deleteExterunit(workClientAttachment);
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 将文件信息同步到人员文件关联表中
|
|
|
+ */
|
|
|
+ //查询附件
|
|
|
+ ExternalUnitWorkClientAttachment workClientAttachment = new ExternalUnitWorkClientAttachment();
|
|
|
+ workClientAttachment.setAttachmentId(capitalDemand.getId());
|
|
|
+ workClientAttachment.setAttachmentFlag("160");
|
|
|
+ workClientAttachment.setDivIdType("_exterProcess");
|
|
|
+ List<ExternalUnitWorkClientAttachment> attachmentList = workattachmentService.getAttachmentListExter(workClientAttachment);
|
|
|
+ //查询项目组成员
|
|
|
+ List<User> members = unitProjectRecordsDao.isDelFalg(capitalDemand.getProject().getId(), "");
|
|
|
+ if (CollectionUtils.isNotEmpty(members)){
|
|
|
+ //将项目组成员中的施工方从list中剔除掉
|
|
|
+ for (Iterator<User> iterator = members.iterator(); iterator.hasNext(); ) {
|
|
|
+ User member = iterator.next();
|
|
|
+ User user1 = UserUtils.get(member.getId());
|
|
|
+
|
|
|
+ if (user1.getRoleList() != null) {
|
|
|
+ for (Role role : user1.getRoleList()) {
|
|
|
+ if (role.getEnname().equals("sgf")) {
|
|
|
+ // 删除 members 中的对应 user
|
|
|
+ iterator.remove();
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //由于附件上传人都为施工方,所以可以将查询出来的人员id查出对应的信息并将它们存到上面剔除掉施工方人员的项目组中
|
|
|
+ List<String> uniqueCreateByIdListUsingDistinct = attachmentList.stream()
|
|
|
+ .map(attachment -> attachment.getCreateBy().getId()) // 获取每个 attachment 的 createBy.id
|
|
|
+ .distinct() // 去重
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ if (CollectionUtils.isNotEmpty(uniqueCreateByIdListUsingDistinct)){
|
|
|
+ for (String s : uniqueCreateByIdListUsingDistinct) {
|
|
|
+ User user = UserUtils.get(s);
|
|
|
+ if (user != null){
|
|
|
+ members.add(user);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //如果项目组成员中没有创建人,将创建人添加进去
|
|
|
+ User user = UserUtils.get(capitalDemand.getCreateBy().getId());
|
|
|
+ boolean containsUser = members.stream().anyMatch(member -> member.getId().equals(user.getId()));
|
|
|
+ // 如果没有包含,则将 user 添加到 members 列表中
|
|
|
+ if (!containsUser) {
|
|
|
+ members.add(user);
|
|
|
+ }
|
|
|
+ if (CollectionUtils.isNotEmpty(attachmentList)){
|
|
|
+ for (ExternalUnitWorkClientAttachment attachment : attachmentList) {
|
|
|
+ //先在关联表中查询文件id是否已经存在
|
|
|
+ List<ExternalUnitUserFile> externalUnitUserFiles = externalUnitUserFileDao.getByFileId(attachment.getId());
|
|
|
+ if (CollectionUtils.isNotEmpty(externalUnitUserFiles)){
|
|
|
+ externalUnitUserFileDao.deleteByFileId(attachment.getId());
|
|
|
+// continue;
|
|
|
+ }
|
|
|
+ for (User member : members) {
|
|
|
+ ExternalUnitUserFile externalUnitUserFile = new ExternalUnitUserFile();
|
|
|
+ externalUnitUserFile.setFileId(attachment.getId());
|
|
|
+ externalUnitUserFile.setProjectId(capitalDemand.getProject().getId());
|
|
|
+ externalUnitUserFile.setUserId(member.getId());
|
|
|
+ externalUnitUserFile.setProjectSecondId(capitalDemand.getId());
|
|
|
+ externalUnitUserFile.setType("0");
|
|
|
+ externalUnitUserFileDao.insert(externalUnitUserFile);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
return "保存审核意见成功!";
|
|
|
}
|
|
@@ -887,8 +966,8 @@ public class ExternalUnitCapitalDemandService extends CrudService<ExternalUnitCa
|
|
|
workActivityProcess.setId("");
|
|
|
}
|
|
|
// 审核环节
|
|
|
- if ("wjbc".equals(taskDefKey) && count.contains("2")) {
|
|
|
- taskCount = "2";
|
|
|
+ if ("wjbc".equals(taskDefKey) && count.contains("1")) {
|
|
|
+ taskCount = "1";
|
|
|
exp = "pass";
|
|
|
if ("yes".equals(capitalDemand.getAct().getFlag())) {
|
|
|
//审核通过处理
|
|
@@ -898,11 +977,11 @@ public class ExternalUnitCapitalDemandService extends CrudService<ExternalUnitCa
|
|
|
}
|
|
|
break;
|
|
|
} else if ("modifyApply".equals(taskDefKey)&& count.contains("0")) {
|
|
|
- notifyRole = "甲方审批";
|
|
|
+ notifyRole = "文件补充";
|
|
|
taskCount = "0";
|
|
|
exp = "pass";
|
|
|
workActivityProcess.setCount(0);
|
|
|
- enname ="jfsh";
|
|
|
+ enname ="wjbc";
|
|
|
if (!"yes".equals(capitalDemand.getAct().getFlag())) {
|
|
|
capitalDemand.setStatus("3");
|
|
|
}
|
|
@@ -961,7 +1040,7 @@ public class ExternalUnitCapitalDemandService extends CrudService<ExternalUnitCa
|
|
|
WorkActivityProcess workActivityProcess1 = new WorkActivityProcess();
|
|
|
workActivityProcess1.setId(IdGen.uuid());
|
|
|
workActivityProcess1.setProcessKey("capitalDemand");
|
|
|
- workActivityProcess1.setCount(2);
|
|
|
+ workActivityProcess1.setCount(1);
|
|
|
workActivityProcess1.setProcessInstanceId(capitalDemand.getProcessInstanceId());
|
|
|
workActivityProcess1.setIsApproval("0");
|
|
|
workActivityProcess1.setCreateBy(createUser);
|
|
@@ -1017,8 +1096,16 @@ public class ExternalUnitCapitalDemandService extends CrudService<ExternalUnitCa
|
|
|
UserUtils.pushInfoToApp(title,str,extras,user.getId());
|
|
|
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
+ //将转办人进行保存
|
|
|
+ if ("yes".equals(capitalDemand.getAct().getFlag())) {
|
|
|
+ ExternalUnitCapitalDemand demand = get(capitalDemand.getId());
|
|
|
+ if (StringUtils.isNotBlank(demand.getTurner())){
|
|
|
+ String newTurner = demand.getTurner()+","+capitalDemand.getTurner();
|
|
|
+ capitalDemand.setTurner(newTurner);
|
|
|
+ }else {
|
|
|
+ capitalDemand.setTurner(capitalDemand.getTurner());
|
|
|
+ }
|
|
|
+ }
|
|
|
dao.update(capitalDemand);
|
|
|
//上传附件
|
|
|
if (CollectionUtils.isNotEmpty(capitalDemand.getWorkAttachments())){
|
|
@@ -1145,65 +1232,69 @@ public class ExternalUnitCapitalDemandService extends CrudService<ExternalUnitCa
|
|
|
workActivityProcess.setId("");
|
|
|
}
|
|
|
// 审核环节
|
|
|
- if ("jfsh".equals(taskDefKey) && count.contains("1")) {
|
|
|
- taskCount = "1";
|
|
|
- exp = "pass";
|
|
|
- if ("yes".equals(capitalDemand.getAct().getFlag())) {
|
|
|
- //审核通过处理
|
|
|
- workActivityProcessService.insertAuditsByType(auditUsers,capitalDemand.getProcessInstanceId(),2,1);
|
|
|
- notifyRole = "文件补充";
|
|
|
- workActivityProcess.setIsApproval("1");
|
|
|
- enname = "wjbc";
|
|
|
- vars.put("wjbcList", auditUsers);
|
|
|
- vars.put("wjbcCount",auditUsers.size());
|
|
|
-
|
|
|
- }
|
|
|
-// else {
|
|
|
-// notifyRole = "项目-"+capitalDemand.getProject().getName()+"提资需求调整申请";
|
|
|
-// workActivityProcess.setIsApproval("2");
|
|
|
+// if ("jfsh".equals(taskDefKey) && count.contains("1")) {
|
|
|
+// taskCount = "1";
|
|
|
+// exp = "pass";
|
|
|
+// if ("yes".equals(capitalDemand.getAct().getFlag())) {
|
|
|
+// //审核通过处理
|
|
|
+// workActivityProcessService.insertAuditsByType(auditUsers,capitalDemand.getProcessInstanceId(),2,1);
|
|
|
+// notifyRole = "文件补充";
|
|
|
+// workActivityProcess.setIsApproval("1");
|
|
|
+// enname = "wjbc";
|
|
|
+// vars.put("wjbcList", auditUsers);
|
|
|
+// vars.put("wjbcCount",auditUsers.size());
|
|
|
+//
|
|
|
// }
|
|
|
- break;
|
|
|
- } else if ("wjbc".equals(taskDefKey) && count.contains("2")) {
|
|
|
- taskCount = "2";
|
|
|
+//// else {
|
|
|
+//// notifyRole = "项目-"+capitalDemand.getProject().getName()+"提资需求调整申请";
|
|
|
+//// workActivityProcess.setIsApproval("2");
|
|
|
+//// }
|
|
|
+// break;
|
|
|
+// } else
|
|
|
+ if ("wjbc".equals(taskDefKey) && count.contains("1")) {
|
|
|
+ taskCount = "1";
|
|
|
exp = "pass";
|
|
|
if ("yes".equals(capitalDemand.getAct().getFlag())) {
|
|
|
//审核通过处理
|
|
|
- workActivityProcessService.insertAuditsByType(auditUsers,capitalDemand.getProcessInstanceId(),3,1);
|
|
|
- notifyRole = "甲方复核";
|
|
|
+// workActivityProcessService.insertAuditsByType(auditUsers,capitalDemand.getProcessInstanceId(),1,1);
|
|
|
+// notifyRole = "文件补充";
|
|
|
+ notifyRole = "项目-"+capitalDemand.getProject().getName()+"提资需求审核完成";
|
|
|
workActivityProcess.setIsApproval("1");
|
|
|
- enname = "jffh";
|
|
|
- vars.put("jffhList", auditUsers);
|
|
|
- vars.put("jffhCount",auditUsers.size());
|
|
|
+// enname = "wjbc";
|
|
|
+// vars.put("wjbcList", auditUsers);
|
|
|
+// vars.put("wjbcCount",auditUsers.size());
|
|
|
} else {
|
|
|
notifyRole = "项目-"+capitalDemand.getProject().getName()+"提资需求调整申请";
|
|
|
workActivityProcess.setIsApproval("2");
|
|
|
}
|
|
|
break;
|
|
|
- } else if ("jffh".equals(taskDefKey) && count.contains("3")) {
|
|
|
- taskCount = "3";
|
|
|
- exp = "pass";
|
|
|
- if ("yes".equals(capitalDemand.getAct().getFlag())) {
|
|
|
- //审核通过处理
|
|
|
- notifyRole = "项目-"+capitalDemand.getProject().getName()+"提资需求审核完成";
|
|
|
- workActivityProcess.setIsApproval("1");
|
|
|
- }
|
|
|
-// else {
|
|
|
-// notifyRole = "项目-"+capitalDemand.getProject().getName()+"提资需求调整申请";
|
|
|
-// workActivityProcess.setIsApproval("2");
|
|
|
-// }
|
|
|
- break;
|
|
|
} else if ("modifyApply".equals(taskDefKey)&& count.contains("0")) {
|
|
|
- notifyRole = "甲方审批";
|
|
|
- taskCount = "0";
|
|
|
- exp = "pass";
|
|
|
- workActivityProcess.setCount(0);
|
|
|
- enname ="jfsh";
|
|
|
- if (!"yes".equals(capitalDemand.getAct().getFlag())) {
|
|
|
- capitalDemand.setStatus("3");
|
|
|
+ notifyRole = "文件补充";
|
|
|
+ taskCount = "0";
|
|
|
+ exp = "pass";
|
|
|
+ workActivityProcess.setCount(0);
|
|
|
+ enname ="wjbc";
|
|
|
+ if (!"yes".equals(capitalDemand.getAct().getFlag())) {
|
|
|
+ capitalDemand.setStatus("3");
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ } else if ("apply_end".equals(taskDefKey)) {
|
|
|
}
|
|
|
- break;
|
|
|
- } else if ("apply_end".equals(taskDefKey)) {
|
|
|
- }
|
|
|
+// if ("jffh".equals(taskDefKey) && count.contains("3")) {
|
|
|
+// taskCount = "3";
|
|
|
+// exp = "pass";
|
|
|
+// if ("yes".equals(capitalDemand.getAct().getFlag())) {
|
|
|
+// //审核通过处理
|
|
|
+// notifyRole = "项目-"+capitalDemand.getProject().getName()+"提资需求审核完成";
|
|
|
+// workActivityProcess.setIsApproval("1");
|
|
|
+// }
|
|
|
+//// else {
|
|
|
+//// notifyRole = "项目-"+capitalDemand.getProject().getName()+"提资需求调整申请";
|
|
|
+//// workActivityProcess.setIsApproval("2");
|
|
|
+//// }
|
|
|
+// break;
|
|
|
+// } else
|
|
|
+
|
|
|
|
|
|
}
|
|
|
}
|
|
@@ -1307,7 +1398,7 @@ public class ExternalUnitCapitalDemandService extends CrudService<ExternalUnitCa
|
|
|
.save(workProjectNotify1);
|
|
|
if (!"modifyApply".equals(taskDefKey)){
|
|
|
Map<String,Object> extras = new HashMap<>();
|
|
|
- if ("wjbc".equals(taskDefKey) || "jffh".equals(taskDefKey)){
|
|
|
+ if ("wjbc".equals(taskDefKey) ){
|
|
|
extras.put("type","7001");
|
|
|
}else {
|
|
|
extras.put("type","7002");
|
|
@@ -1366,7 +1457,7 @@ public class ExternalUnitCapitalDemandService extends CrudService<ExternalUnitCa
|
|
|
.save(workProjectNotify);
|
|
|
if (!"modifyApply".equals(taskDefKey)){
|
|
|
Map<String,Object> extras = new HashMap<>();
|
|
|
- if ("jfsh".equals(taskDefKey)){
|
|
|
+ if ("wjbc".equals(taskDefKey)){
|
|
|
extras.put("type","7001");
|
|
|
}else {
|
|
|
extras.put("type","7002");
|
|
@@ -1434,6 +1525,73 @@ public class ExternalUnitCapitalDemandService extends CrudService<ExternalUnitCa
|
|
|
workClientAttachmentDao.deleteExterunit(workClientAttachment);
|
|
|
}
|
|
|
}
|
|
|
+ /**
|
|
|
+ * 将文件信息同步到人员文件关联表中
|
|
|
+ */
|
|
|
+ //查询附件
|
|
|
+ ExternalUnitWorkClientAttachment workClientAttachment = new ExternalUnitWorkClientAttachment();
|
|
|
+ workClientAttachment.setAttachmentId(capitalDemand.getId());
|
|
|
+ workClientAttachment.setAttachmentFlag("160");
|
|
|
+ workClientAttachment.setDivIdType("_exterProcess");
|
|
|
+ List<ExternalUnitWorkClientAttachment> attachmentList = workattachmentService.getAttachmentListExter(workClientAttachment);
|
|
|
+ //查询项目组成员
|
|
|
+ List<User> members = unitProjectRecordsDao.isDelFalg(capitalDemand.getProject().getId(), "");
|
|
|
+ if (CollectionUtils.isNotEmpty(members)){
|
|
|
+ //将项目组成员中的施工方从list中剔除掉
|
|
|
+ for (Iterator<User> iterator = members.iterator(); iterator.hasNext(); ) {
|
|
|
+ User member = iterator.next();
|
|
|
+ User user1 = UserUtils.get(member.getId());
|
|
|
+
|
|
|
+ if (user1.getRoleList() != null) {
|
|
|
+ for (Role role : user1.getRoleList()) {
|
|
|
+ if (role.getEnname().equals("sgf")) {
|
|
|
+ // 删除 members 中的对应 user
|
|
|
+ iterator.remove();
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //由于附件上传人都为施工方,所以可以将查询出来的人员id查出对应的信息并将它们存到上面剔除掉施工方人员的项目组中
|
|
|
+ List<String> uniqueCreateByIdListUsingDistinct = attachmentList.stream()
|
|
|
+ .map(attachment -> attachment.getCreateBy().getId()) // 获取每个 attachment 的 createBy.id
|
|
|
+ .distinct() // 去重
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ if (CollectionUtils.isNotEmpty(uniqueCreateByIdListUsingDistinct)){
|
|
|
+ for (String s : uniqueCreateByIdListUsingDistinct) {
|
|
|
+ User user = UserUtils.get(s);
|
|
|
+ if (user != null){
|
|
|
+ members.add(user);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //如果项目组成员中没有创建人,将创建人添加进去
|
|
|
+ User user = UserUtils.get(capitalDemand.getCreateBy().getId());
|
|
|
+ boolean containsUser = members.stream().anyMatch(member -> member.getId().equals(user.getId()));
|
|
|
+ // 如果没有包含,则将 user 添加到 members 列表中
|
|
|
+ if (!containsUser) {
|
|
|
+ members.add(user);
|
|
|
+ }
|
|
|
+ if (CollectionUtils.isNotEmpty(attachmentList)){
|
|
|
+ for (ExternalUnitWorkClientAttachment attachment : attachmentList) {
|
|
|
+ //先在关联表中查询文件id是否已经存在
|
|
|
+ List<ExternalUnitUserFile> externalUnitUserFiles = externalUnitUserFileDao.getByFileId(attachment.getId());
|
|
|
+ if (CollectionUtils.isNotEmpty(externalUnitUserFiles)){
|
|
|
+ externalUnitUserFileDao.deleteByFileId(attachment.getId());
|
|
|
+// continue;
|
|
|
+ }
|
|
|
+ for (User member : members) {
|
|
|
+ ExternalUnitUserFile externalUnitUserFile = new ExternalUnitUserFile();
|
|
|
+ externalUnitUserFile.setFileId(attachment.getId());
|
|
|
+ externalUnitUserFile.setProjectId(capitalDemand.getProject().getId());
|
|
|
+ externalUnitUserFile.setUserId(member.getId());
|
|
|
+ externalUnitUserFile.setProjectSecondId(capitalDemand.getId());
|
|
|
+ externalUnitUserFile.setType("0");
|
|
|
+ externalUnitUserFileDao.insert(externalUnitUserFile);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
return "审核成功";
|
|
|
}
|