feat: 已发已办查看只能查看自己的节点 流程监控可以查看所有的节点
This commit is contained in:
+2
-1
@@ -134,11 +134,12 @@ public class WorkCenterController {
|
||||
public Result<?> getApprovalRecordList(ProcessApprovalRecord processApprovalRecord,
|
||||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
||||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
||||
@RequestParam(name = "type") String type,
|
||||
HttpServletRequest req) {
|
||||
Page<ProcessApprovalRecord> page = new Page<>(pageNo, pageSize);
|
||||
Page<ProcessApprovalRecord> pageList;
|
||||
try {
|
||||
pageList = processApprovalRecordService.pageList(page, processApprovalRecord, req);
|
||||
pageList = processApprovalRecordService.pageList(page, processApprovalRecord, type, req);
|
||||
}catch (Exception e){
|
||||
return Result.error(MessageUtils.getMessage(ResultCommon.ERROR));
|
||||
}
|
||||
|
||||
+21
-6
@@ -1,6 +1,7 @@
|
||||
package com.jero.modules.activiti.service;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
@@ -13,6 +14,7 @@ import com.jero.modules.activiti.mapper.ProcessApprovalRecordMapper;
|
||||
import com.jero.modules.activiti.process.common.entity.ProcessSnapshot;
|
||||
import com.jero.modules.activiti.process.common.service.ProcessSnapshotService;
|
||||
import com.jero.modules.laws.common.util.CurrentUserUtil;
|
||||
import com.jero.modules.sys.utils.UserUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -31,6 +33,14 @@ import java.util.stream.Collectors;
|
||||
*/
|
||||
@Service
|
||||
public class ProcessApprovalRecordService extends ServiceImpl<ProcessApprovalRecordMapper, ProcessApprovalRecord> {
|
||||
|
||||
// 已办
|
||||
public static final String COMPLETED_RECORD_LIST = "1";
|
||||
// 已发
|
||||
public static final String SENT_RECORD_LIST = "2";
|
||||
// 流程监控
|
||||
public static final String ALL_RECORD_LIST = "3";
|
||||
|
||||
@Resource
|
||||
private ISysBaseAPI sysBaseAPI;
|
||||
|
||||
@@ -50,7 +60,9 @@ public class ProcessApprovalRecordService extends ServiceImpl<ProcessApprovalRec
|
||||
return this.getOne(wrapper);
|
||||
}
|
||||
|
||||
public Page<ProcessApprovalRecord> pageList(Page<ProcessApprovalRecord> page, ProcessApprovalRecord processApprovalRecord, HttpServletRequest req) {
|
||||
public Page<ProcessApprovalRecord> pageList(Page<ProcessApprovalRecord> page, ProcessApprovalRecord processApprovalRecord, String type, HttpServletRequest req) {
|
||||
boolean allSnapshotFlag = !type.equals(COMPLETED_RECORD_LIST);
|
||||
String curUserId = UserUtils.getUserId();
|
||||
QueryWrapper<ProcessApprovalRecord> wrapper = new QueryWrapper<>();
|
||||
if (StringUtils.isNotBlank(processApprovalRecord.getFinishFlagSearch())){
|
||||
wrapper.in("finish_flag", Arrays.asList(processApprovalRecord.getFinishFlagSearch().split(",")));
|
||||
@@ -66,12 +78,15 @@ public class ProcessApprovalRecordService extends ServiceImpl<ProcessApprovalRec
|
||||
List<ProcessSnapshot> snapshotList = processSnapshotService.list(processSnapshotWrapper);
|
||||
Map<String, List<ProcessSnapshot>> snapshotMap = snapshotList.stream().collect(Collectors.groupingBy(ProcessSnapshot::getTaskId));
|
||||
for (ProcessApprovalRecord record : records) {
|
||||
List<ProcessSnapshot> processSnapshots = snapshotMap.get(record.getTaskId());
|
||||
if (CollUtil.isNotEmpty(processSnapshots)) {
|
||||
ProcessSnapshot snapshot = processSnapshots.get(0);
|
||||
record.setSnapshotId(snapshot.getId());
|
||||
}
|
||||
String userId = record.getUserId();
|
||||
if (StrUtil.isNotBlank(userId) && (allSnapshotFlag || curUserId.equals(userId))) {
|
||||
List<ProcessSnapshot> processSnapshots = snapshotMap.get(record.getTaskId());
|
||||
if (CollUtil.isNotEmpty(processSnapshots)) {
|
||||
ProcessSnapshot snapshot = processSnapshots.get(0);
|
||||
record.setSnapshotId(snapshot.getId());
|
||||
}
|
||||
}
|
||||
|
||||
String taskAcceptor = sysBaseAPI.translateUserRealNameFromTable(userId);
|
||||
String delegateBy = record.getDelegateBy();
|
||||
if (StringUtils.isNotBlank(delegateBy)){
|
||||
|
||||
Reference in New Issue
Block a user