Commit c046ba5d9354706395c05624159c63a4cffabf96

Authored by wangqian
1 parent 1f9b6868

工单查询增加业务线

urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/maininfo/MainInfoController.java
... ... @@ -36,6 +36,7 @@ import java.util.stream.Collectors;
36 36  
37 37 import static com.zteits.urbanops.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
38 38 import static com.zteits.urbanops.framework.common.pojo.CommonResult.success;
  39 +import static com.zteits.urbanops.framework.security.core.util.SecurityFrameworkUtils.getBusiLine;
39 40  
40 41 @Tag(name = "管理后台 - 工单信息")
41 42 @RestController
... ... @@ -111,6 +112,8 @@ public class MainInfoController {
111 112 @Operation(summary = "获得工单信息分页")
112 113 @PreAuthorize("@ss.hasPermission('workorder:main-info:query')")
113 114 public CommonResult<PageResult<MainInfoRespVO>> getMainInfoPage(@Valid MainInfoPageReqVO pageReqVO) {
  115 + //登录人所属业务线
  116 + pageReqVO.setBusiLine(getBusiLine());
114 117 PageResult<MainInfoDO> pageResult = mainInfoService.getMainInfoPage(pageReqVO);
115 118  
116 119 if (pageResult == null) {
... ...
urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/dal/mysql/maininfo/MainInfoMapper.java
... ... @@ -10,6 +10,7 @@ import com.zteits.urbanops.module.workorder.dal.dataobject.maininfo.MainInfoDO;
10 10 import org.apache.ibatis.annotations.Mapper;
11 11 import com.zteits.urbanops.module.workorder.controller.admin.maininfo.vo.*;
12 12 import org.apache.poi.ss.formula.functions.T;
  13 +import org.springframework.util.StringUtils;
13 14  
14 15 /**
15 16 * 工单信息 Mapper
... ... @@ -20,9 +21,25 @@ import org.apache.poi.ss.formula.functions.T;
20 21 public interface MainInfoMapper extends BaseMapperX<MainInfoDO> {
21 22  
22 23 default PageResult<MainInfoDO> selectPage(MainInfoPageReqVO reqVO) {
23   - return selectPage(reqVO, new LambdaQueryWrapperX<MainInfoDO>()
24   - .eqIfPresent(MainInfoDO::getBusiLine, reqVO.getBusiLine())
25   - .eqIfPresent(MainInfoDO::getOrderNo, reqVO.getOrderNo())
  24 +
  25 + LambdaQueryWrapperX<MainInfoDO> queryWrapper = new LambdaQueryWrapperX<>();
  26 + String[] busiLineArr = reqVO.getBusiLine().split(",");
  27 + if (busiLineArr != null && busiLineArr.length > 1) {
  28 + // 拼接 OR 条件:FIND_IN_SET(a, busi_line) > 0 OR FIND_IN_SET(c, busi_line) > 0
  29 + for (int i = 0; i < busiLineArr.length; i++) {
  30 + String val = busiLineArr[i].trim();
  31 + if (StringUtils.hasText(val)) {
  32 + if (i == 0) {
  33 + queryWrapper.apply("FIND_IN_SET({0}, busi_line) > 0", val);
  34 + } else {
  35 + queryWrapper.or().apply("FIND_IN_SET({0}, busi_line) > 0", val);
  36 + }
  37 + }
  38 + }
  39 + } else {
  40 + queryWrapper.likeIfPresent(MainInfoDO::getBusiLine, reqVO.getBusiLine());
  41 + }
  42 + queryWrapper.eqIfPresent(MainInfoDO::getOrderNo, reqVO.getOrderNo())
26 43 .likeIfPresent(MainInfoDO::getOrderName, reqVO.getOrderName())
27 44 .eqIfPresent(MainInfoDO::getSourceId, reqVO.getSourceId())
28 45 .likeIfPresent(MainInfoDO::getSourceName, reqVO.getSourceName())
... ... @@ -50,7 +67,8 @@ public interface MainInfoMapper extends BaseMapperX&lt;MainInfoDO&gt; {
50 67 .likeIfPresent(MainInfoDO::getRemark, reqVO.getRemark())
51 68 .likeIfPresent(MainInfoDO::getHandleResult, reqVO.getHandleResult())
52 69 .betweenIfPresent(MainInfoDO::getCreateTime, reqVO.getCreateTime())
53   - .orderByDesc(MainInfoDO::getId));
  70 + .orderByDesc(MainInfoDO::getId);
  71 + return selectPage(reqVO, queryWrapper);
54 72 }
55 73  
56 74 default PageResult<MainInfoDO> selectPage(Long loginUserId,MainInfoPageReqVO reqVO) {
... ... @@ -95,4 +113,4 @@ public interface MainInfoMapper extends BaseMapperX&lt;MainInfoDO&gt; {
95 113 return selectList(new QueryWrapper<MainInfoDO>().in(field, values));
96 114 }
97 115  
98   -}
99 116 \ No newline at end of file
  117 +}
... ...