| | |
| | | import com.java110.core.base.smo.BaseServiceSMO; |
| | | import com.java110.core.smo.complaint.IComplaintInnerServiceSMO; |
| | | import com.java110.core.smo.complaintUser.IComplaintUserInnerServiceSMO; |
| | | import com.java110.dto.FeeDto; |
| | | import com.java110.core.smo.user.IUserInnerServiceSMO; |
| | | import com.java110.dto.PageDto; |
| | | import com.java110.dto.auditMessage.AuditMessageDto; |
| | | import com.java110.dto.auditUser.AuditUserDto; |
| | | import com.java110.dto.complaint.ComplaintDto; |
| | | import com.java110.dto.user.UserDto; |
| | | import com.java110.entity.audit.AuditUser; |
| | | import com.java110.utils.util.Assert; |
| | | import com.java110.utils.util.StringUtil; |
| | | import org.activiti.engine.HistoryService; |
| | | import org.activiti.engine.ProcessEngine; |
| | | import org.activiti.engine.RuntimeService; |
| | | import org.activiti.engine.TaskService; |
| | | import org.activiti.engine.history.HistoricActivityInstance; |
| | | import org.activiti.engine.history.HistoricProcessInstance; |
| | | import org.activiti.engine.history.HistoricTaskInstance; |
| | | import org.activiti.engine.history.HistoricTaskInstanceQuery; |
| | | import org.activiti.engine.impl.identity.Authentication; |
| | | import org.activiti.engine.query.Query; |
| | | import org.activiti.engine.runtime.Execution; |
| | | import org.activiti.engine.runtime.ExecutionQuery; |
| | | import org.activiti.engine.runtime.ProcessInstance; |
| | | import org.activiti.engine.task.Comment; |
| | | import org.activiti.engine.task.Task; |
| | |
| | | |
| | | @Autowired |
| | | private IComplaintInnerServiceSMO complaintInnerServiceSMOImpl; |
| | | |
| | | @Autowired |
| | | private IUserInnerServiceSMO userInnerServiceSMOImpl; |
| | | |
| | | |
| | | /** |
| | |
| | | */ |
| | | public long getUserHistoryTaskCount(@RequestBody AuditUser user) { |
| | | HistoryService historyService = processEngine.getHistoryService(); |
| | | Query query = historyService.createHistoricTaskInstanceQuery() |
| | | // Query query = historyService.createHistoricTaskInstanceQuery() |
| | | // .processDefinitionKey("complaint") |
| | | // .taskAssignee(user.getUserId()); |
| | | |
| | | HistoricTaskInstanceQuery historicTaskInstanceQuery = historyService.createHistoricTaskInstanceQuery() |
| | | .processDefinitionKey("complaint") |
| | | .taskAssignee(user.getUserId()); |
| | | if (!StringUtil.isEmpty(user.getAuditLink()) && "START".equals(user.getAuditLink())) { |
| | | historicTaskInstanceQuery.taskName("complaint"); |
| | | } else if (!StringUtil.isEmpty(user.getAuditLink()) && "AUDIT".equals(user.getAuditLink())) { |
| | | historicTaskInstanceQuery.taskName("complaitDealUser"); |
| | | } |
| | | |
| | | Query query = historicTaskInstanceQuery; |
| | | return query.count(); |
| | | } |
| | | |
| | |
| | | */ |
| | | public List<ComplaintDto> getUserHistoryTasks(@RequestBody AuditUser user) { |
| | | HistoryService historyService = processEngine.getHistoryService(); |
| | | Query query = historyService.createHistoricTaskInstanceQuery() |
| | | |
| | | HistoricTaskInstanceQuery historicTaskInstanceQuery = historyService.createHistoricTaskInstanceQuery() |
| | | .processDefinitionKey("complaint") |
| | | .taskAssignee(user.getUserId()) |
| | | .orderByHistoricTaskInstanceStartTime() |
| | | .desc(); |
| | | .taskAssignee(user.getUserId()); |
| | | if (!StringUtil.isEmpty(user.getAuditLink()) && "START".equals(user.getAuditLink())) { |
| | | historicTaskInstanceQuery.taskName("complaint"); |
| | | } else if (!StringUtil.isEmpty(user.getAuditLink()) && "AUDIT".equals(user.getAuditLink())) { |
| | | historicTaskInstanceQuery.taskName("complaitDealUser"); |
| | | } |
| | | |
| | | Query query = historicTaskInstanceQuery.orderByHistoricTaskInstanceStartTime().desc(); |
| | | |
| | | List<HistoricTaskInstance> list = null; |
| | | if (user.getPage() != PageDto.DEFAULT_PAGE) { |
| | |
| | | taskService.addComment(complaintDto.getTaskId(), processInstanceId, complaintDto.getAuditMessage()); |
| | | Map<String, Object> variables = new HashMap<String, Object>(); |
| | | variables.put("auditCode", complaintDto.getAuditCode()); |
| | | //variables.put("userId", complaintDto.getCurrentUserId()); |
| | | variables.put("currentUserId", complaintDto.getCurrentUserId()); |
| | | //taskService.setAssignee(complaintDto.getTaskId(),complaintDto.getCurrentUserId()); |
| | | //taskService.addCandidateUser(complaintDto.getTaskId(), complaintDto.getCurrentUserId()); |
| | | //taskService.claim(complaintDto.getTaskId(), complaintDto.getCurrentUserId()); |
| | | taskService.complete(complaintDto.getTaskId(), variables); |
| | | |
| | | ProcessInstance pi = runtimeService.createProcessInstanceQuery().processInstanceId(processInstanceId).singleResult(); |
| | |
| | | return auditMessageDtos; |
| | | } |
| | | |
| | | /** |
| | | * 获取任务当前处理人 |
| | | * |
| | | * @param complaintDto |
| | | * @return |
| | | */ |
| | | public ComplaintDto getTaskCurrentUser(@RequestBody ComplaintDto complaintDto) { |
| | | |
| | | TaskService taskService = processEngine.getTaskService(); |
| | | Task task = taskService.createTaskQuery().processInstanceBusinessKey(complaintDto.getComplaintId()).singleResult(); |
| | | |
| | | if (task == null) { |
| | | complaintDto.setCurrentUserId(""); |
| | | complaintDto.setCurrentUserName(""); |
| | | complaintDto.setCurrentUserTel(""); |
| | | return complaintDto; |
| | | } |
| | | |
| | | String userId = task.getAssignee(); |
| | | List<UserDto> users = userInnerServiceSMOImpl.getUserInfo(new String[]{userId}); |
| | | |
| | | if (users == null || users.size() == 0) { |
| | | complaintDto.setCurrentUserId(""); |
| | | complaintDto.setCurrentUserName(""); |
| | | complaintDto.setCurrentUserTel(""); |
| | | return complaintDto; |
| | | } |
| | | |
| | | complaintDto.setCurrentUserId(userId); |
| | | complaintDto.setCurrentUserName(users.get(0).getName()); |
| | | complaintDto.setCurrentUserTel(users.get(0).getTel()); |
| | | return complaintDto; |
| | | |
| | | } |
| | | |
| | | |
| | | public ProcessEngine getProcessEngine() { |
| | | return processEngine; |