tuqin
8 天以前 49c633d166ac0c49aad14e2393a6f0cae43052cd
fix(erp): 修正「是否需生产」默认值,由需生产改为不需生产

上一提交 dfeebc7d 把未传值兜底为 1(需生产),方向错误,会导致蓝羽发货卡死。

实测数据:蓝羽现有销售订单明细 10 条,need_production 全部为 0,
5 张订单状态全部为已审核(20),即完全采用现货发货模式。

影响链:need_production=1 的明细在订单审核后会自动创建 MPS
(createMpsForSaleOrder),而发货通知单的前置校验要求需生产的明细
等 MPS 完成(mpsApi.checkCanCreateSalesNotice)。若默认全部需生产,
每张订单都会生成无人处理的 MPS,导致订单永远发不出货。

修正:未传值时兜底为 0(不需生产),保持蓝羽现货发货流程不变。
销售端仍不参与判断;车间确需生产时,在生产/MPS 环节自行创建。
已修改1个文件
7 ■■■■■ 文件已修改
yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderServiceImpl.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderServiceImpl.java
@@ -626,10 +626,11 @@
        // 转化为 ErpSaleOrderItemDO 列表(产品验证已移除)
        return convertList(list, o -> BeanUtils.toBean(o, ErpSaleOrderItemDO.class, item -> {
            item.setTotalPrice(MoneyUtils.priceMultiply(item.getProductPrice(), item.getCount()));
            // 是否需要生产:销售端已不再让业务员判断,未传时统一按“需要生产”处理,
            // 由生产车间在生产环节根据实际库存自行判断/调整
            // 是否需要生产:销售端已不再让业务员判断,未传时按「不需生产」处理
            // (蓝羽为现货发货模式,默认不进入生产流程,避免自动创建 MPS 卡住发货;
            //   车间确需生产时,在生产/MPS 环节自行创建)
            if (item.getNeedProduction() == null) {
                item.setNeedProduction(1);
                item.setNeedProduction(0);
            }
            if (item.getTotalPrice() == null) {
                return;