From 2c8b6a511da5848099f9419b36997716395979a5 Mon Sep 17 00:00:00 2001
From: Rodney Chen <rodney.chen@hotmail.com>
Date: 星期五, 26 七月 2024 11:04:30 +0800
Subject: [PATCH] 工单,工单批次,在制品信息增加物料信息的导航属性

---
 Tiger.Model.Net/Entitys/MES/BIZ_MES_WO_BATCH.cs |    3 
 Tiger.Api/Controllers/Test/TestController.R.cs  |    1 
 Tiger.Model.Net/Entitys/MES/MES_WIP_DATA.cs     |   21 ++--
 Tiger.Model.Net/Entitys/MES/BIZ_MES_WO.cs       |  247 +++++++++++++++++++++++++------------------------
 4 files changed, 140 insertions(+), 132 deletions(-)

diff --git a/Tiger.Api/Controllers/Test/TestController.R.cs b/Tiger.Api/Controllers/Test/TestController.R.cs
index bb1017a..a0c09bf 100644
--- a/Tiger.Api/Controllers/Test/TestController.R.cs
+++ b/Tiger.Api/Controllers/Test/TestController.R.cs
@@ -106,6 +106,7 @@
         [HttpGet]
         public async Task<IActionResult> Get2Async(string param)
         {
+
             var auth = new AuthOption() { UserId = "admin", ByOrg = true, ByWh = true };
             //var data = await Biz.Db.Queryable<BIZ_ERP_PO>().Where(q => q.BILLTYPE == 11)
             //    //.ByAuth("admin", DbAuth.Org | DbAuth.Wh)
diff --git a/Tiger.Model.Net/Entitys/MES/BIZ_MES_WO.cs b/Tiger.Model.Net/Entitys/MES/BIZ_MES_WO.cs
index 346d982..38e3f50 100644
--- a/Tiger.Model.Net/Entitys/MES/BIZ_MES_WO.cs
+++ b/Tiger.Model.Net/Entitys/MES/BIZ_MES_WO.cs
@@ -7,181 +7,181 @@
 namespace Tiger.Model
 {
 	/// <summary>
-	/// 实体:工单
+	/// 瀹炰綋锛氬伐鍗�
 	/// </summary>
 	[Description("Primary:ID")]
-	[DisplayName("工单")]
+	[DisplayName("宸ュ崟")]
 	[Serializable]
 	[SugarTable("BIZ_MES_WO")]
 	public class BIZ_MES_WO : DbEntityWithAuth
 	{
-		#region 构造函数
+		#region 鏋勯�犲嚱鏁�
 		/// <summary>
-		/// 实体:工单
+		/// 瀹炰綋锛氬伐鍗�
 		/// </summary>
 		public BIZ_MES_WO() {}
 		#endregion
 
-		#region 公共属性
+		#region 鍏叡灞炴��
 		/// <summary>
-		/// 工单号
+		/// 宸ュ崟鍙�
 		/// </summary>
-		[DisplayName("工单号")]
+		[DisplayName("宸ュ崟鍙�")]
 		public string ORDER_NO { get; set; }
 		/// <summary>
-		/// 工单类型(0Plan计划|1Standard标准|2Rework返工|3Restructuring在库改制|5Outsourcing委外|6RD研发|7Forecast预测|8Disassemble拆卸)
+		/// 宸ュ崟绫诲瀷(0Plan璁″垝|1Standard鏍囧噯|2Rework杩斿伐|3Restructuring鍦ㄥ簱鏀瑰埗|5Outsourcing濮斿|6RD鐮斿彂|7Forecast棰勬祴|8Disassemble鎷嗗嵏)
 		/// </summary>
-		[DisplayName("工单类型(0Plan计划|1Standard标准|2Rework返工|3Restructuring在库改制|5Outsourcing委外|6RD研发|7Forecast预测|8Disassemble拆卸)")]
+		[DisplayName("宸ュ崟绫诲瀷(0Plan璁″垝|1Standard鏍囧噯|2Rework杩斿伐|3Restructuring鍦ㄥ簱鏀瑰埗|5Outsourcing濮斿|6RD鐮斿彂|7Forecast棰勬祴|8Disassemble鎷嗗嵏)")]
 		public int ORDER_TYPE { get; set; }
 		/// <summary>
-		/// 工单描述
+		/// 宸ュ崟鎻忚堪
 		/// </summary>
-		[DisplayName("工单描述")]
+		[DisplayName("宸ュ崟鎻忚堪")]
 		public string ORDER_DESC { get; set; }
 		/// <summary>
-		/// 父工单
+		/// 鐖跺伐鍗�
 		/// </summary>
-		[DisplayName("父工单")]
+		[DisplayName("鐖跺伐鍗�")]
 		public string PARENT_ORDER { get; set; }
 		/// <summary>
-		/// 状态(0Init初始化|1Imported已导入|2Release已下发|3Working生产中|4Paused已暂停|5Closed已关闭)
+		/// 鐘舵��(0Init鍒濆鍖東1Imported宸插鍏2Release宸蹭笅鍙憒3Working鐢熶骇涓瓅4Paused宸叉殏鍋渱5Closed宸插叧闂�)
 		/// </summary>
-		[DisplayName("状态(0Init初始化|1Imported已导入|2Release已下发|3Working生产中|4Paused已暂停|5Closed已关闭)")]
+		[DisplayName("鐘舵��(0Init鍒濆鍖東1Imported宸插鍏2Release宸蹭笅鍙憒3Working鐢熶骇涓瓅4Paused宸叉殏鍋渱5Closed宸插叧闂�)")]
 		public int STATUS { get; set; }
 		/// <summary>
-		/// 物料编码
+		/// 鐗╂枡缂栫爜
 		/// </summary>
-		[DisplayName("物料编码")]
+		[DisplayName("鐗╂枡缂栫爜")]
 		public string ITEM_CODE { get; set; }
 		/// <summary>
-		/// 物料类型
+		/// 鐗╂枡绫诲瀷
 		/// </summary>
-		[DisplayName("物料类型")]
+		[DisplayName("鐗╂枡绫诲瀷")]
 		public string ITEM_TYPE { get; set; }
 		/// <summary>
-		/// 机型
+		/// 鏈哄瀷
 		/// </summary>
-		[DisplayName("机型")]
+		[DisplayName("鏈哄瀷")]
 		public string ITEM_MODEL { get; set; }
 		/// <summary>
-		/// 优先级
+		/// 浼樺厛绾�
 		/// </summary>
-		[DisplayName("优先级")]
+		[DisplayName("浼樺厛绾�")]
 		public string PRIORITY { get; set; }
 		/// <summary>
-		/// 客户编码
+		/// 瀹㈡埛缂栫爜
 		/// </summary>
-		[DisplayName("客户编码")]
+		[DisplayName("瀹㈡埛缂栫爜")]
 		public string CUST_CODE { get; set; }
 		/// <summary>
-		/// 路由编码
+		/// 璺敱缂栫爜
 		/// </summary>
-		[DisplayName("路由编码")]
+		[DisplayName("璺敱缂栫爜")]
 		public string ROUTE_CODE { get; set; }
 		/// <summary>
-		/// 工艺状态(0WaitSet待配置|1Finish已配置|2Cancel取消|3Close关闭)
+		/// 宸ヨ壓鐘舵��(0WaitSet寰呴厤缃畖1Finish宸查厤缃畖2Cancel鍙栨秷|3Close鍏抽棴)
 		/// </summary>
-		[DisplayName("工艺状态(0WaitSet待配置|1Finish已配置|2Cancel取消|3Close关闭)")]
+		[DisplayName("宸ヨ壓鐘舵��(0WaitSet寰呴厤缃畖1Finish宸查厤缃畖2Cancel鍙栨秷|3Close鍏抽棴)")]
 		public int ROUTE_STATUS { get; set; }
 		/// <summary>
-		/// 工厂
+		/// 宸ュ巶
 		/// </summary>
-		[DisplayName("工厂")]
+		[DisplayName("宸ュ巶")]
 		public string FACTORY { get; set; }
 		/// <summary>
-		/// 车间编码
+		/// 杞﹂棿缂栫爜
 		/// </summary>
-		[DisplayName("车间编码")]
+		[DisplayName("杞﹂棿缂栫爜")]
 		public string WS_CODE { get; set; }
 		/// <summary>
-		/// 计划线体
+		/// 璁″垝绾夸綋
 		/// </summary>
-		[DisplayName("计划线体")]
+		[DisplayName("璁″垝绾夸綋")]
 		public string PLAN_LINE { get; set; }
 		/// <summary>
-		/// 实际线体
+		/// 瀹為檯绾夸綋
 		/// </summary>
-		[DisplayName("实际线体")]
+		[DisplayName("瀹為檯绾夸綋")]
 		public string ACT_LINE { get; set; }
 		/// <summary>
-		/// 计划开始时间
+		/// 璁″垝寮�濮嬫椂闂�
 		/// </summary>
-		[DisplayName("计划开始时间")]
+		[DisplayName("璁″垝寮�濮嬫椂闂�")]
 		public DateTime PLAN_START_TIME { get; set; } = DateTime.MinValue;
 		/// <summary>
-		/// 计划结束时间
+		/// 璁″垝缁撴潫鏃堕棿
 		/// </summary>
-		[DisplayName("计划结束时间")]
+		[DisplayName("璁″垝缁撴潫鏃堕棿")]
 		public DateTime PLAN_END_TIME { get; set; } = DateTime.MinValue;
 		/// <summary>
-		/// 实际开始时间
+		/// 瀹為檯寮�濮嬫椂闂�
 		/// </summary>
-		[DisplayName("实际开始时间")]
+		[DisplayName("瀹為檯寮�濮嬫椂闂�")]
 		public DateTime ACT_START_TIME { get; set; } = DateTime.MinValue;
 		/// <summary>
-		/// 实际结束时间
+		/// 瀹為檯缁撴潫鏃堕棿
 		/// </summary>
-		[DisplayName("实际结束时间")]
+		[DisplayName("瀹為檯缁撴潫鏃堕棿")]
 		public DateTime ACT_END_TIME { get; set; } = DateTime.MinValue;
 		/// <summary>
-		/// 标准作业人数
+		/// 鏍囧噯浣滀笟浜烘暟
 		/// </summary>
-		[DisplayName("标准作业人数")]
+		[DisplayName("鏍囧噯浣滀笟浜烘暟")]
 		public int STD_WORKER_QTY { get; set; }
 		/// <summary>
-		/// 实际作业人数
+		/// 瀹為檯浣滀笟浜烘暟
 		/// </summary>
-		[DisplayName("实际作业人数")]
+		[DisplayName("瀹為檯浣滀笟浜烘暟")]
 		public int ACT_WORKER_QTY { get; set; }
 		/// <summary>
-		/// 导入时间
+		/// 瀵煎叆鏃堕棿
 		/// </summary>
-		[DisplayName("导入时间")]
+		[DisplayName("瀵煎叆鏃堕棿")]
 		public DateTime IMPORT_TIME { get; set; } = DateTime.MinValue;
 		/// <summary>
-		/// 下发时间
+		/// 涓嬪彂鏃堕棿
 		/// </summary>
-		[DisplayName("下发时间")]
+		[DisplayName("涓嬪彂鏃堕棿")]
 		public DateTime RELEASE_TIME { get; set; } = DateTime.MinValue;
 		/// <summary>
-		/// 下发人
+		/// 涓嬪彂浜�
 		/// </summary>
-		[DisplayName("下发人")]
+		[DisplayName("涓嬪彂浜�")]
 		public string RELEASE_USER { get; set; }
 		/// <summary>
-		/// 变更时间
+		/// 鍙樻洿鏃堕棿
 		/// </summary>
-		[DisplayName("变更时间")]
+		[DisplayName("鍙樻洿鏃堕棿")]
 		public DateTime CHANGE_TIME { get; set; } = DateTime.MinValue;
 		/// <summary>
-		/// 变更人
+		/// 鍙樻洿浜�
 		/// </summary>
-		[DisplayName("变更人")]
+		[DisplayName("鍙樻洿浜�")]
 		public string CHANGE_USER { get; set; }
 		/// <summary>
-		/// 计划数量
+		/// 璁″垝鏁伴噺
 		/// </summary>
-		[DisplayName("计划数量")]
+		[DisplayName("璁″垝鏁伴噺")]
 		public int PLAN_QTY { get; set; }
 		/// <summary>
-		/// 投入数量
+		/// 鎶曞叆鏁伴噺
 		/// </summary>
-		[DisplayName("投入数量")]
+		[DisplayName("鎶曞叆鏁伴噺")]
 		public int INPUT_QTY { get; set; }
 		/// <summary>
-		/// 完工数量
+		/// 瀹屽伐鏁伴噺
 		/// </summary>
-		[DisplayName("完工数量")]
+		[DisplayName("瀹屽伐鏁伴噺")]
 		public int OUTPUT_QTY { get; set; }
 		/// <summary>
-		/// 报废数量
+		/// 鎶ュ簾鏁伴噺
 		/// </summary>
-		[DisplayName("报废数量")]
+		[DisplayName("鎶ュ簾鏁伴噺")]
 		public int SCRAP_QTY { get; set; }
 		/// <summary>
-		/// 入库数量
+		/// 鍏ュ簱鏁伴噺
 		/// </summary>
-		[DisplayName("入库数量")]
+		[DisplayName("鍏ュ簱鏁伴噺")]
 		public int STOCK_IN_QTY { get; set; }
 		/// <summary>
 		/// UPH
@@ -194,118 +194,121 @@
 		[DisplayName("UPPH")]
 		public double UPPH { get; set; }
 		/// <summary>
-		/// 最后的工单历史ID
+		/// 鏈�鍚庣殑宸ュ崟鍘嗗彶ID
 		/// </summary>
-		[DisplayName("最后的工单历史ID")]
+		[DisplayName("鏈�鍚庣殑宸ュ崟鍘嗗彶ID")]
 		public string LAST_HIST_ID { get; set; }
 		/// <summary>
-		/// 备注
+		/// 澶囨敞
 		/// </summary>
-		[DisplayName("备注")]
+		[DisplayName("澶囨敞")]
 		public string REMARK { get; set; }
 		/// <summary>
-		/// 接口表记录ID
+		/// 鎺ュ彛琛ㄨ褰旾D
 		/// </summary>
-		[DisplayName("接口表记录ID")]
+		[DisplayName("鎺ュ彛琛ㄨ褰旾D")]
 		public string FBILLNO_ID { get; set; }
 		/// <summary>
-		/// 备料单返回信息
+		/// 澶囨枡鍗曡繑鍥炰俊鎭�
 		/// </summary>
-		[DisplayName("备料单返回信息")]
+		[DisplayName("澶囨枡鍗曡繑鍥炰俊鎭�")]
 		public string PREP_MSG { get; set; }
-		#endregion
+        #endregion
 
-		#region 虚拟属性
-		/*例子
+        #region 铏氭嫙灞炴��
+        /*渚嬪瓙
 		[SugarColumn(IsIgnore = true)]
 		public string FieldName { get; set; }
 		*/
-		#endregion
+        #endregion
 
-		#region 外键属性
-		/*例子
-		//一对一外键导航
-		[Navigate(NavigateType.OneToOne, nameof(ClassAId))]//一对一 ClassAId是BIZ_MES_WO类里面的外键ID字段
-		public ClassA ClassA { get; set; } //注意禁止手动赋值,只能是null
-		//一对多外键导航
-		[Navigate(NavigateType.OneToMany, nameof(ClassA.BIZ_MES_WOId))]//ClassA表中的BIZ_MES_WOId
-		public List<ClassA> ClassAList { get; set; }//注意禁止手动赋值,只能是null
-		//多对多外键导航
-		[Navigate(typeof(MappingClass), nameof(MappingClass.BIZ_MES_WOId), nameof(MappingClass.ClassAId))]//注意顺序
-		public List<ClassA> ClassAList { get; set; } //注意禁止手动赋值,只能是null
+        #region 澶栭敭灞炴��
+        /*渚嬪瓙
+		//涓�瀵逛竴澶栭敭瀵艰埅
+		[Navigate(NavigateType.OneToOne, nameof(ClassAId))]//涓�瀵逛竴 ClassAId鏄疊IZ_MES_WO绫婚噷闈㈢殑澶栭敭ID瀛楁
+		public ClassA ClassA { get; set; } //娉ㄦ剰绂佹鎵嬪姩璧嬪�硷紝鍙兘鏄痭ull
+		//涓�瀵瑰澶栭敭瀵艰埅
+		[Navigate(NavigateType.OneToMany, nameof(ClassA.BIZ_MES_WOId))]//ClassA琛ㄤ腑鐨凚IZ_MES_WOId
+		public List<ClassA> ClassAList { get; set; }//娉ㄦ剰绂佹鎵嬪姩璧嬪�硷紝鍙兘鏄痭ull
+		//澶氬澶氬閿鑸�
+		[Navigate(typeof(MappingClass), nameof(MappingClass.BIZ_MES_WOId), nameof(MappingClass.ClassAId))]//娉ㄦ剰椤哄簭
+		public List<ClassA> ClassAList { get; set; } //娉ㄦ剰绂佹鎵嬪姩璧嬪�硷紝鍙兘鏄痭ull
 		*/
-		#endregion
+        [Navigate(NavigateType.OneToMany, nameof(BAS_ITEM.ITEM_CODE), nameof(ITEM_CODE), "GHOST_ROW = 0")]//涓�瀵逛竴 ClassAId鏄疢ES_WIP_DATA绫婚噷闈㈢殑澶栭敭ID瀛楁
+        public List<BAS_ITEM> _ItemInfos { get; set; } //娉ㄦ剰绂佹鎵嬪姩璧嬪�硷紝鍙兘鏄痭ull
+        public BAS_ITEM ItemInfo => _ItemInfos?.FirstOrDefault(q => q.AUTH_ORG == AUTH_ORG);
+        #endregion
 
-		#region 枚举变量
-		/*例子
+        #region 鏋氫妇鍙橀噺
+        /*渚嬪瓙
 		public enum FieldNames
 		{
-			[Description("枚举描述0")]
+			[Description("鏋氫妇鎻忚堪0")]
 			Enum0,
-			[Description("枚举描述1")]
+			[Description("鏋氫妇鎻忚堪1")]
 			Enum1,
 		}
 		*/
 
-		/// <summary>
-		/// 枚举:工单类型(0Plan计划|1Standard标准|2Rework返工|3Restructuring在库改制|5Outsourcing委外|6RD研发|7Forecast预测|8Disassemble拆卸)
-		/// </summary>
-		public enum ORDER_TYPEs
+        /// <summary>
+        /// 鏋氫妇锛氬伐鍗曠被鍨�(0Plan璁″垝|1Standard鏍囧噯|2Rework杩斿伐|3Restructuring鍦ㄥ簱鏀瑰埗|5Outsourcing濮斿|6RD鐮斿彂|7Forecast棰勬祴|8Disassemble鎷嗗嵏)
+        /// </summary>
+        public enum ORDER_TYPEs
 		{
-			[Description("计划")]
+			[Description("璁″垝")]
 			Plan = 0,
-			[Description("标准")]
+			[Description("鏍囧噯")]
 			Standard = 1,
-			[Description("返工")]
+			[Description("杩斿伐")]
 			Rework = 2,
-			[Description("在库改制")]
+			[Description("鍦ㄥ簱鏀瑰埗")]
 			Restructuring = 3,
-			[Description("委外")]
+			[Description("濮斿")]
 			Outsourcing = 5,
-			[Description("研发")]
+			[Description("鐮斿彂")]
 			RD = 6,
-			[Description("预测")]
+			[Description("棰勬祴")]
 			Forecast = 7,
-			[Description("拆卸")]
+			[Description("鎷嗗嵏")]
 			Disassemble = 8,
 		}
 
 		/// <summary>
-		/// 枚举:状态(0Init初始化|1Imported已导入|2Release已下发|3Working生产中|4Paused已暂停|5Closed已关闭)
+		/// 鏋氫妇锛氱姸鎬�(0Init鍒濆鍖東1Imported宸插鍏2Release宸蹭笅鍙憒3Working鐢熶骇涓瓅4Paused宸叉殏鍋渱5Closed宸插叧闂�)
 		/// </summary>
 		public enum STATUSs
 		{
-			[Description("初始化")]
+			[Description("鍒濆鍖�")]
 			Init = 0,
-			[Description("已导入")]
+			[Description("宸插鍏�")]
 			Imported = 1,
-			[Description("已下发")]
+			[Description("宸蹭笅鍙�")]
 			Release = 2,
-			[Description("生产中")]
+			[Description("鐢熶骇涓�")]
 			Working = 3,
-			[Description("已暂停")]
+			[Description("宸叉殏鍋�")]
 			Paused = 4,
-			[Description("已关闭")]
+			[Description("宸插叧闂�")]
 			Closed = 5,
 		}
 
 		/// <summary>
-		/// 枚举:工艺状态(0WaitSet待配置|1Finish已配置|2Cancel取消|3Close关闭)
+		/// 鏋氫妇锛氬伐鑹虹姸鎬�(0WaitSet寰呴厤缃畖1Finish宸查厤缃畖2Cancel鍙栨秷|3Close鍏抽棴)
 		/// </summary>
 		public enum ROUTE_STATUSs
 		{
-			[Description("待配置")]
+			[Description("寰呴厤缃�")]
 			WaitSet = 0,
-			[Description("已配置")]
+			[Description("宸查厤缃�")]
 			Finish = 1,
-			[Description("取消")]
+			[Description("鍙栨秷")]
 			Cancel = 2,
-			[Description("关闭")]
+			[Description("鍏抽棴")]
 			Close = 3,
 		}
 		#endregion
 
-		#region 公共方法
+		#region 鍏叡鏂规硶
 
 		#endregion
 
diff --git a/Tiger.Model.Net/Entitys/MES/BIZ_MES_WO_BATCH.cs b/Tiger.Model.Net/Entitys/MES/BIZ_MES_WO_BATCH.cs
index 1049d26..6e20e7b 100644
--- a/Tiger.Model.Net/Entitys/MES/BIZ_MES_WO_BATCH.cs
+++ b/Tiger.Model.Net/Entitys/MES/BIZ_MES_WO_BATCH.cs
@@ -154,6 +154,9 @@
 		[Navigate(typeof(MappingClass), nameof(MappingClass.BIZ_MES_WO_BATCHId), nameof(MappingClass.ClassAId))]//娉ㄦ剰椤哄簭
 		public List<ClassA> ClassAList { get; set; } //娉ㄦ剰绂佹鎵嬪姩璧嬪�硷紝鍙兘鏄痭ull
 		*/
+        [Navigate(NavigateType.OneToMany, nameof(BAS_ITEM.ITEM_CODE), nameof(ITEM_CODE), "GHOST_ROW = 0")]//涓�瀵逛竴 ClassAId鏄疢ES_WIP_DATA绫婚噷闈㈢殑澶栭敭ID瀛楁
+        public List<BAS_ITEM> _ItemInfos { get; set; } //娉ㄦ剰绂佹鎵嬪姩璧嬪�硷紝鍙兘鏄痭ull
+        public BAS_ITEM ItemInfo => _ItemInfos?.FirstOrDefault(q => q.AUTH_ORG == AUTH_ORG);
         #endregion
 
         #region 鏋氫妇鍙橀噺
diff --git a/Tiger.Model.Net/Entitys/MES/MES_WIP_DATA.cs b/Tiger.Model.Net/Entitys/MES/MES_WIP_DATA.cs
index 2e594b4..fa7b814 100644
--- a/Tiger.Model.Net/Entitys/MES/MES_WIP_DATA.cs
+++ b/Tiger.Model.Net/Entitys/MES/MES_WIP_DATA.cs
@@ -218,17 +218,17 @@
 		/// </summary>
 		[DisplayName("澶囨敞")]
 		public string REMARK { get; set; }
-        #endregion
+		#endregion
 
-        #region 铏氭嫙灞炴��
-        /*渚嬪瓙
+		#region 铏氭嫙灞炴��
+		/*渚嬪瓙
 		[SugarColumn(IsIgnore = true)]
 		public string FieldName { get; set; }
 		*/
-        #endregion
+		#endregion
 
-        #region 澶栭敭灞炴��
-        /*渚嬪瓙
+		#region 澶栭敭灞炴��
+		/*渚嬪瓙
 		//涓�瀵逛竴澶栭敭瀵艰埅
 		[Navigate(NavigateType.OneToOne, nameof(ClassAId))]//涓�瀵逛竴 ClassAId鏄疢ES_WIP_DATA绫婚噷闈㈢殑澶栭敭ID瀛楁
 		public ClassA ClassA { get; set; } //娉ㄦ剰绂佹鎵嬪姩璧嬪�硷紝鍙兘鏄痭ull
@@ -239,10 +239,11 @@
 		[Navigate(typeof(MappingClass), nameof(MappingClass.MES_WIP_DATAId), nameof(MappingClass.ClassAId))]//娉ㄦ剰椤哄簭
 		public List<ClassA> ClassAList { get; set; } //娉ㄦ剰绂佹鎵嬪姩璧嬪�硷紝鍙兘鏄痭ull
 		*/
-        [Navigate(NavigateType.OneToOne, nameof(ITEM_CODE), nameof(BAS_ITEM.ITEM_CODE), "GHOST_ROW = 0")]//涓�瀵逛竴 ClassAId鏄疢ES_WIP_DATA绫婚噷闈㈢殑澶栭敭ID瀛楁
-        public BAS_ITEM ItemInfo { get; set; } //娉ㄦ剰绂佹鎵嬪姩璧嬪�硷紝鍙兘鏄痭ull
-        //[Navigate(NavigateType.OneToMany, nameof(BAS_ITEM.ITEM_CODE), nameof(ITEM_CODE), "GHOST_ROW = 0")]//涓�瀵逛竴 ClassAId鏄疢ES_WIP_DATA绫婚噷闈㈢殑澶栭敭ID瀛楁
-        //public List<BAS_ITEM> ItemInfos { get; set; } //娉ㄦ剰绂佹鎵嬪姩璧嬪�硷紝鍙兘鏄痭ull
+		//[Navigate(NavigateType.OneToOne, nameof(ITEM_CODE), nameof(BAS_ITEM.ITEM_CODE), "GHOST_ROW = 0")]//涓�瀵逛竴 ClassAId鏄疢ES_WIP_DATA绫婚噷闈㈢殑澶栭敭ID瀛楁
+		//public BAS_ITEM ItemInfo { get; set; } //娉ㄦ剰绂佹鎵嬪姩璧嬪�硷紝鍙兘鏄痭ull
+		[Navigate(NavigateType.OneToMany, nameof(BAS_ITEM.ITEM_CODE), nameof(ITEM_CODE), "GHOST_ROW = 0")]//涓�瀵逛竴 ClassAId鏄疢ES_WIP_DATA绫婚噷闈㈢殑澶栭敭ID瀛楁
+		public List<BAS_ITEM> _ItemInfos { get; set; } //娉ㄦ剰绂佹鎵嬪姩璧嬪�硷紝鍙兘鏄痭ull
+        public BAS_ITEM ItemInfo => _ItemInfos?.FirstOrDefault(q => q.AUTH_ORG == AUTH_ORG);
         [Navigate(NavigateType.OneToMany, nameof(MES_WIP_HIS.SN), nameof(SN), "GHOST_ROW = 0")]//ClassA琛ㄤ腑鐨凪ES_WIP_DATAId
         public List<MES_WIP_HIS> _History { get; set; }//娉ㄦ剰绂佹鎵嬪姩璧嬪�硷紝鍙兘鏄痭ull
 		public List<MES_WIP_HIS> History => _History ?? new List<MES_WIP_HIS>();

--
Gitblit v1.9.3