소스 검색

Merge remote-tracking branch 'origin/master'

user4 5 년 전
부모
커밋
41149868f4

+ 133 - 97
src/main/java/com/jeeplus/modules/workregularapply/service/WorkRegularApplyService.java

@@ -18,8 +18,10 @@ import com.jeeplus.modules.projectcontentinfo.entity.ProjectReportData;
 import com.jeeplus.modules.projectrecord.entity.ProjectRecords;
 import com.jeeplus.modules.serialnum.service.SerialNumTplService;
 import com.jeeplus.modules.sys.dao.OfficeDao;
+import com.jeeplus.modules.sys.dao.RoleDao;
 import com.jeeplus.modules.sys.dao.UserDao;
 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.utils.UserUtils;
 import com.jeeplus.modules.sysparameter.dao.SysParameterDao;
@@ -111,6 +113,8 @@ public class WorkRegularApplyService extends CrudService<WorkRegularApplyDao, Wo
 	private SysParameterValueDao sysParameterValueDao;
 	@Autowired
 	private SysParameterDao sysParameterDao;
+	@Autowired
+	private RoleDao roleDao;
 
 	public WorkRegularApply get(String id) {
 		return super.get(id);
@@ -222,16 +226,17 @@ public class WorkRegularApplyService extends CrudService<WorkRegularApplyDao, Wo
 		try{
 			Map<String, Object> variables = new HashMap<String, Object>();
 			identityService.setAuthenticatedUserId(workRegularApply.getCurrentUser().getId());
-			User createUser = UserUtils.getUser();
-			User user=userDao.get(workRegularApply.getUserId());
+			User user = UserUtils.getUser();
+//			User user=userDao.get(workRegularApply.getUserId());
 			String contentStr = "转正人:"+ user.getName()+",转正日期:"+ DateUtils.formatDate(workRegularApply.getApplyDate());
 			String titleStr = "转正人:"+user.getName();
-            List<User> zzr=new ArrayList<>();
-			zzr.add(user);
-			variables.put("zzrCount",zzr.size());
-			variables.put("zzrList",zzr);
 			String businessKey = workRegularApply.getId();
 			Office applyOffice = officeDao.get(user.getOffice().getId());
+			String comId = user.getComId();
+			Role rsbzr = new Role();
+			rsbzr.setEnname("rsbzr");
+			Role role = roleDao.getByEnname(rsbzr);
+			List<User> fgldList = userDao.findUserByRoleId(role.getId(), comId);
 			WorkActivityMenu workActivityMenu = workActivityMenuService.findByParentAndOffice("zzsql3125f1f194c82bdea9mrlcc750904", applyOffice);
 			// 启动流程
 			String processType = workActivityMenu.getProcessType();
@@ -251,9 +256,9 @@ public class WorkRegularApplyService extends CrudService<WorkRegularApplyDao, Wo
 
 			List<User> users = new ArrayList<>();
 			List<User> bmzrList = UserUtils.getByRoleActivityEnname("bmzr",2,applyOffice.getId(),"22",user);
-			List<User> fgldList = UserUtils.getByRoleActivityEnname("fgld",2,applyOffice.getId(),"22",user);
-			List<User> zjlList = UserUtils.getByRoleActivityEnname("zjl",3,applyOffice.getId(),"22",user);
-			List<User> rlzyList = UserUtils.getByRoleActivityEnname("rlzy",3,applyOffice.getId(),"22",user);
+//			List<User> fgldList = UserUtils.getByRoleActivityEnname("fgld",2,applyOffice.getId(),"22",user);
+//			List<User> zjlList = UserUtils.getByRoleActivityEnname("zjl",3,applyOffice.getId(),"22",user);
+////			List<User> rlzyList = UserUtils.getByRoleActivityEnname("rlzy",3,applyOffice.getId(),"22",user);
 			if (StringUtils.isNotBlank(workActivityMenu.getId())) {
 				workProjectNotify.setNotifyRole("");
 				workActivityMenu = workActivityMenuService.get(workActivityMenu.getId());
@@ -288,26 +293,29 @@ public class WorkRegularApplyService extends CrudService<WorkRegularApplyDao, Wo
 				}
 				workProjectNotify.setId("");
 			} else {
-				if (zzr.size()==0 ){
+				if (bmzrList.size()==0 ){
 					workRegularApply.setState("1");
 					this.save(workRegularApply);
 					return "流程审批人不能为空,系统中无该转正人用户,请联系管理员!";
 				}
-				processType = "workRegularApply";
-				users.addAll(zzr);
+//				processType = "workPositive";
+				processType = "workPositive";
+				variables.put("bmzrCount",bmzrList.size());
+				variables.put("bmzrList",bmzrList);
+				users.addAll(bmzrList);
 			}
 			List<String> userIds = new ArrayList<>(users.size());
 			for (User u : users){
 				userIds.add(u.getId());
 				workProjectNotify.setUser(u);
 				workProjectNotify.setId("");
-				workProjectNotify.setNotifyRole("转正人补充信息");
+				workProjectNotify.setNotifyRole("部门负责人审批");
 				workProjectNotifyService.save(workProjectNotify);
-				Map<String,Object> extras = new HashMap<>();
-				extras.put("type","7001");
-				extras.put("procDefKey","66");
-				extras.put("id",workProjectNotify.getId());
-				UserUtils.pushInfoToApp(titleStr, contentStr,extras,u.getId());
+//				Map<String,Object> extras = new HashMap<>();
+//				extras.put("type","7001");
+//				extras.put("procDefKey","66");
+//				extras.put("id",workProjectNotify.getId());
+//				UserUtils.pushInfoToApp(titleStr, contentStr,extras,u.getId());
 			}
 			UserUtils.pushIm(userIds,contentStr);
 
@@ -333,17 +341,17 @@ public class WorkRegularApplyService extends CrudService<WorkRegularApplyDao, Wo
 				workActivityProcessService.insert(workActivityProcess);
 				workActivityProcess.setCount(2);
 				workActivityProcessService.insert(workActivityProcess);
-				workActivityProcess.setCount(3);
-				workActivityProcessService.insert(workActivityProcess);
-				workActivityProcess.setCount(4);
-				workActivityProcessService.insert(workActivityProcess);
-				workActivityProcess.setCount(5);
-				workActivityProcessService.insert(workActivityProcess);
-				workActivityProcessService.insertAuditsByType(zzr,processInstance.getId(),1,1);
-				workActivityProcessService.insertAuditsByType(bmzrList,processInstance.getId(),2,0);
-				workActivityProcessService.insertAuditsByType(fgldList,processInstance.getId(),3,0);
-				workActivityProcessService.insertAuditsByType(zjlList,processInstance.getId(),4,0);
-				workActivityProcessService.insertAuditsByType(rlzyList,processInstance.getId(),5,0);
+//				workActivityProcess.setCount(3);
+//				workActivityProcessService.insert(workActivityProcess);
+//				workActivityProcess.setCount(4);
+//				workActivityProcessService.insert(workActivityProcess);
+//				workActivityProcess.setCount(5);
+//				workActivityProcessService.insert(workActivityProcess);
+//				workActivityProcessService.insertAuditsByType(zzr,processInstance.getId(),1,1);
+				workActivityProcessService.insertAuditsByType(bmzrList,processInstance.getId(),1,1);
+				workActivityProcessService.insertAuditsByType(fgldList,processInstance.getId(),2,0);
+//				workActivityProcessService.insertAuditsByType(zjlList,processInstance.getId(),4,0);
+//				workActivityProcessService.insertAuditsByType(rlzyList,processInstance.getId(),5,0);
 
 			}
 			workRegularApply.setProcessInstanceId(processInstance.getId());
@@ -408,7 +416,7 @@ public class WorkRegularApplyService extends CrudService<WorkRegularApplyDao, Wo
 		selectProcess.setProcessInstanceId(workRegularApply.getProcessInstanceId());
 		List<WorkActivityProcess> workActivityProcesses = workActivityProcessService.findList(selectProcess);
 		List<Activity> activities = workActivityMenu.getActivities();
-		if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("workRegularApply")) {
+		if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("workPositive")) {
 			key = 1;
 			for (int i = 0; i < workActivityProcesses.size(); i++) {
 				WorkActivityProcess activityProcess = workActivityProcesses.get(i);
@@ -453,7 +461,7 @@ public class WorkRegularApplyService extends CrudService<WorkRegularApplyDao, Wo
 				}
 			}
 		} else {
-			workActivityMenu.setProcessType("workRegularApply");
+			workActivityMenu.setProcessType("workPositive");
 			for (int i = 0; i < workActivityProcesses.size(); i++) {
 				WorkActivityProcess activityProcess = workActivityProcesses.get(i);
 				String count = activityProcess.getCount() + "";
@@ -461,85 +469,113 @@ public class WorkRegularApplyService extends CrudService<WorkRegularApplyDao, Wo
 				if (!workActivityProcess.getIsApproval().equals("0")) {
 					workActivityProcess.setId("");
 				}
+//				// 审核环节
+//				if ("zzr".equals(taskDefKey) && count.contains("1")) {
+//					taskCount = "1";
+//					exp = "pass";
+//					if ("yes".equals(flag)) {
+//						workActivityProcessService.insertAuditsByType(auditUsers,workRegularApply.getProcessInstanceId(),2,1);
+//						vars.put("ywbfzrList", auditUsers);
+//						vars.put("ywbfzrCount",auditUsers.size());
+//						notifyRole = "部门主任审核";
+//						workActivityProcess.setIsApproval("1");
+//						enname = "bmzr";
+//					} else {
+//						notifyRole = "转正人补充信息";
+//						workActivityProcess.setIsApproval("2");
+//					}
+//					break;
+//				}
+//				// 审核环节
+//				else if ("ywbfzr".equals(taskDefKey) && count.contains("2")) {
+//					taskCount = "2";
+//					exp = "pass";
+//					if ("yes".equals(flag)) {
+//						workActivityProcessService.insertAuditsByType(auditUsers,workRegularApply.getProcessInstanceId(),3,1);
+//						vars.put("fgldList", auditUsers);
+//						vars.put("fgldCount",auditUsers.size());
+//						notifyRole = "分管领导审核";
+//						workActivityProcess.setIsApproval("1");
+//						enname = "fgld";
+//					} else {
+//						notifyRole = "转正人补充信息";
+//						workActivityProcess.setIsApproval("2");
+//					}
+//					break;
+//				} else if ("fgld".equals(taskDefKey) && count.contains("3")) {
+//					taskCount = "3";
+//					exp = "pass";
+//					if ("yes".equals(flag)) {
+//						workActivityProcessService.insertAuditsByType(auditUsers,workRegularApply.getProcessInstanceId(),4,1);
+//						vars.put("zjlList", auditUsers);
+//						vars.put("zjlCount",auditUsers.size());
+//						notifyRole = "总经理审核";
+//						workActivityProcess.setIsApproval("1");
+//						enname = "zjl";
+//					} else {
+//						notifyRole = "转正人补充信息";
+//						workActivityProcess.setIsApproval("2");
+//					}
+//					break;
+//				}else if ("zjl".equals(taskDefKey) && count.contains("4")) {
+//					taskCount = "4";
+//					exp = "pass";
+//					if ("yes".equals(flag)) {
+//						workActivityProcessService.insertAuditsByType(auditUsers,workRegularApply.getProcessInstanceId(),5,1);
+//						vars.put("rlzyList", auditUsers);
+//						vars.put("rlzyCount",auditUsers.size());
+//						notifyRole = "人力专员审核";
+//						workActivityProcess.setIsApproval("1");
+//						enname = "rlzy";
+//					} else {
+//						notifyRole = "转正人补充信息";
+//						workActivityProcess.setIsApproval("2");
+//					}
+//					break;
+//				} else if ("rlzy".equals(taskDefKey) && count.contains("5")) {
+//					taskCount = "5";
+//					exp = "pass";
+//					if ("yes".equals(flag)) {
+//						notifyRole = "审批通过";
+//						workActivityProcess.setIsApproval("1");
+//						WorkStaffBasicInfo workStaffBasicInfo=workStaffAchivesDao.get(workRegularApply.getBasicInfoId()) ;
+//						workStaffBasicInfo.setId(workRegularApply.getBasicInfoId());
+//						workStaffBasicInfo.setStatus("正式");
+//						WorkJobGrade workJobGrade=workJobGradeDao.get(workRegularApply.getJobGrade().getId());
+//						workStaffBasicInfo.setJobGrade(workJobGrade);
+//						workStaffBasicInfo.setSalary(workJobGrade.getPay());
+//						workStaffBasicInfo.setTryEndTime(workRegularApply.getCorrectDate());
+//						workStaffAchivesDao.update(workStaffBasicInfo);
+//					} else {
+//						notifyRole = "转正人补充信息";
+//						workActivityProcess.setIsApproval("2");
+//					}
+//					break;
 				// 审核环节
-				if ("zzr".equals(taskDefKey) && count.contains("1")) {
+				if ("bmzr".equals(taskDefKey) && count.contains("1")) {
 					taskCount = "1";
 					exp = "pass";
-					if ("yes".equals(flag)) {
-						workActivityProcessService.insertAuditsByType(auditUsers,workRegularApply.getProcessInstanceId(),2,1);
-						vars.put("ywbfzrList", auditUsers);
-						vars.put("ywbfzrCount",auditUsers.size());
-						notifyRole = "部门主任审核";
-						workActivityProcess.setIsApproval("1");
-						enname = "bmzr";
-					} else {
-						notifyRole = "转正人补充信息";
-						workActivityProcess.setIsApproval("2");
-					}
-					break;
-				}
-				// 审核环节
-				else if ("ywbfzr".equals(taskDefKey) && count.contains("2")) {
-					taskCount = "2";
-					exp = "pass";
-					if ("yes".equals(flag)) {
-						workActivityProcessService.insertAuditsByType(auditUsers,workRegularApply.getProcessInstanceId(),3,1);
+					if ("yes".equals(workRegularApply.getAct().getFlag())) {
 						vars.put("fgldList", auditUsers);
 						vars.put("fgldCount",auditUsers.size());
-						notifyRole = "分管领导审核";
+						workActivityProcessService.insertAuditsByType(auditUsers,workRegularApply.getProcessInstanceId(),2,1);
+
+						notifyRole = "人事主任审核";
 						workActivityProcess.setIsApproval("1");
 						enname = "fgld";
 					} else {
-						notifyRole = "转正人补充信息";
+						notifyRole = "调整申请";
 						workActivityProcess.setIsApproval("2");
 					}
 					break;
-				} else if ("fgld".equals(taskDefKey) && count.contains("3")) {
-					taskCount = "3";
-					exp = "pass";
-					if ("yes".equals(flag)) {
-						workActivityProcessService.insertAuditsByType(auditUsers,workRegularApply.getProcessInstanceId(),4,1);
-						vars.put("zjlList", auditUsers);
-						vars.put("zjlCount",auditUsers.size());
-						notifyRole = "总经理审核";
-						workActivityProcess.setIsApproval("1");
-						enname = "zjl";
-					} else {
-						notifyRole = "转正人补充信息";
-						workActivityProcess.setIsApproval("2");
-					}
-					break;
-				}else if ("zjl".equals(taskDefKey) && count.contains("4")) {
-					taskCount = "4";
-					exp = "pass";
-					if ("yes".equals(flag)) {
-						workActivityProcessService.insertAuditsByType(auditUsers,workRegularApply.getProcessInstanceId(),5,1);
-						vars.put("rlzyList", auditUsers);
-						vars.put("rlzyCount",auditUsers.size());
-						notifyRole = "人力专员审核";
-						workActivityProcess.setIsApproval("1");
-						enname = "rlzy";
-					} else {
-						notifyRole = "转正人补充信息";
-						workActivityProcess.setIsApproval("2");
-					}
-					break;
-				} else if ("rlzy".equals(taskDefKey) && count.contains("5")) {
-					taskCount = "5";
+				}else if ("fgld".equals(taskDefKey) && count.contains("2")) {
+					taskCount = "2";
 					exp = "pass";
-					if ("yes".equals(flag)) {
+					if ("yes".equals(workRegularApply.getAct().getFlag())) {
 						notifyRole = "审批通过";
 						workActivityProcess.setIsApproval("1");
-						WorkStaffBasicInfo workStaffBasicInfo=workStaffAchivesDao.get(workRegularApply.getBasicInfoId()) ;
-						workStaffBasicInfo.setId(workRegularApply.getBasicInfoId());
-						workStaffBasicInfo.setStatus("正式");
-						WorkJobGrade workJobGrade=workJobGradeDao.get(workRegularApply.getJobGrade().getId());
-						workStaffBasicInfo.setJobGrade(workJobGrade);
-						workStaffBasicInfo.setSalary(workJobGrade.getPay());
-						workStaffBasicInfo.setTryEndTime(workRegularApply.getCorrectDate());
-						workStaffAchivesDao.update(workStaffBasicInfo);
 					} else {
-						notifyRole = "转正人补充信息";
+						notifyRole = "调整申请";
 						workActivityProcess.setIsApproval("2");
 					}
 					break;
@@ -609,7 +645,7 @@ public class WorkRegularApplyService extends CrudService<WorkRegularApplyDao, Wo
 			}
 			workActivityProcessService.deleteProcessIdAuditUsers(workRegularApply.getProcessInstanceId());
 		} else {
-			if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("workRegularApply")) {
+			if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("workPositive")) {
 				WorkProjectNotify notify = new WorkProjectNotify();
 				notify.setNotifyId(workRegularApply.getId());
 				userList = workProjectNotifyService.readByNotifyId(notify);
@@ -917,7 +953,7 @@ public class WorkRegularApplyService extends CrudService<WorkRegularApplyDao, Wo
 					this.delete(workRegularApply);
 					return "流程审批人不能为空,系统中无该转正人用户,请联系管理员!";
 				}
-				processType = "workRegularApply";
+				processType = "workPositive";
 				users.addAll(zzr);
 			}
 			List<String> userIds = new ArrayList<>(users.size());

+ 39 - 20
src/main/java/com/jeeplus/modules/workregularapply/web/WorkRegularApplyController.java

@@ -15,8 +15,10 @@ import javax.validation.ConstraintViolationException;
 import com.jeeplus.modules.act.entity.Act;
 import com.jeeplus.modules.act.service.ActTaskService;
 import com.jeeplus.modules.sys.dao.OfficeDao;
+import com.jeeplus.modules.sys.dao.RoleDao;
 import com.jeeplus.modules.sys.dao.UserDao;
 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.utils.UserUtils;
 import com.jeeplus.modules.workborrowmangement.entity.WorkBorrowMangement;
@@ -77,6 +79,8 @@ public class WorkRegularApplyController extends BaseController {
 	private UserDao userDao;
 	@Autowired
 	private OfficeDao officeDao;
+	@Autowired
+	private RoleDao roleDao;
 
 	@ModelAttribute
 	public WorkRegularApply get(@RequestParam(required=false) String id) {
@@ -309,28 +313,43 @@ public class WorkRegularApplyController extends BaseController {
 			User user=userDao.get(workRegularApply.getUserId());
 			Office applyOffice = officeDao.get(user.getOffice().getId());
 			List<User> users = null;
-			if ("zzr".equals(taskDefKey)){
-				/*User user=userDao.get(workRegularApply.getUserId());
-				List<User> zzr=new ArrayList<>();
-				zzr.add(user);
-				users = zzr;*/
+//			if ("zzr".equals(taskDefKey)){
+//				/*User user=userDao.get(workRegularApply.getUserId());
+//				List<User> zzr=new ArrayList<>();
+//				zzr.add(user);
+//				users = zzr;*/
+//				users = UserUtils.getByProssType(workRegularApply.getProcessInstanceId(),2);
+//				if (users==null )
+//					users = UserUtils.getByRoleActivityEnname("bmzr",2,applyOffice.getId(),"66",user);
+//			}else if ("ywbfzr".equals(taskDefKey)){
+//				users = UserUtils.getByProssType(workRegularApply.getProcessInstanceId(),3);
+//				if (users==null )
+//					users = UserUtils.getByRoleActivityEnname("fgld",2,applyOffice.getId(),"66",user);
+//			}else  if ("fgld".equals(taskDefKey)){
+//				users = UserUtils.getByProssType(workRegularApply.getProcessInstanceId(),4);
+//				if (users==null )
+//					users = UserUtils.getByRoleActivityEnname("zjl", 3, applyOffice.getId(), "66", user);
+//			}else  if ("zjl".equals(taskDefKey)){
+//				users = UserUtils.getByProssType(workRegularApply.getProcessInstanceId(),5);
+//				if (users==null )
+//					users = UserUtils.getByRoleActivityEnname("rlzy",3,applyOffice.getId(),"66",user);
+//			}else if ("rlzy".equals(taskDefKey)){
+//				users = UserUtils.getByProssType(workRegularApply.getProcessInstanceId(),5);
+//			}else if ("modifyApply".equals(taskDefKey)){
+//				users = UserUtils.getByProssType(workRegularApply.getProcessInstanceId(),1);
+//			}
+			if ("bmzr".equals(taskDefKey)){
 				users = UserUtils.getByProssType(workRegularApply.getProcessInstanceId(),2);
-				if (users==null )
-					users = UserUtils.getByRoleActivityEnname("bmzr",2,applyOffice.getId(),"66",user);
-			}else if ("ywbfzr".equals(taskDefKey)){
-				users = UserUtils.getByProssType(workRegularApply.getProcessInstanceId(),3);
-				if (users==null )
-					users = UserUtils.getByRoleActivityEnname("fgld",2,applyOffice.getId(),"66",user);
+				if (users==null ) {
+//					users = UserUtils.getByRoleActivityEnname("fgld", 3, workRegularApply.getOfficeId(), "19", user);
+					String comId = user.getComId();
+					Role rsbzr = new Role();
+					rsbzr.setEnname("rsbzr");
+					Role role = roleDao.getByEnname(rsbzr);
+					users = userDao.findUserByRoleId(role.getId(), comId);
+				}
 			}else  if ("fgld".equals(taskDefKey)){
-				users = UserUtils.getByProssType(workRegularApply.getProcessInstanceId(),4);
-				if (users==null )
-					users = UserUtils.getByRoleActivityEnname("zjl", 3, applyOffice.getId(), "66", user);
-			}else  if ("zjl".equals(taskDefKey)){
-				users = UserUtils.getByProssType(workRegularApply.getProcessInstanceId(),5);
-				if (users==null )
-					users = UserUtils.getByRoleActivityEnname("rlzy",3,applyOffice.getId(),"66",user);
-			}else if ("rlzy".equals(taskDefKey)){
-				users = UserUtils.getByProssType(workRegularApply.getProcessInstanceId(),5);
+				users = UserUtils.getByProssType(workRegularApply.getProcessInstanceId(),3);
 			}else if ("modifyApply".equals(taskDefKey)){
 				users = UserUtils.getByProssType(workRegularApply.getProcessInstanceId(),1);
 			}