From 7320ad025a920fb52633e344fe1ce5ae2d612bfd Mon Sep 17 00:00:00 2001
From: Ben Lin <maobin001@msn.com>
Date: 星期日, 09 三月 2025 00:34:21 +0800
Subject: [PATCH] 雅达-新增生产退料单接口及相关类

---
 Tiger.Model.Net/Entitys/MES/ParameterEntity/U9CParameter.cs |  362 +++++++++++++++++++++++++++++++++++++++-----
 Tiger.Business.WMS/ERP/WMS_U9C.CreateTransferIn.cs          |   75 +++++++++
 Tiger.Business.WMS/ERP/WMS_U9C.cs                           |    2 
 3 files changed, 396 insertions(+), 43 deletions(-)

diff --git a/Tiger.Business.WMS/ERP/WMS_U9C.CreateTransferIn.cs b/Tiger.Business.WMS/ERP/WMS_U9C.CreateTransferIn.cs
new file mode 100644
index 0000000..977af98
--- /dev/null
+++ b/Tiger.Business.WMS/ERP/WMS_U9C.CreateTransferIn.cs
@@ -0,0 +1,75 @@
+锘縰sing Tiger.Model;
+using SqlSugar;
+using System;
+using System.Collections.Generic;
+using System.Linq.Expressions;
+using System.Text;
+using System.Threading.Tasks;
+using Rhea.Common;
+using System.Net;
+using System.Linq;
+using Newtonsoft.Json;
+using Tiger.IBusiness;
+using Microsoft.AspNetCore.Http;
+using Tiger.Model.Minsun;
+using Org.BouncyCastle.Asn1.Tsp;
+using Tiger.Model.Entitys.MES.Position;
+using Apache.NMS.ActiveMQ.Commands;
+using System.Security.Cryptography;
+using System.Diagnostics;
+using Tiger.Model.Entitys.MES.U9C;
+using Newtonsoft.Json.Linq;
+using System.Security.Policy;
+using NetTaste;
+
+namespace Tiger.Business.WMS
+{
+    public partial class WMS_U9C
+    {
+        /// <summary>
+        /// 鍒涘缓鐢熶骇閫�鏂欏崟-鎸夎閫�鏂欐帴鍙�
+        /// </summary>
+        /// <param name="input"></param>
+        /// <returns></returns>
+        public async Task<ApiAction<List<U9CReturnData>>> CreateTransferIn(CreateTransferInInput input) {
+            Logger.Interface.Info($"/**\r\n *杩涘叆鍒涘缓鐢熶骇閫�鏂欏崟-鎸夎閫�鏂欐帴鍙�....\r\n */\r\n"); //鍥哄畾鍐欐硶
+            var action = new ApiAction<List<U9CReturnData>>();
+            try
+            {
+                //濡傛灉宸茬粡鐧诲綍鍒欎笉闇�瑕佸啀娆$櫥褰曪紝鐩存帴浣跨敤浼犲叆鐨則oken
+                if (input.IsLogin)
+                {
+                    var u9CLoginResult = await HttpHelper.GetAsync<U9CLoginResult>($"{U9CAuthLoginUrl}userCode={input.userId}{secret}");
+                    if (u9CLoginResult.Success)
+                    {
+                        input.token = u9CLoginResult.Data;
+                        Logger.Interface.Info($"U9C鐧诲綍token: {input.token}");
+                    }
+                }
+
+                var response = await HttpHelper.PostAsync(CreateTransferInUrl, JsonConvert.SerializeObject(input.CreateTransferInParam), new Dictionary<string, string>() { { "token", input.token } });
+                var result = JsonConvert.DeserializeObject<U9CResult>(response.Message);
+                if (result != null)
+                {
+                    if (result.Success && result.Data[0].m_isSucess)
+                    {
+                        action.Data = result.Data;
+                        Logger.Interface.Info($"鍒涘缓鐢熶骇閫�鏂欏崟-鎸夎閫�鏂欐帴鍙f彁浜son: {JsonConvert.SerializeObject(input.CreateTransferInParam)}锛岃繑鍥濲son: {response.Message}");
+                    }
+                    else
+                    {
+                        action.IsSuccessed = false;
+                        action.LocaleMsg = new($"{action.Message}; {result.Data[0].m_errorMsg}");
+                        Logger.Interface.Info($"鍒涘缓鐢熶骇閫�鏂欏崟-鎸夎閫�鏂欐帴鍙eけ璐�:{result.Data[0].m_errorMsg}");
+                    }
+                }
+            }
+            catch (System.Exception ex)
+            {
+                action.CatchExceptionWithLog(ex, "鍒涘缓鐢熶骇閫�鏂欏崟-鎸夎閫�鏂欏紓甯�");
+            }
+            Logger.Interface.Info($"/* 鍒涘缓鐢熶骇閫�鏂欏崟-鎸夎閫�鏂欐帴鍙g粨鏉� */\r\n"); //鍥哄畾鍐欐硶
+            return action;
+        }
+    }
+}
diff --git a/Tiger.Business.WMS/ERP/WMS_U9C.cs b/Tiger.Business.WMS/ERP/WMS_U9C.cs
index a8b02ee..6fb5244 100644
--- a/Tiger.Business.WMS/ERP/WMS_U9C.cs
+++ b/Tiger.Business.WMS/ERP/WMS_U9C.cs
@@ -45,6 +45,8 @@
         { get; set; } = ApiConfig.IsTestServer ? Cache.SysParam["CreateOutProdMaterialReqUrl_Test", "U9CUrl"].PARAM_VALUE : Cache.SysParam["CreateOutProdMaterialReqUrl", "U9CUrl"].PARAM_VALUE; //http://172.16.80.20/u9c/webapi/PMIssueDoc/Create
         public static string CreateOutProdReturnOrderUrl
         { get; set; } = ApiConfig.IsTestServer ? Cache.SysParam["CreateOutProdReturnOrderUrl_Test", "U9CUrl"].PARAM_VALUE : Cache.SysParam["CreateOutProdReturnOrderUrl", "U9CUrl"].PARAM_VALUE; //http://172.16.80.20/u9c/webapi/PMIssueDoc/CreateRecedeIssueDoc
+        public static string CreateTransferInUrl
+        { get; set; } = ApiConfig.IsTestServer ? Cache.SysParam["CreateTransferInUrl_Test", "U9CUrl"].PARAM_VALUE : Cache.SysParam["CreateTransferInUrl", "U9CUrl"].PARAM_VALUE; //http://172.16.80.20/u9c/webapi/TransferIn/Create
 
         /// <summary>
         /// 鏂板鏀惰揣鍗�-鏉ユ簮ASN鍗曟帴鍙�
diff --git a/Tiger.Model.Net/Entitys/MES/ParameterEntity/U9CParameter.cs b/Tiger.Model.Net/Entitys/MES/ParameterEntity/U9CParameter.cs
index 9f4be92..e72ed77 100644
--- a/Tiger.Model.Net/Entitys/MES/ParameterEntity/U9CParameter.cs
+++ b/Tiger.Model.Net/Entitys/MES/ParameterEntity/U9CParameter.cs
@@ -54,6 +54,19 @@
         public bool IsLogin { get; set; }
     }
 
+    public class IssueUOM : BaseCode { }
+
+    public class POLine : BaseCode
+    {
+    }
+    public class IssueBin
+    {
+        public string code { get; set; }
+    }
+    public class Lot : IssueBin
+    {
+    }
+
     #region 鍏ュ簱鍗曟帴鍙�
     /// <summary>
     /// 鍏ュ簱鍗曟帴鍙d紶鍏ュ弬鏁�
@@ -102,7 +115,7 @@
 
     public class RcvRptDocCreateParam
     {
-       public List<CompleteList> CompleteList { get; set; }
+        public List<CompleteList> CompleteList { get; set; }
         public string Remark { get; set; }
         public DateTime BusinessDate { get; set; }
     }
@@ -119,7 +132,7 @@
         public int DocState { get; set; } = 1;
     }
 
-    public class BarcodeCreateInput: U9CBaseInput
+    public class BarcodeCreateInput : U9CBaseInput
     {
         public string RevDocId { get; set; }
         public string RevDocLineId { get; set; }
@@ -142,7 +155,7 @@
     #endregion
 
     #region 鍗婃垚鍝佹潯鐮佺敓鎴�
-    public class BarcodeCreateByAssignQtyInput: BarcodeCreateInput
+    public class BarcodeCreateByAssignQtyInput : BarcodeCreateInput
     {
         /// <summary>
         /// 鍏ュ簱鍗曡鎬绘暟閲�
@@ -179,7 +192,8 @@
         public BarcodeCreateByAssignQtyData Data { get; set; }
     }
 
-    public class BarcodeCreateByAssignQtyData     {
+    public class BarcodeCreateByAssignQtyData
+    {
         public string ErrorMessage { get; set; }
         public string OtherID { get; set; }
         public string CreatedBarCodes { get; set; }
@@ -187,17 +201,20 @@
         public List<string> Data { get; set; }
     }
 
+    public class BaseCode
+    {
+        public string Code { get; set; }
+    }
+
     public class MOKey
     {
         public string DocNo { get; set; }
     }
-    public class Wh
+    public class Wh : BaseCode
     {
-        public string Code { get; set; }
     }
-    public class Item
+    public class Item : BaseCode
     {
-        public string Code { get; set; }
     }
     public class DescFlexField
     {
@@ -212,21 +229,34 @@
         public string OtherID { get; set; } = "WMS";
     }
 
-    public class ASNToRcvTransDTO {
+    public class ASNToRcvTransDTO
+    {
         public TransQty TransQty { get; set; }
         public string ASNLineKey { get; set; }
     }
 
     public class TransQty
     {
+        /// <summary>
+        /// 鏈鏀惰揣鏁伴噺1
+        /// </summary>
         public string m_amount1 { get; set; }
         public m_uOM1 m_uOM1 { get; set; }
     }
 
     public class m_uOM1
     {
+        /// <summary>
+        /// 鍗曚綅id
+        /// </summary>
         public UOMMain_SKey UOMMain_SKey { get; set; }
+        /// <summary>
+        /// 鍗曚綅id
+        /// </summary>
         public string UOMMain { get; set; }
+        /// <summary>
+        /// 鍗曚綅id
+        /// </summary>
         public UOMSub_SKey UOMSub_SKey { get; set; }
     }
 
@@ -243,12 +273,12 @@
     /// <summary>
     /// 鏂板鏀惰揣鍗曟帴鍙�-浼犲叆鍙傛暟
     /// </summary>
-    public class CreateRcvBySrcASNInput: U9CBaseInput
+    public class CreateRcvBySrcASNInput : U9CBaseInput
     {
         /// <summary>
         /// 褰撳墠鏀惰揣鏁伴噺 - m_amount1
         /// </summary>
-        public string CurRevQty { get; set; } 
+        public string CurRevQty { get; set; }
         /// <summary>
         /// ASN鍗曡ID
         /// </summary>
@@ -267,18 +297,29 @@
 
     }
 
-    public class RcvDTO { 
+    public class RcvDTO
+    {
+        /// <summary>
+        /// 鏃ユ湡
+        /// </summary>
         public DateTime BusinessDate { get; set; }
+        /// <summary>
+        /// 渚涘簲鍟�
+        /// </summary>
         public Supplier Supplier { get; set; }
+        /// <summary>
+        /// 鍗曟嵁绫诲瀷锛氭湁ASN鍗曚紶RCV01锛屾病鏈堿SN鍗曡禒鍝佷紶RCV03
+        /// </summary>
         public RcvDocType RcvDocType { get; set; }
         public List<RcvLine> RcvLines { get; set; }
-        public bool IsRcvByChangeable { get; set; }
-        public bool IsPriceListChangeable { get; set; }
-        public bool IsConfirmTermChangeable { get; set; }
-        public bool IsPaymentTermChangeable { get; set; }
-        public bool IsLineApprove { get; set; }
+        public bool IsRcvByChangeable { get; set; } = true;
+        public bool IsPriceListChangeable { get; set; } = true;
+        public bool IsConfirmTermChangeable { get; set; } = true;
+        public bool IsPaymentTermChangeable { get; set; } = true;
+        public bool IsLineApprove { get; set; } = true;
     }
-    public class Supplier { 
+    public class Supplier
+    {
         public string m_code { get; set; }
     }
     public class RcvDocType
@@ -287,18 +328,48 @@
     }
     public class RcvLine
     {
-        public bool IsPresent { get; set; }
+        /// <summary>
+        /// 鏄惁璧犲搧涓�鑸浐瀹氫紶true
+        /// </summary>
+        public bool IsPresent { get; set; } = true;
         public ItemInfo ItemInfo { get; set; }
         public Wh2 Wh { get; set; }
         public List<RcvLineLocation> RcvLineLocations { get; set; }
+        /// <summary>
+        /// 瀹炲埌鏁伴噺1
+        /// </summary>
         public double ArriveQtyTU { get; set; }
+        /// <summary>
+        /// 瀹炲埌鏁伴噺
+        /// </summary>
         public double ArriveQtyPU { get; set; }
+        /// <summary>
+        /// 瀹炴敹鏁伴噺1
+        /// </summary>
         public double RcvQtyTU { get; set; }
+        /// <summary>
+        /// 瀹炴敹鏁伴噺
+        /// </summary>
         public double RcvQtyPU { get; set; }
+        /// <summary>
+        /// 鐐规敹鏁伴噺1
+        /// </summary>
         public double EyeballingQtyTU { get; set; }
+        /// <summary>
+        /// 鏀惰揣绋嬪簭鏌ヨ鏂欏搧瑙嗗浘ReceiptMode寰楀嚭
+        /// </summary>
         public double RcvProcedure { get; set; }
-        public double StorageType { get; set; }
+        /// <summary>
+        /// 瀛樺偍绫诲瀷鍥哄畾浼�4
+        /// </summary>
+        public double StorageType { get; set; } = 4;
+        /// <summary>
+        /// 鏀惰揣鎵瑰彿鏈塧sn鍗曞垯甯﹀嚭閲岄潰鎵规锛屾棤asn鍗曞垯鎸夊勾鏈堟棩鐢熸垚8浣嶆壒鍙�
+        /// </summary>
         public string RcvLotCode { get; set; }
+        /// <summary>
+        /// 搴撳瓨鎵瑰彿鏈塧sn鍗曞垯甯﹀嚭閲岄潰鎵规锛屾棤asn鍗曞垯鎸夊勾鏈堟棩鐢熸垚8浣嶆壒鍙�
+        /// </summary>
         public string InvLotCode { get; set; }
     }
 
@@ -332,10 +403,22 @@
     }
     public class SubmitLineInputParam
     {
+        /// <summary>
+        /// 鏀惰揣鍗曡ID
+        /// </summary>
         public string RcvLineID { get; set; }
         public string OtherID { get; set; } = "WMS";
+        /// <summary>
+        /// 鏀惰揣鍗曞彿
+        /// </summary>
         public string RcvDocNo { get; set; }
+        /// <summary>
+        /// 鏀惰揣鍗曡鍙�
+        /// </summary>
         public string DocLineNo { get; set; }
+        /// <summary>
+        /// 缁勭粐缂栫爜
+        /// </summary>
         public string OrgCode { get; set; }
     }
 
@@ -349,27 +432,70 @@
 
     public class CreateProdMaterialReqParam
     {
-        public List<object> MOs { get; set; }
+        /// <summary>
+        /// 鐢熶骇璁㈠崟缂栫爜
+        /// </summary>
+        public MOs MOs { get; set; }
+        /// <summary>
+        /// 棰嗘枡鍗曡闆嗗悎
+        /// </summary>
         public List<PickListDTOs> PickListDTOs { get; set; }
+        /// <summary>
+        /// 涓氬姟绫诲瀷鏍规嵁鐢熶骇璁㈠崟瑙嗗浘鏌ヨBusinessType寰楀嚭
+        /// </summary>
         public int BusinessType { get; set; }
-        public int IssueType { get; set; }
-        public int DocStatus { get; set; }
+        /// <summary>
+        /// 鏀跺彂绫诲埆榛樿浼�0鍙戞枡
+        /// </summary>
+        public int IssueType { get; set; } = 0;
+        /// <summary>
+        /// 鍗曟嵁鐘舵�侀粯璁や紶3涓哄垱寤哄嵆鍏抽棴
+        /// </summary>
+        public int DocStatus { get; set; } = 3;
         public string OtherID { get; set; } = "WMS";
     }
 
     public class PickListDTOs
     {
-        public List<object> MOs { get; set; }
-        public List<object> Item { get; set; }
-        public List<object> IssueWh { get; set; }
-        public List<object> IssueBin { get; set; }
+        /// <summary>
+        /// 棰嗘枡鍗曟枡鍝�
+        /// </summary>
+        public Item Item { get; set; }
+        /// <summary>
+        /// 鍙戞枡浠撳簱
+        /// </summary>
+        public Wh IssueWh { get; set; }
+        /// <summary>
+        /// 鍙戞枡鍌ㄤ綅
+        /// </summary>
+        public IssueBin IssueBin { get; set; }
+        /// <summary>
+        /// 瀹炲彂鏁伴噺
+        /// </summary>
         public double IssuedQty { get; set; }
+        /// <summary>
+        /// 搴斿彂鏁伴噺
+        /// </summary>
         public double IssueQty { get; set; }
-        public List<object> IssueUOM { get; set; }
+        /// <summary>
+        /// 鍙戞枡鍗曚綅鍙栧鏂欒〃鐨勫彂鏂欏崟浣岻ssueUOM
+        /// </summary>
+        public IssueUOM IssueUOM { get; set; }
+        /// <summary>
+        /// 澶囨枡琛ㄨID
+        /// </summary>
         public string MOPickList { get; set; }
-        public List<object> Lot { get; set; }
-        public int StorageType { get; set; }
+        /// <summary>
+        /// 鍙戞枡鎵规
+        /// </summary>
+        public Lot Lot { get; set; }
+        /// <summary>
+        /// 浣跨敤鐘舵�佸浐瀹氫紶4
+        /// </summary>
+        public int StorageType { get; set; } = 4;
     }
+
+    public class MOs : BaseCode { }
     #endregion
 
     #region 鍒涘缓鐢熶骇閫�鏂欏崟-鎸夎閫�鏂欐帴鍙�
@@ -402,25 +528,67 @@
     }
     public class CreateOutProdMaterialReqParam
     {
-        public List<object> POLine { get; set; }
+        /// <summary>
+        /// 鍗曟嵁鐘舵�佸浐瀹氫紶3鐩存帴鎵h处
+        /// </summary>
+        public int DocStatus { get; set; } = 3;
+        /// <summary>
+        /// 澶栧崗閲囪喘璁㈠崟鍙�
+        /// </summary>
+        public List<POLine> POLine { get; set; }
+        /// <summary>
+        /// 涓氬姟鏃ユ湡
+        /// </summary>
         public DateTime BusinessDate { get; set; }
+        /// <summary>
+        /// 棰嗘枡琛岄泦鍚�
+        /// </summary>
         public List<PickListDTOs2> PickListDTOs { get; set; }
-        public int BusinessType { get; set; }
+        /// <summary>
+        /// 鍥哄畾浼�326鍗冲叏绋嬪澶�
+        /// </summary>
+        public int BusinessType { get; set; } = 326;
+        /// <summary>
+        /// 鍙戞枡鍗曠‘璁ゆ椂闂�
+        /// </summary>
         public string BusinessCreatedOn { get; set; }
-        public int DocStatus { get; set; }
         public string OtherID { get; set; } = "WMS";
     }
 
     public class PickListDTOs2
     {
-        public List<object> Item { get; set; }
-        public List<object> IssueWh { get; set; }
-        public List<object> IssueBin { get; set; }
+        /// <summary>
+        /// 鏂欏搧缂栫爜
+        /// </summary>
+        public Item Item { get; set; }
+        /// <summary>
+        /// 棰嗘枡浠撳簱
+        /// </summary>
+        public Wh IssueWh { get; set; }
+        /// <summary>
+        /// 棰嗘枡鍌ㄤ綅
+        /// </summary>
+        public IssueBin IssueBin { get; set; }
+        /// <summary>
+        /// 瀹炲彂鏁伴噺
+        /// </summary>
         public double IssuedQty { get; set; }
+        /// <summary>
+        /// 搴斿彂鏁伴噺
+        /// </summary>
         public double IssueQty { get; set; }
-        public List<object> IssueUOM { get; set; }
+        /// <summary>
+        /// 鍙戞枡鍗曚綅鍙栧鏂欒〃鐨勫彂鏂欏崟浣岻ssueUOM
+        /// </summary>
+        public IssueUOM IssueUOM { get; set; }
+        /// <summary>
+        /// 濮斿璁㈠崟澶囨枡琛ㄨID
+        /// </summary>
         public string SCMOPickList { get; set; }
-        public List<object> Lot { get; set; }
+        /// <summary>
+        /// 鍙戞枡鎵规
+        /// </summary>
+        public Lot Lot { get; set; }
     }
     #endregion
 
@@ -431,14 +599,122 @@
     }
     public class CreateOutProdReturnOrderParam
     {
-        public List<object> POLine { get; set; }
-        public DateTime BusinessDate { get; set; }
-        public List<PickListDTOs2> PickListDTOs { get; set; }
-        public int BusinessType { get; set; }
-        public string BusinessCreatedOn { get; set; }
+        /// <summary>
+        /// 鏂欏搧
+        /// </summary>
+        public string ItemCode { get; set; }
+        /// <summary>
+        /// 閫�鏂欐暟閲�
+        /// </summary>
+        public double RecedeQty { get; set; }
+        public bool IsAutoIssued { get; set; } = true;
+        public bool IsCheckQty { get; set; } = true;
         public int DocStatus { get; set; }
+        /// <summary>
+        /// 濮斿棰嗘枡鍗曞彿
+        /// </summary>
+        public string PMIssueDocNo { get; set; }
+        /// <summary>
+        /// 濮斿棰嗘枡鍗曡鍙�
+        /// </summary>
+        public double IssueLineNum { get; set; }
         public string OtherID { get; set; } = "WMS";
     }
 
     #endregion
+
+    #region 鍒涘缓璋冨叆鍗�
+    public class CreateTransferInInput : U9CBaseInput
+    {
+        public List<CreateTransferInParam> CreateTransferInParam { get; set; }
+    }
+    public class CreateTransferInParam
+    {
+        /// <summary>
+        /// 榛樿"WMS"
+        /// </summary>
+        public string OtherID { get; set; } = "WMS";
+        /// <summary>
+        /// 鍗曟嵁鏃ユ湡
+        /// </summary>
+        public DateTime BusinessDate { get; set; }
+        /// <summary>
+        /// 鍗曟嵁绫诲瀷缂栫爜 TransIn002涓轰粨搴撹浆鍌ㄧ敤浜庤皟鎷ㄨ溅闂翠粨 TransIn003 涓哄簱浣嶈浆鍌ㄧ敤浜庢棩甯歌皟鎷ㄥ偍浣�
+        /// </summary>
+        public string TransInDocType_Code { get; set; } = "TransIn002";
+        /// <summary>
+        /// 璋冨叆鍗曡
+        /// </summary>
+        public List<TransInLines> TransInLines { get; set; }
+    }
+
+    public class TransInLines
+    {
+        /// <summary>
+        /// 璋冨叆浠撳簱
+        /// </summary>
+        public string TransInWh_Code { get; set; }
+        /// <summary>
+        /// 璋冨叆鎵瑰彿  绫诲埆涓篢ransIn002浼犵┖锛孴ransIn003鏃跺繀浼�
+        /// </summary>
+        public string LotInfo_Code { get; set; }
+        /// <summary>
+        /// 璋冨叆鍌ㄤ綅  绫诲埆涓篢ransIn002浼犵┖锛孴ransIn003鏃跺繀浼�
+        /// </summary>
+        public string TransInBinCode { get; set; }
+        /// <summary>
+        /// 璋冨叆鏂欏搧
+        /// </summary>
+        public ItemEntity ItemInfo { get; set; }
+        /// <summary>
+        /// 璋冨叆鏁伴噺
+        /// </summary>
+        public double StoreUOMQty { get; set; }
+        /// <summary>
+        /// 瀛樺偍绫诲瀷榛樿浼�4
+        /// </summary>
+        public int StorageType { get; set; }
+        /// <summary>
+        /// 璋冨叆鍗曞瓙琛岃皟鍑轰俊鎭�
+        /// </summary>
+        public List<TransInSubLines> TransInSubLines { get; set; }
+    }
+
+    public class ItemEntity
+    {
+        public string ItemCode { get; set; }
+    }
+
+
+
+    public class TransInSubLines
+    {
+        /// <summary>
+        /// 璋冨嚭缁勭粐
+        /// </summary>
+        public string TransOutOrg_Code { get; set; }
+        /// <summary>
+        /// 璋冨嚭浠撳簱
+        /// </summary>
+        public string TransOutWh_Code { get; set; }
+        /// <summary>
+        /// 璋冨嚭鍌ㄤ綅
+        /// </summary>
+        public string TransInBins { get; set; }
+        /// <summary>
+        /// 璋冨嚭鎵瑰彿
+        /// </summary>
+        public string LotInfo_Code { get; set; }
+        /// <summary>
+        /// 璋冨嚭鏁伴噺
+        /// </summary>
+        public double StoreUOMQty { get; set; }
+        /// <summary>
+        /// 瀛樺偍绫诲瀷榛樿浼�4
+        /// </summary>
+        public int StorageType { get; set; }
+    }
+    #endregion
+
+
 }

--
Gitblit v1.9.3