430 lines
17 KiB
Java
430 lines
17 KiB
Java
|
|
package com.sipai.controller.administration;
|
|||
|
|
|
|||
|
|
import java.text.SimpleDateFormat;
|
|||
|
|
import java.util.ArrayList;
|
|||
|
|
import java.util.Collections;
|
|||
|
|
import java.util.Comparator;
|
|||
|
|
import java.util.Date;
|
|||
|
|
import java.util.HashMap;
|
|||
|
|
import java.util.HashSet;
|
|||
|
|
import java.util.List;
|
|||
|
|
import java.util.Map;
|
|||
|
|
import java.util.Set;
|
|||
|
|
|
|||
|
|
import javax.annotation.Resource;
|
|||
|
|
import javax.servlet.http.HttpServletRequest;
|
|||
|
|
|
|||
|
|
import net.sf.json.JSONArray;
|
|||
|
|
|
|||
|
|
import org.activiti.engine.RuntimeService;
|
|||
|
|
import org.activiti.engine.TaskService;
|
|||
|
|
import org.activiti.engine.history.HistoricTaskInstance;
|
|||
|
|
import org.activiti.engine.impl.pvm.process.ActivityImpl;
|
|||
|
|
import org.activiti.engine.runtime.ProcessInstance;
|
|||
|
|
import org.activiti.engine.task.Task;
|
|||
|
|
import org.springframework.stereotype.Controller;
|
|||
|
|
import org.springframework.ui.Model;
|
|||
|
|
import org.springframework.web.bind.annotation.ModelAttribute;
|
|||
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|||
|
|
import org.springframework.web.bind.annotation.RequestParam;
|
|||
|
|
import org.springframework.web.servlet.ModelAndView;
|
|||
|
|
|
|||
|
|
import com.github.pagehelper.PageHelper;
|
|||
|
|
import com.github.pagehelper.PageInfo;
|
|||
|
|
import com.sipai.entity.activiti.WorkTask;
|
|||
|
|
import com.sipai.entity.administration.IndexWork;
|
|||
|
|
import com.sipai.entity.business.BusinessUnit;
|
|||
|
|
import com.sipai.entity.business.BusinessUnitAudit;
|
|||
|
|
import com.sipai.entity.business.BusinessUnitHandle;
|
|||
|
|
import com.sipai.entity.business.BusinessUnitRecord;
|
|||
|
|
import com.sipai.entity.user.Company;
|
|||
|
|
import com.sipai.entity.user.User;
|
|||
|
|
import com.sipai.service.activiti.WorkflowProcessDefinitionService;
|
|||
|
|
import com.sipai.service.activiti.WorkflowService;
|
|||
|
|
import com.sipai.service.administration.IndexWorkService;
|
|||
|
|
import com.sipai.service.business.BusinessUnitAuditService;
|
|||
|
|
import com.sipai.service.business.BusinessUnitHandleService;
|
|||
|
|
import com.sipai.service.user.UnitService;
|
|||
|
|
import com.sipai.service.user.UserService;
|
|||
|
|
import com.sipai.tools.ActivitiUtil;
|
|||
|
|
import com.sipai.tools.CommString;
|
|||
|
|
import com.sipai.tools.CommUtil;
|
|||
|
|
|
|||
|
|
@Controller
|
|||
|
|
@RequestMapping("/administration/indexWork")
|
|||
|
|
public class IndexWorkController {
|
|||
|
|
@Resource
|
|||
|
|
private IndexWorkService indexWorkService;
|
|||
|
|
@Resource
|
|||
|
|
private UnitService unitService;
|
|||
|
|
@Resource
|
|||
|
|
private WorkflowProcessDefinitionService workflowProcessDefinitionService;
|
|||
|
|
@Resource
|
|||
|
|
private BusinessUnitHandleService businessUnitHandleService;
|
|||
|
|
@Resource
|
|||
|
|
private BusinessUnitAuditService businessUnitAuditService;
|
|||
|
|
@Resource
|
|||
|
|
private WorkflowService workflowService;
|
|||
|
|
@Resource
|
|||
|
|
private RuntimeService runtimeService;
|
|||
|
|
@Resource
|
|||
|
|
private TaskService taskService;
|
|||
|
|
@Resource
|
|||
|
|
private UserService userService;
|
|||
|
|
|
|||
|
|
@RequestMapping("/showList.do")
|
|||
|
|
public String showList(HttpServletRequest request, Model model) {
|
|||
|
|
return "/administration/indexWorkList";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
@RequestMapping("/getList.do")
|
|||
|
|
public ModelAndView getList(HttpServletRequest request,Model model,
|
|||
|
|
@RequestParam(value = "page") Integer page,
|
|||
|
|
@RequestParam(value = "rows") Integer rows,
|
|||
|
|
@RequestParam(value = "sort", required = false) String sort,
|
|||
|
|
@RequestParam(value = "order", required = false) String order) {
|
|||
|
|
User cu = (User) request.getSession().getAttribute("cu");
|
|||
|
|
if (sort==null || sort.equals("id")) {
|
|||
|
|
sort = " insdt ";
|
|||
|
|
}
|
|||
|
|
if (order == null) {
|
|||
|
|
order = " desc ";
|
|||
|
|
}
|
|||
|
|
String orderstr = " order by "+sort+" "+order;
|
|||
|
|
String wherestr = " where 1=1 ";
|
|||
|
|
if (request.getParameter("search_code")!= null && !request.getParameter("search_code").isEmpty()) {
|
|||
|
|
wherestr += " and unit_id = '"+request.getParameter("search_code")+"'";
|
|||
|
|
}
|
|||
|
|
PageHelper.startPage(page, rows);
|
|||
|
|
List<IndexWork> list = this.indexWorkService.selectListByWhere(wherestr+orderstr);
|
|||
|
|
PageInfo<IndexWork> pInfo = new PageInfo<IndexWork>(list);
|
|||
|
|
JSONArray jsonArray = JSONArray.fromObject(list);
|
|||
|
|
String result = "{\"total\":"+pInfo.getTotal()+",\"rows\":"+jsonArray+"}";
|
|||
|
|
model.addAttribute("result",result);
|
|||
|
|
return new ModelAndView("result");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
@RequestMapping("/add.do")
|
|||
|
|
public String doadd (HttpServletRequest request,Model model) {
|
|||
|
|
String companyId = request.getParameter("companyId");
|
|||
|
|
Company company = this.unitService.getCompById(companyId);
|
|||
|
|
String id = company.getEname()+"-ZBKZ-"+CommUtil.nowDate().replaceAll("[[\\s-:punct:]]","");
|
|||
|
|
model.addAttribute("id",id);
|
|||
|
|
model.addAttribute("company",company);
|
|||
|
|
return "/administration/indexWorkAdd";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
@RequestMapping("/save.do")
|
|||
|
|
public String dosave(HttpServletRequest request,Model model,
|
|||
|
|
@ModelAttribute IndexWork indexWork) {
|
|||
|
|
User cu = (User) request.getSession().getAttribute("cu");
|
|||
|
|
indexWork.setInsdt(CommUtil.nowDate());
|
|||
|
|
indexWork.setInsuser(cu.getId());
|
|||
|
|
int result = this.indexWorkService.save(indexWork);
|
|||
|
|
String resultstr = "{\"res\":\""+result+"\",\"id\":\""+indexWork.getId()+"\"}";
|
|||
|
|
model.addAttribute("result",resultstr);
|
|||
|
|
return "result";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
@RequestMapping("/delete.do")
|
|||
|
|
public String dodelete(HttpServletRequest request,Model model,
|
|||
|
|
@RequestParam(value = "id") String id) {
|
|||
|
|
int result = this.indexWorkService.deleteById(id);
|
|||
|
|
model.addAttribute("result",result);
|
|||
|
|
return "result";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
@RequestMapping("/deletes.do")
|
|||
|
|
public String dodeletes(HttpServletRequest request,Model model,
|
|||
|
|
@RequestParam(value = "ids") String ids){
|
|||
|
|
ids = ids.replace(",","','");
|
|||
|
|
int result = this.indexWorkService.deleteByWhere("where id in ('"+ids+"')");
|
|||
|
|
model.addAttribute("result",result);
|
|||
|
|
return "result";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
@RequestMapping("/edit.do")
|
|||
|
|
public String doedit(HttpServletRequest request,Model model,
|
|||
|
|
@RequestParam(value = "id") String id) {
|
|||
|
|
IndexWork indexWork = this.indexWorkService.selectById(id);
|
|||
|
|
model.addAttribute("indexWork", indexWork);
|
|||
|
|
return "/administration/indexWorkEdit";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
@RequestMapping("/update.do")
|
|||
|
|
public String doupdate(HttpServletRequest request,Model model,
|
|||
|
|
@ModelAttribute IndexWork indexWork) {
|
|||
|
|
User cu = (User) request.getSession().getAttribute("cu");
|
|||
|
|
indexWork.setInsdt(CommUtil.nowDate());
|
|||
|
|
indexWork.setInsuser(cu.getId());
|
|||
|
|
int result = this.indexWorkService.update(indexWork);
|
|||
|
|
String resstr="{\"res\":\""+result+"\",\"id\":\""+indexWork.getId()+"\"}";
|
|||
|
|
model.addAttribute("result", resstr);
|
|||
|
|
return "result";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
@RequestMapping("/view.do")
|
|||
|
|
public String doview(HttpServletRequest request,Model model,
|
|||
|
|
@RequestParam(value = "id") String id){
|
|||
|
|
IndexWork indexWork = this.indexWorkService.selectById(id);
|
|||
|
|
model.addAttribute("indexWork", indexWork);
|
|||
|
|
return "/administration/indexWorkView";
|
|||
|
|
}
|
|||
|
|
/**
|
|||
|
|
* 更新,启动指标审核流程
|
|||
|
|
* */
|
|||
|
|
@RequestMapping("/startProcess.do")
|
|||
|
|
public String dostartProcess(HttpServletRequest request,Model model,
|
|||
|
|
@ModelAttribute IndexWork indexWork){
|
|||
|
|
User cu= (User)request.getSession().getAttribute("cu");
|
|||
|
|
indexWork.setInsuser(cu.getId());
|
|||
|
|
indexWork.setInsdt(CommUtil.nowDate());
|
|||
|
|
indexWorkService.update(indexWork);
|
|||
|
|
indexWork = indexWorkService.selectById(indexWork.getId());
|
|||
|
|
int result=0;
|
|||
|
|
try {
|
|||
|
|
result =this.indexWorkService.startProcess(indexWork);
|
|||
|
|
} catch (Exception e) {
|
|||
|
|
// TODO: handle exception
|
|||
|
|
e.printStackTrace();
|
|||
|
|
}
|
|||
|
|
String resstr="{\"res\":\""+result+"\",\"id\":\""+indexWork.getId()+"\"}";
|
|||
|
|
model.addAttribute("result", resstr);
|
|||
|
|
return "result";
|
|||
|
|
}
|
|||
|
|
/**
|
|||
|
|
* 查看指标处理流程详情
|
|||
|
|
* @param request
|
|||
|
|
* @param model
|
|||
|
|
* @return
|
|||
|
|
*/
|
|||
|
|
@RequestMapping("/showProcessIndexWorkView.do")
|
|||
|
|
public String showProcessIndexWorkView(HttpServletRequest request,Model model){
|
|||
|
|
String indexWorkId = request.getParameter("id");
|
|||
|
|
IndexWork indexWork = this.indexWorkService.selectById(indexWorkId);
|
|||
|
|
request.setAttribute("business", indexWork);
|
|||
|
|
List<BusinessUnitRecord> businessUnitRecords = new ArrayList<>();
|
|||
|
|
BusinessUnitRecord businessUnitRecord = new BusinessUnitRecord(indexWork);
|
|||
|
|
businessUnitRecords.add(businessUnitRecord);
|
|||
|
|
|
|||
|
|
List<WorkTask> workTasks=workflowProcessDefinitionService.getAllPDTask(indexWork.getProcessdefid(), "desc");
|
|||
|
|
List<String> keys=new ArrayList<>();
|
|||
|
|
for (WorkTask workTask : workTasks) {
|
|||
|
|
keys.add(workTask.getTaskKey());
|
|||
|
|
}
|
|||
|
|
Set set = new HashSet();
|
|||
|
|
set.addAll(keys);
|
|||
|
|
keys=new ArrayList<>();
|
|||
|
|
keys.addAll(set);
|
|||
|
|
for (String item : keys) {
|
|||
|
|
switch (item) {
|
|||
|
|
case BusinessUnit.UNIT_IndexWork_HANDLE:
|
|||
|
|
List<BusinessUnitHandle> list = businessUnitHandleService.selectListByWhere("where businessid='"+indexWorkId+"' ");
|
|||
|
|
for (BusinessUnitHandle businessUnitHandle : list) {
|
|||
|
|
businessUnitRecord = new BusinessUnitRecord(businessUnitHandle);
|
|||
|
|
businessUnitRecords.add(businessUnitRecord);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case BusinessUnit.UNIT_IndexWork_AUDIT:
|
|||
|
|
List<BusinessUnitAudit> list_audit = businessUnitAuditService.selectListByWhere("where businessid='"+indexWorkId+"' ");
|
|||
|
|
for (BusinessUnitAudit businessUnitAudit : list_audit) {
|
|||
|
|
businessUnitRecord = new BusinessUnitRecord(businessUnitAudit);
|
|||
|
|
businessUnitRecords.add(businessUnitRecord);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
default:
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
//展示最新任务是否签收
|
|||
|
|
String processId = indexWork.getProcessid();
|
|||
|
|
List<HistoricTaskInstance> list=this.workflowService.getHistoryService() // 历史相关Service
|
|||
|
|
.createHistoricTaskInstanceQuery() // 创建历史任务实例查询
|
|||
|
|
.processInstanceId(processId) // 用流程实例id查询
|
|||
|
|
.list();
|
|||
|
|
for (HistoricTaskInstance task : list) {
|
|||
|
|
if (task.getAssignee()==null || task.getClaimTime()==null) {
|
|||
|
|
continue;
|
|||
|
|
}
|
|||
|
|
businessUnitRecord = new BusinessUnitRecord(task);
|
|||
|
|
businessUnitRecords.add(businessUnitRecord);
|
|||
|
|
}
|
|||
|
|
Collections.sort(businessUnitRecords, new Comparator<BusinessUnitRecord>() {
|
|||
|
|
public int compare(BusinessUnitRecord o1, BusinessUnitRecord o2) {
|
|||
|
|
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
|
|||
|
|
try{
|
|||
|
|
Date dt1 = df.parse(o1.getInsdt());
|
|||
|
|
Date dt2 = df.parse(o2.getInsdt());
|
|||
|
|
if (dt1.getTime() > dt2.getTime()) {
|
|||
|
|
return 1;
|
|||
|
|
} else if (dt1.getTime() < dt2.getTime()) {
|
|||
|
|
return -1;
|
|||
|
|
} else {
|
|||
|
|
return 0;
|
|||
|
|
}
|
|||
|
|
}catch(Exception e){
|
|||
|
|
e.printStackTrace();
|
|||
|
|
return 0;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
JSONArray jsonArray =JSONArray.fromObject(businessUnitRecords);
|
|||
|
|
model.addAttribute("businessUnitRecords",jsonArray);
|
|||
|
|
//检测流程实例是否结束,结束则历史记录最后节点变化
|
|||
|
|
long num =runtimeService.createProcessInstanceQuery().processInstanceId(indexWork.getProcessid()).count();
|
|||
|
|
if(num>0){
|
|||
|
|
model.addAttribute("finishFlag", false);
|
|||
|
|
}else{
|
|||
|
|
model.addAttribute("finishFlag", true);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(request.getParameter("inModal")!=null){
|
|||
|
|
//判断显示在流程处理模态框右侧
|
|||
|
|
return "administration/indexWorkExecuteViewInModal";
|
|||
|
|
}else{
|
|||
|
|
return "administration/indexWorkExecuteView";
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
/**
|
|||
|
|
* 显示指标审核
|
|||
|
|
* */
|
|||
|
|
@RequestMapping("/showAuditIndexWork.do")
|
|||
|
|
public String showAuditIndexWork(HttpServletRequest request,Model model){
|
|||
|
|
String taskId = request.getParameter("taskId");
|
|||
|
|
String processInstanceId = request.getParameter("processInstanceId");
|
|||
|
|
BusinessUnitAudit businessUnitAudit=new BusinessUnitAudit();
|
|||
|
|
|
|||
|
|
Task task = this.taskService.createTaskQuery().taskId(taskId).singleResult();
|
|||
|
|
model.addAttribute("taskName", task.getName());
|
|||
|
|
|
|||
|
|
businessUnitAudit.setId(CommUtil.getUUID());
|
|||
|
|
businessUnitAudit.setProcessid(processInstanceId);
|
|||
|
|
businessUnitAudit.setTaskid(taskId);
|
|||
|
|
ProcessInstance pInstance=runtimeService.createProcessInstanceQuery()
|
|||
|
|
.processInstanceId(processInstanceId)
|
|||
|
|
.singleResult();
|
|||
|
|
businessUnitAudit.setBusinessid(pInstance.getBusinessKey());
|
|||
|
|
businessUnitAudit.setTaskdefinitionkey(task.getTaskDefinitionKey());
|
|||
|
|
model.addAttribute("businessUnitAudit", businessUnitAudit);
|
|||
|
|
String indexWorkId= pInstance.getBusinessKey();
|
|||
|
|
IndexWork indexWork = this.indexWorkService.selectById(indexWorkId);
|
|||
|
|
model.addAttribute("indexWork", indexWork);
|
|||
|
|
|
|||
|
|
//获取任务下一节点,若为任务节点,则显示目标用户div,否则不显示
|
|||
|
|
List<ActivityImpl> activityImpls=workflowProcessDefinitionService.getNEXTActivities(task.getProcessDefinitionId(), task.getTaskDefinitionKey());
|
|||
|
|
if (activityImpls.size()>0) {
|
|||
|
|
model.addAttribute("showTargetUsersFlag", true);
|
|||
|
|
}else{
|
|||
|
|
model.addAttribute("showTargetUsersFlag", false);
|
|||
|
|
}
|
|||
|
|
return "administration/indexWorkAudit";
|
|||
|
|
}
|
|||
|
|
/**
|
|||
|
|
* 流程流转
|
|||
|
|
* */
|
|||
|
|
@RequestMapping("/AuditIndexWork.do")
|
|||
|
|
public String doAuditIndexWork(HttpServletRequest request,Model model,
|
|||
|
|
@ModelAttribute BusinessUnitAudit businessUnitAudit){
|
|||
|
|
User cu= (User)request.getSession().getAttribute("cu");
|
|||
|
|
int result=0;
|
|||
|
|
businessUnitAudit.setInsuser(cu.getId());
|
|||
|
|
businessUnitAudit.setInsdt(CommUtil.nowDate());
|
|||
|
|
result =this.indexWorkService.doAudit(businessUnitAudit);
|
|||
|
|
String resstr="{\"res\":\""+result+"\",\"id\":\""+businessUnitAudit.getId()+"\"}";
|
|||
|
|
model.addAttribute("result", resstr);
|
|||
|
|
return "result";
|
|||
|
|
}
|
|||
|
|
/**
|
|||
|
|
* 显示指标业务处理
|
|||
|
|
* */
|
|||
|
|
@RequestMapping("/showIndexWorkHandle.do")
|
|||
|
|
public String showIndexWorkHandle(HttpServletRequest request,Model model){
|
|||
|
|
String taskId = request.getParameter("taskId");
|
|||
|
|
String processInstanceId = request.getParameter("processInstanceId");
|
|||
|
|
String unitId = request.getParameter("unitId");
|
|||
|
|
ProcessInstance pInstance=runtimeService.createProcessInstanceQuery()
|
|||
|
|
.processInstanceId(processInstanceId)
|
|||
|
|
.singleResult();
|
|||
|
|
BusinessUnitHandle businessUnitHandle = new BusinessUnitHandle();
|
|||
|
|
Task task = this.taskService.createTaskQuery().taskId(taskId).singleResult();
|
|||
|
|
model.addAttribute("taskName", task.getName());
|
|||
|
|
List<BusinessUnitHandle> businessUnitHandles = this.businessUnitHandleService.selectListByWhere("where processid='"+processInstanceId+"' and taskId='"+taskId+"'");
|
|||
|
|
if(businessUnitHandles!= null && businessUnitHandles.size()>0){
|
|||
|
|
businessUnitHandle = businessUnitHandles.get(0);
|
|||
|
|
//若任务退回后,需更新新的任务id
|
|||
|
|
businessUnitHandle.setTaskid(taskId);
|
|||
|
|
}else{
|
|||
|
|
businessUnitHandle.setId(CommUtil.getUUID());
|
|||
|
|
businessUnitHandle.setProcessid(processInstanceId);
|
|||
|
|
businessUnitHandle.setTaskid(taskId);
|
|||
|
|
businessUnitHandle.setBusinessid(pInstance.getBusinessKey());
|
|||
|
|
businessUnitHandle.setTaskdefinitionkey(task.getTaskDefinitionKey());
|
|||
|
|
businessUnitHandle.setUnitid(unitId);
|
|||
|
|
}
|
|||
|
|
String userIds = businessUnitHandle.getTargetusers();
|
|||
|
|
if(userIds!= null && !userIds.isEmpty()){
|
|||
|
|
List<User> users = userService.selectListByWhere("where id in('"+userIds.replace(",", "','")+"')");
|
|||
|
|
String targetUsersName ="";
|
|||
|
|
for (User user : users) {
|
|||
|
|
if(!targetUsersName.isEmpty()){
|
|||
|
|
targetUsersName+=",";
|
|||
|
|
}
|
|||
|
|
targetUsersName+=user.getCaption();
|
|||
|
|
}
|
|||
|
|
model.addAttribute("targetUsersName", targetUsersName);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
model.addAttribute("businessUnitHandle", businessUnitHandle);
|
|||
|
|
model.addAttribute("nowDate", CommUtil.nowDate());
|
|||
|
|
String indexWorkId = pInstance.getBusinessKey();
|
|||
|
|
IndexWork indexWork = this.indexWorkService.selectById(indexWorkId);
|
|||
|
|
List<BusinessUnitAudit> list = this.businessUnitAuditService.selectListByWhere("where businessId = '"+indexWorkId+"' order by insdt desc ");
|
|||
|
|
if(list!=null && list.size()>0){
|
|||
|
|
model.addAttribute("businessUnitAudit", list.get(0));
|
|||
|
|
}
|
|||
|
|
model.addAttribute("indexWork", indexWork);
|
|||
|
|
return "administration/indexWorkHandle";
|
|||
|
|
}
|
|||
|
|
/**
|
|||
|
|
* 流程流程,指标业务处理提交
|
|||
|
|
* */
|
|||
|
|
@RequestMapping("/submitIndexWorkHandle.do")
|
|||
|
|
public String dosubmitIndexWorkHandle(HttpServletRequest request,Model model,
|
|||
|
|
@ModelAttribute BusinessUnitHandle businessUnitHandle){
|
|||
|
|
String routeNum=request.getParameter("routeNum");
|
|||
|
|
User cu= (User)request.getSession().getAttribute("cu");
|
|||
|
|
int result=0;
|
|||
|
|
if(!this.businessUnitHandleService.checkExit(businessUnitHandle)) {
|
|||
|
|
businessUnitHandle.setInsuser(cu.getId());
|
|||
|
|
businessUnitHandle.setInsdt(CommUtil.nowDate());
|
|||
|
|
result =this.businessUnitHandleService.save(businessUnitHandle);
|
|||
|
|
}else {
|
|||
|
|
result =this.businessUnitHandleService.update(businessUnitHandle);
|
|||
|
|
}
|
|||
|
|
try {
|
|||
|
|
Map<String, Object> variables = new HashMap<String, Object>();
|
|||
|
|
variables =ActivitiUtil.fixVariableWithRoute(variables, true, routeNum);
|
|||
|
|
variables.put(CommString.ACTI_KEK_Candidate_Users, businessUnitHandle.getTargetusers());
|
|||
|
|
variables.put(CommString.ACTI_KEK_Assignee, null);
|
|||
|
|
taskService.complete(businessUnitHandle.getTaskid(), variables);
|
|||
|
|
//发送消息
|
|||
|
|
if(businessUnitHandle.getTargetusers()!=null && !businessUnitHandle.getTargetusers().isEmpty()){
|
|||
|
|
//补全所有字段信息
|
|||
|
|
businessUnitHandle = businessUnitHandleService.selectById(businessUnitHandle.getId());
|
|||
|
|
BusinessUnitRecord businessUnitRecord = new BusinessUnitRecord(businessUnitHandle);
|
|||
|
|
businessUnitRecord.sendMessage(businessUnitHandle.getTargetusers(),"");
|
|||
|
|
}
|
|||
|
|
this.indexWorkService.updateStatus(businessUnitHandle.getBusinessid());
|
|||
|
|
} catch (Exception e) {
|
|||
|
|
// TODO: handle exception
|
|||
|
|
e.printStackTrace();
|
|||
|
|
result=0;
|
|||
|
|
}
|
|||
|
|
String resstr="{\"res\":\""+result+"\",\"id\":\""+businessUnitHandle.getId()+"\"}";
|
|||
|
|
model.addAttribute("result", resstr);
|
|||
|
|
return "result";
|
|||
|
|
}
|
|||
|
|
}
|