diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/workorder/MesProWorkOrderMapper.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/workorder/MesProWorkOrderMapper.java index 37e0f42..e9352b8 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/workorder/MesProWorkOrderMapper.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/workorder/MesProWorkOrderMapper.java @@ -41,4 +41,8 @@ public interface MesProWorkOrderMapper extends BaseMapperX { .setSql("quantity_produced = IFNULL(quantity_produced, 0) + " + incrQuantityProduced)); } + default Long selectCountByVendorId(Long vendorId) { + return selectCount(MesProWorkOrderDO::getVendorId, vendorId); + } + } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/qc/iqc/MesQcIqcMapper.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/qc/iqc/MesQcIqcMapper.java index 50a50e9..07000d6 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/qc/iqc/MesQcIqcMapper.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/qc/iqc/MesQcIqcMapper.java @@ -32,4 +32,8 @@ public interface MesQcIqcMapper extends BaseMapperX { return selectOne(MesQcIqcDO::getCode, code); } + default Long selectCountByVendorId(Long vendorId) { + return selectCount(MesQcIqcDO::getVendorId, vendorId); + } + } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/outsourceissue/MesWmOutsourceIssueMapper.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/outsourceissue/MesWmOutsourceIssueMapper.java index 48b2855..fc696d5 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/outsourceissue/MesWmOutsourceIssueMapper.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/outsourceissue/MesWmOutsourceIssueMapper.java @@ -29,4 +29,8 @@ public interface MesWmOutsourceIssueMapper extends BaseMapperX 0 || arrivalNoticeService.getArrivalNoticeCountByVendorId(id) > 0 - || returnVendorService.getReturnVendorCountByVendorId(id) > 0) { + || returnVendorService.getReturnVendorCountByVendorId(id) > 0 + || iqcService.getIqcCountByVendorId(id) > 0 + || workOrderService.getWorkOrderCountByVendorId(id) > 0 + || outsourceIssueService.getOutsourceIssueCountByVendorId(id) > 0 + || outsourceReceiptService.getOutsourceReceiptCountByVendorId(id) > 0) { throw exception(MD_VENDOR_HAS_REFERENCE); } } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderService.java index 9aa713e..31d2581 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderService.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderService.java @@ -129,4 +129,12 @@ public interface MesProWorkOrderService { */ void updateProducedQuantity(Long id, BigDecimal incrQuantityProduced); + /** + * 根据供应商 ID 统计工单数量 + * + * @param vendorId 供应商 ID + * @return 数量 + */ + Long getWorkOrderCountByVendorId(Long vendorId); + } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderServiceImpl.java index 431b084..99332dd 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderServiceImpl.java @@ -245,4 +245,9 @@ public class MesProWorkOrderServiceImpl implements MesProWorkOrderService { workOrderMapper.updateProducedQuantity(id, incrQuantityProduced); } + @Override + public Long getWorkOrderCountByVendorId(Long vendorId) { + return workOrderMapper.selectCountByVendorId(vendorId); + } + } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcService.java index 49de3f2..e9c80db 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcService.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcService.java @@ -87,4 +87,12 @@ public interface MesQcIqcService { */ Map getIqcMap(Collection ids); + /** + * 根据供应商 ID 统计来料检验单数量 + * + * @param vendorId 供应商 ID + * @return 数量 + */ + Long getIqcCountByVendorId(Long vendorId); + } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcServiceImpl.java index 3efd44b..9533984 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcServiceImpl.java @@ -296,4 +296,9 @@ public class MesQcIqcServiceImpl implements MesQcIqcService { return convertMap(list, MesQcIqcDO::getId); } + @Override + public Long getIqcCountByVendorId(Long vendorId) { + return iqcMapper.selectCountByVendorId(vendorId); + } + } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourceissue/MesWmOutsourceIssueService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourceissue/MesWmOutsourceIssueService.java index 042bad1..a68e9f9 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourceissue/MesWmOutsourceIssueService.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourceissue/MesWmOutsourceIssueService.java @@ -87,4 +87,12 @@ public interface MesWmOutsourceIssueService { */ Boolean checkOutsourceIssueQuantity(Long id); + /** + * 根据供应商 ID 统计外协发料单数量 + * + * @param vendorId 供应商 ID + * @return 数量 + */ + Long getOutsourceIssueCountByVendorId(Long vendorId); + } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourceissue/MesWmOutsourceIssueServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourceissue/MesWmOutsourceIssueServiceImpl.java index 7470450..68154fe 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourceissue/MesWmOutsourceIssueServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourceissue/MesWmOutsourceIssueServiceImpl.java @@ -281,4 +281,9 @@ public class MesWmOutsourceIssueServiceImpl implements MesWmOutsourceIssueServic } } + @Override + public Long getOutsourceIssueCountByVendorId(Long vendorId) { + return outsourceIssueMapper.selectCountByVendorId(vendorId); + } + } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourcereceipt/MesWmOutsourceReceiptService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourcereceipt/MesWmOutsourceReceiptService.java index 01b9399..990f02e 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourcereceipt/MesWmOutsourceReceiptService.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourcereceipt/MesWmOutsourceReceiptService.java @@ -99,4 +99,12 @@ public interface MesWmOutsourceReceiptService { */ void validateOutsourceReceiptAndLineExists(Long receiptId, Long lineId); + /** + * 根据供应商 ID 统计外协入库单数量 + * + * @param vendorId 供应商 ID + * @return 数量 + */ + Long getOutsourceReceiptCountByVendorId(Long vendorId); + } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourcereceipt/MesWmOutsourceReceiptServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourcereceipt/MesWmOutsourceReceiptServiceImpl.java index 7542be4..67cb907 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourcereceipt/MesWmOutsourceReceiptServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourcereceipt/MesWmOutsourceReceiptServiceImpl.java @@ -326,4 +326,9 @@ public class MesWmOutsourceReceiptServiceImpl implements MesWmOutsourceReceiptSe } } + @Override + public Long getOutsourceReceiptCountByVendorId(Long vendorId) { + return outsourceReceiptMapper.selectCountByVendorId(vendorId); + } + }