Bläddra i källkod

Merge remote-tracking branch 'origin/master'

user4 5 år sedan
förälder
incheckning
8ff7c096ec
18 ändrade filer med 191 tillägg och 218 borttagningar
  1. 5 5
      src/main/java/com/jeeplus/modules/workchangejob/web/WorkChangeJobController.java
  2. 9 0
      src/main/java/com/jeeplus/modules/workclientinfo/entity/WorkClientInfo.java
  3. 6 0
      src/main/java/com/jeeplus/modules/workclientinfo/service/WorkClientInfoService.java
  4. 76 139
      src/main/java/com/jeeplus/modules/workcontractinfo/service/WorkContractInfoService.java
  5. 27 41
      src/main/java/com/jeeplus/modules/workcontractinfo/web/WorkContractInfoController.java
  6. 14 11
      src/main/java/com/jeeplus/modules/workcontractrecord/service/WorkContractRecordService.java
  7. 9 1
      src/main/java/com/jeeplus/modules/workcontractsignature/entity/WorkContractSignature.java
  8. 13 10
      src/main/java/com/jeeplus/modules/workcontractsignature/service/WorkContractSignatureService.java
  9. 1 0
      src/main/java/com/jeeplus/modules/workcontractsignature/web/WorkContractSignatureController.java
  10. 6 3
      src/main/resources/mappings/modules/workclientinfo/WorkClientInfoDao.xml
  11. 2 0
      src/main/resources/mappings/modules/workcontractinfo/WorkContractInfoDao.xml
  12. 1 0
      src/main/resources/mappings/modules/workcontractsignature/WorkContractSignatureDao.xml
  13. 15 4
      src/main/webapp/webpage/modules/workclientinfo/workClientInfoForm.jsp
  14. 2 0
      src/main/webapp/webpage/modules/workclientinfo/workClientInfoList.jsp
  15. 1 1
      src/main/webapp/webpage/modules/workcontractinfo/workContractInfoAlterList.jsp
  16. 1 1
      src/main/webapp/webpage/modules/workcontractinfo/workContractInfoInvalidateList.jsp
  17. 2 1
      src/main/webapp/webpage/modules/workcontractsignature/workContractSignatureList.jsp
  18. 1 1
      src/main/webapp/webpage/modules/workstaff/infoList.jsp

+ 5 - 5
src/main/java/com/jeeplus/modules/workchangejob/web/WorkChangeJobController.java

@@ -290,7 +290,7 @@ public class WorkChangeJobController extends BaseController {
 	@RequestMapping(value = "saveAudit")
 	public String saveAudit(WorkChangeJob workChangeJob, Model model,
 							RedirectAttributes redirectAttributes) {
-//		try {
+		try {
 			// 对不同环节的业务逻辑进行操作
 			String taskDefKey = workChangeJob.getAct().getTaskDefKey();
 			List<User> users = null;
@@ -302,10 +302,10 @@ public class WorkChangeJobController extends BaseController {
 				String str = workChangeJobService.auditSave(workChangeJob,users);
 				addMessage(redirectAttributes, str);
 
-//		}catch (Exception e){
-//			logger.info("Exception e:"+e);
-//			addMessage(redirectAttributes, "审批失败");
-//		}
+		}catch (Exception e){
+			logger.info("Exception e:"+e);
+			addMessage(redirectAttributes, "审批失败");
+		}
 		if (StringUtils.isNotBlank(workChangeJob.getHome()) && "home".equals(workChangeJob.getHome())) {
 			return "redirect:" + Global.getAdminPath() + "/home/?repage";
 		} else {

+ 9 - 0
src/main/java/com/jeeplus/modules/workclientinfo/entity/WorkClientInfo.java

@@ -24,6 +24,7 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 
 	private static final long serialVersionUID = 1L;
 	private String name;		// 客户名称
+	private String number;      //客户编号
 	private String nameForShort;		// 客户名称缩写
 	private String orUnicode;		// 组织机构代码
 	private String companyType;		// 客户性质
@@ -495,4 +496,12 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
     public void setEndDate(Date endDate) {
         this.endDate = endDate;
     }
+
+	public String getNumber() {
+		return number;
+	}
+
+	public void setNumber(String number) {
+		this.number = number;
+	}
 }

+ 6 - 0
src/main/java/com/jeeplus/modules/workclientinfo/service/WorkClientInfoService.java

@@ -11,8 +11,10 @@ import com.jeeplus.common.persistence.Page;
 import com.jeeplus.common.service.CrudService;
 import com.jeeplus.common.utils.MenuStatusEnum;
 import com.jeeplus.common.utils.StringUtils;
+import com.jeeplus.modules.serialnum.service.SerialNumTplService;
 import com.jeeplus.modules.sys.dao.AreaDao;
 import com.jeeplus.modules.sys.entity.Area;
+import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientBankDao;
@@ -62,6 +64,8 @@ public class WorkClientInfoService extends CrudService<WorkClientInfoDao, WorkCl
     private WorkContractInfoDao workContractInfoDao;
     @Autowired
     private WorkClientInfoDao workClientInfoDao;
+    @Autowired
+    private SerialNumTplService serialNumTplService;
 
     @Autowired
     private AreaDao areaDao;
@@ -264,10 +268,12 @@ public class WorkClientInfoService extends CrudService<WorkClientInfoDao, WorkCl
      */
 	@Transactional(readOnly = false)
 	public void save(WorkClientInfo workClientInfo) {
+	    User user = UserUtils.getUser();
         long t1 = System.currentTimeMillis();
         Area area = workClientInfo.getArea();
         area = areaDao.get(area.getId());
         workClientInfo.setArea(area);
+        workClientInfo.setNumber(serialNumTplService.genSerialNum(user.getCompany(),"50"));
 		super.save(workClientInfo);
         long t2 = System.currentTimeMillis();
         logger.info("保存客户主表耗时:{}",t2-t1);

+ 76 - 139
src/main/java/com/jeeplus/modules/workcontractinfo/service/WorkContractInfoService.java

@@ -621,8 +621,8 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 		List<User> users = new ArrayList<>();
 		String officeId = UserUtils.getSelectOffice().getId();
 		List<User>  bmzrs = UserUtils.getByRoleActivityEnname("bmzr",2,office.getId(),"2",workContractInfo.getCreateBy());
-		List<User>  scyfglbzrs = UserUtils.getByRoleActivityEnname("scyfglbzr",1,office.getId(),"2",workContractInfo.getCreateBy());
-		List<User>  fglds = UserUtils.getByRoleActivityEnname("scfgld",3,office.getId(),"2",workContractInfo.getCreateBy());
+//		List<User>  scyfglbzrs = UserUtils.getByRoleActivityEnname("scyfglbzr",1,office.getId(),"2",workContractInfo.getCreateBy());
+//		List<User>  fglds = UserUtils.getByRoleActivityEnname("scfgld",3,office.getId(),"2",workContractInfo.getCreateBy());
 		long end3 = System.currentTimeMillis();
 		logger.info("合同送审-查找人员审核任务结束,共耗时:[" + (end3-begin2) / 1000 + "]秒");
 		long begin3 = System.currentTimeMillis();
@@ -660,19 +660,21 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 			}
 			workProjectNotify.setId("");
 		} else {
-			processType = "contractAudit";
+			processType = "contractCheck";
 			if(bmzrs==null||bmzrs.size()==0){
 				workContractInfo.setContractState("1");
 				this.save(workContractInfo);
 				return "流程审批人不能为空,角色部门负责人下无用户,请联系管理员!";
 			}
+			variables.put("bmzrList", bmzrs);
+			variables.put("bmzrCount",bmzrs.size());
 			users.addAll(bmzrs);
 		}
 
 		for (User u : users) {
 			workProjectNotify.setUser(u);
 			workProjectNotify.setId("");
-			workProjectNotify.setNotifyRole("部门负责人审批");
+			workProjectNotify.setNotifyRole("部门主任审批");
 			workProjectNotifyService
 					.save(workProjectNotify);
 			Map<String,Object> extras = new HashMap<>();
@@ -684,8 +686,8 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 		}
 		variables.put("type", processType);
 		variables.put("busId", businessKey);
-		variables.put("count",users.size());
-		variables.put("assigneeList",users);
+//		variables.put("count",users.size());
+//		variables.put("assigneeList",users);
 		variables.put("title", "合同名称:" + workContractInfo.getName());//设置标题;
 		long s1 = System.currentTimeMillis();
 		ProcessInstance processInstance = runtimeService.startProcessInstanceByKey(processType, businessKey, variables);
@@ -705,20 +707,20 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 			workActivityProcessService.saveList(list, processInstance.getId());
 		} else {
 			WorkActivityProcess workActivityProcess = new WorkActivityProcess();
-			workActivityProcess.setProcessKey("contractAudit");
+			workActivityProcess.setProcessKey("contractCheck");
 			workActivityProcess.setCount(1);
 			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);
+//			workActivityProcess.setCount(2);
+//			workActivityProcess.setId("");
+//			workActivityProcessService.save(workActivityProcess);
+//			workActivityProcess.setCount(3);
+//			workActivityProcess.setId("");
+//			workActivityProcessService.save(workActivityProcess);
 			workActivityProcessService.insertAuditsByType(bmzrs,processInstance.getId(),1,1);
-			workActivityProcessService.insertAuditsByType(scyfglbzrs,processInstance.getId(),2,0);
-			workActivityProcessService.insertAuditsByType(fglds,processInstance.getId(),3,0);
+//			workActivityProcessService.insertAuditsByType(scyfglbzrs,processInstance.getId(),2,0);
+//			workActivityProcessService.insertAuditsByType(fglds,processInstance.getId(),3,0);
 		}
 		long end = System.currentTimeMillis();
 		logger.info("合同送审任务结束,共耗时:[" + (end-begin) / 1000 + "]秒,流程启动时间:"+(s2-s1)+"ms");
@@ -749,7 +751,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 			buffer = activity.getRole().getEnname();
 			/*variables.put("type", workActivityMenu.getProcessType());*/
 		}else {
-			processType= "contractalter";
+			processType= "contractChange";
 			/*variables.put("type", "caseInfo");*/
 			buffer += RoleActivityEnname.SCBZR;
 			List<String> assigneeList=new ArrayList<String>(); //分配任务的人员
@@ -777,7 +779,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 			workActivityProcessService.saveList(list,processInstance.getId());
 		}else {
 			WorkActivityProcess workActivityProcess = new WorkActivityProcess();
-			workActivityProcess.setProcessKey("contractalter");
+			workActivityProcess.setProcessKey("contractChange");
 			workActivityProcess.setCount(1);
 			workActivityProcess.setProcessInstanceId(processInstance.getId());
 			workActivityProcess.setIsApproval("0");
@@ -893,7 +895,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 		selectProcess.setProcessInstanceId(workContractInfo.getProcessInstanceId());
 		List<WorkActivityProcess> workActivityProcesses = workActivityProcessService.findList(selectProcess);
 		List<Activity> activities = workActivityMenu.getActivities();
-		if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractAudit")) {
+		if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractCheck")) {
 			key = 1;
 			for (int i =0;i<workActivityProcesses.size();i++){
 				WorkActivityProcess activityProcess = workActivityProcesses.get(i);
@@ -938,7 +940,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 				}
 			}
 		}else {
-			workActivityMenu.setProcessType("contractAudit");
+			workActivityMenu.setProcessType("contractCheck");
 			for (int i =0;i<workActivityProcesses.size();i++) {
 				WorkActivityProcess activityProcess = workActivityProcesses.get(i);
 				String count = activityProcess.getCount() + "";
@@ -947,42 +949,9 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 					workActivityProcess.setId("");
 				}
 				// 审核环节
-				if ("bmzr".equals(taskDefKey) && count.contains("1")) {
+				 if ("bmzr".equals(taskDefKey) && count.contains("1")) {
 					taskCount = "1";
-					exp = "bmzrpass";
-					if ("yes".equals(workContractInfo.getAct().getFlag())) {
-						workActivityProcessService.insertAuditsByType(auditUsers,workContractInfo.getProcessInstanceId(),2,1);
-						notifyRole = "市场研发管理部负责人";
-						workActivityProcess.setIsApproval("1");
-						enname = "scyfglbzr";
-						vars.put("ywbzrcount",auditUsers.size());
-						vars.put("ywbzrList",auditUsers);
-
-					} else {
-						notifyRole = "调整申请";
-						workActivityProcess.setIsApproval("2");
-					}
-					break;
-				}else if ("ywbzr".equals(taskDefKey) && count.contains("2")) {
-					taskCount = "2";
-					exp = "ywbzrpass";
-					if ("yes".equals(workContractInfo.getAct().getFlag())) {
-						workActivityProcessService.insertAuditsByType(auditUsers,workContractInfo.getProcessInstanceId(),3,1);
-						notifyRole = "市场分管领导";
-						workActivityProcess.setIsApproval("1");
-						enname = "scfgld";
-						vars.put("counts",auditUsers.size());
-						vars.put("fgldList",auditUsers);
-
-					} else {
-						notifyRole = "调整申请";
-						workActivityProcess.setIsApproval("2");
-					}
-					break;
-				}
-				else if ("fgld".equals(taskDefKey) && count.contains("3")) {
-					taskCount = "3";
-					exp = "fgldpass";
+					exp = "pass";
 					if("yes".equals(workContractInfo.getAct().getFlag())){
 						notifyRole = "审核通过";
 						workActivityProcess.setIsApproval("1");
@@ -991,7 +960,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 						workActivityProcess.setIsApproval("2");
 					}
 				}else if ("modifyApply".equals(taskDefKey)&& count.contains("0")) {
-					notifyRole = "部门负责人审批";
+					notifyRole = "部门主任审批";
 					taskCount = "0";
 					exp = "pass";
 					workActivityProcess.setCount(0);
@@ -1009,6 +978,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 		workContractInfo.preUpdate();
 		// 提交流程任务
 		vars.put(exp, "yes".equals(workContractInfo.getAct().getFlag())? true : false);
+		vars.put("passs", true);
 		workActivityProcessService.updateProcess(workActivityProcess,workActivityMenu,key,taskCount,workContractInfo.getProcessInstanceId(),taskDefKey,"modifyApply",workContractInfo.getAct().getFlag(),comment, activities);
 		// 提交流程任务
 		actTaskService.complete(workContractInfo.getAct().getTaskId(), workContractInfo.getAct().getProcInsId(), workContractInfo.getAct().getComment(), vars);
@@ -1057,7 +1027,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 			}
 			workActivityProcessService.deleteProcessIdAuditUsers(workContractInfo.getProcessInstanceId());
 		}else{
-			if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractAudit")) {
+			if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractCheck")) {
 				WorkProjectNotify notify = new WorkProjectNotify();
 				notify.setNotifyId(workContractInfo.getId());
 				userList = workProjectNotifyService.readByNotifyId(notify);
@@ -1245,7 +1215,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 		selectProcess.setProcessInstanceId(workContractInfo.getProcessInstanceId());
 		List<WorkActivityProcess> workActivityProcesses = workActivityProcessService.findList(selectProcess);
 		List<Activity> activities = workActivityMenu.getActivities();
-		if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractCompletion")) {
+		if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractComplete")) {
 			key = 1;
 			for (int i =0;i<workActivityProcesses.size();i++){
 				WorkActivityProcess activityProcess = workActivityProcesses.get(i);
@@ -1290,7 +1260,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 				}
 			}
 		}else {
-			workActivityMenu.setProcessType("contractCompletion");
+			workActivityMenu.setProcessType("contractComplete");
 			for (int i =0;i<workActivityProcesses.size();i++) {
 				WorkActivityProcess activityProcess = workActivityProcesses.get(i);
 				String count = activityProcess.getCount() + "";
@@ -1299,25 +1269,10 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 					workActivityProcess.setId("");
 				}
 				// 审核环节
-				if ("fgld".equals(taskDefKey) && count.contains("1")) {
+				if ("bmzr".equals(taskDefKey) && count.contains("1")) {
 					taskCount = "1";
 					exp = "pass";
 					if ("yes".equals(workContractInfo.getAct().getFlag())) {
-						workActivityProcessService.insertAuditsByType(auditUsers,workContractInfo.getProcessInstanceId(),2,1);
-						notifyRole = "市场研发管理部负责人";
-						workActivityProcess.setIsApproval("1");
-						enname = "scyfglbzr";
-
-
-					} else {
-						notifyRole = "调整申请";
-						workActivityProcess.setIsApproval("2");
-					}
-					break;
-				}else if ("scyfglbzr".equals(taskDefKey) && count.contains("2")) {
-					taskCount = "2";
-					exp = "pass";
-					if ("yes".equals(workContractInfo.getAct().getFlag())) {
 						notifyRole = "审核通过";
 						workActivityProcess.setIsApproval("1");
 					} else {
@@ -1326,11 +1281,11 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 					}
 				}
 				else if ("modifyApply".equals(taskDefKey)&& count.contains("0")) {
-					notifyRole = "分管领导确认";
+					notifyRole = "部门主任确认";
 					taskCount = "0";
 					exp = "pass";
 					workActivityProcess.setCount(0);
-					enname = "fgld";
+					enname = "bmzr";
 
 					if (!"yes".equals(workContractInfo.getAct().getFlag())) {
 						workContractInfo.setCompletionStatus("3");
@@ -1344,6 +1299,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 		// 设置意见
 		workContractInfo.getAct().setComment(("yes".equals(workContractInfo.getAct().getFlag()) ? "[同意] " : "[驳回] ") + workContractInfo.getAct().getComment());
 		workContractInfo.preUpdate();
+		vars.put("passs", true);
 		// 提交流程任务
 		vars.put(exp, "yes".equals(workContractInfo.getAct().getFlag())? true : false);
 		workActivityProcessService.updateProcess(workActivityProcess,workActivityMenu,key,taskCount,workContractInfo.getProcessInstanceId(),taskDefKey,"modifyApply",workContractInfo.getAct().getFlag(),comment, activities);
@@ -1395,7 +1351,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 			}
 			workActivityProcessService.deleteProcessIdAuditUsers(workContractInfo.getProcessInstanceId());
 		}else{
-			if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractCompletion")) {
+			if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractComplete")) {
 				WorkProjectNotify notify = new WorkProjectNotify();
 				notify.setNotifyId(workContractInfo.getId());
 				userList = workProjectNotifyService.readByNotifyId(notify);
@@ -1562,7 +1518,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 		selectProcess.setProcessInstanceId(workContractInfo.getAlterProcessInstanceId());
 		List<WorkActivityProcess> workActivityProcesses = workActivityProcessService.findList(selectProcess);
 		List<Activity> activities = workActivityMenu.getActivities();
-		if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractalter")) {
+		if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractChange")) {
 			key = 1;
 			for (int i =0;i<workActivityProcesses.size();i++){
 				WorkActivityProcess activityProcess = workActivityProcesses.get(i);
@@ -1607,7 +1563,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 				}
 			}
 		}else {
-			workActivityMenu.setProcessType("contractalter");
+			workActivityMenu.setProcessType("contractChange");
 			for (int i =0;i<workActivityProcesses.size();i++) {
 				WorkActivityProcess activityProcess = workActivityProcesses.get(i);
 				String count = activityProcess.getCount() + "";
@@ -1616,36 +1572,9 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 					workActivityProcess.setId("");
 				}
 				// 审核环节
-				if ("bmzr".equals(taskDefKey) && count.contains("1")) {
+				 if ("bmzr".equals(taskDefKey) && count.contains("1")) {
 					taskCount = "1";
 					exp = "pass";
-					if ("yes".equals(workContractInfo.getAct().getFlag())) {
-						workActivityProcessService.insertAuditsByType(auditUsers,workContractInfo.getAlterProcessInstanceId(),2,1);
-						notifyRole = "市场研发管理部负责人";
-						workActivityProcess.setIsApproval("1");
-						enname = "scyfglbzr";
-					} else {
-						notifyRole = "调整申请";
-						workActivityProcess.setIsApproval("2");
-					}
-					break;
-				}else if ("ywbzr".equals(taskDefKey) && count.contains("2")) {
-					taskCount = "2";
-					exp = "pass";
-					if ("yes".equals(workContractInfo.getAct().getFlag())) {
-						workActivityProcessService.insertAuditsByType(auditUsers,workContractInfo.getAlterProcessInstanceId(),3,1);
-						notifyRole = "市场分管领导";
-						workActivityProcess.setIsApproval("1");
-						enname = "scfgld";
-					} else {
-						notifyRole = "调整申请";
-						workActivityProcess.setIsApproval("2");
-					}
-					break;
-				}
-				else if ("fgld".equals(taskDefKey) && count.contains("3")) {
-					taskCount = "3";
-					exp = "pass";
 					if("yes".equals(workContractInfo.getAct().getFlag())){
 						notifyRole = "审核通过";
 						workActivityProcess.setIsApproval("1");
@@ -1655,7 +1584,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 					}
 				}
 				else if ("modifyApply".equals(taskDefKey)&& count.contains("0")) {
-					notifyRole = "部门负责人审批";
+					notifyRole = "部门主任审批";
 					taskCount = "0";
 					exp = "pass";
 					workActivityProcess.setCount(0);
@@ -1673,6 +1602,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 		workContractInfo.preUpdate();
 		// 提交流程任务
 		vars.put(exp, "yes".equals(workContractInfo.getAct().getFlag())? true : false);
+		vars.put("passs", true);
 		workActivityProcessService.updateProcess(workActivityProcess,workActivityMenu,key,taskCount,workContractInfo.getAlterProcessInstanceId(),taskDefKey,"modifyApply",workContractInfo.getAct().getFlag(),comment, activities);
 		// 提交流程任务
 		actTaskService.complete(workContractInfo.getAct().getTaskId(), workContractInfo.getAct().getProcInsId(), workContractInfo.getAct().getComment(), vars);
@@ -1721,7 +1651,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 			}
 			workActivityProcessService.deleteProcessIdAuditUsers(workContractInfo.getAlterProcessInstanceId());
 		}else{
-			if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractalter")) {
+			if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractChange")) {
 				WorkProjectNotify notify = new WorkProjectNotify();
 				notify.setNotifyId(workContractInfo.getId());
 				userList = workProjectNotifyService.readByNotifyId(notify);
@@ -2115,8 +2045,10 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 			if (bmzrs.size()==0){
 				logger.info("流程审批人不能为空,角色部门负责人下无用户,请联系管理员!");
 			}
-			processType = "contractInvalidate";
+			processType = "contractInvalid";
 			users.addAll(bmzrs);
+			variables.put("bmzrList", bmzrs);
+			variables.put("bmzrCount",bmzrs.size());
 		}
 		for (User u : users){
 			workProjectNotify.setUser(u);
@@ -2237,7 +2169,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 			selectedProcess.setProcessInstanceId(workContractInfo.getInvalidateProcessInstanceId());
 			List<WorkActivityProcess> workActivityProcesses = workActivityProcessService.findList(selectedProcess);
 			List<Activity> activities = workActivityMenu.getActivities();
-			if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractInvalidate")) {
+			if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractInvalid")) {
 				key = 1;
 				for (int i = 0; i < workActivityProcesses.size(); i++) {
 					WorkActivityProcess activityProcess = workActivityProcesses.get(i);
@@ -2283,7 +2215,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 				}
 				workActivityProcessService.deleteProcessIdAuditUsers(workContractInfo.getInvalidateProcessInstanceId());
 			} else {
-				workActivityMenu.setProcessType("contractInvalidate");
+				workActivityMenu.setProcessType("contractInvalid");
 				for (int i = 0; i < workActivityProcesses.size(); i++) {
 					WorkActivityProcess activityProcess = workActivityProcesses.get(i);
 					String count = activityProcess.getCount() + "";
@@ -2292,7 +2224,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 						workActivityProcess.setId("");
 					}
 					// 审核环节
-					if ("bmzrAudit".equals(taskDefKey) && count.contains("1")) {
+					if ("bmzr".equals(taskDefKey) && count.contains("1")) {
 						taskCount = "1";
 						exp = "pass";
 						if ("yes".equals(workContractInfo.getAct().getFlag())) {
@@ -2306,7 +2238,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 						}
 						break;
 					} else if ("modifyApply".equals(taskDefKey)&& count.contains("0")) {
-						notifyRole = "部门负责人审批";
+						notifyRole = "部门主任审批";
 						taskCount = "0";
 						exp = "pass";
 						workActivityProcess.setCount(0);
@@ -2327,6 +2259,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 			workContractInfo.preUpdate();
 			// 提交流程任务
 			vars.put(exp, "yes".equals(workContractInfo.getAct().getFlag()) ? true : false);
+			vars.put("passs", true);
 			workActivityProcessService.updateProcess(workActivityProcess,workActivityMenu,key,taskCount,workContractInfo.getInvalidateProcessInstanceId(),taskDefKey,"modifyApply",workContractInfo.getAct().getFlag(),comment, activities);
 			// 提交流程任务
 			actTaskService.complete(workContractInfo.getAct().getTaskId(), workContractInfo.getAct().getProcInsId(), workContractInfo.getAct().getComment(), vars);
@@ -2376,7 +2309,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 				}
 				workActivityProcessService.deleteProcessIdAuditUsers(workContractInfo.getInvalidateProcessInstanceId());
 			} else {
-				if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractInvalidate")) {
+				if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractInvalid")) {
 					WorkProjectNotify notify = new WorkProjectNotify();
 					notify.setNotifyId(workContractInfo.getId());
 					userList = workProjectNotifyService.readByNotifyId(notify);
@@ -2892,8 +2825,8 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 				);
 		List<User> users = new ArrayList<>();
 		List<User> bmzrs = UserUtils.getByRoleActivityEnname("bmzr",2,office.getId(),"2",workContractInfo.getCreateBy());
-		List<User> ywbzrs = UserUtils.getByRoleActivityEnname("scyfglbzr",1,office.getId(),"2",workContractInfo.getCreateBy());
-		List<User> fglds = UserUtils.getByRoleActivityEnname("scfgld",3,office.getId(),"2",workContractInfo.getCreateBy());
+//		List<User> ywbzrs = UserUtils.getByRoleActivityEnname("scyfglbzr",1,office.getId(),"2",workContractInfo.getCreateBy());
+//		List<User> fglds = UserUtils.getByRoleActivityEnname("scfgld",3,office.getId(),"2",workContractInfo.getCreateBy());
 		if (StringUtils.isNotBlank(workActivityMenu.getId())) {
 			workProjectNotify.setNotifyRole("");
 			workActivityMenu = workActivityMenuService.get(workActivityMenu.getId());
@@ -2929,13 +2862,15 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 			if (bmzrs.size()==0){
 				return "流程审批人不能为空,角色部门负责人下无用户,请联系管理员!";
 			}
-			processType = "contractalter";
+			processType = "contractChange";
+			variables.put("bmzrList", bmzrs);
+			variables.put("bmzrCount",bmzrs.size());
 			users.addAll(bmzrs);
 		}
 		for (User u : users){
 			workProjectNotify.setUser(u);
 			workProjectNotify.setId("");
-			workProjectNotify.setNotifyRole("部门负责人审批");
+			workProjectNotify.setNotifyRole("部门主任审批");
 			workProjectNotifyService
 					.save(workProjectNotify);
 			Map<String,Object> extras = new HashMap<>();
@@ -2965,20 +2900,20 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 			workActivityProcessService.saveList(list, processInstance.getId());
 		} else {
 			WorkActivityProcess workActivityProcess = new WorkActivityProcess();
-			workActivityProcess.setProcessKey("contractalter");
+			workActivityProcess.setProcessKey("contractChange");
 			workActivityProcess.setCount(1);
 			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);
+//			workActivityProcess.setCount(2);
+//			workActivityProcess.setId("");
+//			workActivityProcessService.save(workActivityProcess);
+//			workActivityProcess.setCount(3);
+//			workActivityProcess.setId("");
+//			workActivityProcessService.save(workActivityProcess);
 			workActivityProcessService.insertAuditsByType(bmzrs,processInstance.getId(),1,1);
-			workActivityProcessService.insertAuditsByType(ywbzrs,processInstance.getId(),2,0);
-			workActivityProcessService.insertAuditsByType(fglds,processInstance.getId(),3,0);
+//			workActivityProcessService.insertAuditsByType(ywbzrs,processInstance.getId(),2,0);
+//			workActivityProcessService.insertAuditsByType(fglds,processInstance.getId(),3,0);
 		}
 		logger.debug("start process of {key={}, bkey={}, pid={}, variables={}}", new Object[]{
 				ActUtils.PD_REIMBURSEMENT[0], businessKey, processInstance.getId(), variables});
@@ -3027,8 +2962,8 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 							""
 					);
 			List<User> users = new ArrayList<>();
-			List<User> fglds = UserUtils.getByRoleActivityEnname("fgld", 2, office.getId(), "2", workContractInfo.getCreateBy());
-			List<User> scyfglbzrs = UserUtils.getByRoleActivityEnname("scyfglbzr", 1, office.getId(), "2", workContractInfo.getCreateBy());
+			List<User> bmzrs = UserUtils.getByRoleActivityEnname("bmzr", 2, office.getId(), "2", workContractInfo.getCreateBy());
+//			List<User> scyfglbzrs = UserUtils.getByRoleActivityEnname("scyfglbzr", 1, office.getId(), "2", workContractInfo.getCreateBy());
 
 			if (StringUtils.isNotBlank(workActivityMenu.getId())) {
 				workProjectNotify.setNotifyRole("");
@@ -3066,16 +3001,18 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 				}
 				workProjectNotify.setId("");
 			} else {
-				if (fglds.size() == 0) {
+				if (bmzrs.size() == 0) {
 					return "流程审批人不能为空,角色部门负责人下无用户,请联系管理员!";
 				}
-				users.addAll(fglds);
-				processType = "contractCompletion";
+				users.addAll(bmzrs);
+				processType = "contractComplete";
+				variables.put("bmzrList", bmzrs);
+				variables.put("bmzrCount",bmzrs.size());
 			}
 			for (User u : users) {
 				workProjectNotify.setUser(u);
 				workProjectNotify.setId("");
-				workProjectNotify.setNotifyRole("分管领导确认");
+				workProjectNotify.setNotifyRole("部门主任确认");
 				workProjectNotifyService
 						.save(workProjectNotify);
 				Map<String, Object> extras = new HashMap<>();
@@ -3110,11 +3047,11 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 				workActivityProcess.setIsApproval("0");
 				workActivityProcess.setProcessInstanceId(processInstance.getId());
 				workActivityProcessService.insert(workActivityProcess);
-				workActivityProcess.setCount(2);
-				workActivityProcess.setIsApproval("0");
-				workActivityProcessService.insert(workActivityProcess);
-				workActivityProcessService.insertAuditsByType(fglds, processInstance.getId(), 1, 1);
-				workActivityProcessService.insertAuditsByType(scyfglbzrs, processInstance.getId(), 2, 0);
+//				workActivityProcess.setCount(2);
+//				workActivityProcess.setIsApproval("0");
+//				workActivityProcessService.insert(workActivityProcess);
+				workActivityProcessService.insertAuditsByType(bmzrs, processInstance.getId(), 1, 1);
+//				workActivityProcessService.insertAuditsByType(scyfglbzrs, processInstance.getId(), 2, 0);
 			}
 			workContractInfo.preUpdate();
 			update(workContractInfo);

+ 27 - 41
src/main/java/com/jeeplus/modules/workcontractinfo/web/WorkContractInfoController.java

@@ -6,6 +6,7 @@ package com.jeeplus.modules.workcontractinfo.web;
 import com.google.common.base.Strings;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
+import com.google.zxing.aztec.decoder.Decoder;
 import com.jeeplus.common.beanvalidator.BeanValidators;
 import com.jeeplus.common.config.Global;
 import com.jeeplus.common.json.AjaxJson;
@@ -65,6 +66,8 @@ import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 import org.springframework.web.multipart.commons.CommonsMultipartFile;
 import org.springframework.web.servlet.mvc.support.RedirectAttributes;
+import sun.nio.cs.SingleByte;
+import sun.nio.cs.ext.HKSCS;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -642,22 +645,16 @@ public class WorkContractInfoController extends BaseController {
                 users = UserUtils.getByProssType(workContractInfo.getAlterProcessInstanceId(),2);
                 if (users==null )
                     users = UserUtils.getByRoleActivityEnname("scyfglbzr",1,workContractInfo.getChargeCompany(),"2",workContractInfo.getCreateBy());
-            }else  if ("ywbzr".equals(taskDefKey)){
-                users = UserUtils.getByProssType(workContractInfo.getAlterProcessInstanceId(),3);
-                if (users==null )
-                    users = UserUtils.getByRoleActivityEnname("scfgld",3,workContractInfo.getChargeCompany(),"2",workContractInfo.getCreateBy());
-            }else  if ("fgld".equals(taskDefKey)){
-                users = UserUtils.getByProssType(workContractInfo.getAlterProcessInstanceId(),3);
             }else if ("modifyApply".equals(taskDefKey)){
                 users = UserUtils.getByProssType(workContractInfo.getAlterProcessInstanceId(),1);
             }
-            String flag = workContractInfo.getAct().getFlag();
-            if ("yes".equals(flag) && (users==null || users.size()==0)){
-                addMessage(redirectAttributes, "审批失败,审批人为空,请联系管理员!");
-            }else {
+//            String flag = workContractInfo.getAct().getFlag();
+//            if ("yes".equals(flag) && (users==null || users.size()==0)){
+//                addMessage(redirectAttributes, "审批失败,审批人为空,请联系管理员!");
+//            }else {
                 String str = workContractInfoService.auditAlterSave(workContractInfo,users);
                 addMessage(redirectAttributes, str);
-            }
+//            }
 //        }catch (Exception e){
 //            addMessage(redirectAttributes, "审批失败");
 //        }
@@ -1306,12 +1303,11 @@ public class WorkContractInfoController extends BaseController {
     }
 
     @RequestMapping(value = "getProcess")
-    public String getProcess(WorkContractInfo workContractInfo, Model model,HttpServletRequest request) {
-        String auditType = request.getParameter("auditType");
-
-        if("合同作废".equals(auditType)){
+    public String getProcess(WorkContractInfo workContractInfo,String auditType, Model model,HttpServletRequest request) throws UnsupportedEncodingException {
+//        String auditType = request.getParameter("auditType");
+        if("2".equals(auditType)){
             model.addAttribute("processInstanceId", workContractInfo.getInvalidateProcessInstanceId());
-        }else if("合同变更".equals(auditType)){
+        }else if("1".equals(auditType)){
             model.addAttribute("processInstanceId", workContractInfo.getAlterProcessInstanceId());
         }else{
             model.addAttribute("processInstanceId", workContractInfo.getProcessInstanceId());
@@ -1385,22 +1381,16 @@ public class WorkContractInfoController extends BaseController {
                 users = UserUtils.getByProssType(workContractInfo.getProcessInstanceId(),2);
                 if (users==null )
                     users = UserUtils.getByRoleActivityEnname("scyfglbzr",1,workContractInfo.getChargeCompany(),"2",workContractInfo.getCreateBy());
-            }else  if ("ywbzr".equals(taskDefKey)){
-                users = UserUtils.getByProssType(workContractInfo.getProcessInstanceId(),3);
-                if (users==null )
-                    users = UserUtils.getByRoleActivityEnname("scfgld",3,workContractInfo.getChargeCompany(),"2",workContractInfo.getCreateBy());
-            }else  if ("fgld".equals(taskDefKey)){
-                users = UserUtils.getByProssType(workContractInfo.getProcessInstanceId(),3);
             }else if ("modifyApply".equals(taskDefKey)){
                 users = UserUtils.getByProssType(workContractInfo.getProcessInstanceId(),1);
             }
-            String flag = workContractInfo.getAct().getFlag();
-            if ("yes".equals(flag) && (users==null || users.size()==0)){
-                addMessage(redirectAttributes, "审批失败,审批人为空,请联系管理员!");
-            }else {
+//            String flag = workContractInfo.getAct().getFlag();
+//            if ("yes".equals(flag) && (users==null || users.size()==0)){
+//                addMessage(redirectAttributes, "审批失败,审批人为空,请联系管理员!");
+//            }else {
                 String str = workContractInfoService.auditSave(workContractInfo, VarStr.CONTRACT_STATUS,users);
                 addMessage(redirectAttributes, str);
-            }
+//            }
 //        }catch (Exception e){
 //            addMessage(redirectAttributes, "审批失败");
 //        }
@@ -1422,28 +1412,24 @@ public class WorkContractInfoController extends BaseController {
     public String saveAuditCompletion(WorkContractInfo workContractInfo, Model model,
                             RedirectAttributes redirectAttributes) {
         String taskDefKey = workContractInfo.getAct().getTaskDefKey();
-        try{
+//        try{
             // 对不同环节的业务逻辑进行操作
             List<User> users = null;
-            if ("fgld".equals(taskDefKey)){
+            if ("bmzr".equals(taskDefKey)){
                 users = UserUtils.getByProssType(workContractInfo.getProcessInstanceId(),2);
                 if (users==null )
                     users = UserUtils.getByRoleActivityEnname("scyfglbzr",1,workContractInfo.getChargeCompany(),"2",workContractInfo.getCreateBy());
-            }else  if ("scyfglbzr".equals(taskDefKey)){
-                users = UserUtils.getByProssType(workContractInfo.getProcessInstanceId(),2);
-            }else if ("modifyApply".equals(taskDefKey)){
-                users = UserUtils.getByProssType(workContractInfo.getProcessInstanceId(),1);
             }
-            String flag = workContractInfo.getAct().getFlag();
-            if ("yes".equals(flag) && (users==null || users.size()==0)){
-                addMessage(redirectAttributes, "审批失败,审批人为空,请联系管理员!");
-            }else {
+//            String flag = workContractInfo.getAct().getFlag();
+//            if ("yes".equals(flag) && (users==null || users.size()==0)){
+//                addMessage(redirectAttributes, "审批失败,审批人为空,请联系管理员!");
+//            }else {
                 String str = workContractInfoService.saveAuditCompletion(workContractInfo, VarStr.CONTRACT_STATUS,users);
                 addMessage(redirectAttributes, str);
-            }
-        }catch (Exception e){
-            addMessage(redirectAttributes, "审批失败");
-        }
+//            }
+//        }catch (Exception e){
+//            addMessage(redirectAttributes, "审批失败");
+//        }
         if (StringUtils.isNotBlank(workContractInfo.getHome()) && "home".equals(workContractInfo.getHome())){
             return "redirect:" + Global.getAdminPath() + "/home/?repage";
         }else {

+ 14 - 11
src/main/java/com/jeeplus/modules/workcontractrecord/service/WorkContractRecordService.java

@@ -164,7 +164,7 @@ public class WorkContractRecordService extends CrudService<WorkContractRecordDao
 							""
 					);
 			List<User> users = new ArrayList<>();
-			List<User> htgdglys = UserUtils.getByRoleActivityEnname("htgdgly",3,office.getId(),"8",workContractRecord.getCreateBy());
+			List<User> bmzrs = UserUtils.getByRoleActivityEnname("htgdgly",3,office.getId(),"8",workContractRecord.getCreateBy());
 
 			if (StringUtils.isNotBlank(workActivityMenu.getId())) {
 				workProjectNotify.setNotifyRole("");
@@ -198,11 +198,13 @@ public class WorkContractRecordService extends CrudService<WorkContractRecordDao
 				}
 				workProjectNotify.setId("");
 			} else {
-				if (htgdglys.size()==0){
+				if (bmzrs.size()==0){
 					return "流程审批人不能为空,角色合同归档管理员下无用户,请联系管理员!";
 				}
-				processType = "contractrecord";
-				users.addAll(htgdglys);
+				variables.put("bmzrList", bmzrs);
+				variables.put("bmzrCount",bmzrs.size());
+				processType = "contractArchive";
+				users.addAll(bmzrs);
 			}
 			for (User u : users){
 				workProjectNotify.setUser(u);
@@ -243,12 +245,12 @@ public class WorkContractRecordService extends CrudService<WorkContractRecordDao
 				workActivityProcessService.saveList(list, processInstance.getId());
 			} else {
 				WorkActivityProcess workActivityProcess = new WorkActivityProcess();
-				workActivityProcess.setProcessKey("contractrecord");
+				workActivityProcess.setProcessKey("contractArchive");
 				workActivityProcess.setCount(1);
 				workActivityProcess.setProcessInstanceId(processInstance.getId());
 				workActivityProcess.setIsApproval("0");
 				workActivityProcessService.save(workActivityProcess);
-				workActivityProcessService.insertAuditsByType(htgdglys,processInstance.getId(),1,1);
+				workActivityProcessService.insertAuditsByType(bmzrs,processInstance.getId(),1,1);
 			}
 			logger.debug("start process of {key={}, bkey={}, pid={}, variables={}}", new Object[]{
 					ActUtils.PD_REIMBURSEMENT[0], businessKey, processInstance.getId(), variables});
@@ -344,7 +346,7 @@ public class WorkContractRecordService extends CrudService<WorkContractRecordDao
 			selectProcess.setProcessInstanceId(workContractRecord.getProcessInstanceId());
 			List<WorkActivityProcess> workActivityProcesses = workActivityProcessService.findList(selectProcess);
 			List<Activity> activities = workActivityMenu.getActivities();
-			if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractrecord")) {
+			if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractArchive")) {
 				key = 1;
 				for (int i = 0; i < workActivityProcesses.size(); i++) {
 					WorkActivityProcess activityProcess = workActivityProcesses.get(i);
@@ -389,7 +391,7 @@ public class WorkContractRecordService extends CrudService<WorkContractRecordDao
 					}
 				}
 			} else {
-				workActivityMenu.setProcessType("contractrecord");
+				workActivityMenu.setProcessType("contractArchive");
 				for (int i = 0; i < workActivityProcesses.size(); i++) {
 					WorkActivityProcess activityProcess = workActivityProcesses.get(i);
 					String count = activityProcess.getCount() + "";
@@ -398,7 +400,7 @@ public class WorkContractRecordService extends CrudService<WorkContractRecordDao
 						workActivityProcess.setId("");
 					}
 					// 审核环节
-					if ("htgdgly".equals(taskDefKey) && count.contains("1")) {
+					if ("bmzr".equals(taskDefKey) && count.contains("1")) {
 						taskCount = "1";
 						exp = "pass";
 						if ("yes".equals(workContractRecord.getAct().getFlag())) {
@@ -414,7 +416,7 @@ public class WorkContractRecordService extends CrudService<WorkContractRecordDao
 						taskCount = "0";
 						exp = "pass";
 						workActivityProcess.setCount(0);
-						enname ="htgdgly";
+						enname ="bmzr";
 						if (!"yes".equals(workContractRecord.getAct().getFlag())) {
 							workContractRecord.setStatus("3");
 						}
@@ -429,6 +431,7 @@ public class WorkContractRecordService extends CrudService<WorkContractRecordDao
 			workContractRecord.preUpdate();
 			// 提交流程任务
 			vars.put(exp, "yes".equals(workContractRecord.getAct().getFlag()) ? true : false);
+		    vars.put("passs", true);
 			workActivityProcessService.updateProcess(workActivityProcess,workActivityMenu,key,taskCount,workContractRecord.getProcessInstanceId(),taskDefKey,"modifyApply",workContractRecord.getAct().getFlag(),comment, activities);
 			// 提交流程任务
 			actTaskService.complete(workContractRecord.getAct().getTaskId(), workContractRecord.getAct().getProcInsId(), workContractRecord.getAct().getComment(), vars);
@@ -485,7 +488,7 @@ public class WorkContractRecordService extends CrudService<WorkContractRecordDao
 				}
 				workActivityProcessService.deleteProcessIdAuditUsers(workContractRecord.getProcessInstanceId());
 			} else {
-				if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractrecord")) {
+				if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractArchive")) {
 					WorkProjectNotify notify = new WorkProjectNotify();
 					notify.setNotifyId(workContractRecord.getId());
 					userList = workProjectNotifyService.readByNotifyId(notify);

+ 9 - 1
src/main/java/com/jeeplus/modules/workcontractsignature/entity/WorkContractSignature.java

@@ -27,6 +27,7 @@ public class WorkContractSignature extends ActEntity<WorkContractSignature> {
 	private String status;		// 审核状态
 	private String companyId;		// 所属公司
 	private String officeId;		// 所属部门
+	private String officeName;
 	private String type;		// 签章类型
 	private Date beginCreateDate;		// 开始 创建时间
 	private Date endCreateDate;		// 结束 创建时间
@@ -144,5 +145,12 @@ public class WorkContractSignature extends ActEntity<WorkContractSignature> {
 	public void setEndCreateDate(Date endCreateDate) {
 		this.endCreateDate = endCreateDate;
 	}
-		
+
+	public String getOfficeName() {
+		return officeName;
+	}
+
+	public void setOfficeName(String officeName) {
+		this.officeName = officeName;
+	}
 }

+ 13 - 10
src/main/java/com/jeeplus/modules/workcontractsignature/service/WorkContractSignatureService.java

@@ -174,7 +174,7 @@ public class WorkContractSignatureService extends CrudService<WorkContractSignat
 					);
 
 			List<User> users = new ArrayList<>();
-			List<User> gzrList = UserUtils.getByRoleActivityEnname("gzr",1,office.getId(),"2",workContractSignature.getCreateBy());
+			List<User>  bmzrs = UserUtils.getByRoleActivityEnname("bmzr",2,office.getId(),"2",workContractSignature.getCreateBy());
 			if (StringUtils.isNotBlank(workActivityMenu.getId())) {
 				workProjectNotify.setNotifyRole("");
 				workActivityMenu = workActivityMenuService.get(workActivityMenu.getId());
@@ -207,11 +207,13 @@ public class WorkContractSignatureService extends CrudService<WorkContractSignat
 				}
 				workProjectNotify.setId("");
 			} else {
-				if (gzrList.size()==0 ){
+				if (bmzrs.size()==0 ){
 					return "流程审批人不能为空,请联系管理员!";
 				}
-				processType = "contractSignature";
-				users.addAll(gzrList);
+				processType = "contractSign";
+				variables.put("bmzrList", bmzrs);
+				variables.put("bmzrCount",bmzrs.size());
+				users.addAll(bmzrs);
 			}
 			List<String> userIds = new ArrayList<>(users.size());
 			for (User u : users){
@@ -248,7 +250,7 @@ public class WorkContractSignatureService extends CrudService<WorkContractSignat
 				workActivityProcess.setProcessInstanceId(processInstance.getId());
 				workActivityProcess.setIsApproval("0");
 				workActivityProcessService.insert(workActivityProcess);
-				workActivityProcessService.insertAuditsByType(gzrList,processInstance.getId(),1,1);
+				workActivityProcessService.insertAuditsByType(bmzrs,processInstance.getId(),1,1);
 			}
 			workContractSignature.setProcessInstanceId(processInstance.getId());
 			workContractSignature.setStatus("2");
@@ -396,7 +398,7 @@ public class WorkContractSignatureService extends CrudService<WorkContractSignat
 		selectProcess.setProcessInstanceId(workContractSignature.getProcessInstanceId());
 		List<WorkActivityProcess> workActivityProcesses = workActivityProcessService.findList(selectProcess);
 		List<Activity> activities = workActivityMenu.getActivities();
-		if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractSignature")) {
+		if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractSign")) {
 			key = 1;
 			for (int i = 0; i < workActivityProcesses.size(); i++) {
 				WorkActivityProcess activityProcess = workActivityProcesses.get(i);
@@ -441,7 +443,7 @@ public class WorkContractSignatureService extends CrudService<WorkContractSignat
 				}
 			}
 		} else {
-			workActivityMenu.setProcessType("contractSignature");
+			workActivityMenu.setProcessType("contractSign");
 			for (int i = 0; i < workActivityProcesses.size(); i++) {
 				WorkActivityProcess activityProcess = workActivityProcesses.get(i);
 				String count = activityProcess.getCount() + "";
@@ -450,7 +452,7 @@ public class WorkContractSignatureService extends CrudService<WorkContractSignat
 					workActivityProcess.setId("");
 				}
 				// 审核环节
-				if ("gzr".equals(taskDefKey) && count.contains("1")) {
+				if ("bmzr".equals(taskDefKey) && count.contains("1")) {
 					taskCount = "1";
 					exp = "pass";
 					if ("yes".equals(workContractSignature.getAct().getFlag())) {
@@ -462,7 +464,7 @@ public class WorkContractSignatureService extends CrudService<WorkContractSignat
 					}
 					break;
 				} else if ("modifyApply".equals(taskDefKey) && count.contains("0")) {
-					notifyRole = "盖章人审批";
+					notifyRole = "部门主任审批";
 					taskCount = "0";
 					exp = "pass";
 					workActivityProcess.setCount(0);
@@ -480,6 +482,7 @@ public class WorkContractSignatureService extends CrudService<WorkContractSignat
 		workContractSignature.preUpdate();
 		// 提交流程任务
 		vars.put(exp, "yes".equals(workContractSignature.getAct().getFlag()) ? true : false);
+		vars.put("passs", true);
 		workActivityProcessService.updateProcess(workActivityProcess, workActivityMenu, key, taskCount, workContractSignature.getProcessInstanceId(), taskDefKey, "modifyApply", workContractSignature.getAct().getFlag(), comment, activities);
 		// 提交流程任务
 		actTaskService.complete(workContractSignature.getAct().getTaskId(), workContractSignature.getAct().getProcInsId(), workContractSignature.getAct().getComment(), vars);
@@ -529,7 +532,7 @@ public class WorkContractSignatureService extends CrudService<WorkContractSignat
 			}
 			workActivityProcessService.deleteProcessIdAuditUsers(workContractSignature.getProcessInstanceId());
 		} else {
-			if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractSignature")) {
+			if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractSign")) {
 				WorkProjectNotify notify = new WorkProjectNotify();
 				notify.setNotifyId(workContractSignature.getId());
 				userList = workProjectNotifyService.readByNotifyId(notify);

+ 1 - 0
src/main/java/com/jeeplus/modules/workcontractsignature/web/WorkContractSignatureController.java

@@ -97,6 +97,7 @@ public class WorkContractSignatureController extends BaseController {
 			WorkContractInfo workContractInfo=workContractInfoService.get(workContractSignature.getId());
 			workContractSignature.setWorkContractInfo(workContractInfo);
 			workContractSignature.setWorkAttachments(workContractInfo.getWorkAttachments());
+			workContractSignature.setOfficeId(workContractInfo.getOfficeId());
 			workContractSignature.setId(null);
 		}
 		if("2".equals(tbal)){

+ 6 - 3
src/main/resources/mappings/modules/workclientinfo/WorkClientInfoDao.xml

@@ -65,7 +65,8 @@
 		a.company_id AS "companyId",
 		a.telephone AS "telephone",
 		a.has_uscc AS "hasUscc",
-		a.usc_code AS "uscCode"
+		a.usc_code AS "uscCode",
+		a.number AS "number"
 	</sql>
 	
 	<sql id="workClientInfoJoins">
@@ -273,7 +274,8 @@
 			office_id,
 			telephone,
 			has_uscc,
-			usc_code
+			usc_code,
+			number
 		) VALUES (
 			#{id},
 			#{createBy.id},
@@ -305,7 +307,8 @@
 			#{officeId},
 			#{telephone},
 			#{hasUscc},
-			#{uscCode}
+			#{uscCode},
+			#{number}
 		)
 	</insert>
 	

+ 2 - 0
src/main/resources/mappings/modules/workcontractinfo/WorkContractInfoDao.xml

@@ -60,6 +60,7 @@
 		a.record_state AS "recordState",
 		a.completion_status AS "completionStatus",
 		a.signature_status as "signatureStatus",
+		a.office_id AS "officeId",
 		(select count(1) from work_contract_info c where c.total_contract_id = a.id)  cnt
 	</sql>
 	
@@ -126,6 +127,7 @@
 		a.alterbefore_id AS "alterBeforeId",
 		a.completion_status AS "completionStatus",
 		a.common_flag AS "commonFlag",
+		a.office_id AS "officeId",
 		a.signature_status as "signatureStatus"
 		FROM work_contract_info a
 		<include refid="workContractInfoJoins"/>

+ 1 - 0
src/main/resources/mappings/modules/workcontractsignature/WorkContractSignatureDao.xml

@@ -17,6 +17,7 @@
 		a.company_id AS "companyId",
 		a.office_id AS "officeId",
 		a.type AS "type",
+		o.name AS "officeName",
 		workContractInfo.id AS "workContractInfo.id",
 		workContractInfo.contract_num AS "workContractInfo.contractNum",
 		workContractInfo.name AS "workContractInfo.name",

+ 15 - 4
src/main/webapp/webpage/modules/workclientinfo/workClientInfoForm.jsp

@@ -99,8 +99,8 @@
                     },
                     taxId:{
                         taxId:true
-                    },
-                    uscCode:{remote: "${ctx}/workclientinfo/workClientInfo/checkUscCode?oldUscCode=" + encodeURIComponent($("#oldUscCode").val())}
+                    }
+                    <%--uscCode:{remote: "${ctx}/workclientinfo/workClientInfo/checkUscCode?oldUscCode=" + encodeURIComponent($("#oldUscCode").val())}--%>
 				},
                 messages:{
                     orUnicode:{
@@ -120,8 +120,8 @@
                     },
                     taxId:{
                         taxId:"仅允许输入数字、大写拉丁字母"
-                    },
-                    uscCode:{remote:"重复的统一社会信用代码"}
+                    }
+                    // uscCode:{remote:"重复的统一社会信用代码"}
                 },
                 submitHandler: function(form){
                     loading('正在提交,请稍等...');
@@ -336,6 +336,17 @@
                          style="display:none;background-color:white; position: relative; width:333px;left:120px; border: 1px solid gray;">
                     </div>
                 </div>
+                <div class="layui-item layui-col-sm6">
+                    <label class="layui-form-label"><span class="require-item">*</span>客户编号:</label>
+                    <div class="layui-input-block">
+                        <div class="input-group">
+                            <form:input path="number" htmlEscape="false"  readonly="true"  class="form-control  layui-input"/>
+                            <%--<span class="input-group-btn">--%>
+                                <%--<label class="form-status"><c:choose><c:when test="${not empty workChangeJob.state}">${fns:getDictLabel(workChangeJob.state, 'audit_state', '')}</c:when><c:otherwise>新添</c:otherwise></c:choose></label>--%>
+                             <%--</span>--%>
+                        </div>
+                    </div>
+                </div>
                 <div class="layui-item layui-col-sm6 lw7">
                     <label class="layui-form-label double-line"><span class="require-item">*</span>拥有统一社会信用代码:</label>
                     <div class="layui-input-block">&nbsp;&nbsp;

+ 2 - 0
src/main/webapp/webpage/modules/workclientinfo/workClientInfoList.jsp

@@ -202,6 +202,7 @@
                             "<span title=" + d.clientName + ">" + d.clientName.substr(0,40) + "</span></a>";
                         return xml;
                     }}
+				,{field:'number',align:'center', title: '客户编号',width:150}
                 ,{field:'clientProperty',align:'center', title: '客户性质',width:150}
                 ,{field:'trade',align:'center', title: '客户行业', width:150}
                 ,{field:'area', align:'center',title: '所在地区',width:200}
@@ -231,6 +232,7 @@
                 {
                     "index":"${index.index+1}"
                     ,"id":"${workClientInfo.id}"
+                    ,"number":"${workClientInfo.number}"
 					,"linkman":"${workClientInfo.workClientLinkman.id}"
                     ,"clientName":"${workClientInfo.name}"
                     ,"clientProperty":"${fns:getMainDictLabel(workClientInfo.companyType, 'company_type', '')}"

+ 1 - 1
src/main/webapp/webpage/modules/workcontractinfo/workContractInfoAlterList.jsp

@@ -472,7 +472,7 @@
                         <%--return xml;--%>
                         var st = getAuditChangeState(d.status);
                         if(st.action)
-                            var xml = "<span onclick=\"openDialogView('流程追踪', '${ctx}/workcontractinfo/workContractInfo/getProcess?id=" + d.id + "&auditType=合同变更','95%','95%')\" class=\"status-label status-label-" + st.label + "\" >" + st.status + "</span>";
+                            var xml = "<span onclick=\"openDialogView('流程追踪', '${ctx}/workcontractinfo/workContractInfo/getProcess?id=" + d.id + "&auditType=1','95%','95%')\" class=\"status-label status-label-" + st.label + "\" >" + st.status + "</span>";
                         else
                             var xml = "<span style=\"cursor:default;\" class=\"status-label status-label-" + st.label + "\" >" + st.status + "</span>";
                         return xml;

+ 1 - 1
src/main/webapp/webpage/modules/workcontractinfo/workContractInfoInvalidateList.jsp

@@ -433,7 +433,7 @@
                         <%--return xml;--%>
                         var st = getAuditState(d.status);
                         if(st.action)
-                            var xml = "<span onclick=\"openDialogView('流程追踪', '${ctx}/workcontractinfo/workContractInfo/getProcess?id=" + d.id + "&auditType=合同作废','95%','95%')\" class=\"status-label status-label-" + st.label + "\" >" + st.status + "</span>";
+                            var xml = "<span onclick=\"openDialogView('流程追踪', '${ctx}/workcontractinfo/workContractInfo/getProcess?id=" + d.id + "&auditType=2','95%','95%')\" class=\"status-label status-label-" + st.label + "\" >" + st.status + "</span>";
                         else
                             var xml = "<span style=\"cursor:default;\" class=\"status-label status-label-" + st.label + "\" >" + st.status + "</span>";
                         return xml;

+ 2 - 1
src/main/webapp/webpage/modules/workcontractsignature/workContractSignatureList.jsp

@@ -294,7 +294,8 @@
                     ,"id":"${workContractSignature.id}"
                     ,"contractNum":"${workContractSignature.workContractInfo.contractNum}"
                     ,"contractName":"${workContractSignature.workContractInfo.name}"
-                    ,"officeName":"${workContractSignature.workContractInfo.chargeCompanyName}"
+                    ,"officeName":"${workContractSignature.officeName}"
+                    <%--,"officeName":"${workContractSignature.workContractInfo.chargeCompanyName}"--%>
                     ,"contractOpposite":"${workContractSignature.workContractInfo.anotherContractNum}"
                     ,"client":"${workContractSignature.workContractInfo.client.name}"
                     ,"type":"${workContractSignature.type}"

+ 1 - 1
src/main/webapp/webpage/modules/workstaff/infoList.jsp

@@ -38,7 +38,7 @@
                 <%--<table:page page="${page}"></table:page>--%>
                 <%--<div style="clear: both;"></div>--%>
             </div>
-            <a href="javascript:window.opener=null;window.open('','_self');window.close();">关闭</a>
+            <%--<a href="javascript:window.opener=null;window.open('','_self');window.close();">关闭</a>--%>
         </div>
 
     </div>