src/main/java/com/ruoyi/sales/controller/ShippingInfoController.java
@@ -28,7 +28,6 @@
import com.ruoyi.sales.pojo.SalesLedgerProduct;
// import com.ruoyi.sales.pojo.ShipmentApproval;
import com.ruoyi.sales.pojo.ShippingInfo;
import com.ruoyi.sales.service.ISalesLedgerProductService;
import com.ruoyi.sales.service.ISalesLedgerService;
import com.ruoyi.sales.service.ShippingInfoService;
// import com.ruoyi.sales.service.impl.CommonFileServiceImpl;
@@ -67,9 +66,6 @@
    // private StockUtils stockUtils;
    @Autowired
    private ISalesLedgerProductService salesLedgerProductService;
    @Autowired
    private ISalesLedgerService salesLedgerService;
    @Autowired
@@ -99,6 +95,15 @@
            return AjaxResult.error("关联订单不存在");
        }
        // 发货前必须保证该订单所有产品已入库
        List<SalesLedgerProduct> notStocked = salesLedgerProductMapper.selectList(new LambdaQueryWrapper<SalesLedgerProduct>()
                .eq(SalesLedgerProduct::getSalesLedgerId, salesLedger.getId())
                .eq(SalesLedgerProduct::getType, 1)
                .ne(SalesLedgerProduct::getProductStockStatus, 2));
        if (CollectionUtils.isNotEmpty(notStocked)) {
            return AjaxResult.error("发货失败,该销售订单存在未入库产品,请先完成全部入库后再发货");
        }
        // 检查是否已经在审批中或已发货
        if (salesLedger.getDeliveryStatus() != null && salesLedger.getDeliveryStatus() >= 2 && !salesLedger.getDeliveryStatus().equals(3)) {
             return AjaxResult.error("该订单已在审批中或已发货,无法重复发起");