| 
						
						
						
					 | 
					 | 
					@ -1,6 +1,7 @@ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					package com.hnac.hzinfo.inspect.task.service.impl; | 
					 | 
					 | 
					 | 
					package com.hnac.hzinfo.inspect.task.service.impl; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import com.alibaba.fastjson.JSON; | 
					 | 
					 | 
					 | 
					import com.alibaba.fastjson.JSON; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import com.baomidou.mybatisplus.core.toolkit.Wrappers; | 
					 | 
					 | 
					 | 
					import com.baomidou.mybatisplus.core.toolkit.Wrappers; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import com.google.common.collect.Lists; | 
					 | 
					 | 
					 | 
					import com.google.common.collect.Lists; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import com.hnac.hzims.operational.defect.constants.DefectConstant; | 
					 | 
					 | 
					 | 
					import com.hnac.hzims.operational.defect.constants.DefectConstant; | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					 | 
					@ -92,31 +93,35 @@ public class EventServiceImpl extends ServiceImpl<TaskEventMapper, EventEntity> | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						@Override | 
					 | 
					 | 
					 | 
						@Override | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						@Transactional(rollbackFor = Exception.class) | 
					 | 
					 | 
					 | 
						@Transactional(rollbackFor = Exception.class) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						public boolean addTaskEvent(EventAddVO eventVO){ | 
					 | 
					 | 
					 | 
						public boolean addTaskEvent(EventAddVO eventVO){ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							BladeUser user = AuthUtil.getUser(); | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							//第一次登记时,需领用任务
 | 
					 | 
					 | 
					 | 
							//第一次登记时,需领用任务
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							if(!AuthUtil.isAdministrator()){ | 
					 | 
					 | 
					 | 
							if(!AuthUtil.isAdministrator()){ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
								// 判断当前登录人是否在任务人员列表中
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
								ITaskService taskService = SpringUtil.getBean(ITaskService.class); | 
					 | 
					 | 
					 | 
								ITaskService taskService = SpringUtil.getBean(ITaskService.class); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
								TaskEntity taskEntity = taskService.getById(eventVO.getTaskId()); | 
					 | 
					 | 
					 | 
								TaskEntity taskEntity = taskService.getById(eventVO.getTaskId()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
								TaskUserEntity taskUserEntity = taskUserService.getOne(Wrappers.<TaskUserEntity>lambdaQuery().eq(TaskUserEntity::getTaskId,eventVO.getTaskId()).eq(TaskUserEntity::getUserId,user == null ? eventVO.getUserId() : user.getUserId())); | 
					 | 
					 | 
					 | 
								BladeUser user = AuthUtil.getUser(); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
								if(taskUserEntity==null){ | 
					 | 
					 | 
					 | 
								LambdaQueryWrapper<TaskUserEntity> wrapper = Wrappers.<TaskUserEntity>lambdaQuery() | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
										.eq(TaskUserEntity::getTaskId, eventVO.getTaskId()) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
										.eq(TaskUserEntity::getUserId, user == null ? eventVO.getUserId() : user.getUserId()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
								TaskUserEntity taskUserEntity = taskUserService.getOne(wrapper); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
								if(taskUserEntity == null){ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
									throw new ServiceException("该任务已被别人领取"); | 
					 | 
					 | 
					 | 
									throw new ServiceException("该任务已被别人领取"); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
								} | 
					 | 
					 | 
					 | 
								} | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
								if(TaskContants.ClaimStatusEnum.UN_COLLECT.getStatus().equals(taskUserEntity.getClaimStatus())){ | 
					 | 
					 | 
					 | 
								if(TaskContants.ClaimStatusEnum.UN_COLLECT.getStatus().equals(taskUserEntity.getClaimStatus())){ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
									taskUserEntity.setClaimStatus(TaskContants.ClaimStatusEnum.COLLECT.getStatus()); | 
					 | 
					 | 
					 | 
									taskUserEntity.setClaimStatus(TaskContants.ClaimStatusEnum.COLLECT.getStatus()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
									taskUserEntity.setClaimTime(LocalDateTime.now()); | 
					 | 
					 | 
					 | 
									taskUserEntity.setClaimTime(LocalDateTime.now()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
									taskUserService.updateById(taskUserEntity); | 
					 | 
					 | 
					 | 
									taskUserService.updateById(taskUserEntity); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
									if(PlanContants.PlanMethodEnum.SEIZE.getMethod().equals(taskEntity.getMethod())){//如果是抢占任务,删除能够抢占此任务的其他人
 | 
					 | 
					 | 
					 | 
									if(PlanContants.PlanMethodEnum.SEIZE.getMethod().equals(taskEntity.getMethod())){ | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
										taskUserService.remove(Wrappers.<TaskUserEntity>lambdaQuery().eq(TaskUserEntity::getTaskId,eventVO.getTaskId()).ne(TaskUserEntity::getId,taskUserEntity.getUserId())); | 
					 | 
					 | 
					 | 
										//如果是抢占任务,删除能够抢占此任务的其他人
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
										LambdaQueryWrapper<TaskUserEntity> removeUser = Wrappers.<TaskUserEntity>lambdaQuery() | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
												.eq(TaskUserEntity::getTaskId, eventVO.getTaskId()) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
												.ne(TaskUserEntity::getUserId, taskUserEntity.getUserId()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
										taskUserService.remove(removeUser); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
									} | 
					 | 
					 | 
					 | 
									} | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
								} | 
					 | 
					 | 
					 | 
								} | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							} | 
					 | 
					 | 
					 | 
							} | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							EventEntity event = BeanUtil.copy(eventVO, EventEntity.class); | 
					 | 
					 | 
					 | 
							EventEntity event = BeanUtil.copy(eventVO, EventEntity.class); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							event.setUserId(eventVO.getUserId()); | 
					 | 
					 | 
					 | 
							event.setUserId(eventVO.getUserId()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//		if(Func.isEmpty(user)){
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//			event.setTenantId("000000");
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//		}
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							event.setObjectId(eventVO.getObjId()); | 
					 | 
					 | 
					 | 
							event.setObjectId(eventVO.getObjId()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							event.setCode(CodeUtils.randomCode()); | 
					 | 
					 | 
					 | 
							event.setCode(CodeUtils.randomCode()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							boolean success = this.save(event); | 
					 | 
					 | 
					 | 
							boolean success = this.save(event); | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					 | 
					@ -160,18 +165,6 @@ public class EventServiceImpl extends ServiceImpl<TaskEventMapper, EventEntity> | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							if(success && fileList.size()>0){ | 
					 | 
					 | 
					 | 
							if(success && fileList.size()>0){ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
								success = eventAttachmentService.saveBatch(fileList); | 
					 | 
					 | 
					 | 
								success = eventAttachmentService.saveBatch(fileList); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							} | 
					 | 
					 | 
					 | 
							} | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							//如果是问题则启动工作流引擎
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							if(TaskContants.ProblemEnum.yes.getType().equals(eventVO.getIsProblem())){ | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
								//TODO 并入缺陷处理模块
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//			startFlow(user,taskObj,event);
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						/*		OperPhenomenonEntity phenomenon = new OperPhenomenonEntity(); | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
								phenomenon.setSourceCode(DefectConstant.DefectSourceEnum.XJ.getStatus()); | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
								phenomenon.setSourceId(event.getId()); | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
								phenomenon.setFinder(user == null ? eventVO.getUserId() : user.getUserId()); | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
								phenomenon.setDescripiton(eventVO.getDescription()); | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
								phenomenon.setInitResult(eventVO.getInitResult()); | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
								startPhenomenonFlow(phenomenon);*/ | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							} | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							checkProjectFinish(eventVO); | 
					 | 
					 | 
					 | 
							checkProjectFinish(eventVO); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							return success; | 
					 | 
					 | 
					 | 
							return success; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						} | 
					 | 
					 | 
					 | 
						} | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
  |