| | |
| | | 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; |
| | |
| | | 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()); |
| | |
| | | } |
| | | // 1.3 校验客户(使用 CRM 客户 API) |
| | | customerApi.validateCustomer(updateReqVO.getCustomerId()); |
| | | // 1.3.1 校验销售类型 |
| | | validateSaleType(updateReqVO.getSaleType()); |
| | | // 1.3 校验结算账户 |
| | | if (updateReqVO.getAccountId() != null) { |
| | | accountService.validateAccount(updateReqVO.getAccountId()); |
| | |
| | | return saleOrder; |
| | | } |
| | | |
| | | private void validateSaleType(Integer saleType) { |
| | | if (!ErpSaleTypeEnum.isValid(saleType)) { |
| | | throw exception(SALE_ORDER_SALE_TYPE_INVALID, saleType); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 解析“是否需要生产”:留空默认“是(1)”,填“否/0/不需要”则为“否(0)” |
| | | */ |