gaoluyang
2 天以前 8c65f898ed6e5b0c7a94c792c4562f6ec831dccd
yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderServiceImpl.java
@@ -28,6 +28,7 @@
import cn.iocoder.yudao.module.erp.dal.mysql.sale.ErpSaleOrderMapper;
import cn.iocoder.yudao.module.erp.dal.redis.no.ErpNoRedisDAO;
import cn.iocoder.yudao.module.erp.enums.ErpAuditStatus;
import cn.iocoder.yudao.module.erp.enums.ErpSaleTypeEnum;
import cn.iocoder.yudao.module.erp.api.sale.enums.ErpSaleOrderOutStatusEnum;
import cn.iocoder.yudao.module.erp.service.finance.ErpAccountService;
import cn.iocoder.yudao.module.mdm.api.item.MdmItemApi;
@@ -127,6 +128,8 @@
        List<ErpSaleOrderItemDO> saleOrderItems = validateSaleOrderItems(createReqVO.getItems());
        // 1.2 校验客户(使用 CRM 客户 API)
        customerApi.validateCustomer(createReqVO.getCustomerId());
        // 1.2.1 校验销售类型
        validateSaleType(createReqVO.getSaleType());
        // 1.3 校验结算账户
        if (createReqVO.getAccountId() != null) {
            accountService.validateAccount(createReqVO.getAccountId());
@@ -169,6 +172,8 @@
        }
        // 1.3 校验客户(使用 CRM 客户 API)
        customerApi.validateCustomer(updateReqVO.getCustomerId());
        // 1.3.1 校验销售类型
        validateSaleType(updateReqVO.getSaleType());
        // 1.3 校验结算账户
        if (updateReqVO.getAccountId() != null) {
            accountService.validateAccount(updateReqVO.getAccountId());
@@ -327,6 +332,12 @@
        return saleOrder;
    }
    private void validateSaleType(Integer saleType) {
        if (!ErpSaleTypeEnum.isValid(saleType)) {
            throw exception(SALE_ORDER_SALE_TYPE_INVALID, saleType);
        }
    }
    /**
     * 解析“是否需要生产”:留空默认“是(1)”,填“否/0/不需要”则为“否(0)”
     */