云
2026-10-25 4229657c5b6be8a1da9e59a40e2426cf6b0995c2
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/returnvendor/MesWmReturnVendorDetailServiceImpl.java
@@ -32,6 +32,10 @@
    @Resource
    @Lazy
    private MesWmReturnVendorLineService returnVendorLineService;
    // 与 ReturnVendorServiceImpl 相互引用,须用 @Lazy 打破循环
    @Resource
    @Lazy
    private MesWmReturnVendorService returnVendorService;
    @Resource
    private MesMdmItemService mdmItemService;
    @Resource
@@ -66,6 +70,8 @@
     * 校验明细创建/修改的公共数据
     */
    private void validateDetailSaveData(MesWmReturnVendorDetailSaveReqVO reqVO) {
        // 校验父单(退货单)处于准备中状态,审批期间及之后禁止增删改明细
        returnVendorService.validateReturnVendorExistsAndPrepare(reqVO.getReturnId());
        // 校验父数据(行)存在
        MesWmReturnVendorLineDO line = returnVendorLineService.validateReturnVendorLineExists(reqVO.getLineId());
        if (ObjUtil.notEqual(line.getReturnId(), reqVO.getReturnId())) {
@@ -85,7 +91,9 @@
    @Override
    public void deleteReturnVendorDetail(Long id) {
        // 校验存在
        validateReturnVendorDetailExists(id);
        MesWmReturnVendorDetailDO detail = validateReturnVendorDetailExists(id);
        // 校验父单处于准备中状态,审批期间及之后禁止删除明细
        returnVendorService.validateReturnVendorExistsAndPrepare(detail.getReturnId());
        // 删除
        returnVendorDetailMapper.deleteById(id);
    }
@@ -115,10 +123,12 @@
        returnVendorDetailMapper.deleteByLineId(lineId);
    }
    private void validateReturnVendorDetailExists(Long id) {
        if (returnVendorDetailMapper.selectById(id) == null) {
    private MesWmReturnVendorDetailDO validateReturnVendorDetailExists(Long id) {
        MesWmReturnVendorDetailDO detail = returnVendorDetailMapper.selectById(id);
        if (detail == null) {
            throw exception(WM_RETURN_VENDOR_DETAIL_NOT_EXISTS);
        }
        return detail;
    }
    /**