cnf
2025-08-23 360659e325528be0c9405855b3553869041d32b9
service/Wom/MesWorkProdManager.cs
@@ -294,31 +294,50 @@
        var po_outSum = parameters[3].Value != DBNull.Value ? Convert.ToInt32(parameters[3].Value) : -1;
        var po_womInBarSum = parameters[4].Value != DBNull.Value ? Convert.ToDecimal(parameters[4].Value) : 0m;
        var rksqOrder = Db.Queryable<MesInvItemIns>()
        // 声明变量在外层,确保在所有分支中都可访问
        MesInvItemIns rksqOrder = null;
        List<MesInvItemInRksqDetails> rksqDetails = new List<MesInvItemInRksqDetails>();
        if (po_outSum == 1)
        {
            rksqOrder = Db.Queryable<MesInvItemIns>()
            .Where(x => x.RbillNo == barcode.BillNo && x.TransctionNo=="181" && x.CreateBy==request.StaffNo)
            .First();
            if (rksqOrder != null)
            {
        var sql = string.Format(@"SELECT A.item_barcode ItemBarcode,B.QUANTITY BgQuantity,c.item_no ItemNo,c.item_name ItemName,c.item_model ItemModel
    FROM MES_INV_ITEM_IN_RKSQ_DETAILS A
    LEFT JOIN MES_INV_ITEM_BARCODES B ON A.item_barcode = B.ITEM_BARCODE
    LEFT JOIN MES_ITEMS C ON  B.ITEM_ID = C.item_id
    WHERE A.bill_no= '{0}' ORDER BY A.create_date DESC", rksqOrder.BillNo);
        var RKSQ = Db.Ado.SqlQuery<MesInvItemInRksqDetails>(sql);
                rksqDetails = Db.Ado.SqlQuery<MesInvItemInRksqDetails>(sql).ToList();
            }
        }
        else if (po_outSum == 2)
        {
            rksqOrder = Db.Queryable<MesInvItemIns>()
              .Where(x => x.RbillNo == barcode.BillNo && x.TransctionNo == "181" && x.CreateBy == request.StaffNo)
              .First();
            if (rksqOrder != null)
            {
                rksqOrder.BillNo = "";
            }
        var rksqDetails = RKSQ.ToList();
        //var rksqDetails = Db.Queryable<MesInvItemInRksqDetails>()
        //    .Where(x => x.BillNo == )
        //    .ToList();
            rksqDetails = new List<MesInvItemInRksqDetails>();
        }
        // Check if the procedure failed
        if (po_outSum == -1)
        {
            throw new Exception(po_outMsg);
        }
        // 处理rksqOrder为null的情况
        string sjBillNo = rksqOrder?.BillNo ?? "";
        // 15. Return processing result
        return new ScanWorkResult
@@ -332,7 +351,7 @@
            ItemName = item.ItemName,
            ItemModel = workOrder.Daa004,
            Message = po_outMsg,
            sjBillNo  = rksqOrder.BillNo,
            sjBillNo = sjBillNo,
            BarcodesDetail = rksqDetails,
        };