Commit 1c733588 by 赵剑炜

联调工作流

parent ba297766
......@@ -81,6 +81,7 @@ public class ProductServiceImpl extends ServiceImpl<ProductMapper, Product> impl
@Override
public PageResult<Product> findPage(ProductReq req) {
LambdaQueryWrapper<Product> wrapper = createWrapper(req);
Page<Product> page = this.page(PageFactory.getDefaultPage(), wrapper);
return PageResultFactory.createPageResult(page);
}
......
......@@ -37,6 +37,7 @@ public class ClearLogAction implements JobAction {
@Override
public void action() {
//获取两月前的日期
// ConfigExpander.getClearLogOffsetValue()
Integer offset = 60;
//Date maxTime = DateUtil.offsetMonth(new Date(), offset);
Date maxTime = DateUtil.offsetDay(new Date(),offset);
......
......@@ -12,9 +12,8 @@ public interface CommonConstants {
String FORM_VAR="formData";
String PROCESS_STATUS="processStatus";
String START_USER_INFO="startUser";
String BUSINESS_STATUS_1="1"; //正在处理
String BUSINESS_STATUS_2="2";//撤销
String BUSINESS_STATUS_3="3";//驳回
String BUSINESS_STATUS_4="4";//已结束
String BUSINESS_STATUS_1="正在处理"; //正在处理
String BUSINESS_STATUS_2="撤销";//撤销
String BUSINESS_STATUS_3="驳回";//驳回
String BUSINESS_STATUS_4="已结束";//已结束
}
......@@ -20,10 +20,17 @@ import com.junmp.junmpProcess.entity.ProcessTemplates;
import com.junmp.junmpProcess.exception.WorkFlowException;
import com.junmp.junmpProcess.service.Repository.ProcessTemplateService;
import com.junmp.junmpProcess.utils.BpmnConvert;
import com.junmp.junmpProcess.utils.FormAndOrder;
import com.junmp.junmpProcess.vo.*;
import com.junmp.jyzb.api.bean.req.ProductSkuReq;
import com.junmp.jyzb.api.bean.vo.TagInfoVo;
import com.junmp.jyzb.entity.ProductSku;
import com.junmp.jyzb.utils.HttpStatus;
import com.junmp.jyzb.utils.ResponseResult;
import com.junmp.jyzb.utils.ReturnMsg;
import com.junmp.v2.common.bean.request.BaseRequest;
import com.junmp.v2.common.bean.response.ApiRes;
import com.junmp.v2.db.api.page.PageResult;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.SneakyThrows;
......@@ -93,13 +100,13 @@ public class BpmnController {
}
@ApiOperation("查看我发起的流程")
@PostMapping("applyList")
public ResponseResult applyList(@RequestBody ApplyDTO ApplyDTO) {
public PageResult<HistoryProcessInstanceVO> applyList(@RequestBody ApplyDTO ApplyDTO) {
return WorkProcessService.applyList(ApplyDTO);
}
@ApiOperation("查看我的待办")
@PostMapping("toDoList")
public ResponseResult toDoList(@RequestBody TaskDTO taskDTO){
public PageResult<TaskVO> toDoList(@RequestBody TaskDTO taskDTO){
return WorkProcessService.toDoList(taskDTO);
}
@ApiOperation("同意按钮")
......@@ -107,6 +114,12 @@ public class BpmnController {
public ResponseResult agree(@RequestBody HandleDataDTO handleDataDTO){
return WorkProcessService.agree(handleDataDTO);
}
@ApiOperation("撤销按钮")
@PostMapping("revoke")
public ResponseResult revoke(@RequestBody HandleDataDTO handleDataDTO){
return WorkProcessService.revoke(handleDataDTO);
}
@ApiOperation("拒绝按钮")
@PostMapping("refuse")
public ResponseResult refuse(@RequestBody HandleDataDTO handleDataDTO){
......@@ -120,32 +133,19 @@ public class BpmnController {
*/
@ApiOperation("根据ID获取表单信息")
@PostMapping(value = "getFormTemplateById")
public ResponseResult getFormTemplateById(String templateId) {
ProcessTemplates processTemplates = processTemplateService.getById(templateId);
public ResponseResult getFormTemplateById(@RequestBody Map<String,Object> templateId) {
String temp= templateId.get("templateId").toString();
ProcessTemplates processTemplates = processTemplateService.getById(temp);
processTemplates.setFormId(processTemplates.getTemplateId());
return new ResponseResult(HttpStatus.SUCCESS, ReturnMsg.PASS,processTemplates);
}
/**
* 查询表单模板数据
*
* @return 模板详情数据
*/
@ApiOperation("获取全部可用的表单和审核流")
@GetMapping(value = "getFormList")
public ResponseResult getFormList( ) {
return WorkProcessService.getFormList();
public ApiRes<PageResult<TemplateGroupVo>> getFormList(BaseRequest br) {
return ApiRes.success(WorkProcessService.getFormList(br));
}
/**
* 查询表单模板数据
*
* @param templateId 模板id
* @return 模板详情数据
*/
@ApiOperation("通过模板id查看流程信息")
@GetMapping("getFormDetail")
public ResponseResult getFormDetail(@RequestParam("templateId") String templateId){
return WorkProcessService.getFormDetail(templateId);
}
}
......@@ -10,6 +10,7 @@ import lombok.Data;
@Data
public class UserInfo {
private String id;
private String userId;
private String name;
private String type;
private String sex;
......
......@@ -2,28 +2,23 @@ package com.junmp.junmpProcess.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
* (ProcessTemplates)实体类
*
* @author makejava
* @since 2020-09-21 22:50:29
* @author : willian fu
* @date : 2020/9/21
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "process_templates")
@Builder
public class ProcessTemplates implements Serializable {
@NoArgsConstructor
@AllArgsConstructor
public class ProcessTemplates {
private static final long serialVersionUID = -95829441258242072L;
@TableId
......@@ -33,9 +28,9 @@ public class ProcessTemplates implements Serializable {
private String templateId;
@TableField(exist = false)
private String formId;
private String formName;
private String orgId;
@TableField(exist = false)
private Integer groupId;
/**
* 摸板表单
......@@ -53,22 +48,13 @@ public class ProcessTemplates implements Serializable {
* 图标背景色
*/
private String background;
private String notify;
/**
* 谁能提交
*/
private String whoCommit;
/**
* 谁能编辑
*/
private String whoEdit;
/**
* 谁能导出数据
* 图标背景色
*/
private String whoExport;
private String remark;
private String notify;
/**
* 是否已停用
*/
......
package com.junmp.junmpProcess.entity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
/**
* @author : willian fu
* @date : 2020/9/21
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class TemplateGroupBo {
private Integer id;
private Integer groupId;
private String groupName;
private String templateId;
private String formName;
private String icon;
private Boolean isStop;
private String remark;
private Date updated;
private String background;
}
package com.junmp.junmpProcess.mapper;
import com.junmp.junmpProcess.dto.UserListDTO;
import com.junmp.junmpProcess.entity.TemplateGroupBo;
import com.junmp.v2.sys.api.UserServiceApi;
import com.junmp.v2.sys.api.bean.user.dto.RoleUserDto;
import com.junmp.v2.sys.api.bean.user.vo.QueryUserInfoVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import java.util.List;
......
......@@ -5,7 +5,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import com.junmp.junmpProcess.entity.TemplateGroup;
import com.junmp.junmpProcess.entity.TemplateGroupBo;
import com.junmp.junmpProcess.entity.ProcessTemplates;
import java.util.List;
......@@ -23,5 +23,5 @@ public interface TemplateGroupMapper extends BaseMapper<TemplateGroup> {
*/
@Select("SELECT pt.template_id, pt.remark, pt.is_stop, pt.updated, pt.form_name, \n" +
" pt.icon, pt.background FROM process_templates pt ORDER BY updated desc")
List<TemplateGroupBo> getAllFormAndGroups();
List<ProcessTemplates> getAllFormAndGroups();
}
......@@ -10,7 +10,10 @@ import com.junmp.junmpProcess.dto.StartProcessInstanceDTO;
import com.junmp.junmpProcess.dto.TaskDTO;
import com.junmp.junmpProcess.entity.ProcessTemplates;
import com.junmp.junmpProcess.vo.*;
import com.junmp.jyzb.entity.ProductSku;
import com.junmp.jyzb.utils.ResponseResult;
import com.junmp.v2.common.bean.request.BaseRequest;
import com.junmp.v2.db.api.page.PageResult;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
......@@ -46,7 +49,7 @@ public interface WorkProcessService {
*
* @return
*/
ResponseResult getFormList();
PageResult<TemplateGroupVo> getFormList(BaseRequest br);
/**
......@@ -68,14 +71,14 @@ public interface WorkProcessService {
*
* @return
*/
ResponseResult applyList(ApplyDTO applyDTO);
PageResult<HistoryProcessInstanceVO> applyList(ApplyDTO applyDTO);
/**
* 查看我的待办
*
* @return
*/
ResponseResult toDoList(TaskDTO taskDTO);
PageResult<TaskVO> toDoList(TaskDTO taskDTO);
/**
* 查看我的已办
......@@ -92,6 +95,12 @@ public interface WorkProcessService {
ResponseResult agree(HandleDataDTO handleDataDTO);
/**
* 同意
*
* @return
*/
ResponseResult revoke(HandleDataDTO handleDataDTO);
/**
* 委派
*
* @return
......@@ -112,12 +121,7 @@ public interface WorkProcessService {
*/
ResponseResult refuse(HandleDataDTO handleDataDTO);
/**
* 撤销按钮
*
* @return
*/
Result revoke(HandleDataDTO handleDataDTO);
/**
* 转办按钮
......
......@@ -2,22 +2,23 @@ package com.junmp.junmpProcess.service.Bussiness.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.PageUtil;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.common.collect.Lists;
import com.junmp.junmpProcess.common.R;
import com.junmp.junmpProcess.dto.*;
import com.junmp.junmpProcess.dto.json.*;
import com.junmp.junmpProcess.entity.TemplateGroupBo;
import com.junmp.junmpProcess.entity.ProcessTemplates;
import com.junmp.junmpProcess.exception.WorkFlowException;
import com.junmp.junmpProcess.mapper.ProcessTemplatesMapper;
import com.junmp.junmpProcess.mapper.TemplateGroupMapper;
import com.junmp.junmpProcess.service.Bussiness.WorkProcessService;
import com.junmp.junmpProcess.service.Repository.ProcessTemplateService;
......@@ -27,10 +28,13 @@ import com.junmp.junmpProcess.vo.*;
import com.junmp.jyzb.utils.HttpStatus;
import com.junmp.jyzb.utils.ResponseResult;
import com.junmp.jyzb.utils.ReturnMsg;
import com.junmp.v2.common.bean.request.BaseRequest;
import com.junmp.v2.db.api.factory.PageFactory;
import com.junmp.v2.db.api.factory.PageResultFactory;
import com.junmp.v2.db.api.page.PageResult;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.time.DateFormatUtils;
import org.flowable.bpmn.BpmnAutoLayout;
import org.flowable.bpmn.converter.BpmnXMLConverter;
import org.flowable.bpmn.model.*;
import org.flowable.bpmn.model.Process;
import org.flowable.common.engine.impl.identity.Authentication;
......@@ -56,13 +60,11 @@ import com.junmp.junmpProcess.common.Result;
import com.junmp.junmpProcess.common.WorkFlowConstants;
import com.junmp.junmpProcess.dto.json.flowJson.FlowChildNode;
import com.junmp.junmpProcess.dto.json.flowJson.Inout;
import com.junmp.junmpProcess.entity.ProcessTemplates;
import org.flowable.task.service.impl.persistence.entity.TaskEntity;
import org.flowable.task.service.impl.persistence.entity.TaskEntityImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.junmp.junmpProcess.utils.BpmnConvert;
import javax.annotation.Resource;
import java.util.*;
......@@ -75,13 +77,15 @@ import static com.junmp.junmpProcess.utils.BpmnModelUtils.*;
@Service
public class WorkProcessServiceImpl implements WorkProcessService {
public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper, ProcessTemplates> implements WorkProcessService {
@Autowired
private ProcessTemplateService processTemplateService;
@Resource
private RepositoryService repositoryService;
@Resource
private RuntimeService runtimeService;
@Resource
......@@ -146,24 +150,26 @@ public class WorkProcessServiceImpl implements WorkProcessService {
}
}
public ResponseResult getFormList()
public PageResult<TemplateGroupVo> getFormList(BaseRequest br)
{
TemplateGroupMapper templateGroupMapper = SpringContextHolder.getBean(TemplateGroupMapper.class);
List<TemplateGroupBo> allformAndGroups = templateGroupMapper.getAllFormAndGroups();
Map<Integer, List<TemplateGroupBo>> coverMap = new LinkedHashMap<>();
allformAndGroups.forEach(fg -> {
List<TemplateGroupBo> bos = coverMap.get(fg.getGroupId());
Page<ProcessTemplates> allformAndGroups =this.page(PageFactory.getDefaultPage());
templateGroupMapper.getAllFormAndGroups();
Map<Integer, List<ProcessTemplates>> coverMap = new LinkedHashMap<>();
allformAndGroups.getRecords().forEach(fg -> {
List<ProcessTemplates> bos = coverMap.get(fg.getGroupId());
if (CollectionUtil.isEmpty(bos)) {
List<TemplateGroupBo> list = new ArrayList<>();
List<ProcessTemplates> list = new ArrayList<>();
list.add(fg);
coverMap.put(fg.getGroupId(), list);
} else {
bos.add(fg);
}
});
List<TemplateGroupVo> results = new ArrayList<>();
PageResult<TemplateGroupVo> pageResult=new PageResult<TemplateGroupVo>();
coverMap.forEach((key, val) -> {
List<TemplateGroupVo.Template> templates = new ArrayList<>();
List<TemplateGroupVo> templates = new ArrayList<>();
val.forEach(v -> {
if (ObjectUtil.isNotNull(v.getTemplateId())) {
String defId="";
......@@ -175,7 +181,7 @@ public class WorkProcessServiceImpl implements WorkProcessService {
{
defId=ProDef.getId();
}
templates.add(TemplateGroupVo.Template.builder()
templates.add(TemplateGroupVo.builder()
.formId(v.getTemplateId())
.remark(v.getRemark())
.formName(v.getFormName())
......@@ -186,9 +192,13 @@ public class WorkProcessServiceImpl implements WorkProcessService {
.build());
}
});
results.add(TemplateGroupVo.builder().items(templates).build());
pageResult.setRecords( templates);
});
return new ResponseResult(HttpStatus.SUCCESS,ReturnMsg.PASS,results.get(0));
pageResult.setPageSize(allformAndGroups.getSize());
pageResult.setTotalRows( allformAndGroups.getTotal());
pageResult.setPageNo(allformAndGroups.getPages());
pageResult.setTotalPage(PageUtil.totalPage(Convert.toInt(pageResult.getTotalRows()), Convert.toInt(pageResult.getPageSize())));
return pageResult;
}
public ResponseResult createBpmn(ProcessVO processVO) throws JsonProcessingException {
//流程定义
......@@ -205,7 +215,7 @@ public class WorkProcessServiceImpl implements WorkProcessService {
processTemplates.setFormName(processVO.getFormName());
processTemplates.setIsStop(false);
Date date= new Date();
processTemplates.setCreated(date);
processTemplates.setUpdated(date);
processTemplateService.save(processTemplates);
//将json转换为bpmn
......@@ -253,8 +263,8 @@ public class WorkProcessServiceImpl implements WorkProcessService {
@Override
public ResponseResult getFormDetail(String templateId) {
ProcessTemplates processTemplates = processTemplateService.getById(templateId);
processTemplates.setLogo(processTemplates.getIcon());
processTemplates.setFormId(processTemplates.getTemplateId());
processTemplates.setIcon(processTemplates.getIcon());
processTemplates.setTemplateId(processTemplates.getTemplateId());
processTemplates.setFormName(processTemplates.getFormName());
Object aa= repositoryService.createProcessDefinitionQuery();
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionKey("Process_"+templateId).latestVersion().singleResult();
......@@ -498,11 +508,15 @@ public class WorkProcessServiceImpl implements WorkProcessService {
JSONObject formData = processInstanceDto.getFormData();
JunmpUserInfo startUserInfo = processInstanceDto.getStartUserInfo();
Authentication.setAuthenticatedUserId(startUserInfo.getUserId());
Map<String,Object> processVariables= new HashMap<>();
processVariables.put(FORM_VAR,formData);
processVariables.put(START_USER_INFO,JSONObject.toJSONString(startUserInfo));
processVariables.put(PROCESS_STATUS,BUSINESS_STATUS_1);
// processVariables.put("initiator",JSONObject.toJSONString(startUserInfo));
ArrayList<JunmpUserInfo> userInfos = CollUtil.newArrayList(startUserInfo);
Map formValue = JSONObject.parseObject(formData.toJSONString(), new TypeReference<Map>() {
});
......@@ -515,6 +529,7 @@ public class WorkProcessServiceImpl implements WorkProcessService {
.variable("initiator",startUserInfo.getUserId())
.variables(processVariables)
.businessStatus(BUSINESS_STATUS_1)
.start();
//手动完成第一个任务
......@@ -546,7 +561,12 @@ public class WorkProcessServiceImpl implements WorkProcessService {
* @return
*/
@Override
public ResponseResult applyList(ApplyDTO applyDTO) {
public PageResult<HistoryProcessInstanceVO> applyList(ApplyDTO applyDTO) {
PageResult<HistoryProcessInstanceVO> pageResult=new PageResult<HistoryProcessInstanceVO>();
// List<Task> tasks = taskService.createTaskQuery()
// .taskCandidateOrAssigned(applyDTO.getCurrentUserInfo().getId())
// .list();
// List<Task> list = taskService.createTaskQuery().processInstanceId(processInstanceId).list();
List<HistoricProcessInstance> historicProcessInstances =
historyService.createHistoricProcessInstanceQuery()
.includeProcessVariables()
......@@ -570,7 +590,6 @@ public class WorkProcessServiceImpl implements WorkProcessService {
historyProcessInstanceVO.setCurrentActivityName(getCurrentName(historicProcessInstance.getId(), flag, historicProcessInstance.getProcessDefinitionId()));
historyProcessInstanceVO.setBusinessStatus(MapUtil.getStr(processVariables, PROCESS_STATUS));
long totalTimes = historicProcessInstance.getEndTime() == null ?
(Calendar.getInstance().getTimeInMillis() - historicProcessInstance.getStartTime().getTime()) :
(historicProcessInstance.getEndTime().getTime() - historicProcessInstance.getStartTime().getTime());
......@@ -584,11 +603,12 @@ public class WorkProcessServiceImpl implements WorkProcessService {
historyProcessInstanceVO.setDuration(spendTimes);
historyProcessInstanceVOS.add(historyProcessInstanceVO);
}
page.setRecords(historyProcessInstanceVOS);
page.setCurrent(applyDTO.getPageNo());
page.setSize(applyDTO.getPageSize());
page.setTotal(count);
return new ResponseResult(HttpStatus.SUCCESS,ReturnMsg.PASS,page);
pageResult.setRecords(historyProcessInstanceVOS);
pageResult.setTotalRows(Long.valueOf(applyDTO.getPageNo()));
pageResult.setTotalPage(PageUtil.totalPage((int) count, Convert.toInt(pageResult.getPageSize())));
pageResult.setPageSize(Long.valueOf(applyDTO.getPageSize()));
pageResult.setPageNo(Long.valueOf(applyDTO.getPageNo()));
return pageResult;
}
/**
......@@ -597,7 +617,7 @@ public class WorkProcessServiceImpl implements WorkProcessService {
* @return
*/
@Override
public ResponseResult toDoList(TaskDTO taskDTO) {
public PageResult<TaskVO> toDoList(TaskDTO taskDTO) {
List<Task> tasks = taskService.createTaskQuery().taskAssignee(taskDTO.getCurrentUserInfo().getUserId())
.includeProcessVariables()
.orderByTaskCreateTime().desc()
......@@ -605,24 +625,21 @@ public class WorkProcessServiceImpl implements WorkProcessService {
long count = taskService.createTaskQuery().taskAssignee(taskDTO.getCurrentUserInfo().getUserId()).count();
List<TaskVO> taskVOS= new ArrayList<>();
Page<TaskVO> page =new Page<>();
for (Task task : tasks) {
// List<String> taskIds= new ArrayList<>();
// for (Task task : tasks) {
// Map<String, Object> processVariables = task.getProcessVariables();
// }
// Map<Long, JunmpUserInfo> collect=new HashMap<>();
for (Task task : tasks) {
ProcessInstance processInstance = runtimeService.createProcessInstanceQuery().processInstanceId(task.getProcessInstanceId()).singleResult();
String startUserId = processInstance.getStartUserId();
BpmnModel bpmnModel = repositoryService.getBpmnModel(task.getProcessDefinitionId());
Map<String, Object> processVariables = task.getProcessVariables();
TaskVO taskVO=new TaskVO();
taskVO.setTaskId(task.getId());
taskVO.setProcessInstanceId(task.getProcessInstanceId());
taskVO.setProcessDefinitionName(bpmnModel.getMainProcess().getName());
taskVO.setStartUser(JSONObject.parseObject(MapUtil.getStr(processVariables,START_USER_INFO),new TypeReference<UserInfo>(){}));
UserInfo user=new UserInfo();
user.setId(startUserId);
taskVO.setStartUser(user);
taskVO.setStartTime(processInstance.getStartTime());
taskVO.setCurrentActivityName(getCurrentName(processInstance.getId(),false,processInstance.getProcessDefinitionId()));
......@@ -634,11 +651,10 @@ public class WorkProcessServiceImpl implements WorkProcessService {
}
taskVOS.add(taskVO);
}
page.setRecords(taskVOS);
page.setCurrent(taskDTO.getPageNo());
page.setSize(taskDTO.getPageSize());
page.setTotal(count);
return new ResponseResult(HttpStatus.SUCCESS,ReturnMsg.PASS,page);
return PageResultFactory.createPageResult(page);
}
......@@ -695,6 +711,40 @@ public class WorkProcessServiceImpl implements WorkProcessService {
return Result.OK(page);
}
@Override
public ResponseResult revoke(HandleDataDTO handleDataDTO) {
UserInfo currentUserInfo = handleDataDTO.getCurrentUserInfo();
Authentication.setAuthenticatedUserId(currentUserInfo.getId());
List<AttachmentDTO> attachments = handleDataDTO.getAttachments();
String comments = handleDataDTO.getComments();
JSONObject formData = handleDataDTO.getFormData();
String taskId = handleDataDTO.getTaskId();
HistoricTaskInstance task = historyService.createHistoricTaskInstanceQuery().taskId(taskId).singleResult();
Map<String,Object> map=new HashMap<>();
if(formData!=null &&formData.size()>0){
Map formValue = JSONObject.parseObject(formData.toJSONString(), new TypeReference<Map>() {
});
map.putAll(formValue);
map.put(FORM_VAR,formData);
}
map.put(PROCESS_STATUS,BUSINESS_STATUS_2);
runtimeService.setVariables(task.getProcessInstanceId(),map);
if(StringUtils.isNotBlank(comments)){
taskService.addComment(task.getId(),task.getProcessInstanceId(),"opinion",comments);
}
if(attachments!=null && attachments.size()>0){
for (AttachmentDTO attachment : attachments) {
taskService.createAttachment("option",taskId,task.getProcessInstanceId(),attachment.getName(),attachment.getName(),attachment.getUrl());
}
}
if(StringUtils.isNotBlank(handleDataDTO.getSignInfo())){
taskService.addComment(task.getId(),task.getProcessInstanceId(),"sign",handleDataDTO.getSignInfo());
}
runtimeService.deleteProcessInstance(task.getProcessInstanceId(),"撤销");
return new ResponseResult(HttpStatus.SUCCESS,ReturnMsg.PASS,"");
}
@Override
public ResponseResult agree(HandleDataDTO handleDataDTO) {
UserInfo currentUserInfo = handleDataDTO.getCurrentUserInfo();
......@@ -755,10 +805,6 @@ public class WorkProcessServiceImpl implements WorkProcessService {
}
}
@Override
......@@ -867,39 +913,6 @@ public class WorkProcessServiceImpl implements WorkProcessService {
return new ResponseResult(HttpStatus.SUCCESS, ReturnMsg.PASS,"");
}
@Override
public Result revoke(HandleDataDTO handleDataDTO) {
UserInfo currentUserInfo = handleDataDTO.getCurrentUserInfo();
Authentication.setAuthenticatedUserId(currentUserInfo.getId());
List<AttachmentDTO> attachments = handleDataDTO.getAttachments();
String comments = handleDataDTO.getComments();
JSONObject formData = handleDataDTO.getFormData();
String taskId = handleDataDTO.getTaskId();
HistoricTaskInstance task = historyService.createHistoricTaskInstanceQuery().taskId(taskId).singleResult();
Map<String, Object> map = new HashMap<>();
if (formData != null && formData.size() > 0) {
Map formValue = JSONObject.parseObject(formData.toJSONString(), new TypeReference<Map>() {
});
map.putAll(formValue);
map.put(FORM_VAR, formData);
}
map.put(PROCESS_STATUS, BUSINESS_STATUS_2);
runtimeService.setVariables(task.getProcessInstanceId(), map);
if (StringUtils.isNotBlank(comments)) {
taskService.addComment(task.getId(), task.getProcessInstanceId(), "opinion", comments);
}
if (attachments != null && attachments.size() > 0) {
for (AttachmentDTO attachment : attachments) {
taskService.createAttachment("option", taskId, task.getProcessInstanceId(), attachment.getName(), attachment.getName(), attachment.getUrl());
}
}
if (StringUtils.isNotBlank(handleDataDTO.getSignInfo())) {
taskService.addComment(task.getId(), task.getProcessInstanceId(), "sign", handleDataDTO.getSignInfo());
}
runtimeService.deleteProcessInstance(task.getProcessInstanceId(), "撤销");
return Result.OK();
}
@Override
public Result assignee(HandleDataDTO handleDataDTO) {
......
package com.junmp.junmpProcess.utils;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.sql.Time;
/**
* <pre>
*
* 描述:
* 版本:1.0.0
* 日期:2022/7/29 16:19
* 作者:ningzp@junmp.com.cn
* <br>修改记录
* <br>修改日期 修改人 修改内容
*
* </pre>
*/
@Data
public class FormAndOrder {
private Long formId;
/**
* 号型代码
*/
private String processDefinitionId;
/**
*
*/
@TableField(value = "sku_code")
private String formName;
/**
*
*/
private String isStop;
/**
*
*/
private String remark;
/**
*
*/
private Time updated;
/**
*
*/
private String templateId;
}
......@@ -17,15 +17,6 @@ import java.util.List;
@NoArgsConstructor
@AllArgsConstructor
public class TemplateGroupVo {
private List<Template> items;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public static class Template {
private String formId;
private String processDefinitionId;
private String formName;
......@@ -33,7 +24,6 @@ public class TemplateGroupVo {
private String remark;
private String updated;
private String templateId;
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论