Commit b83a769b authored by suhuiguang's avatar suhuiguang

Merge branch 'developer' of http://172.16.10.76/moa/amos-boot-biz into developer

parents 2c8d0e5b 3bab2240
package com.yeejoin.amos.boot.biz.common.service.impl;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
......@@ -18,8 +19,6 @@ import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.service.IWorkflowExcuteService;
import com.yeejoin.amos.boot.biz.common.workflow.feign.WorkflowFeignService;
import ch.qos.logback.core.joran.conditional.IfAction;
@Service
public class WorkflowExcuteServiceImpl implements IWorkflowExcuteService {
......@@ -64,7 +63,11 @@ public class WorkflowExcuteServiceImpl implements IWorkflowExcuteService {
JSONArray taskDetailArray = teskObject.getJSONArray("data");
for (Object obj : taskDetailArray) {
JSONObject detail = JSONObject.parseObject(JSONObject.toJSONString(obj));
if ("制定计划+内容".equals(detail.getString("name")) || "现场确认".equals(detail.getString("name")) ) {
if ("制定计划+内容".equals(detail.getString("name")) || "现场确认".equals(detail.getString("name"))) {
String groupName = getFristFlowDetail(processInstanceId);
if (StringUtils.isBlank(groupName)) {
return map;
}
map.put("taskId", detail.getString("id"));
map.put("checkFlag", true);
map.put("name", detail.getString("name"));
......@@ -86,7 +89,7 @@ public class WorkflowExcuteServiceImpl implements IWorkflowExcuteService {
map.put("checkFlag", true);
map.put("name", detail.getString("name"));
map.put("assign", assignUser);
return map;
return map;
}
continue;
}
......@@ -168,4 +171,24 @@ public class WorkflowExcuteServiceImpl implements IWorkflowExcuteService {
}
return newDate + result;
}
/**
* 描述: 获取在流程启动时,直接完成的特定任务的执行角色信息。
* 作用:用来判断当前登录用户在任务回退到启动并完成的哪一步任务的执行权限,以及获取当前登录用户所属角色能够处理的当前任务的列表数据
* @param processInstanceId
* @return
*/
public String getFristFlowDetail(String processInstanceId) {
try {
JSONObject detail = workflowFeignService.getHistoricIdentityLinksForProcessInstance(processInstanceId);
if (ObjectUtils.isNotEmpty(detail.getJSONArray("data"))) {
JSONObject json = detail.getJSONArray("data").getJSONObject(1);
if (json.getBooleanValue("group")) {
return json.getString("groupId");
}
}
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
}
......@@ -182,6 +182,15 @@ public interface WorkflowFeignService {
* @return
* @throws ParseException
*/
@RequestMapping(value = "/activitiHistory/processes/queryCurrentUserHistoryTasks/list/{processDefinitionKey}",method = RequestMethod.GET)
JSONObject queryCurrentUserHistoryTasks(@PathVariable String processDefinitionKey)throws ParseException;
@RequestMapping(value = "/activitiHistory/historytasks/{processDefinitionKey}",method = RequestMethod.GET)
JSONObject queryHistoryTasks(@PathVariable String processDefinitionKey)throws ParseException;
/**
* 获取历史流程中带有执行角色组的流程信息
* @param processInstanceId
* @return
* @throws ParseException
*/
@RequestMapping(value = "/activitiHistory/processes/historytasks/getGroupNamelist/{processInstanceId}",method = RequestMethod.GET)
JSONObject getHistoricIdentityLinksForProcessInstance(@PathVariable("processInstanceId") String processInstanceId) throws ParseException;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment