南骏 池
9 天以前 52d1e37bb116c995b601728bfe81e3816c3944c9
service/base/MesPrintMangeer.cs
@@ -75,6 +75,39 @@
        //     public List<dynamic> oldBarInfo { get; set; }
        // }
        public dynamic getCfBeforeInfo(dynamic query) // 使用具体类型替代dynamic
        {
            // 参数校验
            if (string.IsNullOrEmpty(query?.cfBarcode))
                throw new ArgumentException("拆分条码不能为空");
            if (string.IsNullOrEmpty(query?.barcode))
                throw new ArgumentException("原始条码不能为空");
            // 使用强类型参数
            var sqlParams = new List<SugarParameter> {
                new("@cfBar", query.cfBarcode.Trim()),
                new("@oldBar", query.barcode.Trim())
            };
            var sql = @"SELECT TOP 1 C.ITEM_NO,C.item_name,C.item_model,B.OLDQTY as QUANTITY,B.CREATE_DATE, '拆分条码' AS BarType,B.ITEM_BARCODE,GETDATE() as print_date
            FROM MES_INV_ITEM_BARCODES B
            LEFT JOIN MES_ITEMS C ON C.item_id = B.ITEM_ID
            WHERE B.ITEM_BARCODE = @cfBar
            UNION ALL
            SELECT TOP 1 C.ITEM_NO,C.item_name,C.item_model,B.QUANTITY as QUANTITY,B.CREATE_DATE, '原始条码' AS BarType,B.ITEM_BARCODE,GETDATE() as print_date
            FROM  MES_INV_ITEM_BARCODES B
            LEFT JOIN MES_ITEMS C ON C.item_id = B.ITEM_ID
            WHERE B.ITEM_BARCODE = @oldBar";
            var mergedData = Db.Ado.SqlQuery<dynamic>(sql, sqlParams);
            if (mergedData.Count < 2) throw new Exception("条码信息存在异常,请联系管理员!");
            return mergedData;
        }
    }
}