fix(会后管理流程): 81040
This commit is contained in:
+24
-1
@@ -1,6 +1,7 @@
|
|||||||
package com.jero.modules.activiti.service;
|
package com.jero.modules.activiti.service;
|
||||||
|
|
||||||
import cn.hutool.core.collection.CollStreamUtil;
|
import cn.hutool.core.collection.CollStreamUtil;
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
@@ -8,11 +9,13 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
|||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.jero.common.api.dto.message.SendMessageDTO;
|
import com.jero.common.api.dto.message.SendMessageDTO;
|
||||||
|
import com.jero.common.api.vo.Result;
|
||||||
import com.jero.common.api.vo.ResultCommon;
|
import com.jero.common.api.vo.ResultCommon;
|
||||||
import com.jero.common.api.vo.SendMessageAPI;
|
import com.jero.common.api.vo.SendMessageAPI;
|
||||||
import com.jero.common.constant.enums.YesOrNoEnum;
|
import com.jero.common.constant.enums.YesOrNoEnum;
|
||||||
import com.jero.common.exception.JeroBootException;
|
import com.jero.common.exception.JeroBootException;
|
||||||
import com.jero.common.system.vo.LoginUser;
|
import com.jero.common.system.vo.LoginUser;
|
||||||
|
import com.jero.modules.activiti.controller.WorkCenterController;
|
||||||
import com.jero.modules.activiti.entity.ProcessAll;
|
import com.jero.modules.activiti.entity.ProcessAll;
|
||||||
import com.jero.modules.activiti.entity.ProcessApprovalRecord;
|
import com.jero.modules.activiti.entity.ProcessApprovalRecord;
|
||||||
import com.jero.modules.activiti.enums.FinishFlagEnum;
|
import com.jero.modules.activiti.enums.FinishFlagEnum;
|
||||||
@@ -22,6 +25,7 @@ import com.jero.modules.activiti.mapper.ProcessAllMapper;
|
|||||||
import com.jero.modules.activiti.process.common.common.DraftCommon;
|
import com.jero.modules.activiti.process.common.common.DraftCommon;
|
||||||
import com.jero.modules.activiti.process.common.entity.ProcessDraft;
|
import com.jero.modules.activiti.process.common.entity.ProcessDraft;
|
||||||
import com.jero.modules.activiti.process.common.service.ProcessDraftService;
|
import com.jero.modules.activiti.process.common.service.ProcessDraftService;
|
||||||
|
import com.jero.modules.activiti.util.SpringContextUtil;
|
||||||
import com.jero.modules.activiti.vo.DelegateTaskParam;
|
import com.jero.modules.activiti.vo.DelegateTaskParam;
|
||||||
import com.jero.modules.activiti.vo.ResolveTaskParam;
|
import com.jero.modules.activiti.vo.ResolveTaskParam;
|
||||||
import com.jero.modules.laws.common.constant.MessageTemplateCodeCommon;
|
import com.jero.modules.laws.common.constant.MessageTemplateCodeCommon;
|
||||||
@@ -31,6 +35,7 @@ import org.activiti.engine.HistoryService;
|
|||||||
import org.activiti.engine.RuntimeService;
|
import org.activiti.engine.RuntimeService;
|
||||||
import org.activiti.engine.TaskService;
|
import org.activiti.engine.TaskService;
|
||||||
import org.activiti.engine.task.Task;
|
import org.activiti.engine.task.Task;
|
||||||
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.shiro.SecurityUtils;
|
import org.apache.shiro.SecurityUtils;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
@@ -141,7 +146,25 @@ public class ProcessAllService extends ServiceImpl<ProcessAllMapper, ProcessAll>
|
|||||||
.eq(ProcessAll::getId, processAll.getId())
|
.eq(ProcessAll::getId, processAll.getId())
|
||||||
.set(ProcessAll::getPrcStatus, ProcessStatusEnum.WITHDRAWN.getValue()));
|
.set(ProcessAll::getPrcStatus, ProcessStatusEnum.WITHDRAWN.getValue()));
|
||||||
|
|
||||||
//更新增审批表状态
|
// 更新最后一条待办人员为流程发起人
|
||||||
|
WorkCenterController workCenterController = SpringContextUtil.getBean(WorkCenterController.class);
|
||||||
|
ProcessApprovalRecord processApprovalRecord1 = new ProcessApprovalRecord();
|
||||||
|
processApprovalRecord1.setProcessInstanceId(processInstanceId);
|
||||||
|
Result<?> approvalRecordList = workCenterController.getApprovalRecordList(processApprovalRecord1, null);
|
||||||
|
if (!Objects.isNull(approvalRecordList.getResult())){
|
||||||
|
Page<ProcessApprovalRecord> pageList = (Page<ProcessApprovalRecord>) approvalRecordList.getResult();
|
||||||
|
if (CollectionUtils.isNotEmpty(pageList.getRecords())){
|
||||||
|
List<ProcessApprovalRecord> processApprovalRecords = JSON.parseArray(JSON.toJSONString(pageList.getRecords()), ProcessApprovalRecord.class);
|
||||||
|
if (CollectionUtils.isNotEmpty(processApprovalRecords)){
|
||||||
|
approvalRecordService.update(
|
||||||
|
new LambdaUpdateWrapper<ProcessApprovalRecord>()
|
||||||
|
.eq(ProcessApprovalRecord::getId, processApprovalRecords.get(0).getId())
|
||||||
|
.set(ProcessApprovalRecord::getUserId, processApprovalRecords.get(processApprovalRecords.size() - 1).getOriginUserId()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//新增撤销审批记录
|
||||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
ProcessApprovalRecord processApprovalRecord = new ProcessApprovalRecord();
|
ProcessApprovalRecord processApprovalRecord = new ProcessApprovalRecord();
|
||||||
processApprovalRecord.setUserId(loginUser.getId());
|
processApprovalRecord.setUserId(loginUser.getId());
|
||||||
|
|||||||
+3
-3
@@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.jero.common.system.api.ISysBaseAPI;
|
import com.jero.common.system.api.ISysBaseAPI;
|
||||||
import com.jero.common.system.query.QueryGenerator;
|
|
||||||
import com.jero.modules.activiti.entity.ProcessApprovalRecord;
|
import com.jero.modules.activiti.entity.ProcessApprovalRecord;
|
||||||
import com.jero.modules.activiti.enums.FinishFlagEnum;
|
import com.jero.modules.activiti.enums.FinishFlagEnum;
|
||||||
import com.jero.modules.activiti.mapper.ProcessApprovalRecordMapper;
|
import com.jero.modules.activiti.mapper.ProcessApprovalRecordMapper;
|
||||||
@@ -34,11 +33,12 @@ public class ProcessApprovalRecordService extends ServiceImpl<ProcessApprovalRec
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Page<ProcessApprovalRecord> pageList(Page<ProcessApprovalRecord> page, ProcessApprovalRecord processApprovalRecord, HttpServletRequest req) {
|
public Page<ProcessApprovalRecord> pageList(Page<ProcessApprovalRecord> page, ProcessApprovalRecord processApprovalRecord, HttpServletRequest req) {
|
||||||
QueryWrapper<ProcessApprovalRecord> wrapper = QueryGenerator.initQueryWrapper(processApprovalRecord, req.getParameterMap());
|
QueryWrapper<ProcessApprovalRecord> wrapper = new QueryWrapper<>();
|
||||||
if (StringUtils.isNotBlank(processApprovalRecord.getFinishFlagSearch())){
|
if (StringUtils.isNotBlank(processApprovalRecord.getFinishFlagSearch())){
|
||||||
wrapper.in("finish_flag", Arrays.asList(processApprovalRecord.getFinishFlagSearch().split(",")));
|
wrapper.in("finish_flag", Arrays.asList(processApprovalRecord.getFinishFlagSearch().split(",")));
|
||||||
}
|
}
|
||||||
wrapper.last("ORDER BY IF(ISNULL(create_time), 1, 0) DESC ,create_time DESC, end_time DESC");
|
wrapper.eq("process_instance_id", processApprovalRecord.getProcessInstanceId());
|
||||||
|
wrapper.last("ORDER BY IF(ISNULL(create_time), 1, 0) DESC ,create_time DESC, end_time DESC");
|
||||||
Page<ProcessApprovalRecord> pageList = this.page(page, wrapper);
|
Page<ProcessApprovalRecord> pageList = this.page(page, wrapper);
|
||||||
List<ProcessApprovalRecord> records = pageList.getRecords();
|
List<ProcessApprovalRecord> records = pageList.getRecords();
|
||||||
for (ProcessApprovalRecord record : records) {
|
for (ProcessApprovalRecord record : records) {
|
||||||
|
|||||||
Reference in New Issue
Block a user