Selaa lähdekoodia

添加项目文件。

林豪 左 8 kuukautta sitten
vanhempi
commit
6599fb583b
100 muutettua tiedostoa jossa 5142 lisäystä ja 0 poistoa
  1. 73 0
      wms.api.sln
  2. 117 0
      wms.console/HouseConsumer.cs
  3. 72 0
      wms.console/Program.cs
  4. 8 0
      wms.console/Properties/launchSettings.json
  5. 36 0
      wms.console/Util.cs
  6. 13 0
      wms.console/appsettings.json
  7. 25 0
      wms.console/wms.console.csproj
  8. 11 0
      wms.dataservice/DataService/CPDataService.cs
  9. 12 0
      wms.dataservice/DataService/FJDataService.cs
  10. 119 0
      wms.dataservice/DataService/HJDataService.cs
  11. 99 0
      wms.dataservice/DataService/PTDataService.cs
  12. 11 0
      wms.dataservice/DataService/SXDataService.cs
  13. 10 0
      wms.dataservice/IDataSetvice/ICPDataService.cs
  14. 11 0
      wms.dataservice/IDataSetvice/IFJDataService.cs
  15. 22 0
      wms.dataservice/IDataSetvice/IHJDataService.cs
  16. 15 0
      wms.dataservice/IDataSetvice/IPTDataService.cs
  17. 10 0
      wms.dataservice/IDataSetvice/ISXDataService.cs
  18. 14 0
      wms.dataservice/wms.dataservice.csproj
  19. 11 0
      wms.dto/attribute/SwaggerIgnoreAttribute.cs
  20. 71 0
      wms.dto/const/Const.cs
  21. 1152 0
      wms.dto/const/EnumClass.cs
  22. 14 0
      wms.dto/request/cp/BoxBuildStockTransRequest.cs
  23. 26 0
      wms.dto/request/cp/ComPushApiResInfoRequest.cs
  24. 48 0
      wms.dto/request/cp/CpGetCurStockListRequest.cs
  25. 57 0
      wms.dto/request/cp/CpStockChangeRequest.cs
  26. 90 0
      wms.dto/request/cp/CpSyncMaterInfoListRequest.cs
  27. 18 0
      wms.dto/request/cp/ErrorMaterialStockOutFeedBackRequest.cs
  28. 22 0
      wms.dto/request/cp/ErrorMaterialStockOutRequest.cs
  29. 21 0
      wms.dto/request/cp/MesReleaseFlagDto.cs
  30. 26 0
      wms.dto/request/cp/MoveStockLocationFeedBackRequest.cs
  31. 76 0
      wms.dto/request/cp/PalletAutoTaskRequest.cs
  32. 25 0
      wms.dto/request/cp/PalletManualMoveTaskRequest.cs
  33. 103 0
      wms.dto/request/cp/ProductBoxDetailUploadRequest.cs
  34. 14 0
      wms.dto/request/cp/ProductStockInBackRequest.cs
  35. 37 0
      wms.dto/request/cp/SalesDocTransFeedBackRequest.cs
  36. 47 0
      wms.dto/request/cp/SalesDocTransRequest.cs
  37. 34 0
      wms.dto/request/cp/SalesLeftDocTransFeedBackRequest.cs
  38. 10 0
      wms.dto/request/cp/SpoolMaterialInfoTransRequest.cs
  39. 44 0
      wms.dto/request/cp/StockChangeFeedBackRequest.cs
  40. 45 0
      wms.dto/request/cp/StockOutRequest.cs
  41. 42 0
      wms.dto/request/cp/StockStateChangeRequest.cs
  42. 26 0
      wms.dto/request/cp/UploadUpMesRequest.cs
  43. 18 0
      wms.dto/request/cp/VerifyBoxNumRequest.cs
  44. 16 0
      wms.dto/request/cp/WcsMoveTaskRequest.cs
  45. 78 0
      wms.dto/request/cp/dto/WcsRequest.cs
  46. 70 0
      wms.dto/request/cp/dto/WebPdaRequest.cs
  47. 18 0
      wms.dto/request/fj/AllocationConveyorSortRequest.cs
  48. 11 0
      wms.dto/request/fj/AllocationWarehouseSortRequest.cs
  49. 28 0
      wms.dto/request/fj/BGradeMaterialStockOutFeedBackRequest.cs
  50. 31 0
      wms.dto/request/fj/BGradeMaterialStockOutRequest.cs
  51. 37 0
      wms.dto/request/fj/BomInfoTransRequest.cs
  52. 14 0
      wms.dto/request/fj/CurtainOrderStartCheckRequest.cs
  53. 103 0
      wms.dto/request/fj/CurtainProductionOrderRequest.cs
  54. 42 0
      wms.dto/request/fj/CurtainProductionStockOutFeedBackRequest.cs
  55. 34 0
      wms.dto/request/fj/CurtainProductionStockOutRequest.cs
  56. 39 0
      wms.dto/request/fj/ErrorMaterialStockOutFeedBackRequest.cs
  57. 37 0
      wms.dto/request/fj/FjErrorMaterialStockOutRequest.cs
  58. 81 0
      wms.dto/request/fj/FjProductionBackRequest.cs
  59. 54 0
      wms.dto/request/fj/FjStockChangeRequest.cs
  60. 35 0
      wms.dto/request/fj/GetFJCurStockListRequest.cs
  61. 75 0
      wms.dto/request/fj/ManualBuildStockTransRequest.cs
  62. 49 0
      wms.dto/request/fj/ProductionLeftFeedBackRequest.cs
  63. 74 0
      wms.dto/request/fj/SpoolMaterialInfoTransRequest.cs
  64. 40 0
      wms.dto/request/fj/StockChangeFeedBackRequest.cs
  65. 42 0
      wms.dto/request/fj/StockChangeStockInFeedBackRequest.cs
  66. 34 0
      wms.dto/request/fj/SyncMachineInfoRequest.cs
  67. 31 0
      wms.dto/request/fj/WetFormulaInfoRequest.cs
  68. 38 0
      wms.dto/request/fj/WetProductStockInFeedBackRequest.cs
  69. 46 0
      wms.dto/request/hj/AddJobRequest.cs
  70. 12 0
      wms.dto/request/hj/AddWcsMoveTaskRequest.cs
  71. 22 0
      wms.dto/request/hj/ApplyEmptySpoolRequest.cs
  72. 25 0
      wms.dto/request/hj/ApplyStockInLocRequest.cs
  73. 46 0
      wms.dto/request/hj/ApplyStockInRequest.cs
  74. 17 0
      wms.dto/request/hj/ApplyStockOutRequest.cs
  75. 40 0
      wms.dto/request/hj/ApplyStockOutTaskRequest.cs
  76. 62 0
      wms.dto/request/hj/CopperLineAgvTaskStockInToIWmsRequest.cs
  77. 82 0
      wms.dto/request/hj/CopperLineAgvTaskStockOutToIWmsRequest.cs
  78. 22 0
      wms.dto/request/hj/CopperLineAgvTaskToRcsRequest.cs
  79. 99 0
      wms.dto/request/hj/CopperLineRequest.cs
  80. 53 0
      wms.dto/request/hj/CopperLineStockInFeedBackRequest.cs
  81. 23 0
      wms.dto/request/hj/CopperLineToStockOutRequest.cs
  82. 28 0
      wms.dto/request/hj/CreateMoveWcsTaskRequest.cs
  83. 57 0
      wms.dto/request/hj/CreateStockInWcsTaskRequest.cs
  84. 74 0
      wms.dto/request/hj/CreateStockOutWcsTaskRequest.cs
  85. 40 0
      wms.dto/request/hj/DetailCodeRequest.cs
  86. 16 0
      wms.dto/request/hj/DetailRequest2Str.cs
  87. 14 0
      wms.dto/request/hj/GetBarCodeInfoRequest.cs
  88. 35 0
      wms.dto/request/hj/GetCurStockListRequest.cs
  89. 16 0
      wms.dto/request/hj/GetSysJobListRequest.cs
  90. 10 0
      wms.dto/request/hj/GetTunnelEmptyConCountRequest.cs
  91. 24 0
      wms.dto/request/hj/GetTunnelListRequest.cs
  92. 117 0
      wms.dto/request/hj/HjMaterialStockInRequest.cs
  93. 40 0
      wms.dto/request/hj/MoveStockFeedBackRequest.cs
  94. 44 0
      wms.dto/request/hj/RfidCheckDiffRequest.cs
  95. 39 0
      wms.dto/request/hj/SpecialPickMaterApplyRequest.cs
  96. 29 0
      wms.dto/request/hj/SpecialPickMaterFeedBackRequest.cs
  97. 16 0
      wms.dto/request/hj/SrmPickOutCompletedRequest.cs
  98. 50 0
      wms.dto/request/hj/StockChangeFeedBackRequest.cs
  99. 64 0
      wms.dto/request/hj/StockChangeRequest.cs
  100. 14 0
      wms.dto/request/hj/StockOutFeedBackRequest.cs

+ 73 - 0
wms.api.sln

@@ -0,0 +1,73 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.2.32317.152
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "wms.api", "wms.api\wms.api.csproj", "{1E7DF4AC-CBDC-403D-AAB4-9052B2E4F5A0}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "wms.dto", "wms.dto\wms.dto.csproj", "{D5759FC4-E48E-44F7-8438-E310F8D85CB3}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "wms.service", "wms.service\wms.service.csproj", "{992E7508-C77A-40D7-A2DE-73C3CB3BCA61}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "wms.sqlsugar", "wms.sqlsugar\wms.sqlsugar.csproj", "{55B67A19-AA9F-4C8E-9F5C-D66E4004A027}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "wms.util", "wms.util\wms.util.csproj", "{A9E41092-7425-4315-8744-84C655A0D45F}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "wms.package", "wms.package\wms.package.csproj", "{9E536B81-F8CA-4E7E-AB6E-E0937F5A43F9}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "wms.dataservice", "wms.dataservice\wms.dataservice.csproj", "{74BDF377-75EA-4496-A848-5C5F0CAF0388}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "wms.workservice", "wms.workservice\wms.workservice.csproj", "{8AF293AB-0888-4675-B30F-5EF0533FB4C7}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "wms.console", "wms.console\wms.console.csproj", "{1E8F1C32-6695-42DB-9438-C72C9A7AAB35}"
+EndProject
+Global
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
+		Debug|Any CPU = Debug|Any CPU
+		Release|Any CPU = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
+		{1E7DF4AC-CBDC-403D-AAB4-9052B2E4F5A0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{1E7DF4AC-CBDC-403D-AAB4-9052B2E4F5A0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{1E7DF4AC-CBDC-403D-AAB4-9052B2E4F5A0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{1E7DF4AC-CBDC-403D-AAB4-9052B2E4F5A0}.Release|Any CPU.Build.0 = Release|Any CPU
+		{D5759FC4-E48E-44F7-8438-E310F8D85CB3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{D5759FC4-E48E-44F7-8438-E310F8D85CB3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{D5759FC4-E48E-44F7-8438-E310F8D85CB3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{D5759FC4-E48E-44F7-8438-E310F8D85CB3}.Release|Any CPU.Build.0 = Release|Any CPU
+		{992E7508-C77A-40D7-A2DE-73C3CB3BCA61}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{992E7508-C77A-40D7-A2DE-73C3CB3BCA61}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{992E7508-C77A-40D7-A2DE-73C3CB3BCA61}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{992E7508-C77A-40D7-A2DE-73C3CB3BCA61}.Release|Any CPU.Build.0 = Release|Any CPU
+		{55B67A19-AA9F-4C8E-9F5C-D66E4004A027}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{55B67A19-AA9F-4C8E-9F5C-D66E4004A027}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{55B67A19-AA9F-4C8E-9F5C-D66E4004A027}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{55B67A19-AA9F-4C8E-9F5C-D66E4004A027}.Release|Any CPU.Build.0 = Release|Any CPU
+		{A9E41092-7425-4315-8744-84C655A0D45F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{A9E41092-7425-4315-8744-84C655A0D45F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{A9E41092-7425-4315-8744-84C655A0D45F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{A9E41092-7425-4315-8744-84C655A0D45F}.Release|Any CPU.Build.0 = Release|Any CPU
+		{9E536B81-F8CA-4E7E-AB6E-E0937F5A43F9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{9E536B81-F8CA-4E7E-AB6E-E0937F5A43F9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{9E536B81-F8CA-4E7E-AB6E-E0937F5A43F9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{9E536B81-F8CA-4E7E-AB6E-E0937F5A43F9}.Release|Any CPU.Build.0 = Release|Any CPU
+		{74BDF377-75EA-4496-A848-5C5F0CAF0388}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{74BDF377-75EA-4496-A848-5C5F0CAF0388}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{74BDF377-75EA-4496-A848-5C5F0CAF0388}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{74BDF377-75EA-4496-A848-5C5F0CAF0388}.Release|Any CPU.Build.0 = Release|Any CPU
+		{8AF293AB-0888-4675-B30F-5EF0533FB4C7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{8AF293AB-0888-4675-B30F-5EF0533FB4C7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{8AF293AB-0888-4675-B30F-5EF0533FB4C7}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{8AF293AB-0888-4675-B30F-5EF0533FB4C7}.Release|Any CPU.Build.0 = Release|Any CPU
+		{1E8F1C32-6695-42DB-9438-C72C9A7AAB35}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{1E8F1C32-6695-42DB-9438-C72C9A7AAB35}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{1E8F1C32-6695-42DB-9438-C72C9A7AAB35}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{1E8F1C32-6695-42DB-9438-C72C9A7AAB35}.Release|Any CPU.Build.0 = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(SolutionProperties) = preSolution
+		HideSolutionNode = FALSE
+	EndGlobalSection
+	GlobalSection(ExtensibilityGlobals) = postSolution
+		SolutionGuid = {5AD891A7-A985-4CBD-9C50-36F2E79D8E82}
+	EndGlobalSection
+EndGlobal

+ 117 - 0
wms.console/HouseConsumer.cs

@@ -0,0 +1,117 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Apache.NMS;
+using Apache.NMS.ActiveMQ;
+using Apache.NMS.Util;
+using Serilog;
+using wms.util.Http;
+
+namespace wms.console
+{
+    public class HouseConsumer
+    {
+        private string _queuesName;
+        private readonly IConnectionFactory _connectionFactory = null;
+        private IConnection _connection = null;
+        Apache.NMS.ISession _session = null;
+        private IMessageConsumer _consumer = null;
+        private string _clientId;
+        public HouseConsumer(string queuesName)
+        {
+            _queuesName = queuesName;
+            _clientId = _queuesName.Replace(".", "3");
+            string confuri = "";
+            switch (_queuesName)
+            {
+                case "ESB.OUT.163LFJ.Q":
+                    confuri = Util.GetSettings("MqTcpUri:fjurl");
+                    break;
+                case "ESB.OUT.163KSX.Q":
+                    confuri = Util.GetSettings("MqTcpUri:sxurl");
+                    break;
+                case "ESB.OUT.163JCP.Q":
+                    confuri = Util.GetSettings("MqTcpUri:cpurl");
+                    break;
+                case "ESB.OUT.163IPT.Q":
+                    confuri = Util.GetSettings("MqTcpUri:cpurl");
+                    break;
+                case "ESB.OUT.163DHJ.Q":
+                    confuri = Util.GetSettings("MqTcpUri:pturl");
+                    break;
+                default:
+                    break;
+            }
+
+            //confuri = Util.GetSettings("MqTcpUri:fjurl");
+            //Uri _uri = new Uri(String.Concat("activemq: failover:(tcp://esb-pre.zt.net.cn:61616?wireFormat.maxInactivityDuration-0)"));
+            Uri _uri = new Uri(String.Concat("activemq:failover:(" + confuri + "?wireFormat.maxInactivityDuration=3000)?randomize=false"));
+            _connectionFactory = new ConnectionFactory(_uri);
+        }
+
+        public void CreateConsumer()
+        {
+            try
+            {
+                _connection = _connectionFactory.CreateConnection("esbadminrw", "esbadminrw");//创建连接
+                _connection.ClientId = _clientId;
+                _connection.ExceptionListener += _connection_ExceptionListener;
+                _session = _connection.CreateSession();
+                _connection.Start();//启动连接
+             
+                IDestination destination = SessionUtil.GetDestination(_session, _queuesName);
+                _consumer = _session.CreateConsumer(destination);
+                _consumer.Listener += (IMessage message) =>
+                {
+                    ITextMessage msg = (ITextMessage)message;
+                    Log.Information("接收消息:" + msg.Text);
+                    foreach (var key in msg.Properties.Keys.Cast<string>())
+                    {
+                        var keyvalue = message.Properties[key];
+                        if (keyvalue != null && key == "serviceCode")
+                        {
+                            var methodcode = Util.GetSettings("ApiUrl:" + keyvalue.ToString());
+                            if (methodcode != null)
+                            {
+                                try
+                                {
+                                    Log.Information("消费post调用地址:" + Util.GetSettings("ApiUrl:" + keyvalue.ToString()) + "|请求参数:" + msg.Text);
+                                    var res = HttpUtil.PostRequest(Util.GetSettings("ApiUrl:" + keyvalue.ToString()), msg.Text, 30000);
+                                    Log.Information("消费post调用返回:" + res);
+                                }
+                                catch (Exception ex)
+                                {
+                                    Log.Information("Post请求异常:" + ex + "--------------地址:" + methodcode + "----------------请求参数:" + msg.Text);
+                                }
+
+                            }
+                            Log.Information("接收消息:" + message.Properties[key]);
+                        }
+                    }
+                };
+                Console.WriteLine("消费者启动成功:" + _connection.ClientId);
+            }
+            catch (Exception ex)
+            {
+                Log.Information("消费者创建异常:" + ex);
+            }
+        }
+
+        public void Stop()
+        {
+            
+            _session.Close();
+            _connection.Stop();
+            _connection.Close();
+            _connection.Dispose();
+        }
+        private void _connection_ExceptionListener(Exception exception)
+        {
+            //Console.WriteLine("消费者发生异常:{0}", exception);
+            Log.Information("消费者发生异常:{0}", exception);
+        }
+    }
+
+}

+ 72 - 0
wms.console/Program.cs

@@ -0,0 +1,72 @@
+using Apache.NMS;
+using Apache.NMS.ActiveMQ;
+using Apache.NMS.Util;
+using Serilog;
+using System.Runtime.InteropServices;
+using wms.console;
+
+
+
+Console.WriteLine("主程序开始执行");
+// See https://aka.ms/new-console-template for more information
+Log.Logger = new LoggerConfiguration()
+                       .MinimumLevel.Information()
+                       //.WriteTo.Console()
+                       .WriteTo.File($"logs\\log.txt",
+                           rollingInterval: RollingInterval.Day,
+                           rollOnFileSizeLimit:true,
+                           shared:true,
+                           fileSizeLimitBytes: 102400000,
+                           outputTemplate: "{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz} {SourceContext} {ThreadId} [{Level:u3}] {Message:lj}{NewLine}{Exception}"
+                             )
+                       .CreateLogger();
+
+
+string fjqueuesName = "ESB.OUT.163LFJ.Q";//分拣队列
+string sxqueuesName = "ESB.OUT.163KSX.Q";//时效队列
+string cpqueuesName = "ESB.OUT.163JCP.Q";//成品队列
+string ptqueuesName = "ESB.OUT.163IPT.Q";//盘条队列
+string hjqueuesName = "ESB.OUT.163DHJ.Q";//盘条队列
+
+
+var fjcon = new HouseConsumer(fjqueuesName);
+var sxcon = new HouseConsumer(sxqueuesName);
+var cpcon = new HouseConsumer(cpqueuesName);
+var ptcon = new HouseConsumer(ptqueuesName);
+var hjcon = new HouseConsumer(hjqueuesName);
+
+fjcon.CreateConsumer();
+sxcon.CreateConsumer();
+cpcon.CreateConsumer();
+ptcon.CreateConsumer();
+hjcon.CreateConsumer();
+
+Console.WriteLine("主程序启动完成");
+
+
+Timer timer = new Timer(RestartProgram, null, TimeSpan.FromSeconds(0), TimeSpan.FromSeconds(1));
+
+
+AppDomain.CurrentDomain.ProcessExit += (object? sender, EventArgs e) => {
+    Log.Information("控制台关闭");
+    fjcon?.Stop();
+    sxcon?.Stop();
+    cpcon?.Stop();
+    ptcon?.Stop();
+    hjcon?.Stop();
+};
+while (!Console.ReadLine().ToUpper().Contains("CLOSE")) continue;
+Environment.Exit(0);
+
+
+
+static void RestartProgram(object state)
+{
+    var curtime = DateTime.Now;
+    if (curtime.DayOfWeek ==  DayOfWeek.Wednesday && curtime.Hour == 10 && curtime.Minute == 0 && curtime.Second == 0)
+    {
+        Console.WriteLine("消息接收程序自动停止");
+        Environment.Exit(0);
+    }
+}
+

+ 8 - 0
wms.console/Properties/launchSettings.json

@@ -0,0 +1,8 @@
+{
+  "profiles": {
+    "WSL": {
+      "commandName": "WSL2",
+      "distributionName": ""
+    }
+  }
+}

+ 36 - 0
wms.console/Util.cs

@@ -0,0 +1,36 @@
+using Microsoft.Extensions.Configuration;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace wms.console
+{
+    public  class Util
+    {
+        /// <summary>
+        /// 读取appsettings.json
+        /// </summary>
+        /// <param name="key"></param>
+        /// <returns></returns>
+        public static string GetSettings(string key)
+        {
+            var builder = new ConfigurationBuilder()
+            .SetBasePath(Directory.GetCurrentDirectory())
+            .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true);
+
+            IConfigurationRoot configuration = builder.Build();
+            return configuration[key];
+        }
+        /// <summary>
+        /// 读取App.config
+        /// </summary>
+        /// <param name="key"></param>
+        /// <returns></returns>
+        public static string GetAppSettings(string key)
+        {
+            return System.Configuration.ConfigurationManager.AppSettings[key];
+        }
+    }
+}

+ 13 - 0
wms.console/appsettings.json

@@ -0,0 +1,13 @@
+{
+  "MqTcpUri": {
+    "fjurl": "tcp://172.27.8.100:61616", //测试环境
+    "sxurl": "tcp://172.27.8.100:61616", //测试环境
+    "hjurl": "tcp://172.27.8.100:61616", //测试环境
+    "pturl": "tcp://172.27.8.100:61616", //测试环境
+    "cpurl": "tcp://172.27.8.100:61616" //测试环境
+  },
+  "ApiUrl": {
+    "1620163L02": "http://10.30.44.4:8066/api/Fj/CurtainProductionOrder",
+
+  }
+}

+ 25 - 0
wms.console/wms.console.csproj

@@ -0,0 +1,25 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <OutputType>Exe</OutputType>
+    <TargetFramework>net6.0</TargetFramework>
+    <ImplicitUsings>enable</ImplicitUsings>
+    <Nullable>enable</Nullable>
+  </PropertyGroup>
+
+  <ItemGroup>
+    <PackageReference Include="Apache.NMS.ActiveMQ.NetCore" Version="1.7.3" />
+    <PackageReference Include="Serilog" Version="2.12.0" />
+  </ItemGroup>
+
+  <ItemGroup>
+    <ProjectReference Include="..\wms.util\wms.util.csproj" />
+  </ItemGroup>
+
+  <ItemGroup>
+    <None Update="appsettings.json">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
+  </ItemGroup>
+
+</Project>

+ 11 - 0
wms.dataservice/DataService/CPDataService.cs

@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+using wms.dataservice.IDataSetvice;
+
+namespace wms.dataservice.DataService
+{
+    public class CPDataService: ICPDataService
+    {
+    }
+}

+ 12 - 0
wms.dataservice/DataService/FJDataService.cs

@@ -0,0 +1,12 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+using wms.dataservice.IDataSetvice;
+
+namespace wms.dataservice.DataService
+{
+    public class FJDataService: IFJDataService
+    {
+
+    }
+}

+ 119 - 0
wms.dataservice/DataService/HJDataService.cs

@@ -0,0 +1,119 @@
+using SqlSugar;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using wms.dataservice.IDataSetvice;
+using wms.dto;
+using wms.dto.request;
+using wms.dto.request.hj.dto;
+using wms.sqlsugar;
+using wms.sqlsugar.model.hj;
+
+namespace wms.dataservice.DataService
+{
+    public class HJDataService: IHJDataService
+    {
+        Repository<hjBaseWareLocation> _baseWareLocationrepository => new Repository<hjBaseWareLocation>();
+        Repository<hjBillDocument> _billDocument => new Repository<hjBillDocument>();
+
+        /// <summary>
+        /// 二升位有出库任务的一升位有货(无任务)货位
+        /// </summary>
+        /// <param name="reqEntity"></param>
+        /// <returns></returns>
+        public List<hjBaseWareLocation> GetLocationDept1WithDept2Stock(ApplyStockOutRequest reqEntity)
+        {
+            //var list = _baseWareLocationrepository.Context.Queryable<hjBaseWareLocation, hjBaseWareLocation, hjBaseEquipment>((location1, location2, equipment) => new object[] {
+            //     JoinType.Inner,location1.ShelfCode == location2.ShelfCode && location1.LogicCol == location2.LogicCol && location1.LogicLayer == location2.LogicLayer && location1.ZoneId == location2.ZoneId,
+            //     JoinType.Inner,house.Id  == equipment.WarehouseId && location1.Tunnel == equipment.Tunnel && equipment.EquipType == BaseDictionaryConst.EquipType_PlierCode
+            //     })
+            //   .Where((location1, zone, house, location2, equipment) => location1.Status == 1 && location1.IsDelete == 0 && location2.Status == 1 && location2.IsDelete == 0 && zone.IsDelete == 0 && zone.Status == 1 && house.IsDelete == 0 && house.Status == 1)
+            //   .Where((location1, zone, house, location2, equipment) => location1.LocationType == DictionaryConst.LocationTypeStorageCode && location1.LocationState == DictionaryConst.LocationStateStockCode && (string.IsNullOrEmpty(location1.LocationLock) || location1.LocationLock == DictionaryConst.LocationLockNoneCode))
+            //   .Where((location1, zone, house, location2, equipment) => location2.LocationType == DictionaryConst.LocationTypeStorageCode && location2.LocationState == DictionaryConst.LocationStateStockCode && location2.LocationLock == DictionaryConst.LocationLockStockOutCode)
+            //   .WhereIF(!string.IsNullOrEmpty(reqEntity.LocationType), (location1, zone, house, location2, equipment) => reqEntity.LocationType == location1.LocationType)
+            //   .WhereIF(!string.IsNullOrEmpty(reqEntity.Tunnel), (location1, zone, house, location2, equipment) => location1.Tunnel == reqEntity.Tunnel)
+            //   .WhereIF(!string.IsNullOrEmpty(reqEntity.Size), (location1, zone, house, location2, equipment) => int.Parse(location1.Size) >= int.Parse(reqEntity.Size))
+            //   .WhereIF(reqEntity.ZoneId > 0, (location1, zone, house, location2, equipment) => zone.Id == reqEntity.ZoneId)
+            //   .WhereIF(reqEntity.WarehouseId > 0, (location1, zone, house, location2, equipment) => zone.WarehouseId == reqEntity.WarehouseId)
+            //   .WhereIF(reqEntity.LocationId > 0, (location1, zone, house, location2, equipment) => location1.Id == reqEntity.LocationId)
+            //   .WhereIF(!string.IsNullOrEmpty(reqEntity.ShelfCode), (location1, zone, house, location2, equipment) => location1.ShelfCode == reqEntity.ShelfCode)
+            //   .WhereIF(reqEntity.IsExceptErrorPlier, (location1, zone, house, location2, equipment) => equipment.EquipState != BaseDictionaryConst.PlierRuningState_ErrorCode)
+            //.Select((location1, zone, house, location2, equipment) => location1);
+            // return list.ToList();
+            return null;
+        }
+        public (List<DocumentsResponse>, int) GetPageDocumentsList(DocumentsRequest request)
+        {
+            int count = 0;
+            var list = _billDocument.Context.Queryable<BillDocsinfo, BaseWarehouse>((document, house) => new object[]
+            {
+                JoinType.Left, document.WarehouseId == house.Id
+            })
+            .WhereIF(!string.IsNullOrEmpty(request.DocsNo), (document, house) => document.DocsNo.Contains(request.DocsNo))
+            .WhereIF(!string.IsNullOrEmpty(request.ReqNo), (document, house) => document.ReqNo.Contains(request.ReqNo))
+            .WhereIF(!string.IsNullOrEmpty(request.StateCode), (document, house) => document.StateNum == int.Parse(request.StateCode))
+            .WhereIF(!string.IsNullOrEmpty(request.TypeCode), (document, house) => document.TypeNum == int.Parse(request.TypeCode))
+            .Select((document, house) => new DocumentsResponse()
+            {
+                Id = document.Id,
+                WarehouseCode = house.Code,
+                DocNo = document.DocsNo,
+                ReqNo = document.ReqNo,
+                TypeCode = document.TypeNum.ToString(),
+                StateCode = document.StateNum.ToString(),
+                DownQty = document.DownQty,
+                //DownErrReason = document.DownErrReason,
+                //Remark = document.Remark,
+                AddWho = document.AddWho,
+                EditWho = document.EditWho,
+                AddTime = document.AddTime,
+                EditTime = document.EditTime
+            })
+            .ToPageList(request.PageIndex, request.PageSize, ref count);
+            //list = list.Skip((request.PageIndex - 1) * request.PageSize).Take(request.PageSize).ToList();
+            return (list.ToList(), count);
+        }
+        public List<string> GetStockByEquip(string code)
+        {
+            var list = _baseWareLocationrepository.Context.Queryable<hjBaseWareLocation, hjBillContainer>((location, stock) => new object[]
+            {
+                JoinType.Inner, stock.ContGrpId == location.ContGrpID,
+            })
+            .Where((location, stock) => stock.ExecState == InvState.InvEcecState_BuildUp.GetHashCode())
+            .WhereIF(!string.IsNullOrEmpty(code), (location, stock) => location.Code.Contains(code))
+            .Select((location, stock) => stock.HWBarCode).ToList();
+            return list;
+        }
+        public (List<DocumentsdetailList>, int) GetDocumentDetailListByDocsNo(DocumentsRequest request)
+        {
+            int count = 0;
+            var list = _billDocument.Context.Queryable<hjBillDocument, hjBillBarcode, hjBaseMater, hjBillContainer, hjBaseWareLocation>((document, barcode, mater, container, location) => new object[]
+            {
+                JoinType.Inner, document.DocNo == barcode.InDocsNo,
+                JoinType.Inner, barcode.MatId == mater.Id,
+                JoinType.Inner, barcode.RFIDBarCode == container.RFIDBarCode,
+                JoinType.Inner, container.ContGrpId == location.ContGrpID
+            })
+            .Where((document, barcode, mater, container, location) => container.ExecState == InvState.InvEcecState_In.GetHashCode() && location.LocationState == LocationState.LocationState_Full.GetHashCode()
+             )
+            .WhereIF(!string.IsNullOrEmpty(request.DocsNo), (document, barcode, mater, container, location) => document.DocNo.Contains(request.DocsNo))
+            .WhereIF(!string.IsNullOrEmpty(request.Rfid), (document, barcode, mater, container, location) => container.RFIDBarCode.Contains(request.Rfid))
+            .WhereIF(!string.IsNullOrEmpty(request.location), (document, barcode, mater, container, location) => location.Code.Contains(request.location))
+            .Select((document, barcode, mater, container, location) => new DocumentsdetailList()
+            {
+                WarehouseCode = location.WareCode,
+                MatCode = mater.Code,
+                MatName = mater.Name,
+                Location = location.Code,
+                RFIDBarCode = barcode.RFIDBarCode,
+                HWSpec = barcode.HWSpec,
+                IsFast = barcode.IsFast,
+                Grade = barcode.Grade
+            })
+            .ToPageList(request.PageIndex, request.PageSize, ref count);
+            //list = list.Skip((request.PageIndex - 1) * request.PageSize).Take(request.PageSize).ToList();
+            return (list.ToList(), count);
+        }
+    }
+}

+ 99 - 0
wms.dataservice/DataService/PTDataService.cs

@@ -0,0 +1,99 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+using wms.dataservice.IDataSetvice;
+using wms.sqlsugar.model.pt;
+using wms.sqlsugar;
+using SqlSugar;
+using wms.dto.request.pt.dto;
+using wms.dto.response.pt.dto;
+using wms.dto;
+using System.Linq;
+
+namespace wms.dataservice.DataService
+{
+    public class PTDataService: IPTDataService
+    {
+        Repository<ptBaseWareLocation> _baseWareLocationrepository => new Repository<ptBaseWareLocation>();
+        Repository<ptBillDocsinfo> _billDocument => new Repository<ptBillDocsinfo>();
+
+        public List<string> GetStockByEquip(string code)
+        {
+            var list = _baseWareLocationrepository.Context.Queryable<ptBaseWareLocation, ptBillInvnow>((location, stock) => new object[]
+            {
+                JoinType.Inner, stock.ContGrpId == location.ContGrpId,
+            })
+            .Where((location, stock) => stock.InvStateCode == InvState.InvEcecState_BuildUp.ToString())
+            .WhereIF(!string.IsNullOrEmpty(code), (location, stock) => location.Code.Contains(code))
+            .Select((location, stock) => stock.HWBarCode).ToList();
+            return list;
+        }
+        public (List<PtDocumentsResponse>, int) GetPageDocumentsList(PtDocumentsRequest request)
+        {
+            int count = 0;
+            var list = _billDocument.Context.Queryable<ptBillDocsinfo, ptBaseWarehouse>((document, house) => new object[]
+            {
+                JoinType.Left, document.WarehouseId == house.Id
+            })
+            .WhereIF(!string.IsNullOrEmpty(request.DocsNo), (document, house) => document.DocsNo.Contains(request.DocsNo))
+            .WhereIF(!string.IsNullOrEmpty(request.ReqNo), (document, house) => document.ReqNo.Contains(request.ReqNo))
+            .WhereIF(!string.IsNullOrEmpty(request.StateCode), (document, house) => document.StateNum == int.Parse(request.StateCode))
+            .WhereIF(!string.IsNullOrEmpty(request.TypeCode), (document, house) => document.Type == request.TypeCode)
+            .Select((document, house) => new PtDocumentsResponse()
+            {
+                Id = document.Id,
+                WarehouseCode = house.Code,
+                DocNo = document.DocsNo,
+                ReqNo = document.ReqNo,
+                TypeCode = document.Type.ToString(),
+                StateCode = document.StateNum.ToString(),
+                DownQty = document.DownQty,
+                //DownErrReason = document.DownErrReason,
+                //Remark = document.Remark,
+                AddWho = document.AddWho,
+                EditWho = document.EditWho,
+                AddTime = document.AddTime,
+                EditTime = document.EditTime
+            })
+            .ToPageList(request.PageIndex, request.PageSize, ref count);
+            //list = list.Skip((request.PageIndex - 1) * request.PageSize).Take(request.PageSize).ToList();
+            return (list.ToList(), count);
+        }
+        public (List<PtDocumentsdetailList>, int) GetDocumentDetailListByDocsNo(PtDocumentsRequest request)
+        {
+            int count = 0;
+            var list = _billDocument.Context.Queryable<ptBillDocument, ptBillBarcode, ptBaseMater, ptBillInvnow, ptBaseWareLocation>((document, barcode, mater, container, location) => new object[]
+            {
+                JoinType.Inner, document.DocNo == barcode.InDocsNo,
+                JoinType.Inner, barcode.MatId == mater.Id,
+                JoinType.Inner, barcode.RFIDBarCode == container.RFIDBarCode,
+                JoinType.Inner, container.ContGrpId == location.ContGrpId
+            })
+            .Where((document, barcode, mater, container, location) => container.InvStateCode == InvState.InvEcecState_In.ToString() && location.StateNum == LocationState.LocationState_Full.GetHashCode()
+            )
+            .WhereIF(!string.IsNullOrEmpty(request.DocsNo), (document, barcode, mater, container, location) => document.DocNo.Contains(request.DocsNo))
+            .WhereIF(!string.IsNullOrEmpty(request.Rfid), (document, barcode, mater, container, location) => container.RFIDBarCode.Contains(request.Rfid))
+            .WhereIF(!string.IsNullOrEmpty(request.location), (document, barcode, mater, container, location) => location.Code.Contains(request.location))
+            .Select((document, barcode, mater, container, location) => new PtDocumentsdetailList()
+            {
+                WarehouseCode = location.WarehouseCode,
+                MatCode = mater.Code,
+                MatName = mater.Name,
+                Location = location.Code,
+                RFIDBarCode = barcode.RFIDBarCode,
+                RodBarCode = container.RodBarCode,
+                IsFast = barcode.IsFast,
+                InvBarCode = container.InvBarCode,
+                BoilerNo = container.BoilerNo,
+                PackNo = container.PackNo,
+                ProductTime = barcode.ProductTime,
+                CaQty = barcode.CaQty,
+                State = container.ExecStateCode,
+                Qty = barcode.TotalWtQty
+            })
+            .ToPageList(request.PageIndex, request.PageSize, ref count);
+            //list = list.Skip((request.PageIndex - 1) * request.PageSize).Take(request.PageSize).ToList();
+            return (list.ToList(), count);
+        }
+    }
+}

+ 11 - 0
wms.dataservice/DataService/SXDataService.cs

@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+using wms.dataservice.IDataSetvice;
+
+namespace wms.dataservice.DataService
+{
+    public class SXDataService: ISXDataService
+    {
+    }
+}

+ 10 - 0
wms.dataservice/IDataSetvice/ICPDataService.cs

@@ -0,0 +1,10 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dataservice.IDataSetvice
+{
+    public interface ICPDataService
+    {
+    }
+}

+ 11 - 0
wms.dataservice/IDataSetvice/IFJDataService.cs

@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dataservice.IDataSetvice
+{
+    public interface IFJDataService
+    {
+
+    }
+}

+ 22 - 0
wms.dataservice/IDataSetvice/IHJDataService.cs

@@ -0,0 +1,22 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+using wms.dto.request;
+using wms.dto.request.hj.dto;
+using wms.sqlsugar.model.hj;
+
+namespace wms.dataservice.IDataSetvice
+{
+    public interface IHJDataService
+    {
+        public List<hjBaseWareLocation> GetLocationDept1WithDept2Stock(ApplyStockOutRequest reqEntity);
+        /// <summary>
+        /// 获取单据集合
+        /// </summary>
+        /// <param name="request"></param>
+        /// <returns></returns>
+        (List<DocumentsResponse>, int) GetPageDocumentsList(DocumentsRequest request);
+        List<string> GetStockByEquip(string code);
+        (List<DocumentsdetailList>, int) GetDocumentDetailListByDocsNo(DocumentsRequest request);
+    }
+}

+ 15 - 0
wms.dataservice/IDataSetvice/IPTDataService.cs

@@ -0,0 +1,15 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+using wms.dto.request.pt.dto;
+using wms.dto.response.pt.dto;
+
+namespace wms.dataservice.IDataSetvice
+{
+    public interface IPTDataService
+    {
+        List<string> GetStockByEquip(string code);
+        (List<PtDocumentsResponse>, int) GetPageDocumentsList(PtDocumentsRequest request);
+        (List<PtDocumentsdetailList>, int) GetDocumentDetailListByDocsNo(PtDocumentsRequest request);
+    }
+}

+ 10 - 0
wms.dataservice/IDataSetvice/ISXDataService.cs

@@ -0,0 +1,10 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dataservice.IDataSetvice
+{
+    public class ISXDataService
+    {
+    }
+}

+ 14 - 0
wms.dataservice/wms.dataservice.csproj

@@ -0,0 +1,14 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <TargetFramework>netstandard2.1</TargetFramework>
+    <Nullable>enable</Nullable>
+  </PropertyGroup>
+
+  <ItemGroup>
+    <ProjectReference Include="..\wms.dto\wms.dto.csproj" />
+    <ProjectReference Include="..\wms.package\wms.package.csproj" />
+    <ProjectReference Include="..\wms.sqlsugar\wms.sqlsugar.csproj" />
+  </ItemGroup>
+
+</Project>

+ 11 - 0
wms.dto/attribute/SwaggerIgnoreAttribute.cs

@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.attribute
+{
+    [AttributeUsage(AttributeTargets.Field | AttributeTargets.Property)]
+    public class SwaggerIgnoreAttribute : Attribute
+    {
+    }
+}

+ 71 - 0
wms.dto/const/Const.cs

@@ -0,0 +1,71 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto
+{
+    public class Const
+    {
+        /// <summary>
+        /// MES基础数据数据同步增量类型-物料
+        /// </summary>
+        public const string MESMaterialInitIncrement = "MESMaterialInitIncrement";
+        /// <summary>
+        /// 任务组名
+        /// </summary>
+        public static readonly string JobGroupName = "DefaultGroup";
+        /// <summary>
+        /// 触发器组名
+        /// </summary>
+        public static readonly string TiggerGroupName = "DefaultGroupTrigger";
+
+
+        /// <summary>
+        /// 合金库接驳口类型
+        /// </summary>
+        public const string HJLocPortType = "HJLocPortType";
+        public const int Zero = 0;
+        public const int One = 1;
+        public const int MinOne = -1;
+        /// <summary>
+        /// 合金仓库
+        /// </summary>
+        public const string HjWareHouse = "";
+        /// <summary>
+        /// 盘条仓库
+        /// </summary>
+        public const string PtWareHouse = "pthouse";
+        /// <summary>
+        /// 成品仓库
+        /// </summary>
+        public const string CpWareHouse = "cphouse";
+        /// <summary>
+        /// 二楼出库站台设备号,手动出库使用,用于区分一、二楼任务
+        /// </summary>
+        public static readonly string[] FloorEquip = { "1022", "1024", "1026" };
+        /// <summary>
+        /// 生产叫料区6个缓存架
+        /// </summary>
+        public const string ProductType = "ProductPinKu";
+        /// <summary>
+        /// 盘条库前22个缓存区
+        /// </summary>
+        public const string PinKu_22Type = "22PinKu";
+        /// <summary>
+        /// 成品库请求生成入库任务设备常量
+        /// </summary>
+        public static readonly string[] CpTaskInEquip = { "8277", "8262", "8270", "8120" };
+        /// <summary>
+        /// 成品人工出库口
+        /// </summary>
+        public static readonly string[] SouthOutEquip = { "8278", "8269", "8263", "8257", "8087", "8028", "8094", "8088" };
+        /// <summary>
+        /// 盘条平库
+        /// </summary>
+        public const string PtPinKuhouseType = "Pinku";
+        /// <summary>
+        /// 成品库母托盘类型
+        /// </summary>
+        public const string TrayType = "TPC";
+    }
+}

+ 1152 - 0
wms.dto/const/EnumClass.cs

@@ -0,0 +1,1152 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Text;
+
+namespace wms.dto
+{
+    public class EnumClass
+    { 
+
+    
+    }
+    /// <summary>
+    /// 货位类型
+    /// </summary>
+    public enum LocationType
+    {
+        /// <summary>
+        /// 立库货位
+        /// </summary>
+        LocationType_StorageLocation = 1,
+        /// <summary>
+        /// 平库货位
+        /// </summary>
+        LocationType_GroudLocation = 2,
+        /// <summary>
+        /// 虚拟货位
+        /// </summary>
+        LocationType_VirtualLocation1 = 3,
+    }
+    /// <summary>
+    /// 货位是否启用
+    /// </summary>
+    public enum LocationStop
+    {
+        /// <summary>
+        /// 启用
+        /// </summary>
+        LocationInvoke = 0,
+        /// <summary>
+        /// 停用
+        /// </summary>
+        LocationStopped = 1
+    }
+    /// <summary>
+    /// 货位状态
+    /// </summary>
+    public enum LocationState
+    {
+        /// <summary>
+        /// 货位空
+        /// </summary>
+        LocationState_Empty = 1,
+        /// <summary>
+        /// 货位有货
+        /// </summary>
+        LocationState_Full = 2,
+        /// <summary>
+        /// 入库锁
+        /// </summary>
+        LocationState_StockIn = 3,
+        /// <summary>
+        /// 出库锁
+        /// </summary>
+        LocationState_StockOut = 4,
+        /// <summary>
+        /// 移库锁
+        /// </summary>
+        LocationState_StockMove = 5,
+    }
+
+
+    public enum ResponseStatusCodeEnum
+    {
+        /// <summary>
+        /// 成功
+        /// </summary>
+        [Description("成功")]
+        Sucess = 200,
+
+        /// <summary>
+        /// 已存在
+        /// </summary>
+        [Description("已存在")]
+        Exist = 201,
+
+        /// <summary>
+        /// 执行成功但未取得任何数据
+        /// </summary>
+        [Description("执行成功但未取得任何数据")]
+        NoResult = 202,
+
+        /// <summary>
+        /// 参数错误
+        /// </summary>
+        [Description("参数错误")]
+        ErrParam = 203,
+        /// <summary>
+        /// 语法异常
+        /// </summary>
+        [Description("语法异常")]
+        InnerServerErr = 204,
+
+        /// <summary>
+        /// 参数不可为空
+        /// </summary>
+        [Description("参数不可为空")]
+        ErrParamNotNull = 205,
+
+        /// <summary>
+        /// 失败
+        /// </summary>
+        [Description("失败")]
+        Fail = 206,
+        /// <summary>
+        /// 账号密码错误或账号不存在
+        /// </summary>
+        [Description("账号密码错误或账号不存在")]
+        AccountError = 1001,
+
+        /// <summary>
+        /// 数据保存失败
+        /// </summary>
+        [Description("数据保存失败")]
+        DataSaveErr = 1002,
+
+        /// <summary>
+        /// 没有传过账凭证号
+        /// </summary>
+        [Description("没有传过账凭证号")]
+        NotReqId = 1003,
+
+
+        /// <summary>
+        /// 仓库编码不存在
+        /// </summary>
+        [Description("仓库编码不存在")]
+        WarehouseCodeNotExist = 2001,
+        /// <summary>
+        /// 容器码不能为空
+        /// </summary>
+        [Description("容器码不能为空")]
+        ContainerCodeNotEmpty = 2002,
+        /// <summary>
+        /// 该托盘号已在库中,请检查托盘号是否贴重复
+        /// </summary>
+        [Description("该托盘号已在库中,请检查托盘号是否贴重复")]
+        BarcodeContainerRepeat = 2003,
+        /// <summary>
+        /// 物料条码重复组盘
+        /// </summary>
+        [Description("物料条码重复组盘")]
+        GroupStockDetailMaterialBarCodeExist = 2004,
+        /// <summary>
+        /// 物料编码信息不存在
+        /// </summary>
+        [Description("物料编码信息不存在")]
+        MaterInfoNotExist = 2005,
+        /// <summary>
+        /// 不存在该任务
+        /// </summary>
+        [Description("不存在该任务")]
+        WcsTaskNotExist = 2006,
+        /// <summary>
+        /// 组盘信息不存在
+        /// </summary>
+        [Description("组盘信息不存在")]
+        StockNotExist = 2007,
+        /// <summary>
+        /// 没有可用库位
+        /// </summary>
+        [Description("没有可用库位")]
+        NotEnoughLocation = 2008,
+        /// <summary>
+        /// 库区编码不存在
+        /// </summary>
+        [Description("库区编码不存在")]
+        WareZoneCodeNotExist = 2009,
+        /// <summary>
+        /// 货位编码不存在
+        /// </summary>
+        [Description("货位编码不存在")]
+        WareLocationCodeNotExist = 2010,
+        /// <summary>
+        /// 物料编码不存在
+        /// </summary>
+        [Description("物料编码不存在")]
+        BaseMaterCodeNotExist = 2011,
+        /// <summary>
+        /// 单位编码不存在
+        /// </summary>
+        [Description("单位编码不存在")]
+        BaseUnitCodeNotExist = 2012,
+        /// <summary>
+        /// 条码不存在
+        /// </summary>
+        [Description("条码不存在")]
+        BaseBarcodeNotExist = 2013,
+        /// <summary>
+        /// 明细数据必须传参
+        /// </summary>
+        [Description("明细数据必须传参")]
+        DocDetailNotExist = 2014,
+     
+        /// <summary>
+        /// 当前组盘状态不是已组盘,不允许取消
+        /// </summary>
+        [Description("当前组盘状态不是已组盘,不允许取消")]
+        StockStateNotBuildUp = 2015,
+        /// <summary>
+        /// 当前任务是已完成或已取消状态
+        /// </summary>
+        [Description("当前任务是已完成或已取消状态")]
+        WcsTaskStateIsComplete = 2016,
+        /// <summary>
+        /// 组盘状态是已出库或已入库
+        /// </summary>
+        [Description("组盘状态是已出库或已入库")]
+        StockStateFail = 2017,
+        /// <summary>
+        /// 当前入库任务还未分配货位,不允许完成
+        /// </summary>
+        [Description("当前入库任务还未分配货位,不允许完成")]
+        InTaskNotLocation = 2018,
+        /// <summary>
+        /// 当前任务不是新建状态,只能取消新建状态的任务
+        /// </summary>
+        [Description("当前任务不是新建状态,只能取消新建状态的任务")]
+        WcsTaskStateNotCreate = 2019,
+        /// <summary>
+        /// 单据不存在
+        /// </summary>
+        [Description("单据不存在")]
+        DocNoCodeNotExist = 2019,
+        /// <summary>
+        /// 单据状态不是新增或执行,不允许结单
+        /// </summary>
+        [Description("单据状态不是新增或执行,不允许结单")]
+        DocumentStateNotFinish = 2020,
+        /// <summary>
+        /// 单据存在新建或执行中的任务,不允许结单
+        /// </summary>
+        [Description("单据存在新建或执行中的任务,不允许结单")]
+        IsTaskNotFinish = 2021,
+        /// <summary>
+        /// 存在进行中任务,不允许解绑
+        /// </summary>
+        [Description("存在进行中任务,不允许解绑")]
+        IsTaskNotUnbounding = 2022,
+        /// <summary>
+        /// 没有当前设备信息,请进行维护
+        /// </summary>
+        [Description("没有当前设备信息,请进行维护")]
+        EquipInfoNotExist = 2023,
+        /// <summary>
+        /// 存在当前任务
+        /// </summary>
+        [Description("存在当前任务")]
+        WcsTaskExist = 2024,
+        /// <summary>
+        /// 组盘状态不对,请检查当前的组盘状态
+        /// </summary>
+        [Description("组盘状态不对,请检查当前的组盘状态")]
+        RFIDStockStateFail = 2025,
+
+        /// <summary>
+        /// 该接口只允许出库任务调用
+        /// </summary>
+        [Description("该接口只允许出库任务调用")]
+        OnlyStockOutAvil = 2026,
+        /// <summary>
+        /// 当前单据状态不支持修改
+        /// </summary>
+        [Description("当前状态不支持修改")]
+        StateNotUpdate = 2027,
+        /// <summary>
+        /// 库存不足
+        /// </summary>
+        [Description("库存不足")]
+        NotEnoughStock = 2028,
+        /// <summary>
+        /// 没有传巷道号
+        /// </summary>
+        [Description("没有传巷道号")]
+        NotTunnelNum = 2029,
+        /// <summary>
+        /// 组盘信息已存在,不允许重复组盘
+        /// </summary>
+        [Description("组盘信息已存在,不允许重复组盘")]
+        StockInfoExist = 2030,
+    }
+    /// <summary>
+    /// 单据类型
+    /// </summary>
+    public enum DocType
+    {
+        /// <summary>
+        /// 合金满轮入库
+        /// </summary>
+        [Description("合金镀铜满轮入库单")]
+        DocType_HJ_CopperProductStockIn = 1,
+        /// <summary>
+        /// 湿拉产线领料
+        /// </summary>
+        [Description("湿拉产线领料")]
+        DocType_HJ_WetLinePickMaterApply= 2,
+        /// <summary>
+        /// 湿拉产线退料
+        /// </summary>
+        [Description("湿拉产线退料单")]
+        DocType_HJ_WetLineBack = 3,
+        /// <summary>
+        /// 湿拉产线余料
+        /// </summary>
+        [Description("湿拉产线余料单")]
+        DocType_HJ_WetLineLeft = 4,
+        /// <summary>
+        /// 合金库库存改判
+        /// </summary>
+        [Description("合金库库存改判")]
+        DocType_HJ_WetLineStockChange = 5,
+        /// <summary>
+        /// 特殊出库领料
+        /// </summary>
+        [Description("特殊出库领料")]
+        DocType_HJ_SpecialStockOut = 6,
+
+        /// <summary>
+        /// 湿拉入库单
+        /// </summary>
+        [Description("湿拉入库单")]
+        DocType_FJ_WetStockIn = 7,
+        /// <summary>
+        /// 合金空轮初始化入库单
+        /// </summary>
+        [Description("合金空轮初始化入库单")]
+        DocType_HJ_EmptyContStockIn = 8,
+
+
+        /// <summary>
+        /// 帘线领料单
+        /// </summary>
+        [Description("帘线领料单")]
+        DocType_FJ_CurtainProductionStockOut = 11,
+        /// <summary>
+        /// 帘线工序工单
+        /// </summary>
+        [Description("帘线工序工单")]
+        DocType_FJ_CurtainProduction = 12,
+        /// <summary>
+        /// 一楼满轮出库
+        /// </summary>
+        [Description("一楼满轮出库")]
+        DocType_HJ_StockOut = 13,
+    }
+    /// <summary>
+    /// 盘条单据类型
+    /// </summary>
+    public enum PtDocType
+    {
+        /// <summary>
+        /// 采购到货单
+        /// </summary>
+        [Description("采购到货单")]
+        Purchase = 1,
+        /// <summary>
+        /// 采购退货单
+        /// </summary>
+        [Description("采购退货单")]
+        PurReturn = 2,
+        /// <summary>
+        /// 到货重挂清单
+        /// </summary>
+        [Description("到货重挂清单")]
+        PurError = 3,
+        /// <summary>
+        /// 生产领料单
+        /// </summary>
+        [Description("生产领料单")]
+        DocType_PT_ProductionStockOut = 4,
+        /// <summary>
+        /// 生产退料入库单
+        /// </summary>
+        [Description("生产退料入库单")]
+        DocType_PT_ProductionBackStockIn = 5,
+        /// <summary>
+        /// 库存改判单
+        /// </summary>
+        [Description("库存改判单")]
+        DocType_PT_StateTrans = 6,
+    }
+    /// <summary>
+    /// 成品单据类型
+    /// </summary>
+    public enum CpDocType
+    {
+        /// <summary>
+        /// 销售出货单
+        /// </summary>
+        [Description("销售出货单")]
+        DocType_CP_SalesDocTrans = 1,
+        /// <summary>
+        /// 销售退货入库单
+        /// </summary>
+        [Description("销售退货入库单")]
+        DocType_CP_SalesBackDocTrans = 2,
+        /// <summary>
+        /// 呆滞料/异常料出库单
+        /// </summary>
+        [Description("呆滞料/异常料出库单")]
+        DocType_CP_ErrorMaterialDocTrans = 3,
+        /// <summary>
+        /// 库存改判单
+        /// </summary>
+        [Description("库存改判单")]
+        DocType_CP_StateTrans = 4,
+        /// <summary>
+        /// 放行/冻结单
+        /// </summary>
+        [Description("放行/冻结单")]
+        DocType_CP_StockStateChangeTrans = 5,
+    }
+    /// <summary>
+    /// 单据状态
+    /// </summary>
+    public enum DocState
+    {
+        /// <summary>
+        /// 新增
+        /// </summary>
+        [Description("新增")]
+        DocState_Create = 1,
+        /// <summary>
+        /// 执行中
+        /// </summary>
+        [Description("执行中")]
+        DocState_Execute = 2,
+        /// <summary>
+        /// 完成
+        /// </summary>
+        [Description("完成")]
+        DocState_Complete = 3,
+        /// <summary>
+        /// 停止
+        /// </summary>
+        [Description("停止")]
+        DocState_Stop = 4,
+    }
+    /// <summary>
+    /// 容器类型
+    /// </summary>
+    public enum ContainerType
+    {
+        /// <summary>
+        /// RFID
+        /// </summary>
+        [Description("RFID")]
+        ContainerType_RFID = 1,
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        [Description("Spool")]
+        ContainerType_Spool = 2,
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        [Description("Pallet")]
+        ContainerType_Pallet = 3,
+    }
+
+
+    /// <summary>
+    /// 任务类型
+    /// </summary>
+    public enum TaskType
+    {
+        /// <summary>
+        /// 组盘
+        /// </summary>
+        [Description("组盘")]
+        SetPlate = 0,
+
+        /// <summary>
+        /// 入库
+        /// </summary>
+        [Description("入库")]
+        EnterDepot = 1,
+
+        /// <summary>
+        /// 出库
+        /// </summary>
+        [Description("出库")]
+        OutDepot = 2,
+
+        /// <summary>
+        /// 移库
+        /// </summary>
+        [Description("移库")]
+        TransferDepot = 3,
+
+     
+        /// <summary>
+        /// 输送
+        /// </summary>
+        [Description("输送")]
+        Delivery = 5,
+        /// <summary>
+        ///  空轮初始化
+        /// </summary>
+        [Description("空轮初始化")]
+        EmptyInit = 6,
+    }
+
+    /// <summary>
+    /// 任务状态
+    /// </summary>
+    public enum TaskStatus
+    {
+        /// <summary>
+        /// 新建
+        /// </summary>
+        [Description("新建")]
+        NewBuild = 0,
+
+        /// <summary>
+        /// 待执行
+        /// </summary>
+        [Description("待执行")]
+        WaitingToExecute = 1,
+
+        /// <summary>
+        /// 输送机执行中
+        /// </summary>
+        [Description("输送机执行中")]
+        ConveyorExecution = 10,
+
+        /// <summary>
+        /// 堆垛机执行
+        /// </summary>
+        [Description("堆垛机执行")]
+        StackerExecution = 20,
+
+        /// <summary>
+        /// 堆垛机完成
+        /// </summary>
+        [Description("堆垛机完成")]
+        StackerCompleted = 30,
+
+        /// <summary>
+        /// AGV执行中
+        /// </summary>
+        [Description("AGV执行中")]
+        AGVExecution = 40,
+
+        /// <summary>
+        /// 已完成
+        /// </summary>
+        [Description("已完成")]
+        Finish = 99,
+
+        /// <summary>
+        /// 已取消
+        /// </summary>
+        [Description("已取消")]
+        Cancel = 106
+    }
+    ///// <summary>
+    ///// 任务类型
+    ///// </summary>
+    //public enum TaskType
+    //{
+    //    /// <summary>
+    //    /// 入库任务
+    //    /// </summary>
+    //    [Description("入库任务")]
+    //    TaskType_StockIn = 1,
+    //    /// <summary>
+    //    /// 出库任务
+    //    /// </summary>
+    //    [Description("出库任务")]
+    //    TaskType_StockOut = 2,
+    //    /// <summary>
+    //    /// 移库任务
+    //    /// </summary>
+    //    [Description("移库任务")]
+    //    TaskType_StockTrans = 3,
+    //    /// <summary>
+    //    /// 移动任务
+    //    /// </summary>
+    //    [Description("移动任务")]
+    //    TaskType_Move = 4,
+    //}
+    ///// <summary>
+    ///// 任务状态
+    ///// </summary>
+    //public enum TaskStateEnum
+    //{
+    //    /// <summary>
+    //    /// 新建
+    //    /// </summary>
+    //    [Description("新建")]
+    //    TaskState_Create = 1,
+    //    /// <summary>
+    //    /// 执行中
+    //    /// </summary>
+    //    [Description("执行中")]
+    //    TaskState_Execute = 2,
+    //    /// <summary>
+    //    /// 已完成
+    //    /// </summary>
+    //    [Description("已完成")]
+    //    TaskState_Complete = 3,
+    //    /// <summary>
+    //    /// 已取消
+    //    /// </summary>
+    //    [Description("已取消")]
+    //    TaskState_Cancel = 4,
+    //}
+
+    /// <summary>
+    /// 库存状态
+    /// </summary>
+    public enum InvState
+    {
+        /// <summary>
+        /// 已组盘
+        /// </summary>
+        [Description("已组盘")]
+        InvEcecState_BuildUp = 1,
+        ///// <summary>
+        ///// 入库中
+        ///// </summary>
+        //[Description("入库中")]
+        //InvEcecState_InGoing = 2,
+        /// <summary>
+        /// 已入库
+        /// </summary>
+        [Description("已入库")]
+        InvEcecState_In = 3,
+        /// <summary>
+        /// 出库中
+        /// </summary>
+        [Description("出库中")]
+        InvEcecState_OutGoing = 4,
+        /// <summary>
+        /// 已出库
+        /// </summary>
+        [Description("已出库")]
+        InvEcecState_Out = 5,
+    }
+    /// <summary>
+    ///  出库任务类型
+    /// </summary>
+    public enum OutTypeEnum
+    {
+        /// <summary>
+        ///  自动出库任务
+        /// </summary>
+        自动出库任务 = 0,
+
+        /// <summary>
+        ///  全自动手动出库任务
+        /// </summary>
+        全自动手动出库任务 = 1,
+
+        /// <summary>
+        ///  半自动手动出库任务
+        /// </summary>
+        半自动手动出库任务 = 2
+    }
+    /// <summary>
+    /// 库存锁定状态
+    /// </summary>
+    public enum InvLockState
+    {
+        /// <summary>
+        /// 正常
+        /// </summary>
+        [Description("正常")]
+        InvState_Normal,
+        /// <summary>
+        /// 锁定
+        /// </summary>
+        [Description("锁定")]
+        InvState_Lock,
+    }
+
+    /// <summary>
+    /// 任务业务类型
+    /// </summary>
+    public enum TaskBusType
+    {
+        /// <summary>
+        /// 默认
+        /// </summary>
+        [Description("默认")]
+        TaskBusType_HJ_Def = 0,
+        /// <summary>
+        /// 镀铜一楼取满
+        /// </summary>
+        [Description("镀铜一楼取满")]
+        TaskBusType_HJ_OneFloorLineStockIn = 1,
+        /// <summary>
+        /// 一楼立库出空轮
+        /// </summary>
+        [Description("一楼立库出空轮")]
+        TaskBusType_HJ_OneFloorEmptySpoolOut = 2,
+        /// <summary>
+        /// 镀铜线补空轮
+        /// </summary>
+        [Description("镀铜线补空轮")]
+        TaskBusType_HJ_OneFloorEmptySpoolToLine = 3,
+        /// <summary>
+        /// 手动出库
+        /// </summary>
+        [Description("手动出库")]
+        TaskBusType_HJ_ManualOut = 4,
+        /// <summary>
+        /// 二楼空轮初始化入库
+        /// </summary>
+        [Description("二楼空轮初始化入库")]
+        TaskBusType_HJ_EmptySpoolStockIn = 5,
+        /// <summary>
+        /// 二楼湿拉线退料回立库
+        /// </summary>
+        [Description("二楼湿拉线退料回立库")]
+        TaskBusType_HJ_WetBack = 6,
+        /// <summary>
+        /// 二楼湿拉线余料回立库
+        /// </summary>
+        [Description("二楼湿拉线余料回立库")]
+        TaskBusType_HJ_WetLeft = 7,
+        /// <summary>
+        /// 二楼湿拉空轮回立库
+        /// </summary>
+        [Description("二楼湿拉空轮回立库")]
+        TaskBusType_HJ_WetEmpty = 8,
+
+        /// <summary>
+        /// 二楼湿拉自动叫料出库
+        /// </summary>
+        [Description("二楼湿拉自动叫料出库")]
+        TaskBusType_HJ_TwoFloorStockOut = 9,
+
+        /// <summary>
+        /// 质检回库
+        /// </summary>
+        [Description("质检回库")]
+        TaskBusType_HJ_QualityStockIn = 10,
+        /// <summary>
+        /// 其他入库
+        /// </summary>
+        [Description("其他入库")]
+        TaskBusType_HJ_OtherStockIn = 11,
+        /// <summary>
+        /// 采购550工字轮入库
+        /// </summary>
+        [Description("采购550工字轮入库")]
+        TaskBusType_HJ_PurchaseSpoolStockIn = 11,
+        /// <summary>
+        /// 重挂入库
+        /// </summary>
+        [Description("重挂入库")]
+        TaskBusType_HJ_AnewStockIn = 12,
+        /// <summary>
+        /// 质检领料
+        /// </summary>
+        [Description("质检领料")]
+        TaskBusType_HJ_QualityOut = 13,
+        /// <summary>
+        /// 呆滞料出库
+        /// </summary>
+        [Description("呆滞料出库")]
+        TaskBusType_HJ_DullMaterOut = 14,
+        /// <summary>
+        /// 重挂出库
+        /// </summary>
+        [Description("重挂出库")]
+        TaskBusType_HJ_AnewOut = 18,
+        /// <summary>
+        /// PDA指定出库
+        /// </summary>
+        [Description("PDA指定出库")]
+        TaskBusType_HJ_PdaManualOut = 15,
+
+        /// <summary>
+        /// 一楼空轮初始化入库
+        /// </summary>
+        [Description("一楼空轮初始化入库")]
+        TaskBusType_HJ_OneFloorEmptySpoolStockIn = 16,
+
+        /// <summary>
+        /// 一楼出满轮
+        /// </summary>
+        [Description("一楼出满轮")]
+        TaskBusType_HJ_OneFloorStockOut = 17,
+
+        /// <summary>
+        /// 移库
+        /// </summary>
+        [Description("移库")]
+        TaskBusType_HJ_Move = 100,
+    }
+    public enum PtTaskBusType
+    {
+        /// <summary>
+        /// 质检回库
+        /// </summary>
+        [Description("质检回库")]
+        TaskBusType_PT_QualityStockIn = 1,
+        /// <summary>
+        /// 手动入库
+        /// </summary>
+        [Description("手动入库")]
+        TaskBusType_PT_ManaelStockIn = 2,
+        /// <summary>
+        /// 采购入库单
+        /// </summary>
+        [Description("采购入库单")]
+        TaskBusType_PT_PurchaseStockIn = 3,
+        /// <summary>
+        /// 重挂入库
+        /// </summary>
+        [Description("重挂入库")]
+        TaskBusType_PT_AnewStockIn = 4,
+        /// <summary>
+        /// 生产领料
+        /// </summary>
+        [Description("生产领料")]
+        TaskBusType_PT_ProductionStockOut = 5,
+        /// <summary>
+        /// 生产退料
+        /// </summary>
+        [Description("生产退料")]
+        TaskBusType_PT_ProductionBackStockIn = 6,
+        /// <summary>
+        /// 自动补架子
+        /// </summary>
+        [Description("自动补架子")]
+        TaskBusType_PT_AotuShelf = 7,
+        /// <summary>
+        /// 移库
+        /// </summary>
+        [Description("移库")]
+        TaskBusType_PT_Move = 100,
+    }
+    /// <summary>
+    /// 成品任务业务类型
+    /// </summary>
+    public enum CpTaskBusType
+    {
+        /// <summary>
+        /// 空托盘入库
+        /// </summary>
+        [Description("空托盘入库")]
+        TaskBusType_CP_TrayStockIn = 1,
+        /// <summary>
+        /// 成品入库
+        /// </summary>
+        [Description("成品入库")]
+        TaskBusType_CP_ProductStockIn = 2,
+        /// <summary>
+        /// 间隔板入库
+        /// </summary>
+        [Description("间隔板入库")]
+        TaskBusType_CP_SpacingBoardStockIn = 3,
+        /// <summary>
+        /// 空托盘出库
+        /// </summary>
+        [Description("空托盘出库")]
+        TaskBusType_CP_TrayStockOut = 4,
+        /// <summary>
+        /// 间隔板出库
+        /// </summary>
+        [Description("间隔板出库")]
+        TaskBusType_CP_SpacingBoardStockOut = 5,
+        /// <summary>
+        /// 销售发货单出库
+        /// </summary>
+        [Description("销售发货单出库")]
+        TaskBusType_CP_SalesDocStockOut = 6,
+        /// <summary>
+        /// 退料入库
+        /// </summary>
+        [Description("退料入库")]
+        TaskBusType_CP_ProductBackStockIn = 7,
+        /// <summary>
+        /// 码垛托盘输送
+        /// </summary>
+        [Description("码垛托盘输送")]
+        TaskBusType_CP_TrayPortage = 8,
+        /// <summary>
+        /// 移库
+        /// </summary>
+        [Description("移库")]
+        TaskBusType_CP_Move = 100,
+    }
+    public enum FackbeekType
+    {
+        /// <summary>
+        /// 合金一楼满轮入库反馈
+        /// </summary>
+        [Description("合金一楼满轮入库反馈")]
+        InterfaceType_HJ_1F_StockIn,
+        /// <summary>
+        /// 合金二楼退料入库反馈
+        /// </summary>
+        [Description("合金二楼退料入库反馈")]
+        InterfaceType_HJ_2F_BackStockIn,
+        /// <summary>
+        /// 合金二楼余料入库反馈
+        /// </summary>
+        [Description("合金二楼余料入库反馈")]
+        InterfaceType_HJ_2F_LeftStockIn,
+        /// <summary>
+        /// 改判反馈
+        /// </summary>
+        [Description("改判反馈")]
+        InterfaceType_HJ_StockChanage,
+        /// <summary>
+        /// 满轮出库反馈
+        /// </summary>
+        [Description("满轮出库反馈")]
+        InterfaceType_HJ_StockOut,
+    }
+
+    public enum PtFackbeekType
+    {
+        /// <summary>
+        /// 采购到货单入库反馈
+        /// </summary>
+        [Description("采购到货单入库反馈")]
+        InterfaceType_PT_PurchaseStockIn,
+        /// <summary>
+        /// 采购退货出库反馈
+        /// </summary>
+        [Description("采购退货出库反馈")]
+        InterfaceType_PT_PurchaseBack,
+        /// <summary>
+        /// 重挂反馈接口
+        /// </summary>
+        [Description("重挂反馈接口")]
+        InterfaceType_PT_AnewStockIn,
+        /// <summary>
+        /// 改判反馈
+        /// </summary>
+        [Description("改判反馈")]
+        StateTrans,
+        /// <summary>
+        /// 生产领料反馈
+        /// </summary>
+        [Description("生产领料反馈")]
+        PickMat,
+        /// <summary>
+        /// 退料反馈
+        /// </summary>
+        [Description("退料反馈")]
+        ReturnMat,
+    }
+    public enum fjFackbeekType
+    {
+        /// <summary>
+        /// 湿拉满轮入库反馈
+        /// </summary>
+        [Description("湿拉满轮入库反馈")]
+        InterfaceType_FJ_StockIn,
+
+        /// <summary>
+        /// 叫料信息出库反馈
+        /// </summary>
+        [Description("叫料信息出库反馈")]
+        InterfaceType_FJ_StockOut,
+
+        /// <summary>
+        /// 余料入库反馈
+        /// </summary>
+        [Description("余料入库反馈")]
+        InterfaceType_FJ_LeftStockIn,
+
+        /// <summary>
+        /// 异常料出库反馈
+        /// </summary>
+        [Description("异常料出库反馈")]
+        InterfaceType_FJ_ErrStockOut,
+
+        /// <summary>
+        /// B级品出库反馈
+        /// </summary>
+        [Description("B级品出库反馈")]
+        InterfaceType_FJ_BGradeStockOut,
+
+        /// <summary>
+        /// 库存改判反馈
+        /// </summary>
+        [Description("库存改判反馈")]
+        InterfaceType_FJ_StockChanage,
+
+        /// <summary>
+        /// 库存改判回库反馈
+        /// </summary>
+        [Description("库存改判回库反馈")]
+        InterfaceType_FJ_ChanageBack,
+    }
+    /// <summary>
+    /// 成品反馈类型
+    /// </summary>
+    public enum CpFackbeekType
+    {
+        /// <summary>
+        /// 销售出库单反馈
+        /// </summary>
+        [Description("销售出库单反馈")]
+        SalesDoc = 1,
+        /// <summary>
+        /// 改判反馈
+        /// </summary>
+        [Description("改判反馈")]
+        StateTrans = 2,
+        /// <summary>
+        /// 呆滞料/异常料出库反馈
+        /// </summary>
+        [Description("呆滞料/异常料出库反馈")]
+        ErrorMaterial = 3,
+        /// <summary>
+        /// 移库反馈
+        /// </summary>
+        [Description("移库反馈")]
+        MoveCell = 4,
+        /// <summary>
+        /// 成品入库反馈
+        /// </summary>
+        [Description("成品入库反馈")]
+        ProductStockIn = 5,
+        /// <summary>
+        /// 退料入库反馈
+        /// </summary>
+        [Description("退料入库反馈")]
+        ProductBackStockIn = 6,
+        /// <summary>
+        /// 手动出库反馈
+        /// </summary>
+        [Description("手动出库反馈")]
+        ManualOut = 7,
+    }
+    public enum InvInOutType
+    {
+        /// <summary>
+        /// 入库
+        /// </summary>
+        [Description("入库")]
+        In = 1,
+
+        /// <summary>
+        /// 出库
+        /// </summary>
+        [Description("出库")]
+        Out = 2,
+    }
+    public enum ContGrpType
+    {
+        /// <summary>
+        /// 物料盘
+        /// </summary>
+        [Description("入库")]
+        Material = 1,
+
+        /// <summary>
+        /// 空盘
+        /// </summary>
+        [Description("出库")]
+        EmptyCon = 2,
+    }
+    public enum CpContGrpType
+    {
+        /// <summary>
+        /// 成品
+        /// </summary>
+        [Description("成品")]
+        Material = 1,
+
+        /// <summary>
+        /// 空托盘
+        /// </summary>
+        [Description("空托盘")]
+        EmptyCon = 2,
+        /// <summary>
+        /// 间隔板
+        /// </summary>
+        [Description("间隔板")]
+        Jiangeban = 3,
+    }
+    /// <summary>
+    /// 移库返回
+    /// </summary>
+    public enum WcsContractWcsMoveTaskEnum
+    {
+        /// <summary>
+        /// 失败
+        /// </summary>
+        [Description("失败")]
+        失败 = 0,
+        /// <summary>
+        /// 允许2升位执行
+        /// </summary>
+        [Description("允许2升位执行")]
+        允许2升位执行 = 1,
+        /// <summary>
+        /// 执行移库任务
+        /// </summary>
+        [Description("执行移库任务")]
+        执行移库任务 = 2,
+
+        /// <summary>
+        /// 一深位有出库任务
+        /// </summary>
+        [Description("一深位有出库任务")]
+        一深位有出库任务 = 3,
+    }
+
+    public enum CurtainBillState
+    {
+        /// <summary>
+        /// 初始化
+        /// </summary>
+        [Description("初始化")]
+        初始化 = 1,
+
+        /// <summary>
+        /// 已排产
+        /// </summary>
+        [Description("已排产")]
+        已排产 = 2,
+
+        /// <summary>
+        /// 生产中
+        /// </summary>
+        [Description("生产中")]
+        生产中 = 3,
+
+        /// <summary>
+        /// 生产结束
+        /// </summary>
+        [Description("生产结束")]
+        生产结束 = 4,
+
+        /// <summary>
+        /// 计划关闭
+        /// </summary>
+        [Description("计划关闭")]
+        计划关闭 = 5,
+    }
+}

+ 14 - 0
wms.dto/request/cp/BoxBuildStockTransRequest.cs

@@ -0,0 +1,14 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class BoxBuildStockTransRequest:BaseRequest
+    {
+        /// <summary>
+        /// 箱号
+        /// </summary>
+        public string HuNr { get; set; }
+    }
+}

+ 26 - 0
wms.dto/request/cp/ComPushApiResInfoRequest.cs

@@ -0,0 +1,26 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class ComPushApiResInfoRequest:BaseRequest
+    {
+        /// <summary>
+        /// 接口编号
+        /// </summary>
+        public string ApiId { get; set; }
+        /// <summary>
+        /// 凭证号
+        /// </summary>
+        public string ReqId { get; set; }
+        /// <summary>
+        /// 处理结果编码
+        /// </summary>
+        public string ResCode { get; set; }
+        /// <summary>
+        /// 描述(失败原因)
+        /// </summary>
+        public string ResMsg { get; set; }
+    }
+}

+ 48 - 0
wms.dto/request/cp/CpGetCurStockListRequest.cs

@@ -0,0 +1,48 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class CpGetCurStockListRequest
+    {
+        /// <summary>
+        /// 物料编码
+        /// </summary>
+        public string MatCode { get; set; }
+        /// <summary>
+        /// 物料名称
+        /// </summary>
+        public string MatName { get; set; }
+        /// <summary>
+        /// 工字轮料号
+        /// </summary>
+        public string HWmater { get; set; }
+        /// <summary>
+        /// 请求条数
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public int ReqCount { get; set; }
+        /// <summary>
+        /// 当前页
+        /// </summary>
+        public int PageIndex { get; set; }
+        /// <summary>
+        /// 每页条数
+        /// </summary>
+        public int PageSize { get; set; }
+        /// <summary>
+        /// 开始时间
+        /// </summary>
+        public DateTime StartTime { get; set; }
+        /// <summary>
+        /// 结束时间
+        /// </summary>
+        public DateTime EndTime { get; set; }
+        /// <summary>
+        /// 箱号列表
+        /// </summary>
+        public List<string> BoxNo { get; set; }
+    }
+}

+ 57 - 0
wms.dto/request/cp/CpStockChangeRequest.cs

@@ -0,0 +1,57 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class CpStockChangeRequest:BaseRequest
+    {
+        /// <summary>
+        /// 单号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 过账凭证号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string ReqId { get; set; }
+        /// <summary>
+        /// 改判信息列表
+        /// </summary>
+        public List<CpStockChangeRequestItem> ListInfo { get; set; }
+    }
+    public class CpStockChangeRequestItem
+    {
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        public string SpoolCode { get; set; }
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// 等级
+        /// </summary>
+        public string Grade { get; set; }
+        /// <summary>
+        /// 改判状态(锁定/放行/快投/取消快投:Lock/Normal/Fast/UnFast)
+        /// </summary>
+        public string State { get; set; }
+        /// <summary>
+        /// 原因
+        /// </summary>
+        public string Reason { get; set; }
+        /// <summary>
+        /// 箱号
+        /// </summary>
+        public string BoxNo { get; set; }
+    }
+}

+ 90 - 0
wms.dto/request/cp/CpSyncMaterInfoListRequest.cs

@@ -0,0 +1,90 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class CpSyncMaterInfoListRequest : BaseRequest
+    {
+        /// <summary>
+        /// 成品物料编码
+        /// </summary>
+        public string MatCode { get; set; }
+        /// <summary>
+        /// 成品物料描述
+        /// </summary>
+        public string MatName { get; set; }
+        /// <summary>
+        /// 有无焊点
+        /// </summary>
+        public string IsSolder { get; set; }
+        /// <summary>
+        /// SKU号
+        /// </summary>
+        public string SKUCode { get; set; }
+        /// <summary>
+        /// SKU描述
+        /// </summary>
+        public string SKUDesc { get; set; }
+        /// <summary>
+        /// 控制扭转
+        /// </summary>
+        public string Tors { get; set; }
+        /// <summary>
+        /// 包装组ID
+        /// </summary>
+        public string PackGroupId { get; set; }
+        /// <summary>
+        /// 黑盘取样
+        /// </summary>
+        public string BlackSamp { get; set; }
+        /// <summary>
+        /// 黑盘检验
+        /// </summary>
+        public string BlackChk { get; set; }
+        /// <summary>
+        /// 客户编码
+        /// </summary>
+        public string CustCode { get; set; }
+        /// <summary>
+        /// 客户描述
+        /// </summary>
+        public string CustName { get; set; }
+        /// <summary>
+        /// 收货地址编码
+        /// </summary>
+        public string AddressCode { get; set; }
+        /// <summary>
+        /// 收货地址名称
+        /// </summary>
+        public string AddressName { get; set; }
+        /// <summary>
+        /// 生产批次数量(箱/批)
+        /// </summary>
+        public decimal Qty { get; set; }
+        /// <summary>
+        /// 每箱最大焊点盘数(个)
+        /// </summary>
+        public decimal BoxMaxSolder { get; set; }
+        /// <summary>
+        /// 工字轮最大焊点数(个)
+        /// </summary>
+        public decimal SpoolMaxSolder { get; set; }
+        /// <summary>
+        /// OVC比例
+        /// </summary>
+        public decimal OVC { get; set; }
+        /// <summary>
+        /// 起鼓等级
+        /// </summary>
+        public string DrummLevel { get; set; }
+        /// <summary>
+        /// 是否启用时效
+        /// </summary>
+        public bool IsHold { get; set; }
+        /// <summary>
+        /// 时效时长
+        /// </summary>
+        public decimal HoldDuration { get; set; }
+    }
+}

+ 18 - 0
wms.dto/request/cp/ErrorMaterialStockOutFeedBackRequest.cs

@@ -0,0 +1,18 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class ErrorMaterialStockOutFeedBackRequest
+    {
+        /// <summary>
+        /// 发货单号
+        /// </summary>
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 箱号清单
+        /// </summary>
+        public List<string> BoxList { get; set; }
+    }
+}

+ 22 - 0
wms.dto/request/cp/ErrorMaterialStockOutRequest.cs

@@ -0,0 +1,22 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class ErrorMaterialStockOutRequest:BaseRequest
+    {
+        /// <summary>
+        /// 发货单号
+        /// </summary>
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 箱号清单
+        /// </summary>
+        public List<string> BoxList { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WareCode { get; set; }
+    }
+}

+ 21 - 0
wms.dto/request/cp/MesReleaseFlagDto.cs

@@ -0,0 +1,21 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class MesReleaseFlagDto
+    {
+        
+        public List<MesReleaseFlagDtoItem> ListInfo { get; set; }
+    }
+
+    public class MesReleaseFlagDtoItem
+    {
+        public string BoxCode { get; set; }
+        /// <summary>
+        /// 放行标记(0,1)
+        /// </summary>
+        public int Flag { get; set; }
+    }
+}

+ 26 - 0
wms.dto/request/cp/MoveStockLocationFeedBackRequest.cs

@@ -0,0 +1,26 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class MoveStockLocationFeedBackRequest
+    {
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 箱号
+        /// </summary>
+        public string BoxNo { get; set; }
+        /// <summary>
+        /// 起点货位
+        /// </summary>
+        public string StartLoc { get; set; }
+        /// <summary>
+        /// 目标货位
+        /// </summary>
+        public string EndLoc { get; set; }
+    }
+}

+ 76 - 0
wms.dto/request/cp/PalletAutoTaskRequest.cs

@@ -0,0 +1,76 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class PalletAutoTaskRequest : BaseRequest
+    {
+        /// <summary>
+        /// 箱号
+        /// </summary>
+        public string BoxCode { get; set; }
+        /// <summary>
+        /// 托盘码
+        /// </summary>
+        public string TrayCode { get; set; }
+        /// <summary>
+        /// 码垛工位
+        /// </summary>
+        public string Equip { get; set; }
+        /// <summary>
+        /// 工字轮型号
+        /// </summary>
+        public string HwType { get; set; }
+        /// <summary>
+        /// 托盘类型
+        /// </summary>
+        public string TrayType { get; set; }
+
+        /// <summary>
+        /// 托盘任务id
+        /// </summary>
+        public int TaskNum { get; set; }
+        /// <summary>
+        /// 底托 + 隔板 + 包装塑料袋 + 帘线塑料托盘 重量
+        /// </summary>
+        public decimal Wqty { get; set; }
+        /// <summary>
+        /// 包材重量(铁托之外的所有包材重量(包材重量可以由MES获取))
+        /// </summary>
+        public decimal PackWeight { get; set; }
+        public List<PalletinfoDetail> list { get; set; }
+    }
+    public class PalletinfoDetail
+    {
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        public string HWBarCode { get; set; }
+        public string HuNr { get; set; }
+        public string MaterialDesc { get; set; }
+        public string MaterialCode { get; set; }
+        public string GradeCode { get; set; }
+        public string Sku { get; set; }
+        public string MachineGroupcode { get; set; }
+        public string OvcValue { get; set; }
+        public decimal OvcFlag { get; set; }
+        public decimal BadpointCount { get; set; }
+        public int Layer { get; set; }
+        public string InDocsNo { get; set; }
+        public bool IsControlpanel { get; set; }
+        public string Batch { get; set; }
+        public bool IsBlack { get; set; }
+        public string Winding { get; set; }
+        public DateTime PalletizingDate { get; set; }
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string? CLBarCode { get; set; }
+
+        /// <summary>
+        /// 码垛工位
+        /// </summary>
+        public string? EquNo { get; set; }
+    }
+}

+ 25 - 0
wms.dto/request/cp/PalletManualMoveTaskRequest.cs

@@ -0,0 +1,25 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class PalletManualMoveTaskRequest
+    {
+        /// <summary>
+        /// 物料类型(1成品子母托 2隔板)
+        /// </summary>
+        public int MatType { get; set; }
+
+        /// <summary>
+        /// 目标工位(码垛位/隔板位置)
+        /// </summary>
+        public string AddrTo { get; set; }
+
+
+        /// <summary>
+        /// 托盘号
+        /// </summary>
+        public string ConBarCode { get; set; }
+    }
+}

+ 103 - 0
wms.dto/request/cp/ProductBoxDetailUploadRequest.cs

@@ -0,0 +1,103 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class ProductBoxDetailUploadRequest
+    {
+        public string TempHuNr { get; set; }
+        public List<string> Lst_SpoolNr { get; set; } = new List<string>();
+     }
+
+    public class ProductBoxDetailUploadRequestNew
+    {
+        /// <summary>
+        /// 箱号
+        /// </summary>
+        public string HuNr { get; set; }
+        /// <summary>
+        /// SKU
+        /// </summary>
+        public string SKU { get; set; }
+        /// <summary>
+        /// SKU描述
+        /// </summary>
+        public string SkuDesc { get; set; }
+        /// <summary>
+        /// 批次
+        /// </summary>
+        public string Batch { get; set; }
+        /// <summary>
+        /// 绕向
+        /// </summary>
+        public string Winding { get; set; }
+        /// <summary>
+        /// 装箱时间
+        /// </summary>
+        public string TimeStamp { get; set; }
+        /// <summary>
+        /// 装箱设备号
+        /// </summary>
+        public string MachineCode { get; set; }
+        /// <summary>
+        /// 仓库名称
+        /// </summary>
+        public string StoreName { get; set; } = "成品库";
+        /// <summary>
+        /// 仓库名称
+        /// </summary>
+        public string StoreCode { get; set; } = "cphouse";
+        /// <summary>
+        /// 库位
+        /// </summary>
+        public string LocatCode { get; set; } = "";
+        /// <summary>
+        /// OVC标记 0非检测盘,2检测合格
+        /// </summary>
+        public string OvcFlag { get; set; }
+        /// <summary>
+        /// 箱平均值
+        /// </summary>
+        public string OvcValue { get; set; }
+        /// <summary>
+        /// 层明细
+        /// </summary>
+        public List<LayerListItem> LayerList { get; set; } = new List<LayerListItem>();
+    }
+
+    public class LayerListItem
+    {
+        /// <summary>
+        /// 层编码
+        /// </summary>
+        public string LayerCode { get; set; }
+        /// <summary>
+        /// 层名称
+        /// </summary>
+        public string layerName { get; set; }
+        /// <summary>
+        /// OVC标记
+        /// </summary>
+        public string OvcFlag { get; set; }
+        /// <summary>
+        /// 层平均值
+        /// </summary>
+        public string OvcValue { get; set; } = "";
+        /// <summary>
+        /// 层明细
+        /// </summary>
+        public List<SpoolListItem> SpoolList { get; set; } = new List<SpoolListItem>();
+    }
+    public class SpoolListItem
+    {
+        /// <summary>
+        /// 工字轮号
+        /// </summary>
+        public string SpoolNr { get; set; }
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatNo { get; set; }
+    }
+}

+ 14 - 0
wms.dto/request/cp/ProductStockInBackRequest.cs

@@ -0,0 +1,14 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class ProductStockInBackRequest
+    {
+        public string HuNr { get; set; }
+        public string StoreCode { get; set; }
+        public string StoreName { get; set; }
+        public string LocatCode { get; set; }
+    }
+}

+ 37 - 0
wms.dto/request/cp/SalesDocTransFeedBackRequest.cs

@@ -0,0 +1,37 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class SalesDocTransFeedBackRequest
+    {
+        /// <summary>
+        /// 发货单号
+        /// </summary>
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 箱号清单
+        /// </summary>
+        public List<string> BoxList { get; set; }
+        /// <summary>
+        /// 单据类型
+        /// </summary>
+        public string Type { get; set; }
+    }
+    public class ManaelOutBackRequest
+    {
+        /// <summary>
+        /// 箱号
+        /// </summary>
+        public string HuNr { get; set; }
+        /// <summary>
+        /// 出库类型
+        /// </summary>
+        public string Type { get; set; }
+        /// <summary>
+        /// 出库时间
+        /// </summary>
+        public string OutTime { get; set; }
+    }
+}

+ 47 - 0
wms.dto/request/cp/SalesDocTransRequest.cs

@@ -0,0 +1,47 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class SalesDocTransRequest:BaseRequest 
+    {
+        /// <summary>
+        /// 发货单号/退货单号
+        /// </summary>
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 客户编码
+        /// </summary>
+        public string CustCode { get; set; }
+        /// <summary>
+        /// 客户名称
+        /// </summary>
+        public string CustName { get; set; }
+        /// <summary>
+        /// 发货日期/退货时间
+        /// </summary>
+        public string Date { get; set; }
+        /// <summary>
+        /// 箱号清单
+        /// </summary>
+        public List<string> BoxList { get; set; }
+        /// <summary>
+        /// 凭证号
+        /// </summary>
+        public string ReqId { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 是否返工
+        /// </summary>
+        public bool IsReWork { get; set; }
+    }
+    public class ErpCancelStockRequest
+    {
+        public List<string> BoxList { get; set; }
+        public string BillCode { get; set; }
+    }
+}

+ 34 - 0
wms.dto/request/cp/SalesLeftDocTransFeedBackRequest.cs

@@ -0,0 +1,34 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class SalesLeftDocTransFeedBackRequest
+    {
+        /// <summary>
+        /// 发货单号
+        /// </summary>
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 箱号清单
+        /// </summary>
+        public List<string> BoxList { get; set; }
+        /// <summary>
+        /// 凭证号
+        /// </summary>
+        public string ReqId { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 仓库名称
+        /// </summary>
+        public string WareName { get; set; }
+        /// <summary>
+        /// 货位编码
+        /// </summary>
+        public string LocCode { get; set; }
+    }
+}

+ 10 - 0
wms.dto/request/cp/SpoolMaterialInfoTransRequest.cs

@@ -0,0 +1,10 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class SpoolMaterialInfoTransRequest
+    {
+    }
+}

+ 44 - 0
wms.dto/request/cp/StockChangeFeedBackRequest.cs

@@ -0,0 +1,44 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class StockChangeFeedBackRequest
+    {
+
+        /// <summary>
+        /// 过账凭证号
+        /// </summary>
+        public string ReqId { get; set; }
+        /// <summary>
+        /// 单号
+        /// </summary>
+        public string BillCode { get; set; }
+
+        public List<StockChangeFeedBackRequestItem> ListInfo { get; set; }
+    }
+    public class StockChangeFeedBackRequestItem
+    {
+        /// <summary>
+        /// 箱号
+        /// </summary>
+        public string BoxNo { get; set; }
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        public string SpoolCode { get; set; }
+        /// <summary>
+        /// 改判结果
+        /// </summary>
+        public string ResState { get; set; }
+        /// <summary>
+        /// 原因
+        /// </summary>
+        public string ResDesc { get; set; }
+    }
+}

+ 45 - 0
wms.dto/request/cp/StockOutRequest.cs

@@ -0,0 +1,45 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class StockOutRequest
+    {
+        /// <summary>
+        /// 单号
+        /// </summary>
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 物料编码
+        /// </summary>
+        public string MatCode { get; set; }
+        /// <summary>
+        /// 托盘类型
+        /// </summary>
+        public int TrayType { get; set; }
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 设备号
+        /// </summary>
+        public string Equip { get; set; }
+    }
+
+    public class DevincePh
+    {
+        public string deviceCode { get; set; }
+        public bool pH_STATUS { get; set; }
+    }
+
+    public class DevincePh1 : DevincePh
+    {
+        public int TaskCode { get; set; }
+    }
+}

+ 42 - 0
wms.dto/request/cp/StockStateChangeRequest.cs

@@ -0,0 +1,42 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class StockStateChangeRequest:BaseRequest
+    {
+        /// <summary>
+        /// 单号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 过账凭证号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string ReqId { get; set; }
+        /// <summary>
+        /// 改判信息列表
+        /// </summary>
+        public List<StockStateChangeRequestItem> ListInfo { get; set; }
+    }
+    public class StockStateChangeRequestItem
+    {
+
+        /// <summary>
+        /// 1放行/2冻结
+        /// </summary>
+        public string State { get; set; }
+        /// <summary>
+        /// 箱号
+        /// </summary>
+        public string BoxNo { get; set; }
+    }
+}

+ 26 - 0
wms.dto/request/cp/UploadUpMesRequest.cs

@@ -0,0 +1,26 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class UploadUpMesRequest
+    {
+        /// <summary>
+        /// 箱号
+        /// </summary>
+        public string HU_NR { get; set; }
+        /// <summary>
+        /// 总重
+        /// </summary>
+        public string HU_TOTAL_WT { get; set; }
+        /// <summary>
+        /// 称重人
+        /// </summary>
+        public string REC_CREATOR { get; set; }
+        /// <summary>
+        /// 称重日期
+        /// </summary>
+        public string PURPOSEID { get; set; }
+    }
+}

+ 18 - 0
wms.dto/request/cp/VerifyBoxNumRequest.cs

@@ -0,0 +1,18 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class VerifyBoxNumRequest
+    {
+        /// <summary>
+        /// 箱号
+        /// </summary>
+        public string BoxNum { get; set; }
+        /// <summary>
+        /// 托盘号
+        /// </summary>
+        public string ConBarCode { get; set; }
+    }
+}

+ 16 - 0
wms.dto/request/cp/WcsMoveTaskRequest.cs

@@ -0,0 +1,16 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp
+{
+    public class WcsMoveTaskRequest
+    {
+        public int TaskNum { get; set; }
+    }
+    public class UpdateTaskStateRequest
+    {
+        public int TaskNo { get; set; }
+        public TaskStatus Status { get; set; }
+    }
+}

+ 78 - 0
wms.dto/request/cp/dto/WcsRequest.cs

@@ -0,0 +1,78 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.cp.dto
+{
+    public class WcsRequest
+    {
+    }
+    /// <summary>
+    /// 分配货位
+    /// </summary>
+    public class CpApplyStockInLocRequest : BaseRequest
+    {
+        /// <summary>
+        /// WMS任务号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public int TaskNum { get; set; }
+        /// <summary>
+        /// 巷道号
+        /// </summary>
+        public int TunnelNum { get; set; }
+        /// <summary>
+        /// 取货地点设备编号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string PickUpEquipmentNo { get; set; }
+    }
+    /// <summary>
+    /// 堆垛机出库放货完成
+    /// </summary>
+    public class CpSrmPickOutCompletedRequest
+    {
+        /// <summary>
+        /// WMS任务号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public int TaskNum { get; set; }
+    }
+    public class CpApplyLocRequest
+    {
+        public long WarehuoseId { get; set; }
+        public int Size { get; set; }
+
+        public int TunnelNum { get; set; }
+        public long MaterialId { get; set; }
+        public string MaterialCode { get; set; }
+        public bool IsMove { get; set; } = false;
+    }
+    public class CpManualTaskRequest
+    {
+        public List<string> Location { get; set; }
+        public int EndPoint { get; set; }
+        public string? BusType { get; set; }
+        public string? User { get; set; }
+    }
+    public class CpMesManualTaskRequest
+    {
+        public List<string> BoxList { get; set; }
+        public string EndPoint { get; set; }
+        public string? User { get; set; }
+    }
+    public class WcsStateRequest
+    {
+        public int TaskId { get; set; }
+    }
+    public class WcsStateResponse
+    {
+        public int TaskId { get; set; }
+        public bool IsSuccess { get; set; }
+    }
+    public class LabellingMachineRequest
+    {
+        public int TaskNo { get; set; }
+    }
+}

+ 70 - 0
wms.dto/request/cp/dto/WebPdaRequest.cs

@@ -0,0 +1,70 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.cp.dto
+{
+    public class WebPdaRequest
+    {
+    }
+    /// <summary>
+    ///  库尾入库请求
+    /// </summary>
+    public class SouthPdaRequest
+    {
+        /// <summary>
+        ///  箱号
+        /// </summary>
+        public string? BoxCode { get; set; }
+        /// <summary>
+        ///  托盘条码
+        /// </summary>
+        public string ContGrpBarCode { get; set; }
+
+        /// <summary>
+        ///  类型 1.间隔版  2.空铁托盘
+        /// </summary>
+        public string? Type { get; set; }
+
+        /// <summary>
+        ///  是否强制入5号道
+        /// </summary>
+        public bool IsForcedIntoLane5 { get; set; } = false;
+    }
+    public class TrayGroupOutRequest : BaseRequest
+    {
+        /// <summary>
+        /// 位置码
+        /// </summary>
+        public string Equip { get; set; }
+        /// <summary>
+        /// 托盘编码
+        /// </summary>
+        public string Code { get; set; }
+        public string? WareHouse { get; set; }
+        public string? Start { get; set; }
+        public int ActType { get; set; }
+
+    }
+    public class SalesDocOutTaskRequest : BaseRequest
+    {
+        public string SalesDoc { get; set; }
+        public int Equip { get; set; }
+    }
+    public class SalesDocAutoPushRequest
+    {
+        public string Type { get; set; }
+    }
+    public class DataBasePatchRequest
+    {
+        public string Code { get; set; }
+        public string Cell { get; set; }
+        public string WareHouse { get; set; }
+        public int ContGrpType { get; set; }
+        public string? BoxCode { get; set; }
+    }
+    public class PreLockedStockRequest : BaseRequest
+    {
+        public string BillCode { get; set; }
+    }
+}

+ 18 - 0
wms.dto/request/fj/AllocationConveyorSortRequest.cs

@@ -0,0 +1,18 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class AllocationConveyorSortRequest
+    {
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        public string BarCode { get; set; }
+        /// <summary>
+        /// 扫码设备号
+        /// </summary>
+        public string EquNo { get; set; }
+    }
+}

+ 11 - 0
wms.dto/request/fj/AllocationWarehouseSortRequest.cs

@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class AllocationWarehouseSortRequest
+    {
+        public int TaskCount { get; set; }
+    }
+}

+ 28 - 0
wms.dto/request/fj/BGradeMaterialStockOutFeedBackRequest.cs

@@ -0,0 +1,28 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class BGradeMaterialStockOutFeedBackRequest
+    {
+
+        /// <summary>
+        /// 过账凭证号
+        /// </summary>
+        public string ReqId { get; set; }
+     
+        public List<BGradeMaterialStockOutFeedBackRequestItem> ListInfo { get; set; }
+    }
+    public class BGradeMaterialStockOutFeedBackRequestItem
+    {
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        public string SpoolCode { get; set; }
+    }
+}

+ 31 - 0
wms.dto/request/fj/BGradeMaterialStockOutRequest.cs

@@ -0,0 +1,31 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class BGradeMaterialStockOutRequest:BaseRequest
+    {
+        /// <summary>
+        /// 位置
+        /// </summary>
+        public string LocCode { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 物料编码
+        /// </summary>
+        public string MatCode { get; set; }
+        /// <summary>
+        /// 过账凭证号
+        /// </summary>
+        public string ReqId { get; set; }
+        /// <summary>
+        /// 单号
+        /// </summary>
+        public string BillCode { get; set; }
+    }
+   
+}

+ 37 - 0
wms.dto/request/fj/BomInfoTransRequest.cs

@@ -0,0 +1,37 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class BomInfoTransRequest:BaseRequest
+    {
+        /// <summary>
+        /// 总生产工单号
+        /// </summary>
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 帘线物料编码
+        /// </summary>
+        public string ProMatCode { get; set; }
+        /// <summary>
+        /// BOM编码
+        /// </summary>
+        public string BomCode { get; set; }
+        /// <summary>
+        /// 湿拉物料信息列表
+        /// </summary>
+        public List<BomInfoTransRequestItem> MaterList { get; set; }
+    }
+    public class BomInfoTransRequestItem
+    {
+        /// <summary>
+        /// 湿拉物料编码
+        /// </summary>
+        public string MatCode { get; set; }
+        /// <summary>
+        /// 轮子个数
+        /// </summary>
+        public int Count { get; set; }
+    }
+}

+ 14 - 0
wms.dto/request/fj/CurtainOrderStartCheckRequest.cs

@@ -0,0 +1,14 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class CurtainOrderStartCheckRequest:BaseRequest
+    {
+        /// <summary>
+        /// 生产订单号
+        /// </summary>
+        public string BillCode { get; set; }
+    }
+}

+ 103 - 0
wms.dto/request/fj/CurtainProductionOrderRequest.cs

@@ -0,0 +1,103 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class CurtainProductionOrderRequest:BaseRequest
+    {
+        /// <summary>
+        /// 生产订单
+        /// </summary>
+        public string WorkOrder { get; set; }
+        /// <summary>
+        /// 帘线生产工序单号
+        /// </summary>
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 帘线物料编码
+        /// </summary>
+        public string MatCode { get; set; }
+        /// <summary>
+        /// 投料信息编码
+        /// </summary>
+        public string FeedCode { get; set; }
+        /// <summary>
+        /// 开始时间
+        /// </summary>
+        public DateTime StartTime { get; set; }
+        /// <summary>
+        /// 码垛总箱数
+        /// </summary>
+        public int BoxCount { get; set; }
+        /// <summary>
+        /// 机台号列表
+        /// </summary>
+        public List<string> WbList { get; set; }
+        /// <summary>
+        /// 帘线工字轮计划总数
+        /// </summary>
+        public int PlanQty { get; set; }
+        /// <summary>
+        /// 装箱规则(1:层配;2:SPC)
+        /// </summary>
+        public string PackRule { get; set; }
+        /// <summary>
+        /// 厂区编号
+        /// </summary>
+        public string FactoryNo { get; set; }
+        /// <summary>
+        /// 单据状态
+        /// </summary>
+        public string BillState { get; set; }
+        /// <summary>
+        /// 箱子信息列表
+        /// </summary>
+        public List<ListBoxInfoItem> ListBoxInfo { get; set; }
+
+    }
+
+    public class ListBoxInfoItem
+    {
+        /// <summary>
+        /// 箱号
+        /// </summary>
+        public string BoxNo { get; set; }
+        /// <summary>
+        /// 每箱满轮子数
+        /// </summary>
+        public int FullCount { get; set; }
+        /// <summary>
+        /// 每箱空轮子数
+        /// </summary>
+        public int EmptyCount { get; set; }
+        /// <summary>
+        /// 是否允许焊点盘
+        /// </summary>
+        public string IsSolder { get; set; }
+        /// <summary>
+        /// 成套目标扭转值上限
+        /// </summary>
+        public decimal TorsionMax { get; set; }
+        /// <summary>
+        /// 成套目标扭转值下限
+        /// </summary>
+        public decimal TorsionMin { get; set; }
+        /// <summary>
+        /// 子托盘编码
+        /// </summary>
+        public string TrayCode { get; set; }
+        /// <summary>
+        /// 干燥剂
+        /// </summary>
+        public string Dryer { get; set; }
+        /// <summary>
+        /// 中间隔板
+        /// </summary>
+        public string Bulkhead { get; set; }
+        /// <summary>
+        /// 抽真空
+        /// </summary>
+        public string Vacuum { get; set; }
+    }
+}

+ 42 - 0
wms.dto/request/fj/CurtainProductionStockOutFeedBackRequest.cs

@@ -0,0 +1,42 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class CurtainProductionStockOutFeedBackRequest
+    {
+        /// <summary>
+        /// 帘线工单号
+        /// </summary>
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 过账凭证号
+        /// </summary>
+        public string ReqId { get; set; }
+        /// <summary>
+        /// 货位
+        /// </summary>
+        public string LocCode { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 仓库名称
+        /// </summary>
+        public string WareName { get; set; }
+        public List<CurtainProductionStockOutFeedBackRequestItem> ListInfo { get; set; }
+    }
+    public class CurtainProductionStockOutFeedBackRequestItem
+    {
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        public string SpoolCode { get; set; }
+    }
+}

+ 34 - 0
wms.dto/request/fj/CurtainProductionStockOutRequest.cs

@@ -0,0 +1,34 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class CurtainProductionStockOutRequest:BaseRequest
+    {
+        /// <summary>
+        /// 帘线工单号
+        /// </summary>
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 机台编号
+        /// </summary>
+        public string WbCode { get; set; }
+        /// <summary>
+        /// 推荐消耗等级
+        /// </summary>
+        public string Grade { get; set; }
+        /// <summary>
+        /// 过账凭证号
+        /// </summary>
+        public string ReqId { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 快投标记
+        /// </summary>
+        public bool IsFast { get; set; }
+    }
+}

+ 39 - 0
wms.dto/request/fj/ErrorMaterialStockOutFeedBackRequest.cs

@@ -0,0 +1,39 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class ErrorMaterialStockOutFeedBackRequest
+    {
+      
+        /// <summary>
+        /// 过账凭证号
+        /// </summary>
+        public string ReqId { get; set; }
+        /// <summary>
+        /// 货位
+        /// </summary>
+        public string LocCode { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 仓库名称
+        /// </summary>
+        public string WareName { get; set; }
+        public List<ErrorMaterialStockOutFeedBackRequestItem> ListInfo { get; set; }
+    }
+    public class ErrorMaterialStockOutFeedBackRequestItem
+    {
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        public string SpoolCode { get; set; }
+    }
+}

+ 37 - 0
wms.dto/request/fj/FjErrorMaterialStockOutRequest.cs

@@ -0,0 +1,37 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class FjErrorMaterialStockOutRequest:BaseRequest
+    {
+        /// <summary>
+        /// 出库货位
+        /// </summary>
+        public string FromLocCode { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 出库口
+        /// </summary>
+        public string LocCode { get; set; }
+        /// <summary>
+        /// 单号
+        /// </summary>
+        public string BillCode { get; set; }
+    }
+    public class FjErrorMaterialStockOutRequestItem
+    {
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        public string SpoolCode { get; set; }
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+    }
+}

+ 81 - 0
wms.dto/request/fj/FjProductionBackRequest.cs

@@ -0,0 +1,81 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class FjProductionBackRequest:BaseRequest
+    {
+        /// <summary>
+        /// 退料单号
+        /// </summary>
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 操作类型(1退料/2余料(退料不传工字轮信息,只传点位))
+        /// </summary>
+        public string BusType { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 机台号
+        /// </summary>
+        public string WbCode { get; set; }
+    }
+    public class FjProductionBackRequestItem
+    {
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        public string SpoolCode { get; set; }
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// 物料编码
+        /// </summary>
+        public string MatCode { get; set; }
+        /// <summary>
+        /// 类型
+        /// </summary>
+        public string BusType { get; set; }
+        /// <summary>
+        /// 工字轮型号
+        /// </summary>
+        public string SpoolType { get; set; }
+        /// <summary>
+        /// 生产日期
+        /// </summary>
+        public DateTime ProductDate { get; set; }
+        /// <summary>
+        /// 时效期
+        /// </summary>
+        public decimal HoldDuration { get; set; }
+        /// <summary>
+        /// 等级
+        /// </summary>
+        public string Grade { get; set; }
+        /// <summary>
+        /// 长度
+        /// </summary>
+        public decimal Length { get; set; }
+        /// <summary>
+        /// 重量
+        /// </summary>
+        public decimal Weight { get; set; }
+        /// <summary>
+        /// 高度
+        /// </summary>
+        public decimal Height { get; set; }
+        /// <summary>
+        /// 是否快投
+        /// </summary>
+        public bool IsFast { get; set; }
+        /// <summary>
+        /// 单/双丝
+        /// </summary>
+        public string SilkType { get; set; }
+    }
+}

+ 54 - 0
wms.dto/request/fj/FjStockChangeRequest.cs

@@ -0,0 +1,54 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class FjStockChangeRequest:BaseRequest
+    {
+        /// <summary>
+        /// 单号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 过账凭证号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string ReqId { get; set; }
+        /// <summary>
+        /// 改判信息列表
+        /// </summary>
+        public List<FjStockChangeRequestItem> ListInfo { get; set; }
+    }
+    public class FjStockChangeRequestItem
+    {
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        public string SpoolCode { get; set; }
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// 等级
+        /// </summary>
+        public string Grade { get; set; }
+        /// <summary>
+        /// 改判状态(锁定/放行/快投/取消快投:Lock/Normal/Fast/UnFast)
+        /// </summary>
+        public string State { get; set; }
+        /// <summary>
+        /// 原因
+        /// </summary>
+        public string Reason { get; set; }
+
+    }
+}

+ 35 - 0
wms.dto/request/fj/GetFJCurStockListRequest.cs

@@ -0,0 +1,35 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    /// <summary>
+    /// 实时库存查询请求实体
+    /// </summary>
+    public class GetFJCurStockListRequest
+    {
+        /// <summary>
+        /// 物料编码
+        /// </summary>
+        public string MatCode { get; set; }
+        /// <summary>
+        /// 物料名称
+        /// </summary>
+        public string MatName { get; set; }
+        /// <summary>
+        /// 请求条数
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public int ReqCount { get; set; }
+        /// <summary>
+        /// 当前页
+        /// </summary>
+        public int PageIndex { get; set; }
+        /// <summary>
+        /// 每页条数
+        /// </summary>
+        public int PageSize { get; set; }
+    }
+}

+ 75 - 0
wms.dto/request/fj/ManualBuildStockTransRequest.cs

@@ -0,0 +1,75 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class ManualBuildStockTransRequest:BaseRequest
+    {
+        /// <summary>
+        /// 托盘号
+        /// </summary>
+        public string PalletCode { get; set; }
+        /// <summary>
+        /// 货位
+        /// </summary>
+        public string LocCode { get; set; }
+        public List<ManualBuildStockTransRequestItem> ListInfo { get; set; }
+    }
+    public class ManualBuildStockTransRequestItem
+    { 
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        public string SpoolCode { get; set; }
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// 物料编码
+        /// </summary>
+        public string MatCode { get; set; }
+        /// <summary>
+        /// 类型
+        /// </summary>
+        public string BusType { get; set; }
+        /// <summary>
+        /// 工字轮型号
+        /// </summary>
+        public string SpoolType { get; set; }
+        /// <summary>
+        /// 生产日期
+        /// </summary>
+        public DateTime ProductDate { get; set; }
+        /// <summary>
+        /// 时效期
+        /// </summary>
+        public decimal HoldDuration { get; set; }
+        /// <summary>
+        /// 等级
+        /// </summary>
+        public string Grade { get; set; }
+        /// <summary>
+        /// 长度
+        /// </summary>
+        public decimal Length { get; set; }
+        /// <summary>
+        /// 重量
+        /// </summary>
+        public decimal Weight { get; set; }
+        /// <summary>
+        /// 高度
+        /// </summary>
+        public decimal Height { get; set; }
+        /// <summary>
+        /// 是否快投
+        /// </summary>
+        public bool IsFast { get; set; }
+        /// <summary>
+        /// 单/双丝
+        /// </summary>
+        public string SilkType { get; set; }
+
+    }
+}

+ 49 - 0
wms.dto/request/fj/ProductionLeftFeedBackRequest.cs

@@ -0,0 +1,49 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class ProductionLeftFeedBackRequest
+    {
+        /// <summary>
+        /// 退料单号
+        /// </summary>
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 操作类型(/2余料(退料不传工字轮信息,只传点位))
+        /// </summary>
+        public string BusType { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 仓库名称
+        /// </summary>
+        public string WareName { get; set; }
+        /// <summary>
+        /// 货位
+        /// </summary>
+        public string LocCode { get; set; }
+        /// <summary>
+        /// 过账凭证号
+        /// </summary>
+        public string ReqId { get; set; }
+        /// <summary>
+        /// 集合
+        /// </summary>
+        public List<ProductionLeftFeedBackRequestItem> ListInfo { get; set; }
+    }
+    public class ProductionLeftFeedBackRequestItem
+    {
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        public string SpoolCode { get; set; }
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+    }
+}

+ 74 - 0
wms.dto/request/fj/SpoolMaterialInfoTransRequest.cs

@@ -0,0 +1,74 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class SpoolMaterialInfoTransRequest:BaseRequest
+    {
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        public string SpoolCode { get; set; }
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// 物料编码
+        /// </summary>
+        public string MatCode { get; set; }
+        /// <summary>
+        /// 类型(1:湿拉半成品;2:芯股)
+        /// </summary>
+        public string BusType { get; set; }
+        /// <summary>
+        /// 工字轮型号
+        /// </summary>
+        public string SpoolType { get; set; }
+        /// <summary>
+        /// 生产日期
+        /// </summary>
+        public DateTime ProductDate { get; set; }
+        /// <summary>
+        /// 时效期
+        /// </summary>
+        public decimal HoldDuration { get; set; }
+        /// <summary>
+        /// 等级
+        /// </summary>
+        public string Grade { get; set; }
+        /// <summary>
+        /// 长度
+        /// </summary>
+        public decimal Length { get; set; }
+        /// <summary>
+        /// 重量
+        /// </summary>
+        public decimal Weight { get; set; }
+        /// <summary>
+        /// 高度
+        /// </summary>
+        public decimal Height { get; set; }
+        /// <summary>
+        /// 是否快投
+        /// </summary>
+        public bool IsFast { get; set; }
+        /// <summary>
+        /// 是否退料
+        /// </summary>
+        public bool IsBack { get; set; }
+        /// <summary>
+        /// 单/双丝
+        /// </summary>
+        public string SilkType { get; set; }
+        /// <summary>
+        /// 湿拉工序工单号
+        /// </summary>
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 生产订单号
+        /// </summary>
+        public string WorkOrder { get; set; }
+    }
+}

+ 40 - 0
wms.dto/request/fj/StockChangeFeedBackRequest.cs

@@ -0,0 +1,40 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class StockChangeFeedBackRequest
+    {
+
+        /// <summary>
+        /// 过账凭证号
+        /// </summary>
+        public string ReqId { get; set; }
+        /// <summary>
+        /// 单号
+        /// </summary>
+        public string BillCode { get; set; }
+     
+        public List<StockChangeFeedBackRequestItem> ListInfo { get; set; }
+    }
+    public class StockChangeFeedBackRequestItem
+    {
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        public string SpoolCode { get; set; }
+        /// <summary>
+        /// 改判结果
+        /// </summary>
+        public string ResState { get; set; }
+        /// <summary>
+        /// 原因
+        /// </summary>
+        public string ResDesc { get; set; }
+    }
+}

+ 42 - 0
wms.dto/request/fj/StockChangeStockInFeedBackRequest.cs

@@ -0,0 +1,42 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class StockChangeStockInFeedBackRequest
+    {
+        /// <summary>
+        /// 托盘号
+        /// </summary>
+        public string PalletCode { get; set; }
+        /// <summary>
+        /// 过账凭证号
+        /// </summary>
+        public string ReqId { get; set; }
+        /// <summary>
+        /// 货位
+        /// </summary>
+        public string LocCode { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 仓库名称
+        /// </summary>
+        public string WareName { get; set; }
+        public List<StockChangeStockInFeedBackRequestItem> ListInfo { get; set; }
+    }
+    public class StockChangeStockInFeedBackRequestItem
+    {
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        public string SpoolCode { get; set; }
+    }
+}

+ 34 - 0
wms.dto/request/fj/SyncMachineInfoRequest.cs

@@ -0,0 +1,34 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class SyncMachineInfoRequest
+    {
+        /// <summary>
+        /// 机台编号
+        /// </summary>
+        public string MacCode { get; set; }
+        /// <summary>
+        /// 机台组号
+        /// </summary>
+        public string MacGroup { get; set; }
+        /// <summary>
+        /// 当前页
+        /// </summary>
+        public int PageIndex { get; set; }
+        /// <summary>
+        /// 每页条数
+        /// </summary>
+        public int PageSize { get; set; }
+        /// <summary>
+        /// 开始时间
+        /// </summary>
+        public DateTime StartTime { get; set; }
+        /// <summary>
+        /// 结束时间
+        /// </summary>
+        public DateTime EndTime { get; set; }
+    }
+}

+ 31 - 0
wms.dto/request/fj/WetFormulaInfoRequest.cs

@@ -0,0 +1,31 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    /// <summary>
+    /// 配方信息请求实体
+    /// </summary>
+    public class WetFormulaInfoRequest:BaseRequest
+    {
+        /// <summary>
+        /// 投料信息编码
+        /// </summary>
+        public string FeedCode { get; set; }
+        /// <summary>
+        /// 帘线工序物料编码
+        /// </summary>
+        public string MaterialCode { get; set; }
+        /// <summary>
+        /// 湿拉物料信息列表
+        /// </summary>
+        public List<WetFormulaInfoItem> FeedList { get; set; }
+    }
+
+    public class WetFormulaInfoItem
+    {
+        public string MatCode { get; set; }
+        public int Count { get; set; }
+    }
+}

+ 38 - 0
wms.dto/request/fj/WetProductStockInFeedBackRequest.cs

@@ -0,0 +1,38 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.fj
+{
+    public class WetProductStockInFeedBackRequest
+    {
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 仓库名称
+        /// </summary>
+        public string WareName { get; set; }
+        /// <summary>
+        /// 货位编码
+        /// </summary>
+        public string LocCode { get; set; }
+        /// <summary>
+        /// 过账凭证号
+        /// </summary>
+        public string ReqId { get; set; }
+        public List<WetProductStockInFeedBackRequestItem> ListInfo { get; set; }
+    }
+    public class WetProductStockInFeedBackRequestItem
+    {
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// 工字轮条码
+        /// </summary>
+        public string SpoolCode { get; set; }
+    }
+}

+ 46 - 0
wms.dto/request/hj/AddJobRequest.cs

@@ -0,0 +1,46 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class AddJobRequest
+    {
+        public long Id { get; set; }
+        [Required(ErrorMessage = "{0} 必须填写")]
+        [MaxLength(200, ErrorMessage = "{0} 长度不可超过{1}")]
+        public string Code { get; set; }
+        [Required(ErrorMessage = "{0} 必须填写")]
+        [MaxLength(200, ErrorMessage = "{0} 长度不可超过{1}")]
+        public string Name { get; set; }
+        public string JobGroupName { get; set; }
+        [Required(ErrorMessage = "{0} 必须填写")]
+        [MaxLength(100, ErrorMessage = "{0} 长度不可超过{1}")]
+        public string JobType { get; set; }
+        public string JobDescription { get; set; }
+        public string TriggerName { get; set; }
+        public string TriggerGroupName { get; set; }
+        public string TriggerDescription { get; set; }
+        public string CronExpression { get; set; }
+        /// <summary>
+        /// 接口地址列
+        /// </summary>
+        public List<JobApiRelation> JobList { get; set; }
+    }
+    public class JobApiRelation
+    {
+        public long Id { get; set; }
+        public long JobId { get; set; }
+        /// <summary>
+        /// 接口地址
+        /// </summary>
+        [Required(ErrorMessage = "接口地址必须填写")]
+        public string ApiUrl { get; set; }
+        /// <summary>
+        /// 请求体
+        /// </summary>
+        [Required(ErrorMessage = "请求体必须填写")]
+        public string RequestBody { get; set; }
+    }
+}

+ 12 - 0
wms.dto/request/hj/AddWcsMoveTaskRequest.cs

@@ -0,0 +1,12 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class AddWcsMoveTaskRequest:BaseRequest
+    {
+
+        public int TaskNum { get; set; }
+    }
+}

+ 22 - 0
wms.dto/request/hj/ApplyEmptySpoolRequest.cs

@@ -0,0 +1,22 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    /// <summary>
+    /// 补空轮申请请求实体
+    /// </summary>
+    public class ApplyEmptySpoolRequest:BaseRequest
+    {
+        /// <summary>
+        /// 巷道
+        /// </summary>
+        public int Tunnel { get; set; }
+        /// <summary>
+        /// 出库位置
+        /// </summary>
+        public string OutEndPostion { get; set; }
+    }
+}

+ 25 - 0
wms.dto/request/hj/ApplyStockInLocRequest.cs

@@ -0,0 +1,25 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class ApplyStockInLocRequest:BaseRequest
+    {
+        /// <summary>
+        /// WMS任务号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public int TaskNum { get; set; }
+        /// <summary>
+        /// 巷道号
+        /// </summary>
+        public int TunnelNum { get; set; }
+        /// <summary>
+        /// 取货地点设备编号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string PickUpEquipmentNo { get; set; }
+    }
+}

+ 46 - 0
wms.dto/request/hj/ApplyStockInRequest.cs

@@ -0,0 +1,46 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request
+{
+    public class ApplyStockInRequestDto
+    {
+        /// <summary>
+        /// 任务号
+        /// </summary>
+        public int TaskNum { get; set; }
+        /// <summary>
+        /// 巷道号
+        /// </summary>
+        public int TunnelNum { get; set; }
+        /// <summary>
+        /// 取货地点设备编号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string PickUpEquipmentNo { get; set; }
+
+    }
+
+    public class ApplyStockInRequest
+    {
+        public long MaterialId { get; set; }
+        public long MaterialGroupId { get; set; }
+        public LocationType LocationType { get; set; }
+        public int Tunnel { get; set; }
+        public int Size { get; set; }
+        public string Grade { get; set; }
+        public long BatchId { get; set; }
+        public string MaterialState { get; set; }
+        public long WarehouseId { get; set; }
+        /// <summary>
+        /// 是否移库
+        /// </summary>
+        public bool IsMove { get; set; } = false;
+
+        public int IsAlreadyProduct { get; set; } = 0;
+        public string ShelfCode { get; set; }
+        public decimal Diameter { get; set; }
+    }
+}

+ 17 - 0
wms.dto/request/hj/ApplyStockOutRequest.cs

@@ -0,0 +1,17 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+using wms.dto.attribute;
+
+namespace wms.dto.request
+{
+    /// <summary>
+    /// 
+    /// </summary>
+    public class ApplyStockOutRequest
+    {
+        
+
+    }
+}

+ 40 - 0
wms.dto/request/hj/ApplyStockOutTaskRequest.cs

@@ -0,0 +1,40 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class ApplyStockOutTaskRequest
+    {
+
+        /// <summary>
+        /// 出库位置
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string OutEndPostion { get; set; }
+        /// <summary>
+        /// 出库类型(0.无效参数;1.物料出库;2.空托盘出库;)
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public int OutType { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string WarehouseCode { get; set; }
+
+        /// <summary>
+        /// 巷道
+        /// </summary>
+        public string Tunnel { get; set; }
+        /// <summary>
+        /// 备用
+        /// </summary>
+        public string Memo1 { get; set; }
+        /// <summary>
+        /// 备用
+        /// </summary>
+        public string Memo2 { get; set; }
+    }
+}

+ 62 - 0
wms.dto/request/hj/CopperLineAgvTaskStockInToIWmsRequest.cs

@@ -0,0 +1,62 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class CopperLineAgvTaskStockInToIWmsRequest
+    {
+        /// <summary>
+        /// 物料编码
+        /// </summary>
+        public string matCode { get; set; }
+        /// <summary>
+        /// 工作站编号
+        /// </summary>
+        public string workAreaCode { get; set; }
+        /// <summary>
+        /// 空/满工字轮标记(满工字轮:1空工字轮:0)
+        /// </summary>
+        public string outSpoolFull { get; set; }
+        /// <summary>
+        /// 取空补满标记
+        /// </summary>
+        public bool intoEmpty { get; set; }
+        /// <summary>
+        /// 湿拉出库标记
+        /// </summary>
+        public string wetOut { get; set; }
+        /// <summary>
+        /// 湿拉退料出库标记
+        /// </summary>
+        public string wetOutReturn { get; set; }
+        /// <summary>
+        /// 改手盘标记
+        /// </summary>
+        public string isSurplus { get; set; }
+        /// <summary>
+        /// 返工标记
+        /// </summary>
+        public string isRework { get; set; }
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string matNo { get; set; }
+        /// <summary>
+        /// RFID号
+        /// </summary>
+        public string spoolNo { get; set; }
+        /// <summary>
+        /// 质量状态标记
+        /// </summary>
+        public string gradeCode { get; set; }
+        /// <summary>
+        /// 快投标记
+        /// </summary>
+        public string matFast { get; set; }
+        /// <summary>
+        /// 任务号
+        /// </summary>
+        public string taskNo { get; set; }
+    }
+}

+ 82 - 0
wms.dto/request/hj/CopperLineAgvTaskStockOutToIWmsRequest.cs

@@ -0,0 +1,82 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class CopperLineAgvTaskStockOutToIWmsRequest
+    {
+        /// <summary>
+        /// 物料编码
+        /// </summary>
+        public string matCode { get; set; }
+        /// <summary>
+        /// 工作站编号(机台号、立库点位编号)
+        /// </summary>
+        public string wbCode { get; set; }
+        /// <summary>
+        /// 空/满工字轮入库标记(空工字轮:0,满工字轮:1,半工字轮:2)
+        /// </summary>
+        public string inSpoolFull { get; set; }
+        /// <summary>
+        /// 取满补空标记
+        /// </summary>
+        public bool getOutEmpty { get; set; }
+        /// <summary>
+        /// 湿拉上线标记
+        /// </summary>
+        public bool wetInto { get; set; }
+        /// <summary>
+        /// 湿拉特殊上线标记
+        /// </summary>
+        public bool wetIntoSpec { get; set; }
+        /// <summary>
+        /// 湿拉退料入库标记
+        /// </summary>
+        public bool wetIntoReturn { get; set; }
+        /// <summary>
+        /// 湿拉特殊上线点位号
+        /// </summary>
+        public string wetSpecWbCode { get; set; }
+        /// <summary>
+        /// 改手盘标记
+        /// </summary>
+        public string isSurplus { get; set; }
+        /// <summary>
+        /// 返工标记
+        /// </summary>
+        public string isRework { get; set; }
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string matNo { get; set; }
+        /// <summary>
+        /// RFID号
+        /// </summary>
+        public string spoolNo { get; set; }
+        /// <summary>
+        /// 质量状态标记
+        /// </summary>
+        public string gradeCode { get; set; }
+        /// <summary>
+        /// 快投标记
+        /// </summary>
+        public string matFast { get; set; }
+        /// <summary>
+        /// 长度
+        /// </summary>
+        public string orderProcessLenOut { get; set; }
+        /// <summary>
+        /// 任务号
+        /// </summary>
+        public string taskNo { get; set; }
+        /// <summary>
+        /// 退料原因
+        /// </summary>
+        public string returnDesc { get; set; }
+        /// <summary>
+        /// 是否锁定
+        /// </summary>
+        public string lockFlag { get; set; }
+    }
+}

+ 22 - 0
wms.dto/request/hj/CopperLineAgvTaskToRcsRequest.cs

@@ -0,0 +1,22 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class CopperLineAgvTaskToRcsRequest
+    {
+        /// <summary>
+        /// RFID
+        /// </summary>
+        public string RFID { get; set; }
+        /// <summary>
+        /// 起点位置
+        /// </summary>
+        public string StartPos { get; set; }
+        /// <summary>
+        /// 目标点位置
+        /// </summary>
+        public string EndPos { get; set; }
+    }
+}

+ 99 - 0
wms.dto/request/hj/CopperLineRequest.cs

@@ -0,0 +1,99 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request
+{
+    /// <summary>
+    /// 镀铜补空/取满指令请求实体(包含550工字轮)
+    /// </summary>
+    public class CopperLineRequest:BaseRequest
+    {
+        /// <summary>
+        /// 机台号(AGV站台号)
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string WbCode { get; set; }
+        /// <summary>
+        /// 指令类型(1补空;2取满;3补空取满;4:550工字轮;5:空轮初始化)
+        /// </summary>
+        public int BusType { get; set; }
+        /// <summary>
+        /// 满轮RFID
+        /// </summary>
+        public string RFID { get; set; }
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string? MatBarCode { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string WareCode { get; set; }
+
+        /// <summary>
+        /// 物料编码
+        /// </summary>
+        public string? MatCode { get; set; }
+        /// <summary>
+        /// 生产日期
+        /// </summary>
+        public string? ProductDate { get; set; }
+        /// <summary>
+        /// 是否快投
+        /// </summary>
+        public string? IsFast { get; set; }
+        /// <summary>
+        /// 工字轮类型
+        /// </summary>
+        public string? SpoolType { get; set; }
+        /// <summary>
+        /// 产线编码
+        /// </summary>
+        public string? ProductCode { get; set; }
+        /// <summary>
+        /// 订单号
+        /// </summary>
+        public string? OrderCode { get; set; }
+        /// <summary>
+        /// 工序订单号
+        /// </summary>
+        public string? WorkOrder { get; set; }
+        /// <summary>
+        /// 质量等级
+        /// </summary>
+        public string? Grade { get; set; }
+        /// <summary>
+        /// 长度
+        /// </summary>
+        public decimal? Length { get; set; }
+        /// <summary>
+        /// 更新时间
+        /// </summary>
+        public string? UpdatedTime { get; set; }
+        /// <summary>
+        /// 返工标记
+        /// </summary>
+        public string? IsRework { get; set; }
+        /// <summary>
+        /// 时效时长(小时)
+        /// </summary>
+        public decimal? HoldDuration { get; set; } = 0;
+        /// <summary>
+        /// 状态
+        /// </summary>
+        public string IsLock { get; set; }
+
+        /// <summary>
+        /// 是否越库(0入立库,1直接搬运至二楼)
+        /// </summary>
+        public int IsMove { get; set; } = 0;
+    }
+
+    public class CopperLineNewRequest
+    {
+        public List<CopperLineRequest> data { get; set; }
+    }
+}

+ 53 - 0
wms.dto/request/hj/CopperLineStockInFeedBackRequest.cs

@@ -0,0 +1,53 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    /// <summary>
+    /// 镀铜满轮入库/550工字轮入库反馈请求
+    /// </summary>
+    public class CopperLineStockInFeedBackRequest
+    {
+        public List<CopperLineStockInFeedBackItem> ListInfo { get; set; }
+    }
+    public class CopperLineStockInFeedBackItem
+    {
+        /// <summary>
+        /// 满轮RFID值
+        /// </summary>
+        public string RFID { get; set; }
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// 物料编码
+        /// </summary>
+        public string MatCode { get; set; }
+        /// <summary>
+        /// 总重量
+        /// </summary>
+        public decimal TolWeight { get; set; }
+        /// <summary>
+        /// 净重
+        /// </summary>
+        public decimal NetWeight { get; set; }
+        /// <summary>
+        /// 皮重
+        /// </summary>
+        public decimal TareWeight { get; set; }
+        /// <summary>
+        /// 货位编码
+        /// </summary>
+        public string LocCode { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 仓库名称
+        /// </summary>
+        public string WareName { get; set; }
+    }
+}

+ 23 - 0
wms.dto/request/hj/CopperLineToStockOutRequest.cs

@@ -0,0 +1,23 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class CopperLineToStockOutRequest:BaseRequest
+    {
+        /// <summary>
+        /// 物料编码
+        /// </summary>
+        public string MatCode { get; set; }
+        public string RFID { get; set; }
+        /// <summary>
+        /// 正常-1/锁定-2
+        /// </summary>
+        public string MoveType { get; set; }
+        /// <summary>
+        /// 点位号
+        /// </summary>
+        public string MachineCode { get; set; }
+    }
+}

+ 28 - 0
wms.dto/request/hj/CreateMoveWcsTaskRequest.cs

@@ -0,0 +1,28 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class CreateMoveWcsTaskRequest
+    {
+        /// <summary>
+        /// 容器条码
+        /// </summary>
+        public string ContGrpBarCode { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WarehouseCode { get; set; }
+        public decimal Qty { get; set; }
+
+        /// <summary>
+        /// 目标点位
+        /// </summary>
+        public string EndCellNo { get; set; }
+        public string Tunnel { get; set; }
+        public string FromCellNo { get; set; }
+        public string BusType { get; set; }
+
+    }
+}

+ 57 - 0
wms.dto/request/hj/CreateStockInWcsTaskRequest.cs

@@ -0,0 +1,57 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request
+{
+    public class CreateStockInWcsTaskRequest
+    {
+        /// <summary>
+        /// 容器条码
+        /// </summary>
+        public string ContGrpBarCode { get; set; }
+        /// <summary>
+        /// 主盘主表ID
+        /// </summary>
+        public long ContGrpId { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WarehouseCode { get; set; }
+        public decimal Qty { get; set; }
+        /// <summary>
+        /// 单据号
+        /// </summary>
+        public string DocCode { get; set; }
+        public long DocId { get; set; }
+        /// <summary>
+        /// 设备编号
+        /// </summary>
+        public string EquCode { get; set; }
+        /// <summary>
+        /// 业务类型
+        /// </summary>
+        public string BusType { get; set; }
+        public int Floor { get; set; }
+        public string ProLine { get; set; }
+        public string MatCode { get; set; }
+        public string MaterialCode { get; set; }
+
+        /// <summary>
+        /// 是否越库(0入立库,1直接搬运至二楼)
+        /// </summary>
+        public short IsDirMove { get; set; } = 0;
+
+        public string InvBarCode { get; set; }
+        public string Grade { get; set; }
+
+        public bool IsSurplus { get; set; }
+ 
+        public bool IsRework { get; set; }
+        public bool IsFast { get; set; }
+        /// <summary>
+        /// 请求编号
+        /// </summary>
+        public string ReqCode { get; set; }
+    }
+}

+ 74 - 0
wms.dto/request/hj/CreateStockOutWcsTaskRequest.cs

@@ -0,0 +1,74 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class CreateStockOutWcsTaskRequest
+    {
+        /// <summary>
+        /// 容器条码
+        /// </summary>
+        public string ContGrpBarCode { get; set; }
+        /// <summary>
+        /// 主盘主表ID
+        /// </summary>
+        public long ContGrpId { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        public string WarehouseCode { get; set; }
+        public decimal Qty { get; set; }
+
+        /// <summary>
+        /// 设备编号
+        /// </summary>
+        public string EquCode { get; set; }
+        /// <summary>
+        /// 业务类型
+        /// </summary>
+        public TaskBusType BusType { get; set; }
+        public int Floor { get; set; }
+        public string ProLine { get; set; }
+        public string Tunnel { get; set; }
+        public string CellNo { get; set; }
+
+        public string WorkBench { get; set; }
+
+        public string EndPos { get; set; } = "";
+
+        /// <summary> 
+        /// MatCode
+        /// </summary> 
+        public string MatCode { get; set; }
+
+        /// <summary> 
+        /// InvBarCode
+        /// </summary> 
+        public string InvBarCode { get; set; }
+        /// <summary> 
+        /// IsFast
+        /// </summary> 
+        public bool IsFast { get; set; }
+        /// <summary> 
+        /// Grade
+        /// </summary> 
+        public string Grade { get; set; }
+        /// <summary> 
+        /// IsSurplus
+        /// </summary> 
+        public bool IsSurplus { get; set; }
+        /// <summary> 
+        /// IsRework
+        /// </summary> 
+        public bool IsRework { get; set; }
+        /// <summary>
+        /// 优先级
+        /// </summary>
+        public int Priority { get; set; } = 0;
+        /// <summary>
+        /// 请求编号
+        /// </summary>
+        public string ReqCode { get; set; }
+    }
+}

+ 40 - 0
wms.dto/request/hj/DetailCodeRequest.cs

@@ -0,0 +1,40 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Runtime.CompilerServices;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class DetailCodeRequest
+    {
+        public string Code { get; set; }
+        public string? Cell { get; set; }
+        public int ContGrpType { get; set; }
+    }
+    public class WebErrorRequest
+    {
+        public string TaskNo { get; set; }
+    }
+    public class DetailCodeRequestdto
+    {
+        public string Code { get; set; }
+        public int State { get; set; }
+    }
+    /// <summary>
+    /// 货位数据互换
+    /// </summary>
+    public class DataSwapCellRequest
+    {
+        /// <summary>
+        /// 起始货位
+        /// </summary>
+        [Required(ErrorMessage = "{0} 起始货位不可为空")]
+        public string StatEquip { get; set; }
+        /// <summary>
+        /// 目标货位
+        /// </summary>
+        [Required(ErrorMessage = "{0} 目标货位不可为空")]
+        public string EndEquip { get; set; }
+    }
+}

+ 16 - 0
wms.dto/request/hj/DetailRequest2Str.cs

@@ -0,0 +1,16 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class DetailRequest2Str
+    {
+        public string Id { get; set; } = "0";
+    }
+
+    public class DetailListRequest2Str
+    {
+        public List<string> IdList { get; set; }
+    }
+}

+ 14 - 0
wms.dto/request/hj/GetBarCodeInfoRequest.cs

@@ -0,0 +1,14 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    /// <summary>
+    /// 条码信息查询请求
+    /// </summary>
+    public class GetBarCodeInfoRequest
+    {
+        public List<string> BarCodeList { get; set; }
+    }
+}

+ 35 - 0
wms.dto/request/hj/GetCurStockListRequest.cs

@@ -0,0 +1,35 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    /// <summary>
+    /// 实时库存查询请求实体
+    /// </summary>
+    public class GetCurStockListRequest
+    {
+        /// <summary>
+        /// 物料编码
+        /// </summary>
+        public string MatCode { get; set; }
+        /// <summary>
+        /// 物料名称
+        /// </summary>
+        public string MatName { get; set; }
+        /// <summary>
+        /// 请求条数
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public int ReqCount { get; set; }
+        /// <summary>
+        /// 当前页
+        /// </summary>
+        public int PageIndex { get; set; }
+        /// <summary>
+        /// 每页条数
+        /// </summary>
+        public int PageSize { get; set; }
+    }
+}

+ 16 - 0
wms.dto/request/hj/GetSysJobListRequest.cs

@@ -0,0 +1,16 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class GetSysJobListRequest:BaseRequest
+    {
+        public string Code { get; set; } = "";
+        public string Name { get; set; } = "";
+        public string JobGroupName { get; set; } = "";
+        public string JobType { get; set; } = "";
+        public string TriggerName { get; set; } = "";
+        public string CronExpression { get; set; } = "";
+    }
+}

+ 10 - 0
wms.dto/request/hj/GetTunnelEmptyConCountRequest.cs

@@ -0,0 +1,10 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class GetTunnelEmptyConCountRequest
+    {
+    }
+}

+ 24 - 0
wms.dto/request/hj/GetTunnelListRequest.cs

@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class GetTunnelListRequest
+    {
+        /// <summary>
+        /// WMS任务号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public int TaskNum { get; set; }
+        /// <summary>
+        /// 备用
+        /// </summary>
+        public string Memo1 { get; set; }
+        /// <summary>
+        /// 备用
+        /// </summary>
+        public string Memo2 { get; set; }
+    }
+}

+ 117 - 0
wms.dto/request/hj/HjMaterialStockInRequest.cs

@@ -0,0 +1,117 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class HjMaterialStockInRequest
+    {
+        /// <summary>
+        /// 楼层
+        /// </summary>
+        public int Floor { get; set; }
+
+        /// <summary>
+        /// 机台号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string WbCode { get; set; }
+        /// <summary>
+        /// 指令类型(1补空;2取满;3补空取满;4:550工字轮)----镀铜入库
+        /// 指令类型 1退料2余料3空轮----湿拉退料
+        /// </summary>
+        public int BusType { get; set; }
+        /// <summary>
+        /// 满轮RFID
+        /// </summary>
+        public string RFID { get; set; }
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string WareCode { get; set; }
+
+        /// <summary>
+        /// 物料编码
+        /// </summary>
+        public string MatCode { get; set; }
+        /// <summary>
+        /// 生产日期
+        /// </summary>
+        public string ProductDate { get; set; }
+        /// <summary>
+        /// 是否快投
+        /// </summary>
+        public string IsFast { get; set; }
+        /// <summary>
+        /// 工字轮类型
+        /// </summary>
+        public string SpoolType { get; set; }
+        /// <summary>
+        /// 产线编码
+        /// </summary>
+        public string ProductCode { get; set; }
+        /// <summary>
+        /// 订单号
+        /// </summary>
+        public string OrderCode { get; set; }
+        /// <summary>
+        /// 工序订单号
+        /// </summary>
+        public string WorkOrder { get; set; }
+        /// <summary>
+        /// 质量等级
+        /// </summary>
+        public string Grade { get; set; }
+        /// <summary>
+        /// 长度
+        /// </summary>
+        public decimal Length { get; set; }
+        /// <summary>
+        /// 更新时间
+        /// </summary>
+        public string UpdatedTime { get; set; }
+        /// <summary>
+        /// 返工标记
+        /// </summary>
+        public string IsRework { get; set; }
+ 
+        /// <summary>
+        /// 起始点位 指令类型1,2时必传
+        /// </summary>
+        public string StartLoc { get; set; }
+ 
+        /// <summary>
+        /// 退料原因 连断/夹丝/锈蚀;指令类型1时必传
+        /// </summary>
+        public string Reason { get; set; }
+ 
+        /// <summary>
+        /// 是否锁定
+        /// </summary>
+        public string IsLock { get; set; }
+        /// <summary>
+        /// 数量
+        /// </summary>
+        public decimal Qty { get; set; }
+        /// <summary>
+        /// 时效时长(小时)
+        /// </summary>
+        public decimal? HoldDuration { get; set; } = 0;
+
+        /// <summary>
+        /// 是否越库(0入立库,1直接搬运至二楼)
+        /// </summary>
+        public short IsMove { get; set; } = 0;
+
+        /// <summary>
+        /// 请求编号
+        /// </summary>
+        public string ReqCode { get; set; }
+    }
+}

+ 40 - 0
wms.dto/request/hj/MoveStockFeedBackRequest.cs

@@ -0,0 +1,40 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    /// <summary>
+    /// 移库货位上报MES请求
+    /// </summary>
+    public class MoveStockFeedBackRequest
+    {
+        /// <summary>
+        /// 列表
+        /// </summary>
+        public List<MoveStockFeedBackRequestItem> ListInfo { get; set; }
+        public string WareCode { get; set; }
+    }
+    public class MoveStockFeedBackRequestItem
+    {
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// RFID值
+        /// </summary>
+        public string RFID { get; set; }
+        /// <summary>
+        /// 起点货位
+        /// </summary>
+        public string StartLoc { get; set; }
+        /// <summary>
+        /// 目标货位
+        /// </summary>
+        public string EndLoc { get; set; }
+        public string WareCode { get; set; }
+
+
+    }
+}

+ 44 - 0
wms.dto/request/hj/RfidCheckDiffRequest.cs

@@ -0,0 +1,44 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    /// <summary>
+    /// 复核异常上报请求实体
+    /// </summary>
+    public class RfidCheckDiffRequest
+    {
+        /// <summary>
+        /// RFID
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string RFID { get; set; }
+        /// <summary>
+        /// OrgRFID
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string OrgRFID { get;set; }
+        /// <summary>
+        /// 任务号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string TaskNo { get; set; }
+        /// <summary>
+        /// 异常信息
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string ErrMsg { get; set; }
+        /// <summary>
+        /// 异常点位
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string ErrLoc { get; set; }
+        /// <summary>
+        /// 起始点位
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string StartLoc { get; set; }
+    }
+}

+ 39 - 0
wms.dto/request/hj/SpecialPickMaterApplyRequest.cs

@@ -0,0 +1,39 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    /// <summary>
+    /// 特殊出库领料申请请求实体
+    /// </summary>
+    public class SpecialPickMaterApplyRequest:BaseRequest
+    {
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// RFID值
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string RFID { get; set; }
+        /// <summary>
+        /// 物料编码
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string MatCode { get; set; }
+        /// <summary>
+        /// 目标位号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string WbCode { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string WareCode { get; set; }
+    }
+}

+ 29 - 0
wms.dto/request/hj/SpecialPickMaterFeedBackRequest.cs

@@ -0,0 +1,29 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    /// <summary>
+    /// 特殊出库领料反馈请求
+    /// </summary>
+    public class SpecialPickMaterFeedBackRequest
+    {
+       public List<SpecialPickMaterFeedBackRequestItem> ListInfo { get; set; }
+    }
+    public class SpecialPickMaterFeedBackRequestItem
+    {
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// RFID值
+        /// </summary>
+        public string RFID { get; set; }
+        /// <summary>
+        /// 物料编码
+        /// </summary>
+        public string MatCode { get; set; }
+    }
+}

+ 16 - 0
wms.dto/request/hj/SrmPickOutCompletedRequest.cs

@@ -0,0 +1,16 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class SrmPickOutCompletedRequest
+    {
+        /// <summary>
+        /// WMS任务号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public int TaskNum { get; set; }
+    }
+}

+ 50 - 0
wms.dto/request/hj/StockChangeFeedBackRequest.cs

@@ -0,0 +1,50 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    /// <summary>
+    /// 库存改判反馈请求实体
+    /// </summary>
+    public class StockChangeFeedBackRequest
+    {
+        /// <summary>
+        /// 单号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 改判结果列表
+        /// </summary>
+        public List<StockChangeRequestItem> ListInfo { get; set; } 
+    }
+    //public class ListInfoItem
+    //{
+    //    /// <summary>
+    //    /// RFID值
+    //    /// </summary>
+    //    public string RFID { get; set; }
+    //    /// <summary>
+    //    /// 材料号
+    //    /// </summary>
+    //    public string MatBarCode { get; set; }
+    //    /// <summary>
+    //    /// 改判状态
+    //    /// </summary>
+    //    public string State { get; set; }
+    //    /// <summary>
+    //    /// 等级
+    //    /// </summary>
+    //    public string Grade { get; set; }
+    //    /// <summary>
+    //    /// 原因
+    //    /// </summary>
+    //    public string Reason { get; set; }
+    //    /// <summary>
+    //    /// 仓库编码
+    //    /// </summary>
+    //    public string WareCode { get; set; }
+    //}
+}

+ 64 - 0
wms.dto/request/hj/StockChangeRequest.cs

@@ -0,0 +1,64 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    /// <summary>
+    /// 库存改判请求实体
+    /// </summary>
+    public class StockChangeRequest:BaseRequest
+    {
+        /// <summary>
+        /// 单号
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string BillCode { get; set; }
+        /// <summary>
+        /// 仓库编码
+        /// </summary>
+        [Required(ErrorMessage = "{0} 不可为空")]
+        public string WareCode { get; set; }
+        /// <summary>
+        /// 改判信息列表
+        /// </summary>
+        public List<StockChangeRequestItem> ListInfo { get; set; } 
+    }
+    public class StockChangeRequestItem
+    {
+        /// <summary>
+        /// RFID值
+        /// </summary>
+        public string RFID { get; set; }
+        /// <summary>
+        /// 材料号
+        /// </summary>
+        public string MatBarCode { get; set; }
+        /// <summary>
+        /// 物料编码
+        /// </summary>
+        public string MatCode { get; set; }
+        /// <summary>
+        /// 改判状态
+        /// </summary>
+        public string State { get; set; }
+        /// <summary>
+        /// 等级
+        /// </summary>
+        public string Grade { get; set; }
+        /// <summary>
+        /// 原因
+        /// </summary>
+        public string Reason { get; set; }
+        /// <summary>
+        /// 改判结果(反馈时使用)
+        /// </summary>
+        public string? ResState { get; set; }
+        /// <summary>
+        /// 原因 (反馈时使用)
+        /// </summary>
+        public string? ResDesc { get; set; }
+        public string? HoldDuration { get; set; }
+    }
+}

+ 14 - 0
wms.dto/request/hj/StockOutFeedBackRequest.cs

@@ -0,0 +1,14 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace wms.dto.request.hj
+{
+    public class StockOutFeedBackRequest
+    {
+        public string RFID { get; set; }
+        public string MatBarCode { get; set; }
+        public string MoveLoc { get; set; }
+        public string MoveTime { get; set; }
+    }
+}

Kaikkia tiedostoja ei voida näyttää, sillä liian monta tiedostoa muuttui tässä diffissä