diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/ticketmanagement/vo/TicketManagementPageReqVO.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/ticketmanagement/vo/TicketManagementPageReqVO.java index 230f2db2f..741a1eead 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/ticketmanagement/vo/TicketManagementPageReqVO.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/ticketmanagement/vo/TicketManagementPageReqVO.java @@ -65,6 +65,9 @@ public class TicketManagementPageReqVO extends PageParam { @Schema(description = "设备集合", example = "6979") private List machineryNames; + @Schema(description = "设备 ID", example = "6979") + private Long deviceId; + @Schema(description = "产线") private String deviceLineId; -} \ No newline at end of file +} diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/ticketmanagement/TicketManagementServiceImpl.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/ticketmanagement/TicketManagementServiceImpl.java index 49526878e..7fcbfc5c3 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/ticketmanagement/TicketManagementServiceImpl.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/ticketmanagement/TicketManagementServiceImpl.java @@ -93,7 +93,17 @@ public class TicketManagementServiceImpl implements TicketManagementService { @Override public PageResult getTicketManagementPage(TicketManagementPageReqVO pageReqVO) { - if(StringUtils.isNotBlank(pageReqVO.getDeviceLineId())||StringUtils.isNotBlank(pageReqVO.getPlanNo())) { + if (pageReqVO.getDeviceId() != null) { + pageReqVO.setPlanNo(null); + DeviceLedgerDO deviceLedgerDO = deviceLedgerMapper.selectById(pageReqVO.getDeviceId()); + if (deviceLedgerDO != null + && StringUtils.isNotBlank(deviceLedgerDO.getDeviceName()) + && matchesDeviceLine(deviceLedgerDO, pageReqVO.getDeviceLineId())) { + pageReqVO.setMachineryNames(Collections.singletonList(deviceLedgerDO.getDeviceName())); + } else { + pageReqVO.setMachineryNames(emptyResultMachineryNames()); + } + } else if(StringUtils.isNotBlank(pageReqVO.getDeviceLineId())||StringUtils.isNotBlank(pageReqVO.getPlanNo())) { LambdaQueryWrapperX deviceLedgerDOLambdaQueryWrapperX = new LambdaQueryWrapperX<>(); if(StringUtils.isNotBlank(pageReqVO.getDeviceLineId())) deviceLedgerDOLambdaQueryWrapperX.eqIfPresent(DeviceLedgerDO::getDeviceLine, pageReqVO.getDeviceLineId()); @@ -109,15 +119,23 @@ public class TicketManagementServiceImpl implements TicketManagementService { if(CollUtil.isNotEmpty(machineryNames)){ pageReqVO.setMachineryNames(machineryNames); }else { - List objects = new ArrayList<>(); - objects.add("adsaf"); - pageReqVO.setMachineryNames(objects); + pageReqVO.setMachineryNames(emptyResultMachineryNames()); } } return ticketManagementMapper.selectPage(pageReqVO); } + private boolean matchesDeviceLine(DeviceLedgerDO deviceLedgerDO, String deviceLineId) { + return StringUtils.isBlank(deviceLineId) + || (deviceLedgerDO.getDeviceLine() != null + && Objects.equals(String.valueOf(deviceLedgerDO.getDeviceLine()), deviceLineId)); + } + + private List emptyResultMachineryNames() { + return Collections.singletonList("adsaf"); + } + @Override @Transactional(rollbackFor = Exception.class) public void batchUpdateJobStatus(TicketManagementBatchUpdateReqVO reqVO) {