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 f16f56afd..7cff354a2 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 @@ -76,4 +76,10 @@ public class DvRepairPageReqVO extends PageParam { @Schema(description = "ids集合导出用") private String ids; + + @Schema(description = "设备ID集合", example = "6979") + private List machineryIds; + + @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 01fe01ed5..f7c2b7d60 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 @@ -3,10 +3,12 @@ package cn.iocoder.yudao.module.mes.dal.mysql.dvrepair; import java.util.*; import java.util.stream.Collectors; +import cn.hutool.core.collection.CollUtil; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.module.mes.controller.admin.dashboard.vo.dashboard.EventStatisticsVO; +import cn.iocoder.yudao.module.mes.dal.dataobject.deviceledger.DeviceLedgerDO; import cn.iocoder.yudao.module.mes.dal.dataobject.dvrepair.DvRepairDO; import cn.iocoder.yudao.module.mes.dal.dataobject.dvsubject.DvSubjectDO; import com.alibaba.excel.util.StringUtils; @@ -25,11 +27,24 @@ 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()) + ); + }else{ + dvRepairDOLambdaQueryWrapperX.eqIfPresent(DvRepairDO::getRepairCode, reqVO.getRepairCode()) + .eqIfPresent(DvRepairDO::getMachineryCode, reqVO.getMachineryCode()); + } + if(CollUtil.isNotEmpty(reqVO.getMachineryIds())){ + dvRepairDOLambdaQueryWrapperX.in(DvRepairDO::getMachineryId,reqVO.getMachineryIds()); + } dvRepairDOLambdaQueryWrapperX - .eqIfPresent(DvRepairDO::getRepairCode, reqVO.getRepairCode()) + .likeIfPresent(DvRepairDO::getRepairName, reqVO.getRepairName()) .eqIfPresent(DvRepairDO::getMachineryId, reqVO.getMachineryId()) - .eqIfPresent(DvRepairDO::getMachineryCode, reqVO.getMachineryCode()) + .likeIfPresent(DvRepairDO::getMachineryName, reqVO.getMachineryName()) .eqIfPresent(DvRepairDO::getMachineryBrand, reqVO.getMachineryBrand()) .eqIfPresent(DvRepairDO::getMachinerySpec, reqVO.getMachinerySpec()) 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 a9aab040a..dee5fe409 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 @@ -1,5 +1,6 @@ package cn.iocoder.yudao.module.mes.service.dvrepair; +import cn.hutool.core.collection.CollUtil; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; @@ -51,6 +52,7 @@ public class DvRepairServiceImpl implements DvRepairService { @Resource private DvRepairLineMapper dvRepairLineMapper; + @Resource private AutoCodeUtil autoCodeUtil; @@ -134,6 +136,20 @@ public class DvRepairServiceImpl implements DvRepairService { @Override public PageResult getDvRepairPage(DvRepairPageReqVO pageReqVO) { + if(StringUtils.isNotBlank(pageReqVO.getDeviceLine())) { + List deviceLedgerDOS = deviceLedgerMapper.selectList(new LambdaQueryWrapperX() + .eq(DeviceLedgerDO::getDeviceLine, pageReqVO.getDeviceLine()) + ); + List machineryIds = deviceLedgerDOS.stream().map(DeviceLedgerDO::getId).distinct().collect(Collectors.toList()); + if(CollUtil.isNotEmpty(machineryIds)){ + pageReqVO.setMachineryIds(machineryIds); + }else { + List objects = new ArrayList<>(); + objects.add((long) -1); + pageReqVO.setMachineryIds(objects); + } + } + return dvRepairMapper.selectPage(pageReqVO); } @@ -147,6 +163,7 @@ public class DvRepairServiceImpl implements DvRepairService { @Override public void updateRepairLine(DvRepairLineSaveReqVO updateReqVO) { + // 校验存在 validateDvRepairLineExists(updateReqVO.getId()); // 更新