From ec455718f109254620cf57b33e947811a74c7cb8 Mon Sep 17 00:00:00 2001 From: HuangHuiKang Date: Fri, 24 Apr 2026 09:56:08 +0800 Subject: [PATCH] =?UTF-8?q?fix:app=E6=89=AB=E7=A0=81=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E6=8E=A5=E5=8F=A3=E6=B7=BB=E5=8A=A0=E7=BC=96?= =?UTF-8?q?=E7=A0=81=E8=BF=87=E6=BB=A4=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/mold/MoldBrandController.java | 8 ++--- .../admin/product/ErpProductController.java | 6 ++-- .../erp/service/mold/MoldBrandService.java | 4 ++- .../service/mold/MoldBrandServiceImpl.java | 21 +++++++++++- .../service/product/ErpProductService.java | 4 ++- .../product/ErpProductServiceImpl.java | 19 +++++++++++ .../CriticalComponentController.java | 8 ++--- .../deviceledger/DeviceLedgerController.java | 8 ++--- .../admin/dvrepair/DvRepairController.java | 11 ++++--- .../moldrepair/MoldRepairController.java | 11 ++++--- .../MoldTicketManagementController.java | 20 ++++++------ .../TicketManagementController.java | 20 ++++++------ .../CriticalComponentService.java | 4 ++- .../CriticalComponentServiceImpl.java | 22 ++++++++++++- .../deviceledger/DeviceLedgerService.java | 4 ++- .../deviceledger/DeviceLedgerServiceImpl.java | 22 ++++++++++++- .../mes/service/dvrepair/DvRepairService.java | 4 +-- .../service/dvrepair/DvRepairServiceImpl.java | 28 ++++++++++++++-- .../service/moldrepair/MoldRepairService.java | 2 +- .../moldrepair/MoldRepairServiceImpl.java | 29 +++++++++++++++-- .../MoldTicketManagementService.java | 6 ++-- .../MoldTicketManagementServiceImpl.java | 32 +++++++++++++++---- .../TicketManagementService.java | 6 ++-- .../TicketManagementServiceImpl.java | 31 ++++++++++++++---- 24 files changed, 251 insertions(+), 79 deletions(-) diff --git a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/mold/MoldBrandController.java b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/mold/MoldBrandController.java index 1790c069f..6d8b29ebe 100644 --- a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/mold/MoldBrandController.java +++ b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/mold/MoldBrandController.java @@ -167,10 +167,10 @@ public class MoldBrandController { @GetMapping("/mold/get") @Operation(summary = "获得模具") - @Parameter(name = "id", description = "编号", required = true) @PreAuthorize("@ss.hasPermission('erp:mold-brand:query')") - public CommonResult getMold(@RequestParam("id") Long id) { - return success(moldBrandService.getMold(id)); + public CommonResult getMold(@RequestParam(value = "id", required = false) Long id, + @RequestParam(value = "code", required = false) String code) { + return success(moldBrandService.getMold(id, code)); } @GetMapping("/mold/export-excel") @@ -241,4 +241,4 @@ public class MoldBrandController { return success(moldBrandService.getMoldBrandProduct(id)); } -} \ No newline at end of file +} diff --git a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/product/ErpProductController.java b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/product/ErpProductController.java index e264000d8..397e17f05 100644 --- a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/product/ErpProductController.java +++ b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/product/ErpProductController.java @@ -104,10 +104,10 @@ public class ErpProductController { @GetMapping("/get") @Operation(summary = "获得产品") - @Parameter(name = "id", description = "编号", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('erp:product:query')") - public CommonResult getProduct(@RequestParam("id") Long id) { - return success(productService.getProduct(id)); + public CommonResult getProduct(@RequestParam(value = "id", required = false) Long id, + @RequestParam(value = "code", required = false) String code) { + return success(productService.getProduct(id, code)); } @GetMapping("/page") diff --git a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/mold/MoldBrandService.java b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/mold/MoldBrandService.java index 66b34e8b2..75943714e 100644 --- a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/mold/MoldBrandService.java +++ b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/mold/MoldBrandService.java @@ -120,6 +120,8 @@ public interface MoldBrandService { * @return 模具 */ MoldDO getMold(Long id); + + MoldDO getMold(Long id, String code); List selectBy(MoldDO reqVO); // ==================== 子表(模具产品) ==================== @@ -187,4 +189,4 @@ public interface MoldBrandService { List getMoldBrandTree(); void regenerateCode(Long id, String code) throws UnsupportedEncodingException; -} \ No newline at end of file +} diff --git a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/mold/MoldBrandServiceImpl.java b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/mold/MoldBrandServiceImpl.java index fa24e61f6..ea0ae94fe 100644 --- a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/mold/MoldBrandServiceImpl.java +++ b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/mold/MoldBrandServiceImpl.java @@ -256,6 +256,7 @@ public class MoldBrandServiceImpl implements MoldBrandService { @Override public MoldDO getMold(Long id) { + validateMoldExists(id); MoldDO moldDO = moldMapper.selectById(id); Map> moldRepairDOMap=new HashMap<>(); @@ -308,6 +309,24 @@ public class MoldBrandServiceImpl implements MoldBrandService { moldDO.setQrcodeUrl(qrcodeUrl); return moldDO; } + + @Override + public MoldDO getMold(Long id, String code) { + if (id != null) { + return getMold(id); + } + if (StrUtil.isNotBlank(code)) { + MoldDO moldDO = moldMapper.selectOne(new LambdaQueryWrapperX() + .like(MoldDO::getCode, code) + .orderByDesc(MoldDO::getId) + .last("LIMIT 1")); + if (moldDO == null) { + throw exception(MOLD_NOT_EXISTS); + } + return getMold(moldDO.getId()); + } + throw exception(MOLD_NOT_EXISTS); + } @Override public List selectBy(MoldDO reqVO){ return moldMapper.selectBy(reqVO); @@ -445,4 +464,4 @@ public class MoldBrandServiceImpl implements MoldBrandService { return respVO; } -} \ No newline at end of file +} diff --git a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/product/ErpProductService.java b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/product/ErpProductService.java index f690778b8..b1c4e10b9 100644 --- a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/product/ErpProductService.java +++ b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/product/ErpProductService.java @@ -64,6 +64,8 @@ public interface ErpProductService { */ ErpProductRespVO getProduct(Long id); + ErpProductRespVO getProduct(Long id, String code); + /** * 获得指定状态的产品 VO 列表 * @@ -138,4 +140,4 @@ public interface ErpProductService { ErpProductImportRespVO importProductList(List importProducts, boolean isUpdateSupport); void regenerateCode(Long id, String code) throws UnsupportedEncodingException; -} \ No newline at end of file +} diff --git a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/product/ErpProductServiceImpl.java b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/product/ErpProductServiceImpl.java index 9ed46431f..8b9e482c4 100644 --- a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/product/ErpProductServiceImpl.java +++ b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/product/ErpProductServiceImpl.java @@ -7,6 +7,7 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.util.collection.MapUtils; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.framework.common.util.validation.ValidationUtils; +import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder; import cn.iocoder.yudao.module.common.dal.dataobject.mold.MoldDO; import cn.iocoder.yudao.module.common.enums.CodeTypeEnum; @@ -325,6 +326,24 @@ public class ErpProductServiceImpl implements ErpProductService { return respVO; } + @Override + public ErpProductRespVO getProduct(Long id, String code) { + if (id != null) { + return getProduct(id); + } + if (StringUtils.isNotBlank(code)) { + ErpProductDO product = productMapper.selectOne(new LambdaQueryWrapperX() + .like(ErpProductDO::getBarCode, code) + .orderByDesc(ErpProductDO::getId) + .last("LIMIT 1")); + if (product == null) { + throw exception(PRODUCT_NOT_EXISTS); + } + return getProduct(product.getId()); + } + throw exception(PRODUCT_NOT_EXISTS); + } + diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/criticalcomponent/CriticalComponentController.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/criticalcomponent/CriticalComponentController.java index 6b0fcacca..4a152a3c4 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/criticalcomponent/CriticalComponentController.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/criticalcomponent/CriticalComponentController.java @@ -77,10 +77,10 @@ public class CriticalComponentController { @GetMapping("/get") @Operation(summary = "获得设备关键件") - @Parameter(name = "id", description = "编号", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('mes:critical-component:query')") - public CommonResult getCriticalComponent(@RequestParam("id") Long id) { - CriticalComponentDO criticalComponent = criticalComponentService.getCriticalComponent(id); + public CommonResult getCriticalComponent(@RequestParam(value = "id", required = false) Long id, + @RequestParam(value = "code", required = false) String code) { + CriticalComponentDO criticalComponent = criticalComponentService.getCriticalComponent(id, code); return success(BeanUtils.toBean(criticalComponent, CriticalComponentRespVO.class)); } @@ -179,4 +179,4 @@ public class CriticalComponentController { return success(true); } -} \ No newline at end of file +} diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/deviceledger/DeviceLedgerController.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/deviceledger/DeviceLedgerController.java index 9700c5500..49b7fd458 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/deviceledger/DeviceLedgerController.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/deviceledger/DeviceLedgerController.java @@ -100,10 +100,10 @@ public class DeviceLedgerController { @GetMapping("/get") @Operation(summary = "获得设备台账") - @Parameter(name = "id", description = "编号", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('mes:device-ledger:query')") - public CommonResult getDeviceLedger(@RequestParam("id") Long id) { - DeviceLedgerDO deviceLedger = deviceLedgerService.getDeviceLedger(id); + public CommonResult getDeviceLedger(@RequestParam(value = "id", required = false) Long id, + @RequestParam(value = "code", required = false) String code) { + DeviceLedgerDO deviceLedger = deviceLedgerService.getDeviceLedger(id, code); DeviceLedgerRespVO respVO = BeanUtils.toBean(deviceLedger, DeviceLedgerRespVO.class); String qrcodeUrl = qrcodeService.selectQrcodeUrlByIdAndCode(QrcodeBizTypeEnum.EQUIPMENT.getCode(),id,respVO.getDeviceCode()); @@ -279,4 +279,4 @@ public class DeviceLedgerController { -} \ No newline at end of file +} diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dvrepair/DvRepairController.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dvrepair/DvRepairController.java index dc18c11d7..32a371ad0 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dvrepair/DvRepairController.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dvrepair/DvRepairController.java @@ -174,12 +174,13 @@ public class DvRepairController { @GetMapping("/getRepairListByDeviceId") @Operation(summary = "根据设备Id获得维修历史记录") - @Parameter(name = "deviceId", description = "设备Id", required = true, example = "1024") + @Parameter(name = "deviceId", description = "设备Id", required = false, example = "1024") @PreAuthorize("@ss.hasPermission('mes:ticket-management:query')") - public CommonResult> getRepairListByDeviceId(@RequestParam("deviceId") Long deviceId, + public CommonResult> getRepairListByDeviceId(@RequestParam(value = "deviceId", required = false) Long deviceId, + @RequestParam(value = "code", required = false) String code, @RequestParam(name = "startTime",required = false) String startTime, @RequestParam(name = "endTime",required = false) String endTime) { - List dvRepairDOList = dvRepairService.getRepairListByDeviceId(deviceId,startTime,endTime,null); + List dvRepairDOList = dvRepairService.getRepairListByDeviceId(deviceId, code, startTime, endTime, null); return success(dvRepairDOList); } @@ -196,7 +197,7 @@ public class DvRepairController { HttpServletResponse response) throws IOException { // 查询数据 - List dvRepairDOList = dvRepairService.getRepairListByDeviceId(deviceId,startTime,endTime,ids); + List dvRepairDOList = dvRepairService.getRepairListByDeviceId(deviceId, null, startTime, endTime, ids); // 设置响应头 response.setContentType("application/vnd.ms-excel;charset=UTF-8"); @@ -227,4 +228,4 @@ public class DvRepairController { return dvSubjectRespVOPageResult; } -} \ No newline at end of file +} diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/moldrepair/MoldRepairController.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/moldrepair/MoldRepairController.java index ebcf9b59c..84c7d1927 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/moldrepair/MoldRepairController.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/moldrepair/MoldRepairController.java @@ -167,12 +167,13 @@ public class MoldRepairController { @GetMapping("/getRepairListByMoldId") @Operation(summary = "根据模具Id获得维修历史记录") - @Parameter(name = "moldId", description = "模具Id", required = true, example = "1024") + @Parameter(name = "moldId", description = "模具Id", required = false, example = "1024") @PreAuthorize("@ss.hasPermission('mes:mold_ticket-management:query')") - public CommonResult> getRepairListByMoldId(@RequestParam("moldId") Long moldId, + public CommonResult> getRepairListByMoldId(@RequestParam(value = "moldId", required = false) Long moldId, + @RequestParam(value = "code", required = false) String code, @RequestParam(name = "startTime",required = false) String startTime, @RequestParam(name = "endTime",required = false) String endTime) { - List moldRepairDOList = moldRepairService.getRepairListByMoldId(moldId,startTime,endTime,null); + List moldRepairDOList = moldRepairService.getRepairListByMoldId(moldId, code, startTime, endTime, null); return success(moldRepairDOList); } @@ -189,7 +190,7 @@ public class MoldRepairController { HttpServletResponse response) throws IOException { // 查询数据 - List moldRepairDOList = moldRepairService.getRepairListByMoldId(moldId,startTime,endTime,ids); + List moldRepairDOList = moldRepairService.getRepairListByMoldId(moldId, null, startTime, endTime, ids); // 设置响应头 response.setContentType("application/vnd.ms-excel;charset=UTF-8"); @@ -221,4 +222,4 @@ public class MoldRepairController { return moldSubjectRespVOPageResult; } -} \ No newline at end of file +} diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/moldticketmanagement/MoldTicketManagementController.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/moldticketmanagement/MoldTicketManagementController.java index 55ac6dca0..edf547738 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/moldticketmanagement/MoldTicketManagementController.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/moldticketmanagement/MoldTicketManagementController.java @@ -140,12 +140,13 @@ public class MoldTicketManagementController { @GetMapping("/getInspectionByMoldId") @Operation(summary = "根据模具Id获得点检历史记录") - @Parameter(name = "moldId", description = "模具Id", required = true, example = "1024") + @Parameter(name = "moldId", description = "模具Id", required = false, example = "1024") @PreAuthorize("@ss.hasPermission('mes:mold-ticket-management:query')") - public CommonResult< List> getInspectionByMoldId(@RequestParam("moldId") Long moldId, + public CommonResult< List> getInspectionByMoldId(@RequestParam(value = "moldId", required = false) Long moldId, + @RequestParam(value = "code", required = false) String code, @RequestParam(name = "startTime",required = false) String startTime, @RequestParam(name = "endTime",required = false) String endTime) { - List moldTicketResultsDOList = moldticketManagementService.getInspectionByMoldId(moldId,startTime,endTime,""); + List moldTicketResultsDOList = moldticketManagementService.getInspectionByMoldId(moldId, code, startTime, endTime, ""); return success(moldTicketResultsDOList); } @@ -160,7 +161,7 @@ public class MoldTicketManagementController { HttpServletResponse response) throws IOException { // 查询数据 - List results = moldticketManagementService.getInspectionByMoldId(moldId, startTime, endTime, ids); + List results = moldticketManagementService.getInspectionByMoldId(moldId, null, startTime, endTime, ids); // 转换为VO并处理数据 List exportVos = results.stream() @@ -179,12 +180,13 @@ public class MoldTicketManagementController { @GetMapping("/getMaintenanceByMoldId") @Operation(summary = "根据模具Id获得保养历史记录") - @Parameter(name = "moldId", description = "模具Id", required = true, example = "1024") + @Parameter(name = "moldId", description = "模具Id", required = false, example = "1024") @PreAuthorize("@ss.hasPermission('mes:mold_ticket-management:query')") - public CommonResult> getMaintenanceByMoldId(@RequestParam("moldId") Long moldId, + public CommonResult> getMaintenanceByMoldId(@RequestParam(value = "moldId", required = false) Long moldId, + @RequestParam(value = "code", required = false) String code, @RequestParam(name = "startTime",required = false) String startTime, @RequestParam(name = "endTime",required = false) String endTime) { - List moldticketResultsDOList = moldticketManagementService.getMaintenanceByMoldId(moldId,startTime,endTime,""); + List moldticketResultsDOList = moldticketManagementService.getMaintenanceByMoldId(moldId, code, startTime, endTime, ""); return success(moldticketResultsDOList); } @@ -200,7 +202,7 @@ public class MoldTicketManagementController { HttpServletResponse response) throws IOException { // 查询数据 - List results = moldticketManagementService.getMaintenanceByMoldId(moldId, startTime, endTime, ids); + List results = moldticketManagementService.getMaintenanceByMoldId(moldId, null, startTime, endTime, ids); // 转换为VO并处理数据 List exportVos = results.stream() @@ -276,4 +278,4 @@ public class MoldTicketManagementController { return vo; } -} \ No newline at end of file +} diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/ticketmanagement/TicketManagementController.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/ticketmanagement/TicketManagementController.java index 04b10190d..fe8b20d52 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/ticketmanagement/TicketManagementController.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/ticketmanagement/TicketManagementController.java @@ -160,12 +160,13 @@ public class TicketManagementController { @GetMapping("/getInspectionByDeviceId") @Operation(summary = "根据设备Id获得点检历史记录") - @Parameter(name = "deviceId", description = "设备Id", required = true, example = "1024") + @Parameter(name = "deviceId", description = "设备Id", required = false, example = "1024") @PreAuthorize("@ss.hasPermission('mes:ticket-management:query')") - public CommonResult< List> getInspectionByDeviceId(@RequestParam("deviceId") Long deviceId, + public CommonResult< List> getInspectionByDeviceId(@RequestParam(value = "deviceId", required = false) Long deviceId, + @RequestParam(value = "code", required = false) String code, @RequestParam(name = "startTime",required = false) String startTime, @RequestParam(name = "endTime",required = false) String endTime) { - List ticketResultsDOList = ticketManagementService.getInspectionByDeviceId(deviceId,startTime,endTime,""); + List ticketResultsDOList = ticketManagementService.getInspectionByDeviceId(deviceId, code, startTime, endTime, ""); return success(ticketResultsDOList); } @@ -180,7 +181,7 @@ public class TicketManagementController { HttpServletResponse response) throws IOException { // 查询数据 - List results = ticketManagementService.getInspectionByDeviceId(deviceId, startTime, endTime, ids); + List results = ticketManagementService.getInspectionByDeviceId(deviceId, null, startTime, endTime, ids); // 转换为VO并处理数据 List exportVos = results.stream() @@ -202,12 +203,13 @@ public class TicketManagementController { @GetMapping("/getMaintenanceByDeviceId") @Operation(summary = "根据设备Id获得保养历史记录") - @Parameter(name = "deviceId", description = "设备Id", required = true, example = "1024") + @Parameter(name = "deviceId", description = "设备Id", required = false, example = "1024") @PreAuthorize("@ss.hasPermission('mes:ticket-management:query')") - public CommonResult> getMaintenanceByDeviceId(@RequestParam("deviceId") Long deviceId, + public CommonResult> getMaintenanceByDeviceId(@RequestParam(value = "deviceId", required = false) Long deviceId, + @RequestParam(value = "code", required = false) String code, @RequestParam(name = "startTime",required = false) String startTime, @RequestParam(name = "endTime",required = false) String endTime) { - List ticketResultsDOList = ticketManagementService.getMaintenanceByDeviceId(deviceId,startTime,endTime,""); + List ticketResultsDOList = ticketManagementService.getMaintenanceByDeviceId(deviceId, code, startTime, endTime, ""); return success(ticketResultsDOList); } @@ -223,7 +225,7 @@ public class TicketManagementController { HttpServletResponse response) throws IOException { // 查询数据 - List results = ticketManagementService.getMaintenanceByDeviceId(deviceId, startTime, endTime, ids); + List results = ticketManagementService.getMaintenanceByDeviceId(deviceId, null, startTime, endTime, ids); // 转换为VO并处理数据 List exportVos = results.stream() @@ -299,4 +301,4 @@ public class TicketManagementController { return vo; } -} \ 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/criticalcomponent/CriticalComponentService.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/criticalcomponent/CriticalComponentService.java index 36b473997..1e9080ac3 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/criticalcomponent/CriticalComponentService.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/criticalcomponent/CriticalComponentService.java @@ -45,6 +45,8 @@ public interface CriticalComponentService { */ CriticalComponentDO getCriticalComponent(Long id); + CriticalComponentDO getCriticalComponent(Long id, String code); + /** * 获得设备关键件分页 * @@ -63,4 +65,4 @@ public interface CriticalComponentService { CriticalComponentImportRespVO importCriticalComponentList(List importComponents, boolean isUpdateSupport); void regenerateCode(Long id, String code) throws UnsupportedEncodingException; -} \ 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/criticalcomponent/CriticalComponentServiceImpl.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/criticalcomponent/CriticalComponentServiceImpl.java index 385968f9c..cde4bed5f 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/criticalcomponent/CriticalComponentServiceImpl.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/criticalcomponent/CriticalComponentServiceImpl.java @@ -1,6 +1,7 @@ package cn.iocoder.yudao.module.mes.service.criticalcomponent; import cn.iocoder.yudao.module.common.dal.dataobject.mold.MoldDO; +import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.module.common.enums.CodeTypeEnum; import cn.iocoder.yudao.module.common.enums.QrcodeBizTypeEnum; import cn.iocoder.yudao.module.common.service.qrcordrecord.QrcodeRecordService; @@ -197,6 +198,7 @@ public class CriticalComponentServiceImpl implements CriticalComponentService { @Override public CriticalComponentDO getCriticalComponent(Long id) { + validateCriticalComponentExists(id); CriticalComponentDO criticalComponentDO = criticalComponentMapper.selectById(id); String qrcodeUrl = qrcodeService.selectQrcodeUrlByIdAndCode(QrcodeBizTypeEnum.KEY_PART.getCode(),id,criticalComponentDO.getCode()); criticalComponentDO.setQrcodeUrl(qrcodeUrl); @@ -204,6 +206,24 @@ public class CriticalComponentServiceImpl implements CriticalComponentService { } + @Override + public CriticalComponentDO getCriticalComponent(Long id, String code) { + if (id != null) { + return getCriticalComponent(id); + } + if (StringUtils.isNotBlank(code)) { + CriticalComponentDO criticalComponentDO = criticalComponentMapper.selectOne(new LambdaQueryWrapperX() + .like(CriticalComponentDO::getCode, code) + .orderByDesc(CriticalComponentDO::getId) + .last("LIMIT 1")); + if (criticalComponentDO == null) { + throw exception(CRITICAL_COMPONENT_NOT_EXISTS); + } + return getCriticalComponent(criticalComponentDO.getId()); + } + throw exception(CRITICAL_COMPONENT_NOT_EXISTS); + } + @Override public PageResult getCriticalComponentPage(CriticalComponentPageReqVO pageReqVO) { return criticalComponentMapper.selectPage(pageReqVO); @@ -338,4 +358,4 @@ public class CriticalComponentServiceImpl implements CriticalComponentService { ); } -} \ 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/deviceledger/DeviceLedgerService.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/deviceledger/DeviceLedgerService.java index 450c1e185..c12da64c5 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/deviceledger/DeviceLedgerService.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/deviceledger/DeviceLedgerService.java @@ -47,6 +47,8 @@ public interface DeviceLedgerService { */ DeviceLedgerDO getDeviceLedger(Long id); + DeviceLedgerDO getDeviceLedger(Long id, String code); + /** * 获得设备类型分页 * @@ -86,4 +88,4 @@ public interface DeviceLedgerService { List getDeviceLedgerListByIds(Collection ids); -} \ 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/deviceledger/DeviceLedgerServiceImpl.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/deviceledger/DeviceLedgerServiceImpl.java index 55029500b..15e5a2e32 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/deviceledger/DeviceLedgerServiceImpl.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/deviceledger/DeviceLedgerServiceImpl.java @@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.mes.service.deviceledger; import cn.hutool.core.collection.CollStreamUtil; import cn.hutool.core.collection.CollUtil; import cn.iocoder.yudao.framework.common.util.collection.MapUtils; +import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.module.common.enums.CodeTypeEnum; import cn.iocoder.yudao.module.common.enums.QrcodeBizTypeEnum; import cn.iocoder.yudao.module.common.service.qrcordrecord.QrcodeRecordService; @@ -207,6 +208,7 @@ public class DeviceLedgerServiceImpl implements DeviceLedgerService { @Override public DeviceLedgerDO getDeviceLedger(Long id) { + validateDeviceLedgerExists(id); DeviceLedgerDO deviceLedgerDO = deviceLedgerMapper.selectById(id); @@ -298,6 +300,24 @@ public class DeviceLedgerServiceImpl implements DeviceLedgerService { return deviceLedgerDO; } + @Override + public DeviceLedgerDO getDeviceLedger(Long id, String code) { + if (id != null) { + return getDeviceLedger(id); + } + if (StringUtils.isNotBlank(code)) { + DeviceLedgerDO deviceLedgerDO = deviceLedgerMapper.selectOne(new LambdaQueryWrapperX() + .like(DeviceLedgerDO::getDeviceCode, code) + .orderByDesc(DeviceLedgerDO::getId) + .last("LIMIT 1")); + if (deviceLedgerDO == null) { + throw exception(DEVICE_LEDGER_NOT_EXISTS); + } + return getDeviceLedger(deviceLedgerDO.getId()); + } + throw exception(DEVICE_LEDGER_NOT_EXISTS); + } + @Override public PageResult getDeviceLedgerPage(DeviceLedgerPageReqVO pageReqVO) { @@ -438,4 +458,4 @@ public class DeviceLedgerServiceImpl implements DeviceLedgerService { return Collections.emptyList(); } return deviceLedgerMapper.selectBatchIds(ids); } -} \ 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/dvrepair/DvRepairService.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/dvrepair/DvRepairService.java index 2b09e42b4..600f83a7c 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/dvrepair/DvRepairService.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/dvrepair/DvRepairService.java @@ -71,7 +71,7 @@ public interface DvRepairService { void updateDvRepairStatus(@Valid DvRepirUpdateReqVO updateReqVO); - List getRepairListByDeviceId(Long deviceId, String startTime, String endTime,String ids); + List getRepairListByDeviceId(Long deviceId, String code, String startTime, String endTime, String ids); Long getRepairListCountByRepairStatus(); @@ -82,4 +82,4 @@ public interface DvRepairService { List getList(); List getLatestList(); -} \ 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/dvrepair/DvRepairServiceImpl.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/dvrepair/DvRepairServiceImpl.java index 0bcdb9512..a3d7a4945 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,6 +1,7 @@ package cn.iocoder.yudao.module.mes.service.dvrepair; 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; import cn.iocoder.yudao.module.erp.controller.admin.autocode.util.AutoCodeUtil; import cn.iocoder.yudao.module.mes.controller.admin.dashboard.vo.dashboard.EventStatisticsVO; @@ -8,8 +9,10 @@ import cn.iocoder.yudao.module.mes.controller.admin.dvrepair.enums.RepairResultE import cn.iocoder.yudao.module.mes.controller.admin.dvrepair.enums.RepairStatusEnum; import cn.iocoder.yudao.module.mes.controller.admin.dvrepair.vo.*; import cn.iocoder.yudao.module.mes.controller.admin.ticketresults.enums.JobResultEnum; +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.dvrepair.DvRepairLineDO; +import cn.iocoder.yudao.module.mes.dal.mysql.deviceledger.DeviceLedgerMapper; import cn.iocoder.yudao.module.mes.dal.mysql.dvrepair.DvRepairLineMapper; import cn.iocoder.yudao.module.mes.dal.mysql.dvrepair.DvRepairMapper; import com.alibaba.excel.util.StringUtils; @@ -44,6 +47,8 @@ public class DvRepairServiceImpl implements DvRepairService { @Resource private DvRepairMapper dvRepairMapper; @Resource + private DeviceLedgerMapper deviceLedgerMapper; + @Resource private DvRepairLineMapper dvRepairLineMapper; @Resource @@ -196,12 +201,13 @@ public class DvRepairServiceImpl implements DvRepairService { } @Override - public List getRepairListByDeviceId(Long deviceId, String startTime, String endTime,String ids) { + public List getRepairListByDeviceId(Long deviceId, String code, String startTime, String endTime, String ids) { + DeviceLedgerDO deviceLedgerDO = getDeviceByIdOrCode(deviceId, code); List dvRepairLineRespVOS = new ArrayList<>(); LambdaQueryWrapper wrapper = Wrappers.lambdaQuery() - .eq(DvRepairDO::getDeviceId, deviceId); + .eq(DvRepairDO::getDeviceId, deviceLedgerDO.getId()); @@ -270,6 +276,22 @@ public class DvRepairServiceImpl implements DvRepairService { return dvRepairLineRespVOS; } + private DeviceLedgerDO getDeviceByIdOrCode(Long deviceId, String code) { + DeviceLedgerDO deviceLedgerDO = null; + if (deviceId != null) { + deviceLedgerDO = deviceLedgerMapper.selectById(deviceId); + } else if (StringUtils.isNotBlank(code)) { + deviceLedgerDO = deviceLedgerMapper.selectOne(new LambdaQueryWrapperX() + .like(DeviceLedgerDO::getDeviceCode, code) + .orderByDesc(DeviceLedgerDO::getId) + .last("LIMIT 1")); + } + if (deviceLedgerDO == null) { + throw exception(TICKET_MANAGEMENT_NOT_EXISTS); + } + return deviceLedgerDO; + } + @Override public Long getRepairListCountByRepairStatus() { return dvRepairMapper.selectCount(Wrappers.lambdaQuery() @@ -419,4 +441,4 @@ public class DvRepairServiceImpl implements DvRepairService { dvRepairLineMapper.deleteByRepairId(repairId); } -} \ 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/moldrepair/MoldRepairService.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/moldrepair/MoldRepairService.java index 5258bae31..3fcaf2b2d 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/moldrepair/MoldRepairService.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/moldrepair/MoldRepairService.java @@ -74,7 +74,7 @@ public interface MoldRepairService { void updateMoldRepairStatus(@Valid MoldRepairUpdateReqVO updateReqVO); - List getRepairListByMoldId(Long moldId, String startTime, String endTime, String ids); + List getRepairListByMoldId(Long moldId, String code, String startTime, String endTime, String ids); Long getRepairListCountByRepairStatus(); diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/moldrepair/MoldRepairServiceImpl.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/moldrepair/MoldRepairServiceImpl.java index 6f9cec155..64519e627 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/moldrepair/MoldRepairServiceImpl.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/moldrepair/MoldRepairServiceImpl.java @@ -1,7 +1,9 @@ package cn.iocoder.yudao.module.mes.service.moldrepair; 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; +import cn.iocoder.yudao.module.common.dal.dataobject.mold.MoldDO; import cn.iocoder.yudao.module.erp.controller.admin.autocode.util.AutoCodeUtil; import cn.iocoder.yudao.module.mes.controller.admin.dashboard.vo.dashboard.EventStatisticsVO; import cn.iocoder.yudao.module.common.controller.admin.moldrepair.enums.RepairResultEnum; @@ -15,6 +17,7 @@ import cn.iocoder.yudao.module.common.dal.dataobject.moldrepair.MoldRepairDO; import cn.iocoder.yudao.module.common.dal.dataobject.moldrepair.MoldRepairLineDO; import cn.iocoder.yudao.module.common.dal.mysql.moldrepair.MoldRepairLineMapper; import cn.iocoder.yudao.module.common.dal.mysql.moldrepair.MoldRepairMapper; +import cn.iocoder.yudao.module.common.dal.mysql.mold.MoldMapper; import com.alibaba.excel.util.StringUtils; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -32,6 +35,7 @@ import java.util.stream.Collectors; import lombok.extern.slf4j.Slf4j; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; +import static cn.iocoder.yudao.module.erp.enums.ErrorCodeConstants.MOLD_NOT_EXISTS; import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; import org.springframework.util.CollectionUtils; @@ -51,6 +55,8 @@ public class MoldRepairServiceImpl implements MoldRepairService { @Resource private MoldRepairMapper moldRepairMapper; @Resource + private MoldMapper moldMapper; + @Resource private MoldRepairLineMapper moldRepairLineMapper; @Resource @@ -250,12 +256,13 @@ public class MoldRepairServiceImpl implements MoldRepairService { } @Override - public List getRepairListByMoldId(Long moldId, String startTime, String endTime, String ids) { + public List getRepairListByMoldId(Long moldId, String code, String startTime, String endTime, String ids) { + MoldDO moldDO = getMoldByIdOrCode(moldId, code); List moldRepairLineRespVOS = new ArrayList<>(); LambdaQueryWrapper wrapper = Wrappers.lambdaQuery() - .eq(MoldRepairDO::getMoldId, moldId); + .eq(MoldRepairDO::getMoldId, moldDO.getId()); @@ -324,6 +331,22 @@ public class MoldRepairServiceImpl implements MoldRepairService { return moldRepairLineRespVOS; } + private MoldDO getMoldByIdOrCode(Long moldId, String code) { + MoldDO moldDO = null; + if (moldId != null) { + moldDO = moldMapper.selectById(moldId); + } else if (StringUtils.isNotBlank(code)) { + moldDO = moldMapper.selectOne(new LambdaQueryWrapperX() + .like(MoldDO::getCode, code) + .orderByDesc(MoldDO::getId) + .last("LIMIT 1")); + } + if (moldDO == null) { + throw exception(MOLD_NOT_EXISTS); + } + return moldDO; + } + private LocalDateTime parseToLocalDateTime(String timeStr) { if (StringUtils.isBlank(timeStr)) { @@ -455,4 +478,4 @@ public class MoldRepairServiceImpl implements MoldRepairService { .last("LIMIT 100") ); } -} \ 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/moldticketmanagement/MoldTicketManagementService.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/moldticketmanagement/MoldTicketManagementService.java index 3bafecfd0..497a60654 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/moldticketmanagement/MoldTicketManagementService.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/moldticketmanagement/MoldTicketManagementService.java @@ -58,9 +58,9 @@ public interface MoldTicketManagementService { void batchUpdateJobStatus(@Valid MoldTicketManagementBatchUpdateReqVO reqVO); - List getInspectionByMoldId(Long id, String startTime, String endTime, String ids); + List getInspectionByMoldId(Long id, String code, String startTime, String endTime, String ids); - List getMaintenanceByMoldId(Long id, String startTime, String endTime, String ids); + List getMaintenanceByMoldId(Long id, String code, String startTime, String endTime, String ids); Long getBaoyangListCountByJobStatus(); @@ -75,4 +75,4 @@ public interface MoldTicketManagementService { List getList(); List getLatestList(); -} \ 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/moldticketmanagement/MoldTicketManagementServiceImpl.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/moldticketmanagement/MoldTicketManagementServiceImpl.java index e076d5749..52d4f7c56 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/moldticketmanagement/MoldTicketManagementServiceImpl.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/moldticketmanagement/MoldTicketManagementServiceImpl.java @@ -9,6 +9,7 @@ import cn.iocoder.yudao.module.common.dal.dataobject.moldticketresults.MoldTicke import cn.iocoder.yudao.module.common.dal.mysql.moldticketresults.MoldTicketResultsMapper; import cn.iocoder.yudao.module.mes.dal.mysql.deviceledger.DeviceLedgerMapper; import com.alibaba.excel.util.StringUtils; +import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -30,6 +31,7 @@ import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.module.common.dal.mysql.moldticketmanagement.MoldTicketManagementMapper; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; +import static cn.iocoder.yudao.module.erp.enums.ErrorCodeConstants.MOLD_NOT_EXISTS; import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; /** @@ -107,10 +109,10 @@ public class MoldTicketManagementServiceImpl implements MoldTicketManagementServ @Override - public List getInspectionByMoldId(Long id, String startTime, String endTime, String ids) { - MoldDO moldDO = moldMapper.selectById(id); + public List getInspectionByMoldId(Long id, String code, String startTime, String endTime, String ids) { + MoldDO moldDO = getMoldByIdOrCode(id, code); //点检列表 - List inspectionList = moldTicketResultsMapper.findByMoldIdAndPlanType(id, MoldPlanTypeEnum.INSPECTION.getCode(),startTime,endTime,ids); + List inspectionList = moldTicketResultsMapper.findByMoldIdAndPlanType(moldDO.getId(), MoldPlanTypeEnum.INSPECTION.getCode(),startTime,endTime,ids); if(CollectionUtils.isNotEmpty(inspectionList)){ moldDO.setInspectionList(inspectionList); } @@ -119,11 +121,11 @@ public class MoldTicketManagementServiceImpl implements MoldTicketManagementServ } @Override - public List getMaintenanceByMoldId(Long id,String startTime,String endTime,String ids) { - MoldDO moldDO = moldMapper.selectById(id); + public List getMaintenanceByMoldId(Long id, String code, String startTime, String endTime, String ids) { + MoldDO moldDO = getMoldByIdOrCode(id, code); //保养列表 - List inspectionList = moldTicketResultsMapper.findByMoldIdAndPlanType(id, MoldPlanTypeEnum.MAINTENANCE.getCode(),startTime,endTime,ids); + List inspectionList = moldTicketResultsMapper.findByMoldIdAndPlanType(moldDO.getId(), MoldPlanTypeEnum.MAINTENANCE.getCode(),startTime,endTime,ids); if(CollectionUtils.isNotEmpty(inspectionList)){ moldDO.setInspectionList(inspectionList); } @@ -131,6 +133,22 @@ public class MoldTicketManagementServiceImpl implements MoldTicketManagementServ return inspectionList; } + private MoldDO getMoldByIdOrCode(Long id, String code) { + MoldDO moldDO = null; + if (id != null) { + moldDO = moldMapper.selectById(id); + } else if (StringUtils.isNotBlank(code)) { + moldDO = moldMapper.selectOne(new LambdaQueryWrapperX() + .like(MoldDO::getCode, code) + .orderByDesc(MoldDO::getId) + .last("LIMIT 1")); + } + if (moldDO == null) { + throw exception(MOLD_NOT_EXISTS); + } + return moldDO; + } + /** * 解析逗号分隔的ID字符串 */ @@ -200,4 +218,4 @@ public class MoldTicketManagementServiceImpl implements MoldTicketManagementServ ); } -} \ 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/TicketManagementService.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/ticketmanagement/TicketManagementService.java index 51ec72cb9..d31d9926b 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/ticketmanagement/TicketManagementService.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/ticketmanagement/TicketManagementService.java @@ -59,9 +59,9 @@ public interface TicketManagementService { void batchUpdateJobStatus(@Valid TicketManagementBatchUpdateReqVO reqVO); - List getInspectionByDeviceId(Long id,String startTime,String endTime,String ids); + List getInspectionByDeviceId(Long id, String code, String startTime, String endTime, String ids); - List getMaintenanceByDeviceId(Long id,String startTime,String endTime,String ids); + List getMaintenanceByDeviceId(Long id, String code, String startTime, String endTime, String ids); Long getBaoyangListCountByJobStatus(); @@ -76,4 +76,4 @@ public interface TicketManagementService { List getList(); List getLatestList(); -} \ 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 eb8bc2180..7433100bd 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 @@ -1,5 +1,6 @@ package cn.iocoder.yudao.module.mes.service.ticketmanagement; +import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.module.mes.controller.admin.dashboard.vo.dashboard.EventStatisticsVO; import cn.iocoder.yudao.module.mes.controller.admin.ticketmanagement.enums.JobStatusEnum; import cn.iocoder.yudao.module.mes.controller.admin.ticketmanagement.enums.PlanTypeEnum; @@ -108,10 +109,10 @@ public class TicketManagementServiceImpl implements TicketManagementService { } @Override - public List getInspectionByDeviceId(Long id,String startTime,String endTime,String ids) { - DeviceLedgerDO deviceLedgerDO = deviceLedgerMapper.selectById(id); + public List getInspectionByDeviceId(Long id, String code, String startTime, String endTime, String ids) { + DeviceLedgerDO deviceLedgerDO = getDeviceByIdOrCode(id, code); //点检列表 - List inspectionList = ticketResultsMapper.findByDeviceIdAndPlanType(id, PlanTypeEnum.INSPECTION.getCode(),startTime,endTime,ids); + List inspectionList = ticketResultsMapper.findByDeviceIdAndPlanType(deviceLedgerDO.getId(), PlanTypeEnum.INSPECTION.getCode(),startTime,endTime,ids); if(CollectionUtils.isNotEmpty(inspectionList)){ deviceLedgerDO.setInspectionList(inspectionList); } @@ -120,11 +121,11 @@ public class TicketManagementServiceImpl implements TicketManagementService { } @Override - public List getMaintenanceByDeviceId(Long id,String startTime,String endTime,String ids) { - DeviceLedgerDO deviceLedgerDO = deviceLedgerMapper.selectById(id); + public List getMaintenanceByDeviceId(Long id, String code, String startTime, String endTime, String ids) { + DeviceLedgerDO deviceLedgerDO = getDeviceByIdOrCode(id, code); //保养列表 - List inspectionList = ticketResultsMapper.findByDeviceIdAndPlanType(id, PlanTypeEnum.MAINTENANCE.getCode(),startTime,endTime,ids); + List inspectionList = ticketResultsMapper.findByDeviceIdAndPlanType(deviceLedgerDO.getId(), PlanTypeEnum.MAINTENANCE.getCode(),startTime,endTime,ids); if(CollectionUtils.isNotEmpty(inspectionList)){ deviceLedgerDO.setInspectionList(inspectionList); } @@ -132,6 +133,22 @@ public class TicketManagementServiceImpl implements TicketManagementService { return inspectionList; } + private DeviceLedgerDO getDeviceByIdOrCode(Long id, String code) { + DeviceLedgerDO deviceLedgerDO = null; + if (id != null) { + deviceLedgerDO = deviceLedgerMapper.selectById(id); + } else if (StringUtils.isNotBlank(code)) { + deviceLedgerDO = deviceLedgerMapper.selectOne(new LambdaQueryWrapperX() + .like(DeviceLedgerDO::getDeviceCode, code) + .orderByDesc(DeviceLedgerDO::getId) + .last("LIMIT 1")); + } + if (deviceLedgerDO == null) { + throw exception(DEVICE_LEDGER_NOT_EXISTS); + } + return deviceLedgerDO; + } + @Override public Long getBaoyangListCountByJobStatus() { return ticketManagementMapper.selectCount(Wrappers.lambdaQuery() @@ -204,4 +221,4 @@ public class TicketManagementServiceImpl implements TicketManagementService { .collect(Collectors.toList()); } -} \ No newline at end of file +}