guoyuji
2024-09-26 8c29a327707574f1e04cd25218e05ba9b4c8e4a8
north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java
@@ -8,6 +8,7 @@
import com.example.erp.entity.mm.FinishedGoodsInventory;
import com.example.erp.entity.mm.FinishedOperateLog;
import com.example.erp.entity.pp.FlowCard;
import com.example.erp.entity.sd.DeliveryDetail;
import com.example.erp.entity.sd.Order;
import com.example.erp.entity.sd.OrderDetail;
import com.example.erp.entity.userInfo.Log;
@@ -66,8 +67,8 @@
        return map;
    }
    public Boolean addSelectWarehousing(Map<String,Object> object) {
        boolean saveState = true;
    public String addSelectWarehousing(Map<String,Object> object) {
        String saveState = "true";
        Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
        try {
            //定义前端传输的数据
@@ -110,7 +111,9 @@
                    Integer finishedGoodsInventorycount = finishedGoodsInventoryMapper.findOrderNumberdcount(flowCard.getOrder().getOrderId(),flowCard.getOrderNumber());
                    Integer ordersum = finishedGoodsInventoryMapper.findOrderQuantity(flowCard.getOrder().getOrderId());
                    Integer ordernumbersum = finishedGoodsInventoryMapper.findOrderNumberdsum(flowCard.getOrder().getOrderId());
                    FlowCard flowCard1=finishedGoodsInventoryMapper.findFlowCard(flowCard);
                    //判断库存数是否大于未入库数
                    if(flowCard1.getReceivedQuantity()+flowCard.getInventoryQuantity()<=flowCard1.getInventoryQuantity()){
                    /*System.out.println("订单总数:" + ordersum + "已入库数量:" + ordernumbersum + "准备入库数量" + flowCard.getInventoryQuantity());*/
                    if (finishedGoodsInventorycount > 0) {
                        //修改库存表入库数量
@@ -143,9 +146,16 @@
                        }
                    }
                    }else{
                        TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
                        return "false1";
                    }
                }
            }else{
                return false;
                TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
                return "false2";
            }
        } catch (Exception e) {
@@ -155,7 +165,7 @@
            sysError.setError(e+Arrays.toString(e.getStackTrace()));
            sysError.setFunc("addSelectWarehousing");
            sysErrorService.insert(sysError);
            saveState = false;
            saveState = "false";
        }
@@ -173,8 +183,8 @@
    }
    public Boolean addDeliveryDetail(Map<String,Object> object) {
        boolean saveState = true;
    public String addDeliveryDetail(Map<String,Object> object) {
        String saveState = "true";
        //设置回滚点
        Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
        try {
@@ -212,10 +222,14 @@
                        deliverydetailsum=0;
                    }
                    DeliveryDetail deliveryDetail=finishedGoodsInventoryMapper.findDeliverydetail(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber(),orderDetail.getDeliveryDetail().getDeliveryId());
                    /*System.out.println("订单总数:" + ordersum + "订单库存数:" + orderNumberdsum + "准备出库数量" +
                            orderDetail.getWarehouseNum()+ "发货数量" + orderDetail.getDeliveryDetail().getQuantity()+ "发货总数" +
                            deliverysum+ "已发数量" + deliverydetailsum);*/
                    //判断发货单的库存是否存在
                    if (finishedGoodsInventorycount > 0) {
                        //判断发货单是否已出库
                        if(deliveryDetail==null){
                        if(orderDetail.getWarehouseNum()>=orderDetail.getDeliveryDetail().getQuantity()){
                            //修改库存表库存数量
                            finishedGoodsInventoryMapper.updateInventoryInventoryOut(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber(),orderDetail.getDeliveryDetail().getQuantity());
@@ -238,10 +252,15 @@
                                finishedGoodsInventoryMapper.updateDeliveryDeliveryState(orderDetail.getDeliveryDetail().getDeliveryId(),2);
                            }
                        }
                        }else{
                            TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
                            return "false1";
                        }
                    }else{
                        TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
                        saveState = false;
                        return "false2";
                    }
                }
            }
@@ -253,7 +272,7 @@
            sysError.setError(e+Arrays.toString(e.getStackTrace()));
            sysError.setFunc("addDeliveryDetail");
            sysErrorService.insert(sysError);
            saveState = false;
            saveState = "false";
        }
        return saveState;