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,6 +36,7 @@ import java.util.stream.Collectors;
36 36
37 import static com.zteits.urbanops.framework.apilog.core.enums.OperateTypeEnum.EXPORT; 37 import static com.zteits.urbanops.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
38 import static com.zteits.urbanops.framework.common.pojo.CommonResult.success; 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 @Tag(name = "管理后台 - 工单信息") 41 @Tag(name = "管理后台 - 工单信息")
41 @RestController 42 @RestController
@@ -111,6 +112,8 @@ public class MainInfoController { @@ -111,6 +112,8 @@ public class MainInfoController {
111 @Operation(summary = "获得工单信息分页") 112 @Operation(summary = "获得工单信息分页")
112 @PreAuthorize("@ss.hasPermission('workorder:main-info:query')") 113 @PreAuthorize("@ss.hasPermission('workorder:main-info:query')")
113 public CommonResult<PageResult<MainInfoRespVO>> getMainInfoPage(@Valid MainInfoPageReqVO pageReqVO) { 114 public CommonResult<PageResult<MainInfoRespVO>> getMainInfoPage(@Valid MainInfoPageReqVO pageReqVO) {
  115 + //登录人所属业务线
  116 + pageReqVO.setBusiLine(getBusiLine());
114 PageResult<MainInfoDO> pageResult = mainInfoService.getMainInfoPage(pageReqVO); 117 PageResult<MainInfoDO> pageResult = mainInfoService.getMainInfoPage(pageReqVO);
115 118
116 if (pageResult == null) { 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,6 +10,7 @@ import com.zteits.urbanops.module.workorder.dal.dataobject.maininfo.MainInfoDO;
10 import org.apache.ibatis.annotations.Mapper; 10 import org.apache.ibatis.annotations.Mapper;
11 import com.zteits.urbanops.module.workorder.controller.admin.maininfo.vo.*; 11 import com.zteits.urbanops.module.workorder.controller.admin.maininfo.vo.*;
12 import org.apache.poi.ss.formula.functions.T; 12 import org.apache.poi.ss.formula.functions.T;
  13 +import org.springframework.util.StringUtils;
13 14
14 /** 15 /**
15 * 工单信息 Mapper 16 * 工单信息 Mapper
@@ -20,9 +21,25 @@ import org.apache.poi.ss.formula.functions.T; @@ -20,9 +21,25 @@ import org.apache.poi.ss.formula.functions.T;
20 public interface MainInfoMapper extends BaseMapperX<MainInfoDO> { 21 public interface MainInfoMapper extends BaseMapperX<MainInfoDO> {
21 22
22 default PageResult<MainInfoDO> selectPage(MainInfoPageReqVO reqVO) { 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 .likeIfPresent(MainInfoDO::getOrderName, reqVO.getOrderName()) 43 .likeIfPresent(MainInfoDO::getOrderName, reqVO.getOrderName())
27 .eqIfPresent(MainInfoDO::getSourceId, reqVO.getSourceId()) 44 .eqIfPresent(MainInfoDO::getSourceId, reqVO.getSourceId())
28 .likeIfPresent(MainInfoDO::getSourceName, reqVO.getSourceName()) 45 .likeIfPresent(MainInfoDO::getSourceName, reqVO.getSourceName())
@@ -50,7 +67,8 @@ public interface MainInfoMapper extends BaseMapperX&lt;MainInfoDO&gt; { @@ -50,7 +67,8 @@ public interface MainInfoMapper extends BaseMapperX&lt;MainInfoDO&gt; {
50 .likeIfPresent(MainInfoDO::getRemark, reqVO.getRemark()) 67 .likeIfPresent(MainInfoDO::getRemark, reqVO.getRemark())
51 .likeIfPresent(MainInfoDO::getHandleResult, reqVO.getHandleResult()) 68 .likeIfPresent(MainInfoDO::getHandleResult, reqVO.getHandleResult())
52 .betweenIfPresent(MainInfoDO::getCreateTime, reqVO.getCreateTime()) 69 .betweenIfPresent(MainInfoDO::getCreateTime, reqVO.getCreateTime())
53 - .orderByDesc(MainInfoDO::getId)); 70 + .orderByDesc(MainInfoDO::getId);
  71 + return selectPage(reqVO, queryWrapper);
54 } 72 }
55 73
56 default PageResult<MainInfoDO> selectPage(Long loginUserId,MainInfoPageReqVO reqVO) { 74 default PageResult<MainInfoDO> selectPage(Long loginUserId,MainInfoPageReqVO reqVO) {
@@ -95,4 +113,4 @@ public interface MainInfoMapper extends BaseMapperX&lt;MainInfoDO&gt; { @@ -95,4 +113,4 @@ public interface MainInfoMapper extends BaseMapperX&lt;MainInfoDO&gt; {
95 return selectList(new QueryWrapper<MainInfoDO>().in(field, values)); 113 return selectList(new QueryWrapper<MainInfoDO>().in(field, values));
96 } 114 }
97 115
98 -}  
99 \ No newline at end of file 116 \ No newline at end of file
  117 +}