Commit 5981b7f9006c859a166dfb7dd27680d2dcdb8484

Authored by 杨鸣坤
1 parent d54412fc

楚江ERP:判断是否需要展示审核按钮

... ... @@ -106,6 +106,12 @@ public class QuerySpecLockDelayApplicationBo extends BaseBo<SpecLockDelayApplica
106 106 @ApiModelProperty(value = "数量(t)")
107 107 private BigDecimal totalQuantity;
108 108
  109 + /**
  110 + * 是否展示审核按钮(非持久化字段)
  111 + */
  112 + @ApiModelProperty(value = "是否展示审核按钮")
  113 + private Boolean showExamine;
  114 +
109 115 public QuerySpecLockDelayApplicationBo() {
110 116
111 117 }
... ...
... ... @@ -100,4 +100,9 @@ public class SpecLockDelayApplication extends BaseEntity implements BaseDto {
100 100 @TableField(fill = FieldFill.INSERT_UPDATE)
101 101 private LocalDateTime updateTime;
102 102
  103 + /**
  104 + * 是否展示正式合同审核按钮(非持久化字段)
  105 + */
  106 + @TableField(exist = false)
  107 + private Boolean showExamine;
103 108 }
... ...
... ... @@ -4,7 +4,10 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper;
4 4 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
5 5 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
6 6 import com.github.pagehelper.PageInfo;
  7 +import com.lframework.starter.bpm.dto.FlowTaskDto;
  8 +import com.lframework.starter.bpm.mappers.FlowTaskWrapperMapper;
7 9 import com.lframework.starter.bpm.service.FlowInstanceWrapperService;
  10 +import com.lframework.starter.bpm.vo.flow.task.QueryTodoTaskListVo;
8 11 import com.lframework.starter.common.exceptions.impl.DefaultClientException;
9 12 import com.lframework.starter.common.utils.Assert;
10 13 import com.lframework.starter.common.utils.ObjectUtil;
... ... @@ -17,12 +20,14 @@ import com.lframework.starter.web.core.utils.OpLogUtil;
17 20 import com.lframework.starter.web.core.utils.PageHelperUtil;
18 21 import com.lframework.starter.web.core.utils.PageResultUtil;
19 22 import com.lframework.starter.web.inner.components.oplog.OtherOpLogType;
  23 +import com.lframework.xingyun.sc.entity.CustomerCredit;
20 24 import com.lframework.xingyun.sc.entity.SpecLockDelayApplication;
21 25 import com.lframework.xingyun.sc.mappers.SpecLockDelayApplicationMapper;
22 26 import com.lframework.xingyun.sc.service.contract.SpecLockDelayApplicationService;
23 27 import com.lframework.xingyun.sc.vo.contract.createVo.CreateSpecLockDelayApplicationVo;
24 28 import com.lframework.xingyun.sc.vo.contract.queryVo.QuerySpecLockDelayApplicationVo;
25 29 import com.lframework.xingyun.sc.vo.contract.updateVo.UpdateSpecLockDelayApplicationVo;
  30 +import org.apache.commons.collections.CollectionUtils;
26 31 import org.apache.commons.lang3.StringUtils;
27 32 import org.springframework.beans.factory.annotation.Autowired;
28 33 import org.springframework.cache.annotation.CacheEvict;
... ... @@ -33,6 +38,7 @@ import org.springframework.transaction.annotation.Transactional;
33 38 import java.io.Serializable;
34 39 import java.time.LocalDateTime;
35 40 import java.util.List;
  41 +import java.util.stream.Collectors;
36 42
37 43 @Service
38 44 public class SpecLockDelayApplicationServiceImpl extends BaseMpServiceImpl<SpecLockDelayApplicationMapper, SpecLockDelayApplication> implements SpecLockDelayApplicationService {
... ... @@ -41,6 +47,8 @@ public class SpecLockDelayApplicationServiceImpl extends BaseMpServiceImpl<SpecL
41 47
42 48 @Autowired
43 49 private FlowInstanceWrapperService flowInstanceWrapperService;
  50 + @Autowired
  51 + private FlowTaskWrapperMapper flowTaskWrapperMapper;
44 52
45 53 @Override
46 54 public PageResult<SpecLockDelayApplication> query(Integer pageIndex, Integer pageSize, QuerySpecLockDelayApplicationVo vo) {
... ... @@ -51,6 +59,18 @@ public class SpecLockDelayApplicationServiceImpl extends BaseMpServiceImpl<SpecL
51 59 PageHelperUtil.startPage(pageIndex, pageSize);
52 60 List<SpecLockDelayApplication> datas = this.query(vo);
53 61
  62 + if (CollectionUtils.isNotEmpty(datas)) {
  63 + // 获取当前人员的待办任务数据
  64 + List<FlowTaskDto> flowTaskList = flowTaskWrapperMapper.queryTodoList(new QueryTodoTaskListVo(), SecurityUtil.getCurrentUser().getId());
  65 + if (CollectionUtils.isEmpty(flowTaskList)) {
  66 + return new PageResult<>();
  67 + }
  68 + List<String> ids = flowTaskList.stream().map(FlowTaskDto::getBusinessId).collect(Collectors.toList());
  69 + for (SpecLockDelayApplication specLockDelayApplication : datas) {
  70 + specLockDelayApplication.setShowExamine(ids.contains(specLockDelayApplication.getId()));
  71 + }
  72 + }
  73 +
54 74 return PageResultUtil.convert(new PageInfo<>(datas));
55 75 }
56 76
... ...