From 6cc05f3689e7616431886ec183948c433a30220c Mon Sep 17 00:00:00 2001 From: Ben Lin <maobin001@msn.com> Date: 星期二, 03 十二月 2024 20:51:38 +0800 Subject: [PATCH] 一些优化 --- Tiger.Business.MES/iERP/U9C_MES.cs | 16 +- Tiger.Model.Net/Entitys/WMS/BIZ_ERP_PROD_IN_BTH.cs | 1 Tiger.Business.MES/iERP/MES_U9C.cs | 85 ++++++++++++++ Tiger.Business.MES/Transaction/YadaPacking.cs | 8 Tiger.Business/Services/Base/TigerJobBase.cs | 161 ++++++++++++-------------- Tiger.Model.Net/Entitys/MES/ParameterEntity/U9CParameter.cs | 2 Tiger.Business.MES/BIZ/BIZ_MES_WO.cs | 25 ++-- Tiger.Business.MES/BIZ/BizPrintInstoreDoc.cs | 8 8 files changed, 190 insertions(+), 116 deletions(-) diff --git a/Tiger.Business.MES/BIZ/BIZ_MES_WO.cs b/Tiger.Business.MES/BIZ/BIZ_MES_WO.cs index 9f85d43..4fed14a 100644 --- a/Tiger.Business.MES/BIZ/BIZ_MES_WO.cs +++ b/Tiger.Business.MES/BIZ/BIZ_MES_WO.cs @@ -182,18 +182,18 @@ { try { - //SugarParameter[] pars = Biz.Db.Ado.GetParameters(new { WO = input.Wo.ORDER_NO, ERR_CODE = 0, ERR_MSG = "" }); - //pars[1].Direction = System.Data.ParameterDirection.Output; - //pars[2].Direction = System.Data.ParameterDirection.Output; - //Biz.Db.Ado.UseStoredProcedure().ExecuteCommand("SP_MES_WO2CUST", pars); - //if (pars[1].Value.ToInt32() == 0) - //{ - // Logger.Default.Info($"宸ュ崟[{input.Wo.ORDER_NO}]涓嬪彂瀹屾垚鍚庝繚瀛樺伐鑹鸿矾绾挎暟鎹埌浜у搧[{input.Wo.ITEM_CODE}]鐨勫鎴穂{input.Wo.CUST_CODE ?? ""}]鐨勫伐鑹鸿矾绾夸腑锛寋pars[2].Value.ToString()}"); - //} - //else - //{ - // Logger.Default.Error($"宸ュ崟[{input.Wo.ORDER_NO}]涓嬪彂瀹屾垚鍚庝繚瀛樺伐鑹鸿矾绾挎暟鎹埌浜у搧[{input.Wo.ITEM_CODE}]鐨勫鎴穂{input.Wo.CUST_CODE ?? ""}]鐨勫伐鑹鸿矾绾垮嚭閿欙紝{pars[2].Value.ToString()}"); - //} + SugarParameter[] pars = Biz.Db.Ado.GetParameters(new { WO = input.Wo.ORDER_NO, ERR_CODE = 0, ERR_MSG = "" }); + pars[1].Direction = System.Data.ParameterDirection.Output; + pars[2].Direction = System.Data.ParameterDirection.Output; + Biz.Db.Ado.UseStoredProcedure().ExecuteCommand("SP_MES_WO2CUST", pars); + if (pars[1].Value.ToInt32() == 0) + { + Logger.Default.Info($"宸ュ崟[{input.Wo.ORDER_NO}]涓嬪彂瀹屾垚鍚庝繚瀛樺伐鑹鸿矾绾挎暟鎹埌浜у搧[{input.Wo.ITEM_CODE}]鐨勫鎴穂{input.Wo.CUST_CODE ?? ""}]鐨勫伐鑹鸿矾绾夸腑锛寋pars[2].Value.ToString()}"); + } + else + { + Logger.Default.Error($"宸ュ崟[{input.Wo.ORDER_NO}]涓嬪彂瀹屾垚鍚庝繚瀛樺伐鑹鸿矾绾挎暟鎹埌浜у搧[{input.Wo.ITEM_CODE}]鐨勫鎴穂{input.Wo.CUST_CODE ?? ""}]鐨勫伐鑹鸿矾绾垮嚭閿欙紝{pars[2].Value.ToString()}"); + } } catch (Exception ex) { @@ -734,6 +734,7 @@ SALES_ORDER = wo.SALES_ORDER, BATCH_NO = woSns[0].BATCH_NO, ITEM_CODE = wo.ITEM_CODE, + SapCode = wo.ItemInfo?.ExtInfo?.SapCode, ITEM_NAME = wo.ItemInfo?.ITEM_DESC, PLAN_QTY = wo.PLAN_QTY, SCAN_QTY = woSns.Count, diff --git a/Tiger.Business.MES/BIZ/BizPrintInstoreDoc.cs b/Tiger.Business.MES/BIZ/BizPrintInstoreDoc.cs index 3089f56..c9eedba 100644 --- a/Tiger.Business.MES/BIZ/BizPrintInstoreDoc.cs +++ b/Tiger.Business.MES/BIZ/BizPrintInstoreDoc.cs @@ -32,7 +32,7 @@ var result = new ApiAction<List<BAS_LABEL_TEMP>>(); try { - + List<BAS_LABEL_TEMP> labels = new List<BAS_LABEL_TEMP>(); int i = 1; int j = 1; foreach (var p in input.printJsons) @@ -75,7 +75,7 @@ } if (item.VAR_NAME.StartsWith("SapCode")) { - item.Value = v.ITEM_CODE; + item.Value = v.SapCode; } if (item.VAR_NAME.StartsWith("Seq")) { @@ -96,8 +96,10 @@ item.Value = DateTime.Now.ToString("yyyyy.MM.dd"); } } + labels.Add(label); j++; - } + } + result.Data = labels; } catch (Exception ex) { diff --git a/Tiger.Business.MES/Transaction/YadaPacking.cs b/Tiger.Business.MES/Transaction/YadaPacking.cs index b390da5..6ffaa14 100644 --- a/Tiger.Business.MES/Transaction/YadaPacking.cs +++ b/Tiger.Business.MES/Transaction/YadaPacking.cs @@ -70,10 +70,10 @@ // //action.LocaleMsg = new("MES.Transaction.PackingNode.Submit.QtyError", input.Qty); // return SetOutPutMqttMsg(action, input.Locale); //} - if (input.Options.ContainsKey("IsPrintCustomerLabel")) - { - IsPrintCustomerLabel = input.Options["IsPrintCustomerLabel"].ToBoolean(); - } + //if (input.Options.ContainsKey("IsPrintCustomerLabel")) + //{ + // IsPrintCustomerLabel = input.Options["IsPrintCustomerLabel"].ToBoolean(); + //} //if (input.Options.ContainsKey("ShippingOrder")) //{ diff --git a/Tiger.Business.MES/iERP/MES_U9C.cs b/Tiger.Business.MES/iERP/MES_U9C.cs index c83fce5..4130575 100644 --- a/Tiger.Business.MES/iERP/MES_U9C.cs +++ b/Tiger.Business.MES/iERP/MES_U9C.cs @@ -147,10 +147,11 @@ } foreach (var p in input.PrintJsons) { - var d = p.Items.Where(q => q.WORK_ORDER == item.WorkOrder).FirstOrDefault(); + var d = p.Items.Where(q => q.WORK_ORDER == item.WorkOrder && q.STATUS !="P").FirstOrDefault(); if (!d.IsNullOrEmpty()) { d.ORDER_NO = result.Data[0].m_code; + d.STATUS = "Y"; } } Logger.Interface.Info($"鐢熸垚鍏ュ簱鍗曟垚鍔�"); @@ -166,6 +167,15 @@ ErpProdInBth.IS_HANDLED = "F"; ErpProdInBth.HANDLED_DATE = DateTime.Now; ErpProdInBths.Add(ErpProdInBth); + } + foreach (var p in input.PrintJsons) + { + var d = p.Items.Where(q => q.WORK_ORDER == item.WorkOrder && q.STATUS != "P").FirstOrDefault(); + if (!d.IsNullOrEmpty()) + { + d.ORDER_NO = result.Data[0].m_code; + d.STATUS = "F"; + } } Logger.Interface.Info($"鐢熸垚鍏ュ簱鍗曞け璐�:{result.Data[0].m_errorMsg}"); } @@ -185,6 +195,7 @@ input.ErpProdInBths = ErpProdInBths; } } + input.labels = GetLabels(input.PrintJsons); action.Data = input; } catch (System.Exception ex) @@ -194,5 +205,77 @@ Logger.Interface.Info($"/* 鍏ュ簱鍗曟帴鍙g粨鏉� */\r\n"); //鍥哄畾鍐欐硶 return action; } + + private List<BAS_LABEL_TEMP> GetLabels(List<InStorePrintJson> printJsons) { + List<BAS_LABEL_TEMP> labels = new List<BAS_LABEL_TEMP>(); + int i = 1; + int j = 1; + foreach (var p in printJsons) + { + BAS_LABEL_TEMP label = Biz.Db.Queryable<BAS_LABEL_TEMP>().Where(q => q.LABEL_CODE == "InstoreTemplate").First(); + foreach (var item in label.Variables.OrderBy(q => q.VAR_TYPE == BAS_LABEL_VAR.VAR_TYPEs.BarcodeGenerate.GetValue() ? 0 : 1)) + { + foreach (var v in p.Items.Where(q=>q.STATUS !="F" && q.STATUS !="P")) + { + if (item.VAR_NAME.StartsWith("RcvDoc")) + { + item.Value = v.ORDER_NO; + } + if (item.VAR_NAME.StartsWith("SoDoc")) + { + item.Value = v.SALES_ORDER; + } + if (item.VAR_NAME.StartsWith("MoDoc")) + { + item.Value = v.WORK_ORDER; + } + if (item.VAR_NAME.StartsWith("ItemCode")) + { + item.Value = v.ITEM_CODE; + } + if (item.VAR_NAME.StartsWith("Description")) + { + item.Value = v.ITEM_NAME; + } + if (item.VAR_NAME.StartsWith("BoxQty")) + { + item.Value = v.PLAN_QTY.ToString(); + } + if (item.VAR_NAME.StartsWith("InQty")) + { + item.Value = v.SCAN_QTY.ToString(); + } + if (item.VAR_NAME.StartsWith("RcvQrCode")) + { + item.Value = v.ORDER_NO.ToString(); + } + if (item.VAR_NAME.StartsWith("SapCode")) + { + item.Value = v.SapCode; + } + if (item.VAR_NAME.StartsWith("Seq")) + { + item.Value = i.ToString(); + } + i++; + } + if (item.VAR_NAME == "PageNum") + { + item.Value = j.ToString(); + } + if (item.VAR_NAME == "PageSize") + { + item.Value = printJsons.Count.ToString(); + } + if (item.VAR_NAME == "BusinessDate") + { + item.Value = DateTime.Now.ToString("yyyyy.MM.dd"); + } + } + labels.Add(label); + j++; + } + return labels; + } } } diff --git a/Tiger.Business.MES/iERP/U9C_MES.cs b/Tiger.Business.MES/iERP/U9C_MES.cs index 783b3f0..48b6654 100644 --- a/Tiger.Business.MES/iERP/U9C_MES.cs +++ b/Tiger.Business.MES/iERP/U9C_MES.cs @@ -119,7 +119,7 @@ .WhereColumns(t => new { t.ITEM_ID, t.GHOST_ROW }) .ToStorage(); y.AsInsertable.ExecuteCommand(); - y.AsUpdateable.ExecuteCommand(); + y.AsUpdateable.IgnoreColumns(x => x.ID).ExecuteCommand(); }); } else @@ -208,15 +208,15 @@ db.Storageable(LastRun, "U9C_MES_GetWo").ExecuteCommand(); if (items.Any()) { - if (items.Count > 150) + if (items.Count > 100) { - db.Utilities.PageEach(items, 1000, pageList => + db.Utilities.PageEach(items, 100, pageList => { var y = db.Storageable(pageList, "U9C") .WhereColumns(t => new { t.ORDER_NO, t.GHOST_ROW }) .ToStorage(); - y.BulkCopy(); - y.BulkUpdate(); + y.AsInsertable.ExecuteCommand(); + y.AsUpdateable.IgnoreColumns(x => x.ID).ExecuteCommand(); }); } else @@ -285,11 +285,7 @@ { if (woList.Any()) { - var s = _db.Storageable(woList, "U9C") - .WhereColumns(t => new { t.ORDER_NO, t.GHOST_ROW }) - .ToStorage(); - s.AsInsertable.ExecuteCommand(); - s.AsUpdateable.IgnoreColumns(x => x.ID).UpdateColumns(x => new { x.ROUTE_STATUS}).ExecuteCommand(); + _db.Updateable(woList, "U9C").UpdateColumns(x => new { x.ROUTE_STATUS }).ExecuteCommand(); } }); diff --git a/Tiger.Business/Services/Base/TigerJobBase.cs b/Tiger.Business/Services/Base/TigerJobBase.cs index f2fc093..b6b1b1d 100644 --- a/Tiger.Business/Services/Base/TigerJobBase.cs +++ b/Tiger.Business/Services/Base/TigerJobBase.cs @@ -125,93 +125,82 @@ { TskJobInput tskJobInput = new TskJobInput(); var dateTime = DateTime.Now; - if (Args.Interval > 0) + + //鎸夋椂闂寸被鍨嬫潵杩愯 + switch (Args.Type) { - tskJobInput.result = true; - tskJobInput.input = new() - { - startTime = dateTime.AddHours(-Args.Interval).ToString("yyyy-MM-dd HH:mm:ss"), - endTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), - }; - } - else - { - //鎸夋椂闂寸被鍨嬫潵杩愯 - switch (Args.Type) - { - case TrigArgs.EveryType.Milliseconds: - dateTime = Trig.LastRunTime ?? DateTime.Now.AddMilliseconds(-Args.ToRunEvery); - tskJobInput.result = (DateTime.Now - dateTime).TotalMilliseconds > Args.ToRunEvery; - tskJobInput.input = new() - { - startTime = dateTime.ToString("yyyy-MM-dd HH:mm:ss"), - endTime = dateTime.AddMilliseconds(Args.ToRunEvery).ToString("yyyy-MM-dd HH:mm:ss"), - }; - break; - case TrigArgs.EveryType.Seconds: - dateTime = Trig.LastRunTime ?? DateTime.Now.AddSeconds(-Args.ToRunEvery); - tskJobInput.result = (DateTime.Now - dateTime).TotalSeconds > Args.ToRunEvery; - tskJobInput.input = new() - { - startTime = dateTime.ToString("yyyy-MM-dd HH:mm:ss"), - endTime = dateTime.AddSeconds(Args.ToRunEvery).ToString("yyyy-MM-dd HH:mm:ss"), - }; - break; - case TrigArgs.EveryType.Minutes: - dateTime = Trig.LastRunTime ?? DateTime.Now.AddMinutes(-Args.ToRunEvery); - tskJobInput.result = (DateTime.Now - dateTime).TotalMinutes > Args.ToRunEvery; - tskJobInput.input = new() - { - startTime = dateTime.ToString("yyyy-MM-dd HH:mm:ss"), - endTime = dateTime.AddMinutes(Args.ToRunEvery).ToString("yyyy-MM-dd HH:mm:ss"), - }; - break; - case TrigArgs.EveryType.Hours: - dateTime = Trig.LastRunTime ?? DateTime.Now.AddHours(-Args.ToRunEvery); - tskJobInput.result = (DateTime.Now - dateTime).TotalHours > Args.ToRunEvery; - tskJobInput.input = new() - { - startTime = dateTime.ToString("yyyy-MM-dd HH:mm:ss"), - endTime = dateTime.AddHours(Args.ToRunEvery).ToString("yyyy-MM-dd HH:mm:ss"), - }; - break; - case TrigArgs.EveryType.Days: - dateTime = Trig.LastRunTime ?? DateTime.Now.AddDays(-Args.ToRunEvery); - tskJobInput.result = (DateTime.Now - dateTime).TotalDays > Args.ToRunEvery; - tskJobInput.input = new() - { - startTime = dateTime.ToString("yyyy-MM-dd HH:mm:ss"), - endTime = dateTime.AddDays(Args.ToRunEvery).ToString("yyyy-MM-dd HH:mm:ss"), - }; - break; - case TrigArgs.EveryType.Weeks: - dateTime = Trig.LastRunTime ?? DateTime.Now.AddDays(-7); - tskJobInput.result = (DateTime.Now - dateTime).TotalDays > Args.ToRunEvery * 7; - tskJobInput.input = new() - { - startTime = dateTime.ToString("yyyy-MM-dd HH:mm:ss"), - endTime = dateTime.AddDays(Args.ToRunEvery).ToString("yyyy-MM-dd HH:mm:ss"), - }; - break; - case TrigArgs.EveryType.Weekdays: - dateTime = Trig.LastRunTime ?? DateTime.Now.AddDays(-Args.ToRunEvery); - tskJobInput.result = (DateTime.Now - dateTime).TotalDays > Args.ToRunEvery; - tskJobInput.input = new() - { - startTime = dateTime.ToString("yyyy-MM-dd HH:mm:ss"), - endTime = dateTime.AddDays(Args.ToRunEvery).ToString("yyyy-MM-dd HH:mm:ss"), - }; - break; - case TrigArgs.EveryType.Months: - dateTime = Trig.LastRunTime ?? DateTime.Now.AddMonths(-Args.ToRunEvery); - tskJobInput.result = (DateTime.Now - dateTime).TotalDays > Args.ToRunEvery * DateTime.DaysInMonth(DateTime.Now.Year, DateTime.Now.Month); - tskJobInput.input = new() - { - startTime = dateTime.ToString("yyyy-MM-dd HH:mm:ss"), - endTime = dateTime.AddMonths(Args.ToRunEvery).ToString("yyyy-MM-dd HH:mm:ss"), - }; - break; - } + case TrigArgs.EveryType.Milliseconds: + dateTime = Trig.LastRunTime ?? DateTime.Now.AddMilliseconds(-Args.ToRunEvery); + tskJobInput.result = Args.Interval > 0 ? true : (DateTime.Now - dateTime).TotalMilliseconds > Args.ToRunEvery; + tskJobInput.input = new() + { + startTime = Args.Interval > 0 ? ((DateTime)Trig.LastRunTime).AddHours(-Args.Interval).ToString("yyyy-MM-dd HH:mm:ss") : dateTime.ToString("yyyy-MM-dd HH:mm:ss"), + endTime = dateTime.AddMilliseconds(Args.ToRunEvery).ToString("yyyy-MM-dd HH:mm:ss"), + }; + break; + case TrigArgs.EveryType.Seconds: + dateTime = Trig.LastRunTime ?? DateTime.Now.AddSeconds(-Args.ToRunEvery); + tskJobInput.result = Args.Interval > 0 ? true : (DateTime.Now - dateTime).TotalSeconds > Args.ToRunEvery; + tskJobInput.input = new() + { + startTime = Args.Interval > 0 ? ((DateTime)Trig.LastRunTime).AddHours(-Args.Interval).ToString("yyyy-MM-dd HH:mm:ss") : dateTime.ToString("yyyy-MM-dd HH:mm:ss"), + endTime = dateTime.AddSeconds(Args.ToRunEvery).ToString("yyyy-MM-dd HH:mm:ss"), + }; + break; + case TrigArgs.EveryType.Minutes: + dateTime = Trig.LastRunTime ?? DateTime.Now.AddMinutes(-Args.ToRunEvery); + tskJobInput.result = Args.Interval > 0 ? true : (DateTime.Now - dateTime).TotalMinutes > Args.ToRunEvery; + tskJobInput.input = new() + { + startTime = Args.Interval > 0 ? ((DateTime)Trig.LastRunTime).AddHours(-Args.Interval).ToString("yyyy-MM-dd HH:mm:ss") : dateTime.ToString("yyyy-MM-dd HH:mm:ss"), + endTime = dateTime.AddMinutes(Args.ToRunEvery).ToString("yyyy-MM-dd HH:mm:ss"), + }; + break; + case TrigArgs.EveryType.Hours: + dateTime = Trig.LastRunTime ?? DateTime.Now.AddHours(-Args.ToRunEvery); + tskJobInput.result = Args.Interval > 0 ? true : (DateTime.Now - dateTime).TotalHours > Args.ToRunEvery; + tskJobInput.input = new() + { + startTime = Args.Interval > 0 ? ((DateTime)Trig.LastRunTime).AddHours(-Args.Interval).ToString("yyyy-MM-dd HH:mm:ss") : dateTime.ToString("yyyy-MM-dd HH:mm:ss"), + endTime = dateTime.AddHours(Args.ToRunEvery).ToString("yyyy-MM-dd HH:mm:ss"), + }; + break; + case TrigArgs.EveryType.Days: + dateTime = Trig.LastRunTime ?? DateTime.Now.AddDays(-Args.ToRunEvery); + tskJobInput.result = Args.Interval > 0 ? true : (DateTime.Now - dateTime).TotalDays > Args.ToRunEvery; + tskJobInput.input = new() + { + startTime = Args.Interval > 0 ? ((DateTime)Trig.LastRunTime).AddHours(-Args.Interval).ToString("yyyy-MM-dd HH:mm:ss") : dateTime.ToString("yyyy-MM-dd HH:mm:ss"), + endTime = dateTime.AddDays(Args.ToRunEvery).ToString("yyyy-MM-dd HH:mm:ss"), + }; + break; + case TrigArgs.EveryType.Weeks: + dateTime = Trig.LastRunTime ?? DateTime.Now.AddDays(-7); + tskJobInput.result = Args.Interval > 0 ? true : (DateTime.Now - dateTime).TotalDays > Args.ToRunEvery * 7; + tskJobInput.input = new() + { + startTime = Args.Interval > 0 ? ((DateTime)Trig.LastRunTime).AddHours(-Args.Interval).ToString("yyyy-MM-dd HH:mm:ss") : dateTime.ToString("yyyy-MM-dd HH:mm:ss"), + endTime = dateTime.AddDays(Args.ToRunEvery).ToString("yyyy-MM-dd HH:mm:ss"), + }; + break; + case TrigArgs.EveryType.Weekdays: + dateTime = Trig.LastRunTime ?? DateTime.Now.AddDays(-Args.ToRunEvery); + tskJobInput.result = Args.Interval > 0 ? true : (DateTime.Now - dateTime).TotalDays > Args.ToRunEvery; + tskJobInput.input = new() + { + startTime = Args.Interval > 0 ? ((DateTime)Trig.LastRunTime).AddHours(-Args.Interval).ToString("yyyy-MM-dd HH:mm:ss") : dateTime.ToString("yyyy-MM-dd HH:mm:ss"), + endTime = dateTime.AddDays(Args.ToRunEvery).ToString("yyyy-MM-dd HH:mm:ss"), + }; + break; + case TrigArgs.EveryType.Months: + dateTime = Trig.LastRunTime ?? DateTime.Now.AddMonths(-Args.ToRunEvery); + tskJobInput.result = Args.Interval > 0 ? true : (DateTime.Now - dateTime).TotalDays > Args.ToRunEvery * DateTime.DaysInMonth(DateTime.Now.Year, DateTime.Now.Month); + tskJobInput.input = new() + { + startTime = Args.Interval > 0 ? ((DateTime)Trig.LastRunTime).AddHours(-Args.Interval).ToString("yyyy-MM-dd HH:mm:ss") : dateTime.ToString("yyyy-MM-dd HH:mm:ss"), + endTime = dateTime.AddMonths(Args.ToRunEvery).ToString("yyyy-MM-dd HH:mm:ss"), + }; + break; } return tskJobInput; } diff --git a/Tiger.Model.Net/Entitys/MES/ParameterEntity/U9CParameter.cs b/Tiger.Model.Net/Entitys/MES/ParameterEntity/U9CParameter.cs index ebc4ac6..580581f 100644 --- a/Tiger.Model.Net/Entitys/MES/ParameterEntity/U9CParameter.cs +++ b/Tiger.Model.Net/Entitys/MES/ParameterEntity/U9CParameter.cs @@ -41,6 +41,7 @@ public List<RcvRptDocBase> RcvRptDocBases { get; set; } public List<BIZ_ERP_PROD_IN_BTH> ErpProdInBths { get; set; } public List<InStorePrintJson> PrintJsons { get; set; } + public List<BAS_LABEL_TEMP> labels { get; set; } } public class InStorePrintJson @@ -57,6 +58,7 @@ public string BATCH_NO { get; set; } public string WORK_ORDER { get; set; } public string ITEM_CODE { get; set; } + public string SapCode { get; set; } public string ITEM_NAME { get; set; } public double PLAN_QTY { get; set; } public double SCAN_QTY { get; set; } diff --git a/Tiger.Model.Net/Entitys/WMS/BIZ_ERP_PROD_IN_BTH.cs b/Tiger.Model.Net/Entitys/WMS/BIZ_ERP_PROD_IN_BTH.cs index dedf712..0ae1b36 100644 --- a/Tiger.Model.Net/Entitys/WMS/BIZ_ERP_PROD_IN_BTH.cs +++ b/Tiger.Model.Net/Entitys/WMS/BIZ_ERP_PROD_IN_BTH.cs @@ -168,6 +168,7 @@ /// </summary> [DisplayName("物料名称")] public string ITEM_NAME { get; set; } + public string SapCode { get; set; } /// <summary> /// 计划数量 /// </summary> -- Gitblit v1.9.3