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 |  418 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 398 insertions(+), 20 deletions(-)

diff --git a/Tiger.Model.Net/Entitys/MES/ParameterEntity/U9CParameter.cs b/Tiger.Model.Net/Entitys/MES/ParameterEntity/U9CParameter.cs
index 19eac82..e72ed77 100644
--- a/Tiger.Model.Net/Entitys/MES/ParameterEntity/U9CParameter.cs
+++ b/Tiger.Model.Net/Entitys/MES/ParameterEntity/U9CParameter.cs
@@ -50,7 +50,21 @@
     {
         public string userId { get; set; }
         public string token { get; set; }
+        public string Data { get; set; }
         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 鍏ュ簱鍗曟帴鍙�
@@ -101,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; }
     }
@@ -118,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; }
@@ -141,7 +155,7 @@
     #endregion
 
     #region 鍗婃垚鍝佹潯鐮佺敓鎴�
-    public class BarcodeCreateByAssignQtyInput: BarcodeCreateInput
+    public class BarcodeCreateByAssignQtyInput : BarcodeCreateInput
     {
         /// <summary>
         /// 鍏ュ簱鍗曡鎬绘暟閲�
@@ -178,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; }
@@ -186,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
     {
@@ -211,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; }
     }
 
@@ -242,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>
@@ -266,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
@@ -286,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; }
     }
 
@@ -331,12 +403,318 @@
     }
     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; }
     }
 
     #endregion
+
+    #region 鍒涘缓鐢熶骇棰嗘枡鍗曟帴鍙�
+    public class CreateProdMaterialReqInput : U9CBaseInput
+    {
+        public List<CreateProdMaterialReqParam> CreateProdMaterialReqParam { get; set; }
+    }
+
+    public class CreateProdMaterialReqParam
+    {
+        /// <summary>
+        /// 鐢熶骇璁㈠崟缂栫爜
+        /// </summary>
+        public MOs MOs { get; set; }
+        /// <summary>
+        /// 棰嗘枡鍗曡闆嗗悎
+        /// </summary>
+        public List<PickListDTOs> PickListDTOs { get; set; }
+        /// <summary>
+        /// 涓氬姟绫诲瀷鏍规嵁鐢熶骇璁㈠崟瑙嗗浘鏌ヨBusinessType寰楀嚭
+        /// </summary>
+        public int BusinessType { 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
+    {
+        /// <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; }
+        /// <summary>
+        /// 鍙戞枡鍗曚綅鍙栧鏂欒〃鐨勫彂鏂欏崟浣岻ssueUOM
+        /// </summary>
+        public IssueUOM IssueUOM { get; set; }
+        /// <summary>
+        /// 澶囨枡琛ㄨID
+        /// </summary>
+        public string MOPickList { get; set; }
+        /// <summary>
+        /// 鍙戞枡鎵规
+        /// </summary>
+        public Lot Lot { get; set; }
+        /// <summary>
+        /// 浣跨敤鐘舵�佸浐瀹氫紶4
+        /// </summary>
+        public int StorageType { get; set; } = 4;
+    }
+
+    public class MOs : BaseCode { }
+    #endregion
+
+    #region 鍒涘缓鐢熶骇閫�鏂欏崟-鎸夎閫�鏂欐帴鍙�
+    public class CreateProdReturnOrderInput : U9CBaseInput
+    {
+        public List<CreateProdReturnOrderParam> CreateProdReturnOrderParam { get; set; }
+    }
+
+    public class CreateProdReturnOrderParam
+    {
+        public List<RecedeItemAndSnDTOList> RecedeItemAndSnDTOList { get; set; }
+        public bool IsAutoIssued { get; set; }
+        public string OtherID { get; set; } = "WMS";
+    }
+
+    public class RecedeItemAndSnDTOList
+    {
+        public string ItemCode { get; set; }
+        public string IssueDocNo { get; set; }
+        public double RecedeQty { get; set; }
+        public double IssueLineNum { get; set; }
+    }
+
+    #endregion
+
+    #region 鍒涘缓濮斿鐢熶骇棰嗘枡鍗�
+    public class CreateOutProdMaterialReqInput : U9CBaseInput
+    {
+        public List<CreateOutProdMaterialReqParam> CreateOutProdMaterialReqParam { get; set; }
+    }
+    public class CreateOutProdMaterialReqParam
+    {
+        /// <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; }
+        /// <summary>
+        /// 鍥哄畾浼�326鍗冲叏绋嬪澶�
+        /// </summary>
+        public int BusinessType { get; set; } = 326;
+        /// <summary>
+        /// 鍙戞枡鍗曠‘璁ゆ椂闂�
+        /// </summary>
+        public string BusinessCreatedOn { get; set; }
+        public string OtherID { get; set; } = "WMS";
+    }
+
+    public class PickListDTOs2
+    {
+        /// <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; }
+        /// <summary>
+        /// 鍙戞枡鍗曚綅鍙栧鏂欒〃鐨勫彂鏂欏崟浣岻ssueUOM
+        /// </summary>
+        public IssueUOM IssueUOM { get; set; }
+        /// <summary>
+        /// 濮斿璁㈠崟澶囨枡琛ㄨID
+        /// </summary>
+        public string SCMOPickList { get; set; }
+        /// <summary>
+        /// 鍙戞枡鎵规
+        /// </summary>
+        public Lot Lot { get; set; }
+    }
+    #endregion
+
+    #region 鍒涘缓濮斿鐢熶骇閫�鏂欏崟鎺ュ彛
+    public class CreateOutProdReturnOrderInput : U9CBaseInput
+    {
+        public List<CreateOutProdReturnOrderParam> CreateOutProdReturnOrderParam { get; set; }
+    }
+    public class CreateOutProdReturnOrderParam
+    {
+        /// <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