diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dvrepair/vo/DvRepairPageReqVO.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dvrepair/vo/DvRepairPageReqVO.java index 43a2c53cc..f50147393 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dvrepair/vo/DvRepairPageReqVO.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dvrepair/vo/DvRepairPageReqVO.java @@ -18,6 +18,9 @@ public class DvRepairPageReqVO extends PageParam { @Schema(description = "维修单编号") private String repairCode; + @Schema(description = "关键词,匹配维修单号/设备编号/设备名称") + private String keyword; + @Schema(description = "维修单名称", example = "王五") private String repairName; @@ -83,6 +86,9 @@ public class DvRepairPageReqVO extends PageParam { @Schema(description = "设备ID集合", example = "6979") private List machineryIds; + @Schema(hidden = true) + private List keywordMachineryIds; + @Schema(description = "产线") private String deviceLine; } diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/dvrepair/DvRepairMapper.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/dvrepair/DvRepairMapper.java index 143403488..af7eec9d7 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/dvrepair/DvRepairMapper.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/dvrepair/DvRepairMapper.java @@ -27,29 +27,22 @@ public interface DvRepairMapper extends BaseMapperX { LambdaQueryWrapperX dvRepairDOLambdaQueryWrapperX = new LambdaQueryWrapperX<>(); - if(StringUtils.isNotBlank(reqVO.getRepairCode())&&StringUtils.isNotBlank(reqVO.getMachineryCode())&&reqVO.getRepairCode().equals(reqVO.getMachineryCode())){ - dvRepairDOLambdaQueryWrapperX.and(w -> w - .like(DvRepairDO::getRepairCode, reqVO.getRepairCode()) - .or() - .like(DvRepairDO::getMachineryCode, reqVO.getMachineryCode()) - .or() - .in(DvRepairDO::getMachineryId,reqVO.getMachineryIds()) - ); - }else if(CollUtil.isNotEmpty(reqVO.getMachineryIds())){ - dvRepairDOLambdaQueryWrapperX.in(DvRepairDO::getMachineryId,reqVO.getMachineryIds()); + if(CollUtil.isNotEmpty(reqVO.getMachineryIds())){ + dvRepairDOLambdaQueryWrapperX.in(DvRepairDO::getMachineryId, reqVO.getMachineryIds()); } - else{ - dvRepairDOLambdaQueryWrapperX.eqIfPresent(DvRepairDO::getRepairCode, reqVO.getRepairCode()) - .eqIfPresent(DvRepairDO::getMachineryCode, reqVO.getMachineryCode()); + if (StringUtils.isNotBlank(reqVO.getKeyword())) { + dvRepairDOLambdaQueryWrapperX.and(w -> { + w.like(DvRepairDO::getRepairCode, reqVO.getKeyword()); + if (CollUtil.isNotEmpty(reqVO.getKeywordMachineryIds())) { + w.or().in(DvRepairDO::getMachineryId, reqVO.getKeywordMachineryIds()); + } + }); } - /* if(CollUtil.isNotEmpty(reqVO.getMachineryIds())){ - dvRepairDOLambdaQueryWrapperX.in(DvRepairDO::getMachineryId,reqVO.getMachineryIds()); - }*/ dvRepairDOLambdaQueryWrapperX + .likeIfPresent(DvRepairDO::getRepairCode, reqVO.getRepairCode()) .likeIfPresent(DvRepairDO::getRepairName, reqVO.getRepairName()) .eqIfPresent(DvRepairDO::getMachineryId, reqVO.getMachineryId()) - - .likeIfPresent(DvRepairDO::getMachineryName, reqVO.getMachineryName()) + .likeIfPresent(DvRepairDO::getMachineryCode, reqVO.getMachineryCode()) .eqIfPresent(DvRepairDO::getMachineryBrand, reqVO.getMachineryBrand()) .eqIfPresent(DvRepairDO::getMachinerySpec, reqVO.getMachinerySpec()) .eqIfPresent(DvRepairDO::getMachineryTypeId, reqVO.getMachineryTypeId()) diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/dvrepair/DvRepairServiceImpl.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/dvrepair/DvRepairServiceImpl.java index b2d48e6f0..bd97d1519 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/dvrepair/DvRepairServiceImpl.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/dvrepair/DvRepairServiceImpl.java @@ -136,15 +136,15 @@ public class DvRepairServiceImpl implements DvRepairService { @Override public PageResult getDvRepairPage(DvRepairPageReqVO pageReqVO) { - if(StringUtils.isNotBlank(pageReqVO.getDeviceLine())|| StringUtils.isNotBlank(pageReqVO.getRepairCode())) { + if(StringUtils.isNotBlank(pageReqVO.getDeviceLine()) || StringUtils.isNotBlank(pageReqVO.getMachineryName())) { LambdaQueryWrapperX deviceLedgerDOLambdaQueryWrapperX = new LambdaQueryWrapperX<>(); if(StringUtils.isNotBlank(pageReqVO.getDeviceLine())) deviceLedgerDOLambdaQueryWrapperX.eqIfPresent(DeviceLedgerDO::getDeviceLine, pageReqVO.getDeviceLine()); - if(StringUtils.isNotBlank(pageReqVO.getRepairCode())){ + if(StringUtils.isNotBlank(pageReqVO.getMachineryName())){ deviceLedgerDOLambdaQueryWrapperX.and(w -> w - .like(DeviceLedgerDO::getDeviceCode, pageReqVO.getRepairCode()) + .like(DeviceLedgerDO::getDeviceCode, pageReqVO.getMachineryName()) .or() - .like(DeviceLedgerDO::getDeviceName, pageReqVO.getRepairCode()) + .like(DeviceLedgerDO::getDeviceName, pageReqVO.getMachineryName()) ); } List deviceLedgerDOS = deviceLedgerMapper.selectList(deviceLedgerDOLambdaQueryWrapperX); @@ -158,6 +158,20 @@ public class DvRepairServiceImpl implements DvRepairService { } } + if (StringUtils.isNotBlank(pageReqVO.getKeyword())) { + LambdaQueryWrapperX keywordDeviceQuery = new LambdaQueryWrapperX<>(); + keywordDeviceQuery.and(w -> w + .like(DeviceLedgerDO::getDeviceCode, pageReqVO.getKeyword()) + .or() + .like(DeviceLedgerDO::getDeviceName, pageReqVO.getKeyword()) + ); + List deviceLedgerDOS = deviceLedgerMapper.selectList(keywordDeviceQuery); + pageReqVO.setKeywordMachineryIds(deviceLedgerDOS.stream() + .map(DeviceLedgerDO::getId) + .distinct() + .collect(Collectors.toList())); + } + return dvRepairMapper.selectPage(pageReqVO); }