Commit 7bb1b46d authored by 赵啸非's avatar 赵啸非

修改部分pom

parent de807d61
......@@ -8,6 +8,7 @@ import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* 流程定义实体类
......@@ -53,4 +54,9 @@ public class FlowProcDefPdu implements Serializable {
private Date deploymentTime;
private List<FlowTaskVoPdu> flowTaskPdus;
//private
}
......@@ -10,11 +10,15 @@ import com.mortals.framework.model.Result;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.pdu.api.ApiRespPdu;
import com.mortals.xhx.common.pdu.flow.FlowProcDefPdu;
import com.mortals.xhx.common.pdu.flow.FlowTaskVoPdu;
import com.mortals.xhx.feign.flowable.IApiFlowDefinitionFeign;
import com.mortals.xhx.flowable.FlowDefSaveReq;
import lombok.extern.apachecommons.CommonsLog;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang.StringUtils;
import org.flowable.bpmn.model.BpmnModel;
import org.flowable.bpmn.model.UserTask;
import org.flowable.engine.repository.Deployment;
import org.flowable.engine.repository.ProcessDefinition;
import org.flowable.engine.repository.ProcessDefinitionQuery;
......@@ -25,9 +29,11 @@ import org.springframework.beans.BeanUtils;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.io.InputStream;
import java.nio.charset.StandardCharsets;
import java.util.*;
import java.util.stream.Collectors;
/**
* 流程定义服务类
......@@ -42,6 +48,9 @@ public class FlowDefinitionServiceImpl extends FlowServiceFactory implements IAp
private static final String BPMN_FILE_SUFFIX = ".bpmn";
@Resource
private IBpmnModelService bpmnModelService;
@Override
public ApiRespPdu<Result<FlowProcDefPdu>> list(String tenantId, PageInfo pageInfo) {
......@@ -70,6 +79,52 @@ public class FlowDefinitionServiceImpl extends FlowServiceFactory implements IAp
// 流程定义时间
reProcDef.setDeploymentTime(deployment.getDeploymentTime());
List<UserTask> datas = bpmnModelService.findUserTasksByProcessDefId(processDefinition.getId());
List<UserTask> userTasks = new ArrayList<>();
List<FlowTaskVoPdu> flowTaskPdus = new ArrayList<>();
if (CollectionUtils.isNotEmpty(datas)) {
//获取所有审核带el表达式
userTasks = datas.stream().filter(userTask -> {
boolean isAssignee = StringUtils.indexOf(userTask.getAssignee(), "${") != -1;
boolean isCandi = false;
long count = userTask.getCandidateUsers().stream().filter(item -> StringUtils.indexOf(item, "${") != -1).count();
if (count > 0) {
isCandi = true;
}
boolean isGroup = false;
long count1 = userTask.getCandidateGroups().stream().filter(item -> StringUtils.indexOf(item, "${") != -1).count();
if (count1 > 0) {
isGroup = true;
}
return isAssignee || isCandi || isGroup;
}).collect(Collectors.toList());
}
userTasks.forEach(userTask -> {
FlowTaskVoPdu flowTaskPdu = new FlowTaskVoPdu();
flowTaskPdu.setTargetKey(userTask.getId());
flowTaskPdu.setName(userTask.getName());
if (userTask.getLoopCharacteristics() != null) {
String inputDataItem = userTask.getLoopCharacteristics().getInputDataItem();
if (StringUtils.isNotBlank(inputDataItem)) {
flowTaskPdu.setMultiple(YesNoEnum.YES.getValue());
//并行表达式
flowTaskPdu.setEl(inputDataItem);
}
} else {
flowTaskPdu.setMultiple(YesNoEnum.NO.getValue());
flowTaskPdu.setAssignee(userTask.getAssignee());
flowTaskPdu.setCandidateUsers(userTask.getCandidateUsers());
flowTaskPdu.setCandidateGroups(userTask.getCandidateGroups());
flowTaskPdu.setEl(userTask.getAssignee());
}
flowTaskPdus.add(flowTaskPdu);
});
reProcDef.setFlowTaskPdus(flowTaskPdus);
dataList.add(reProcDef);
}
......
......@@ -12,6 +12,8 @@ import com.mortals.xhx.busiz.rsp.FlowProcDef;
import com.mortals.xhx.busiz.rsp.FlowProcStartInfo;
import com.mortals.xhx.common.code.ApiRespCodeEnum;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.model.RequestTaskReq;
import com.mortals.xhx.common.pdu.api.ApiReqPdu;
import com.mortals.xhx.common.pdu.api.ApiRespPdu;
import com.mortals.xhx.common.pdu.flow.FlowProcDefPdu;
import com.mortals.xhx.common.pdu.flow.FlowViewerPdu;
......@@ -68,13 +70,13 @@ public class FlowDefinitionApiController {
page.setPrePageResult(req.getPage().getPer() == 0 ? -1 : req.getPage().getPer());
page.setCurrPage(req.getPage().getSize() == 0 ? 1 : req.getPage().getSize());
}
ApiRespPdu<Result<FlowProcDefPdu>> resp = apiFlowDefinitionFeign.list( req.getQuery().getPlatformSn(), page);
ApiRespPdu<Result<FlowProcDefPdu>> resp = apiFlowDefinitionFeign.list(req.getQuery().getPlatformSn(), page);
if (YesNoEnum.NO.getValue() == resp.getCode()) {
log.error("获取流程定义列表异常:" + resp.getMsg());
rsp.setCode(ApiRespCodeEnum.FAILED.getValue());
rsp.setMsg(resp.getMsg());
return rsp;
// throw new AppException("获取流程定义列表异常:" + resp.getMsg());
// throw new AppException("获取流程定义列表异常:" + resp.getMsg());
}
List<FlowProcDef> collect = resp.getData().getList().stream().map(item -> {
......@@ -129,6 +131,7 @@ public class FlowDefinitionApiController {
}
/**
* 根据流程定义 ID 获取流程图 返回BASE64图片
*
......@@ -154,7 +157,7 @@ public class FlowDefinitionApiController {
return rsp;
}
// log.info("响应【获取流程图】【响应体】--> " + JSONObject.toJSONString(rsp));
// log.info("响应【获取流程图】【响应体】--> " + JSONObject.toJSONString(rsp));
return rsp;
}
......
......@@ -8,16 +8,16 @@ import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.model.OrderCol;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.busiz.req.DefinitionReq;
import com.mortals.xhx.common.code.PlatformStatus;
import com.mortals.xhx.common.pdu.api.ApiRespPdu;
import com.mortals.xhx.common.pdu.flow.FlowSaveXmlPdu;
import com.mortals.xhx.feign.flowable.IApiFlowDefinitionFeign;
import com.mortals.xhx.module.platform.model.PlatformEntity;
import com.mortals.xhx.module.platform.service.PlatformService;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.mortals.framework.web.BaseCRUDJsonMappingController;
import com.mortals.xhx.module.platform.model.PlatformModelinfoEntity;
import com.mortals.xhx.module.platform.service.PlatformModelinfoService;
......@@ -46,6 +46,10 @@ public class PlatformModelinfoController extends BaseCRUDJsonBodyMappingControll
@Autowired
private PlatformService platformService;
@Autowired
private IApiFlowDefinitionFeign apiFlowDefinitionFeign;
@Override
protected void doListBefore(PlatformModelinfoEntity query, Map<String, Object> model, Context context) throws AppException {
......@@ -93,6 +97,20 @@ public class PlatformModelinfoController extends BaseCRUDJsonBodyMappingControll
}
@PostMapping("deploy/delete")
public ApiRespPdu delete(@RequestParam String deployId) {
ApiRespPdu<String> respPdu = new ApiRespPdu<>();
try {
respPdu = apiFlowDefinitionFeign.delete(deployId);
} catch (Exception e) {
log.error("error", e);
}
return respPdu;
}
/**
* 导入附件
*/
......
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