| | |
| | | |
| | | @Override |
| | | public BigStorageDTO queryTargetSlotByTempering(GlassInfo glassInfo) { |
| | | List<GlassInfo> glassInfoList = glassInfoService.list( |
| | | new LambdaQueryWrapper<GlassInfo>() |
| | | .eq(GlassInfo::getEngineerId, glassInfo.getEngineerId()) |
| | | .eq(GlassInfo::getTemperingLayoutId, glassInfo.getTemperingLayoutId()) |
| | | .eq(GlassInfo::getSlot, glassInfo.getSlot()) |
| | | ); |
| | | List<String> glassIds = glassInfoList.stream().map(String::valueOf).collect(Collectors.toList()); |
| | | BigStorageDTO bigStorageDTO = null; |
| | | MPJLambdaWrapper<BigStorageCage> wrapper = new MPJLambdaWrapper<>(BigStorageCage.class) |
| | | .selectAll(BigStorageCage.class) |
| | |
| | | .eq(BigStorageCageDetails::getEngineerId, glassInfo.getEngineerId()) |
| | | .eq(BigStorageCageDetails::getTemperingLayoutId, glassInfo.getTemperingLayoutId()) |
| | | .gt(BigStorageCage::getRemainWidth, Math.max(glassInfo.getWidth(), glassInfo.getHeight())) |
| | | .in(BigStorageCageDetails::getGlassId, glassIds) |
| | | .last("limit 1"); |
| | | if (glassInfo.getTemperingLayoutId() == 0) { |
| | | wrapper.eq(BigStorageCageDetails::getFlowCardId, glassInfo.getFlowCardId()) |