From 661e24b717604dfc5c0f1c6385931943c2a9192e Mon Sep 17 00:00:00 2001
From: zjh <2207896513@qq.com>
Date: 星期六, 02 八月 2025 18:04:21 +0800
Subject: [PATCH] 代码提交
---
StandardPda/MES.Service/Modes/MesItemQtrrDetail.cs | 118 ++
StandardPda/MES.Service/Modes/MesItemQtDatall.cs | 122 ++
StandardPda/MESApplication/Controllers/Warehouse/womdaaController.cs | 113 ++
StandardPda/MESApplication/Controllers/Warehouse/MesItemQtrkController.cs | 214 ++++
StandardPda/MESApplication/Controllers/Warehouse/MesItemQtController.cs | 216 ++++
StandardPda/MES.Service/Dto/service/MesMiddleBox.cs | 43
StandardPda/MES.Service/service/Warehouse/MesItemQtManager.cs | 430 ++++++++
StandardPda/MES.Service/Modes/MesItemQtrk.cs | 162 +++
StandardPda/MES.Service/Dto/service/MesItemQtFrom.cs | 193 +++
StandardPda/MES.Service/Dto/service/MesItemQtRKList.cs | 103 ++
StandardPda/MES.Service/Dto/service/AsnInfo.cs | 38
StandardPda/MES.Service/Dto/service/MesItemQtDto.cs | 9
StandardPda/MES.Service/service/Warehouse/MesItemQtrkManager.cs | 424 ++++++++
StandardPda/MES.Service/Dto/service/MesItemQtRKFrom.cs | 188 +++
StandardPda/MES.Service/service/Warehouse/WomdaaManager.cs | 281 +++++
StandardPda/MES.Service/Dto/service/MesPalletBinding.cs | 50
StandardPda/MES.Service/Dto/service/MesItemQtRKDto.cs | 9
StandardPda/MES.Service/DB/OracleSQLHelper.cs | 19
StandardPda/MES.Service/Dto/service/MesItemQtList.cs | 99 +
StandardPda/MES.Service/Modes/MesItemQt.cs | 171 +++
20 files changed, 2,988 insertions(+), 14 deletions(-)
diff --git a/StandardPda/MES.Service/DB/OracleSQLHelper.cs b/StandardPda/MES.Service/DB/OracleSQLHelper.cs
index 9a36dba..ae4fccc 100644
--- a/StandardPda/MES.Service/DB/OracleSQLHelper.cs
+++ b/StandardPda/MES.Service/DB/OracleSQLHelper.cs
@@ -228,4 +228,23 @@
// }
// return result;
// }
+ // 鎵撳紑杩炴帴骞跺紑鍚簨鍔�
+ public (OracleConnection, OracleTransaction) BeginTransaction()
+ {
+ var connection = new OracleConnection(_connectionString);
+ connection.Open();
+ var transaction = connection.BeginTransaction();
+ return (connection, transaction);
+ }
+
+ // 鍏抽棴杩炴帴锛堟彁浜ゆ垨鍥炴粴鍚庣敤锛�
+ public void CloseConnection(OracleConnection connection)
+ {
+ if (connection != null && connection.State != ConnectionState.Closed)
+ {
+ connection.Close();
+ connection.Dispose();
+ }
+ }
+
}
\ No newline at end of file
diff --git a/StandardPda/MES.Service/Dto/service/AsnInfo.cs b/StandardPda/MES.Service/Dto/service/AsnInfo.cs
index f21dd93..decf16a 100644
--- a/StandardPda/MES.Service/Dto/service/AsnInfo.cs
+++ b/StandardPda/MES.Service/Dto/service/AsnInfo.cs
@@ -19,6 +19,44 @@
/// </summary>
public string snState { get; set; }
+ /// <summary>
+ /// 浜ф祴鐧婚檰鍙�
+ /// </summary>
+ public string loginId { get; set; }
+ /// <summary>
+ /// 澶辫触椤圭洰
+ /// </summary>
+ public List<CcFailItems> failItems { get; set; }
+
}
+ /// <summary>
+ /// 浜ф祴SN澶辫触椤规槑缁嗚〃
+ /// </summary>
+ public class CcFailItems
+ {
+
+ /// <summary>
+ /// 涓嶈壇闂
+ /// </summary>
+ public string DefectIssue { get; set; }
+
+ /// <summary>
+ /// 鍒濇鍘熷洜
+ /// </summary>
+ public string RootCause { get; set; }
+
+ /// <summary>
+ /// 缁翠慨鏂规/鏂规硶
+ /// </summary>
+ public string RepairMethod { get; set; }
+
+ /// <summary>
+ /// 涓嶈壇鐗╂枡澶勭悊
+ /// </summary>
+ public string MaterialHandling { get; set; }
+
+
+ }
+
}
diff --git a/StandardPda/MES.Service/Dto/service/MesItemQtDto.cs b/StandardPda/MES.Service/Dto/service/MesItemQtDto.cs
new file mode 100644
index 0000000..9c018db
--- /dev/null
+++ b/StandardPda/MES.Service/Dto/service/MesItemQtDto.cs
@@ -0,0 +1,9 @@
+锘縩amespace MES.Service.Dto.service
+{
+ public class MesItemQtDto
+ {
+ public MesItemQtFrom from { get; set; }
+
+ public List<MesItemQtList> items { get; set; }
+ }
+}
diff --git a/StandardPda/MES.Service/Dto/service/MesItemQtFrom.cs b/StandardPda/MES.Service/Dto/service/MesItemQtFrom.cs
new file mode 100644
index 0000000..54809b1
--- /dev/null
+++ b/StandardPda/MES.Service/Dto/service/MesItemQtFrom.cs
@@ -0,0 +1,193 @@
+锘縩amespace MES.Service.Dto.service
+{
+ public class MesItemQtFrom
+ {
+
+ public string Type { get; set; }
+ /// <summary>
+ /// 鐢宠鍗曞彿
+ /// </summary>
+ public string ApplyNumber { get; set; }
+
+ /// <summary>
+ /// 鐢宠鏃ユ湡
+ /// </summary>
+ public DateTime? ApplyDate { get; set; }
+
+ /// <summary>
+ /// 瀹℃牳鏃ユ湡
+ /// </summary>
+ public DateTime? AuditDate { get; set; }
+
+ /// <summary>
+ /// 鍗曟嵁绫诲瀷
+ /// </summary>
+ public string DocumentType { get; set; }
+
+ /// <summary>
+ /// 涓氬姟绫诲瀷
+ /// </summary>
+ public string BusinessType { get; set; }
+
+ /// <summary>
+ /// 鍒跺崟浜�
+ /// </summary>
+ public string CreatedBy { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇宸ュ崟
+ /// </summary>
+ public string WorkOrder { get; set; }
+
+ /// <summary>
+ /// 鍙戞枡浠撳簱
+ /// </summary>
+ public string FromWarehouse { get; set; }
+
+ /// <summary>
+ /// 鐢宠閮ㄩ棬
+ /// </summary>
+ public string ApplyDept { get; set; }
+
+ /// <summary>
+ /// 鍑哄簱绫诲瀷
+ /// </summary>
+ public string StockOutType { get; set; }
+
+ /// <summary>
+ /// 浠撳簱缂栫爜
+ /// </summary>
+ public string WarehouseCode { get; set; }
+
+ /// <summary>
+ /// 閮ㄩ棬缂栫爜
+ /// </summary>
+ public string DeptCode { get; set; }
+
+ /// <summary>
+ /// 鍑哄簱鏁伴噺
+ /// </summary>
+ public decimal Quantity { get; set; }
+
+ /// <summary>
+ /// 瀹℃牳浜�
+ /// </summary>
+ public string Auditor { get; set; }
+
+ /// <summary>
+ /// 浠诲姟鍗曞彿
+ /// </summary>
+ public string TaskNumber { get; set; }
+
+ /// <summary>
+ /// 渚涘簲鍟嗙紪鐮�
+ /// </summary>
+ public string SupplierCode { get; set; }
+
+ /// <summary>
+ /// 鍑哄簱鏂瑰悜锛堥��璐э紝鏅�氾級
+ /// </summary>
+ public string Direction { get; set; }
+
+ /// <summary>
+ /// 璐т富绫诲瀷
+ /// </summary>
+ public string OwnerType { get; set; }
+
+ /// <summary>
+ /// 鍑哄簱鍘熷洜
+ /// </summary>
+ public string Reason { get; set; }
+
+ /// <summary>
+ /// 瀹㈡埛缂栫爜
+ /// </summary>
+ public string CustomerCode { get; set; }
+
+ /// <summary>
+ /// 棰嗘枡浜�
+ /// </summary>
+ public string Receiver { get; set; }
+
+ /// <summary>
+ /// 閮ㄩ棬
+ /// </summary>
+ public string Department { get; set; }
+
+ /// <summary>
+ /// 搴撶鍛�
+ /// </summary>
+ public string StockKeeper { get; set; }
+
+ /// <summary>
+ /// 鏉ユ簮绫诲埆
+ /// </summary>
+ public string SourceType { get; set; }
+
+ /// <summary>
+ /// 鏉ユ簮鍗曟嵁
+ /// </summary>
+ public string SourceDocument { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇鐩稿叧
+ /// </summary>
+ public string ProductionRelated { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇绾挎棩璁″垝
+ /// </summary>
+ public string ProductionLine { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇娲诲姩
+ /// </summary>
+ public string ProductionActivity { get; set; }
+
+ /// <summary>
+ /// 浜ф垚鍝�
+ /// </summary>
+ public string FinishedGoods { get; set; }
+
+ /// <summary>
+ /// 閫嗗悜鐧昏处
+ /// </summary>
+ public string ReversePosting { get; set; }
+
+ /// <summary>
+ /// 璁拌处鏈熼棿
+ /// </summary>
+ public string AccountingPeriod { get; set; }
+
+ /// <summary>
+ /// 鍛樺伐
+ /// </summary>
+ public string Employee { get; set; }
+
+ /// <summary>
+ /// 鍋囬��鏂�
+ /// </summary>
+ public string FalseReturn { get; set; }
+
+ /// <summary>
+ /// 椤圭洰
+ /// </summary>
+ public string ProjectCode { get; set; }
+
+ /// <summary>
+ /// 浠诲姟
+ /// </summary>
+ public string TaskCode { get; set; }
+
+ /// <summary>
+ /// 鐘舵��
+ /// </summary>
+ public string Status { get; set; }
+
+ /// <summary>
+ /// 璐т富缁勭粐
+ /// </summary>
+ public string OwnerOrganization { get; set; }
+
+ }
+}
diff --git a/StandardPda/MES.Service/Dto/service/MesItemQtList.cs b/StandardPda/MES.Service/Dto/service/MesItemQtList.cs
new file mode 100644
index 0000000..278ef10
--- /dev/null
+++ b/StandardPda/MES.Service/Dto/service/MesItemQtList.cs
@@ -0,0 +1,99 @@
+锘縩amespace MES.Service.Dto.service
+{
+ public class MesItemQtList
+ {
+
+
+ /// <summary>
+ /// 鐗╂枡缂栧彿
+ /// </summary>
+ public string ItemId { get; set; }
+
+ /// <summary>
+ /// 璁″垝鏁伴噺
+ /// </summary>
+ public decimal PlannedQuantity { get; set; }
+
+ /// <summary>
+ /// 鐢宠鏁伴噺
+ /// </summary>
+ public decimal AppliedQuantity { get; set; }
+
+
+
+ /// <summary>
+ /// 澶囨敞璇存槑
+ /// </summary>
+ public string Remark { get; set; }
+
+ /// <summary>
+ /// 琛屽彿(鐗╂枡椤哄簭)
+ /// </summary>
+ public int? LineNumber { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇鐩稿叧
+ /// </summary>
+ public string ProductionRelated { get; set; }
+
+ /// <summary>
+ /// 瀛樺偍绫诲瀷
+ /// </summary>
+ public string StorageType { get; set; }
+
+ /// <summary>
+ /// 璐т富缁勭粐
+ /// </summary>
+ public string OwnerOrganization { get; set; }
+
+ /// <summary>
+ /// 瀛樺偍鍦扮偣
+ /// </summary>
+ public string StorageLocation { get; set; }
+
+ /// <summary>
+ /// 渚涘簲鍟嗙紪鐮�
+ /// </summary>
+ public string SupplierCode { get; set; }
+
+ /// <summary>
+ /// 瀹㈡埛缂栫爜
+ /// </summary>
+ public string CustomerCode { get; set; }
+
+ /// <summary>
+ /// 鍏宠仈椤圭洰缂栫爜
+ /// </summary>
+ public string ProjectCode { get; set; }
+
+ /// <summary>
+ /// 鍏宠仈浠诲姟缂栫爜
+ /// </summary>
+ public string TaskCode { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇璁㈠崟鍙�
+ /// </summary>
+ public string ProductionOrder { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇绾挎棩璁″垝缂栧彿
+ /// </summary>
+ public string DailyPlan { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇娲诲姩
+ /// </summary>
+ public string ProductionActivity { get; set; }
+
+ /// <summary>
+ /// 浜ф垚鍝佺紪鐮�
+ /// </summary>
+ public string FinishedProduct { get; set; }
+
+ /// <summary>
+ /// 棰嗘枡鐢ㄩ��
+ /// </summary>
+ public string PickingUsage { get; set; }
+ }
+}
diff --git a/StandardPda/MES.Service/Dto/service/MesItemQtRKDto.cs b/StandardPda/MES.Service/Dto/service/MesItemQtRKDto.cs
new file mode 100644
index 0000000..e9e82e8
--- /dev/null
+++ b/StandardPda/MES.Service/Dto/service/MesItemQtRKDto.cs
@@ -0,0 +1,9 @@
+锘縩amespace MES.Service.Dto.service
+{
+ public class MesItemQtRKDto
+ {
+ public MesItemQtRKFrom from { get; set; }
+
+ public List<MesItemQtRKList> items { get; set; }
+ }
+}
diff --git a/StandardPda/MES.Service/Dto/service/MesItemQtRKFrom.cs b/StandardPda/MES.Service/Dto/service/MesItemQtRKFrom.cs
new file mode 100644
index 0000000..f78ba74
--- /dev/null
+++ b/StandardPda/MES.Service/Dto/service/MesItemQtRKFrom.cs
@@ -0,0 +1,188 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace MES.Service.Dto.service
+{
+ public class MesItemQtRKFrom
+ {
+ public string Type { get; set; }
+
+ /// <summary>
+ /// 鐢宠鍗曞彿
+ /// </summary>
+ public string ApplyNumber { get; set; }
+
+ /// <summary>
+ /// 鐢宠鏃ユ湡
+ /// </summary>
+ public DateTime? ApplyDate { get; set; }
+
+ /// <summary>
+ /// 瀹℃牳鏃ユ湡
+ /// </summary>
+ public DateTime? AuditDate { get; set; }
+
+ /// <summary>
+ /// 鍗曟嵁绫诲瀷
+ /// </summary>
+ public string DocumentType { get; set; }
+
+ /// <summary>
+ /// 鍏ュ簱绫诲瀷
+ /// </summary>
+ public string StockInType { get; set; }
+
+ /// <summary>
+ /// 鍒跺崟浜�
+ /// </summary>
+ public string CreatedBy { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇宸ュ崟
+ /// </summary>
+ public string WorkOrder { get; set; }
+
+ /// <summary>
+ /// 鍙戞枡浠撳簱
+ /// </summary>
+ public string FromWarehouse { get; set; }
+
+ /// <summary>
+ /// 鐢宠閮ㄩ棬
+ /// </summary>
+ public string ApplyDept { get; set; }
+
+ /// <summary>
+ /// 鍏ュ簱鍘熷洜
+ /// </summary>
+ public string Reason { get; set; }
+
+ /// <summary>
+ /// 浠撳簱缂栫爜
+ /// </summary>
+ public string WarehouseCode { get; set; }
+
+ /// <summary>
+ /// 閮ㄩ棬缂栫爜
+ /// </summary>
+ public string DeptCode { get; set; }
+
+ /// <summary>
+ /// 瀹℃牳浜�
+ /// </summary>
+ public string Auditor { get; set; }
+
+ /// <summary>
+ /// 浠诲姟鍗曞彿
+ /// </summary>
+ public string TaskNumber { get; set; }
+
+ /// <summary>
+ /// 渚涘簲鍟嗙紪鐮�
+ /// </summary>
+ public string SupplierCode { get; set; }
+
+ /// <summary>
+ /// 鍏ュ簱鏂瑰悜锛堥��璐э紝鏅�氾級
+ /// </summary>
+ public string Direction { get; set; }
+
+ /// <summary>
+ /// 璐т富绫诲瀷(缁勭粐銆佷緵搴斿晢銆佸鎴�)
+ /// </summary>
+ public string OwnerType { get; set; }
+
+ /// <summary>
+ /// 瀹㈡埛
+ /// </summary>
+ public string CustomerCode { get; set; }
+
+ /// <summary>
+ /// 鍏ュ簱浜�
+ /// </summary>
+ public string Receiver { get; set; }
+
+ /// <summary>
+ /// 閮ㄩ棬
+ /// </summary>
+ public string Department { get; set; }
+
+ /// <summary>
+ /// 搴撶鍛�
+ /// </summary>
+ public string StockKeeper { get; set; }
+
+ /// <summary>
+ /// 鏉ユ簮绫诲埆
+ /// </summary>
+ public string SourceType { get; set; }
+
+ /// <summary>
+ /// 鏉ユ簮鍗曟嵁
+ /// </summary>
+ public string SourceDocument { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇鐩稿叧
+ /// </summary>
+ public string ProductionRelated { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇绾挎棩璁″垝
+ /// </summary>
+ public string ProductionLine { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇娲诲姩
+ /// </summary>
+ public string ProductionActivity { get; set; }
+
+ /// <summary>
+ /// 浜ф垚鍝�
+ /// </summary>
+ public string FinishedGoods { get; set; }
+
+ /// <summary>
+ /// 閫嗗悜鐧昏处
+ /// </summary>
+ public string ReversePosting { get; set; }
+
+ /// <summary>
+ /// 璁拌处鏈熼棿
+ /// </summary>
+ public string AccountingPeriod { get; set; }
+
+ /// <summary>
+ /// 鍛樺伐
+ /// </summary>
+ public string Employee { get; set; }
+
+ /// <summary>
+ /// 鍋囬��鏂�
+ /// </summary>
+ public string FalseReturn { get; set; }
+
+ /// <summary>
+ /// 椤圭洰
+ /// </summary>
+ public string ProjectCode { get; set; }
+
+ /// <summary>
+ /// 浠诲姟
+ /// </summary>
+ public string TaskCode { get; set; }
+
+ /// <summary>
+ /// 鐘舵��
+ /// </summary>
+ public string Status { get; set; }
+
+ /// <summary>
+ /// 璐т富缁勭粐
+ /// </summary>
+ public string OwnerOrganization { get; set; }
+ }
+}
diff --git a/StandardPda/MES.Service/Dto/service/MesItemQtRKList.cs b/StandardPda/MES.Service/Dto/service/MesItemQtRKList.cs
new file mode 100644
index 0000000..f98b441
--- /dev/null
+++ b/StandardPda/MES.Service/Dto/service/MesItemQtRKList.cs
@@ -0,0 +1,103 @@
+锘縩amespace MES.Service.Dto.service
+{
+ public class MesItemQtRKList
+ {
+
+
+ /// <summary>
+ /// 鐗╂枡缂栧彿
+ /// </summary>
+ public string ItemId { get; set; }
+
+ /// <summary>
+ /// 璁″垝鏁伴噺
+ /// </summary>
+ public decimal PlannedQuantity { get; set; }
+
+ /// <summary>
+ /// 鐢宠鏁伴噺
+ /// </summary>
+ public decimal AppliedQuantity { get; set; }
+
+ /// <summary>
+ /// 宸插叆搴撴暟閲忥紙榛樿鍊硷細0锛�
+ /// </summary>
+ public decimal ReceivedQuantity { get; set; } = 0;
+
+
+ /// <summary>
+ /// 澶囨敞璇存槑
+ /// </summary>
+ public string Remark { get; set; }
+
+
+
+ /// <summary>
+ /// 琛屽彿(鐗╂枡椤哄簭)
+ /// </summary>
+ public int? LineNumber { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇鐩稿叧
+ /// </summary>
+ public string ProductionRelated { get; set; }
+
+ /// <summary>
+ /// 瀛樺偍绫诲瀷
+ /// </summary>
+ public string StorageType { get; set; }
+
+ /// <summary>
+ /// 璐т富缁勭粐
+ /// </summary>
+ public string OwnerOrganization { get; set; }
+
+ /// <summary>
+ /// 瀛樺偍鍦扮偣
+ /// </summary>
+ public string StorageLocation { get; set; }
+
+ /// <summary>
+ /// 渚涘簲鍟嗙紪鐮�
+ /// </summary>
+ public string SupplierCode { get; set; }
+
+ /// <summary>
+ /// 瀹㈡埛缂栫爜
+ /// </summary>
+ public string CustomerCode { get; set; }
+
+ /// <summary>
+ /// 鍏宠仈椤圭洰缂栫爜
+ /// </summary>
+ public string ProjectCode { get; set; }
+
+ /// <summary>
+ /// 鍏宠仈浠诲姟缂栫爜
+ /// </summary>
+ public string TaskCode { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇璁㈠崟鍙�
+ /// </summary>
+ public string ProductionOrder { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇绾挎棩璁″垝缂栧彿
+ /// </summary>
+ public string DailyPlan { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇娲诲姩
+ /// </summary>
+ public string ProductionActivity { get; set; }
+
+ /// <summary>
+ /// 浜ф垚鍝佺紪鐮�
+ /// </summary>
+ public string FinishedProduct { get; set; }
+
+
+
+ }
+}
diff --git a/StandardPda/MES.Service/Dto/service/MesMiddleBox.cs b/StandardPda/MES.Service/Dto/service/MesMiddleBox.cs
new file mode 100644
index 0000000..0f00368
--- /dev/null
+++ b/StandardPda/MES.Service/Dto/service/MesMiddleBox.cs
@@ -0,0 +1,43 @@
+锘縩amespace MES.Service.Dto.service
+{
+ /// <summary>
+ /// 涓鐮佽〃
+ /// </summary>
+ public class MesMiddleBox
+ {
+
+ /// <summary>
+ /// 绫诲瀷锛堟搷浣滐細A缁戝畾锛孎瑙g粦锛�
+ /// </summary>
+ public string type { get; set; }
+ /// <summary>
+ /// 涓鐮�
+ /// </summary>
+ public string MediumBoxCode { get; set; }
+
+ /// <summary>
+ /// 鐧诲綍鍙�
+ /// </summary>
+ public string LoginId { get; set; }
+ /// <summary>
+ /// sn鍒楄〃
+ /// </summary>
+ public List<snList> SnList { get; set; }
+
+ public class snList
+ {
+ /// <summary>
+ /// SN鍙�
+ /// </summary>
+ public string SnNo { get; set; }
+
+ /// <summary>
+ /// 宸ュ崟鍗曞彿
+ /// </summary>
+ public string TicketNo { get; set; }
+ }
+
+ }
+
+
+}
diff --git a/StandardPda/MES.Service/Dto/service/MesPalletBinding.cs b/StandardPda/MES.Service/Dto/service/MesPalletBinding.cs
new file mode 100644
index 0000000..1ff16dc
--- /dev/null
+++ b/StandardPda/MES.Service/Dto/service/MesPalletBinding.cs
@@ -0,0 +1,50 @@
+锘縩amespace MES.Service.Dto.service
+{
+ /// <summary>
+ /// 鏍堟澘缁戝畾琛�
+ /// </summary>
+ public class MesPalletBinding
+ {
+
+ /// <summary>
+ /// 鎿嶄綔锛欰缁戝畾锛孎瑙g粦
+ /// </summary>
+ public string Type { get; set; }
+ /// <summary>
+ /// 鏍堟澘鐮�
+ /// </summary>
+ public string StackCode { get; set; }
+
+ /// <summary>
+ /// 鐧诲綍鍙�
+ /// </summary>
+ public string LoginId { get; set; }
+
+ /// <summary>
+ /// sn鍒楄〃
+ /// </summary>
+ public List<snList1> SnList { get; set; }
+ public class snList1
+ {
+ /// <summary>
+ /// SN鍙�
+ /// </summary>
+ public string SnNo { get; set; }
+
+ /// <summary>
+ /// 宸ュ崟鍗曞彿
+ /// </summary>
+ public string TicketNo { get; set; }
+
+ /// <summary>
+ /// 涓鐮�
+ /// </summary>
+ public string MediumBoxCode { get; set; }
+ }
+
+
+ }
+
+
+
+}
diff --git a/StandardPda/MES.Service/Modes/MesItemQt.cs b/StandardPda/MES.Service/Modes/MesItemQt.cs
new file mode 100644
index 0000000..e3edbac
--- /dev/null
+++ b/StandardPda/MES.Service/Modes/MesItemQt.cs
@@ -0,0 +1,171 @@
+锘縰sing SqlSugar;
+using System;
+using System.ComponentModel;
+
+namespace MES.Service.Modes
+{
+ [SugarTable("MES_ITEM_QT")]
+ public class MesItemQt
+ {
+ [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
+ [Description("ID")]
+ public decimal Id { get; set; }
+
+ [SugarColumn(ColumnName = "QTCK" )]
+ [Description("鐢宠鍗曞彿")]
+ public string Qtck { get; set; }
+
+ [SugarColumn(ColumnName = "QT001")]
+ [Description("鐢宠鏃ユ湡")]
+ public DateTime? Qt001 { get; set; }
+
+ [SugarColumn(ColumnName = "QT002")]
+ [Description("瀹℃牳鏃ユ湡")]
+ public DateTime? Qt002 { get; set; }
+
+ [SugarColumn(ColumnName = "QT003")]
+ [Description("鍗曟嵁绫诲瀷")]
+ public string Qt003 { get; set; }
+
+ [SugarColumn(ColumnName = "QT004")]
+ [Description("涓氬姟绫诲瀷")]
+ public string Qt004 { get; set; }
+
+ [SugarColumn(ColumnName = "QT005")]
+ [Description("鍒跺崟浜�")]
+ public string Qt005 { get; set; }
+
+ [SugarColumn(ColumnName = "QT006")]
+ [Description("鐢熶骇宸ュ崟")]
+ public string Qt006 { get; set; }
+
+ [SugarColumn(ColumnName = "QT008")]
+ [Description("鍙戞枡浠撳簱")]
+ public string Qt008 { get; set; }
+
+ [SugarColumn(ColumnName = "QT009")]
+ [Description("鐢宠閮ㄩ棬")]
+ public string Qt009 { get; set; }
+
+ [SugarColumn(ColumnName = "QT010")]
+ [Description("鍑哄簱绫诲瀷")]
+ public string Qt010 { get; set; }
+
+ [SugarColumn(ColumnName = "QT011")]
+ [Description("浠撳簱缂栫爜")]
+ public string Qt011 { get; set; }
+
+ [SugarColumn(ColumnName = "QT012")]
+ [Description("閮ㄩ棬缂栫爜")]
+ public string Qt012 { get; set; }
+
+ [SugarColumn(ColumnName = "QT013")]
+ [Description("鏁伴噺")]
+ public decimal? Qt013 { get; set; }
+
+ [SugarColumn(ColumnName = "QT014", DefaultValue = "0")]
+ [Description("瀹岀粨鏍囪瘑")]
+ public decimal Qt014 { get; set; } = 0;
+
+ [SugarColumn(ColumnName = "QT015", DefaultValue = "0")]
+ [Description("瀹℃牳鐘舵��")]
+ public decimal Qt015 { get; set; } = 0;
+
+ [SugarColumn(ColumnName = "QT016")]
+ [Description("瀹℃牳浜�")]
+ public string Qt016 { get; set; }
+
+ [SugarColumn(ColumnName = "QT017")]
+ [Description("浠诲姟鍗曞彿")]
+ public string Qt017 { get; set; }
+
+ [SugarColumn(ColumnName = "QT018")]
+ [Description("渚涘簲鍟嗙紪鐮�")]
+ public string Qt018 { get; set; }
+
+ [SugarColumn(ColumnName = "QT019")]
+ [Description("鍑哄簱鏂瑰悜(閫�璐э紝鏅��)")]
+ public string Qt019 { get; set; }
+
+ [SugarColumn(ColumnName = "QT020")]
+ [Description("璐т富绫诲瀷")]
+ public string Qt020 { get; set; }
+ [SugarColumn(ColumnName = "CUSTOMER_CODE")]
+ [Description("瀹㈡埛")]
+ public string CustomerCode { get; set; }
+
+ [SugarColumn(ColumnName = "REMARK")]
+ [Description("鍑哄簱鍘熷洜")]
+ public string Remark { get; set; }
+
+ [SugarColumn(ColumnName = "QT021")]
+ [Description("瀹㈡埛缂栫爜")]
+ public string Qt021 { get; set; }
+ [SugarColumn(ColumnName = "DEPARTMENT")]
+ [Description("閮ㄩ棬")]
+ public string Department { get; set; }
+
+ [SugarColumn(ColumnName = "STOCK_KEEPER")]
+ [Description("搴撶鍛�")]
+ public string StockKeeper { get; set; }
+
+ [SugarColumn(ColumnName = "SOURCE_TYPE")]
+ [Description("鏉ユ簮绫诲埆")]
+ public string SourceType { get; set; }
+
+ [SugarColumn(ColumnName = "SOURCE_DOCUMENT")]
+ [Description("鏉ユ簮鍗曟嵁")]
+ public string SourceDocument { get; set; }
+
+ [SugarColumn(ColumnName = "PRODUCTION_RELATED")]
+ [Description("鐢熶骇鐩稿叧")]
+ public string ProductionRelated { get; set; }
+
+ [SugarColumn(ColumnName = "PRODUCTION_LINE")]
+ [Description("鐢熶骇绾挎棩璁″垝")]
+ public string ProductionLine { get; set; }
+
+ [SugarColumn(ColumnName = "PRODUCTION_ACTIVITY")]
+ [Description("鐢熶骇娲诲姩")]
+ public string ProductionActivity { get; set; }
+
+ [SugarColumn(ColumnName = "FINISHED_GOODS")]
+ [Description("浜ф垚鍝�")]
+ public string FinishedGoods { get; set; }
+
+ [SugarColumn(ColumnName = "REVERSE_POSTING")]
+ [Description("閫嗗悜鐧昏处")]
+ public string ReversePosting { get; set; }
+
+ [SugarColumn(ColumnName = "ACCOUNTING_PERIOD")]
+ [Description("璁拌处鏈熼棿")]
+ public string AccountingPeriod { get; set; }
+
+ [SugarColumn(ColumnName = "EMPLOYEE")]
+ [Description("鍛樺伐")]
+ public string Employee { get; set; }
+
+ [SugarColumn(ColumnName = "FALSE_RETURN")]
+ [Description("鍋囬��鏂�")]
+ public string FalseReturn { get; set; }
+
+ [SugarColumn(ColumnName = "PROJECT_CODE")]
+ [Description("椤圭洰")]
+ public string ProjectCode { get; set; }
+
+ [SugarColumn(ColumnName = "TASK_CODE")]
+ [Description("浠诲姟")]
+ public string TaskCode { get; set; }
+
+ [SugarColumn(ColumnName = "STATUS")]
+ [Description("鐘舵��")]
+ public string Status { get; set; }
+
+ [SugarColumn(ColumnName = "OWNER_ORGANIZATION")]
+ [Description("璐т富缁勭粐")]
+ public string OwnerOrganization { get; set; }
+ [SugarColumn(ColumnName = "RECEIVER")]
+ [Description("鍑哄簱浜�")]
+ public string Receiver { get; set; }
+ }
+}
diff --git a/StandardPda/MES.Service/Modes/MesItemQtDatall.cs b/StandardPda/MES.Service/Modes/MesItemQtDatall.cs
new file mode 100644
index 0000000..a9e9f10
--- /dev/null
+++ b/StandardPda/MES.Service/Modes/MesItemQtDatall.cs
@@ -0,0 +1,122 @@
+锘縰sing SqlSugar;
+using System.ComponentModel;
+
+namespace MES.Service.Modes
+{
+ [SugarTable("MES_ITEM_QT_DATALL")]
+ public class MesItemQtDatall
+ {
+ [SugarColumn(ColumnName = "ID", IsPrimaryKey = true, OracleSequenceName = "SEQ_QTCKD")]
+ [Description("ID")]
+ public decimal Id { get; set; }
+
+ [SugarColumn(ColumnName = "MID")]
+ [Description("MID")]
+ public decimal Mid { get; set; }
+
+ [SugarColumn(ColumnName = "QD001")]
+ [Description("宸ュ崟鍙�")]
+ public string Qd001 { get; set; }
+
+ [SugarColumn(ColumnName = "QD002")]
+ [Description("鐗╂枡缂栧彿")]
+ public string Qd002 { get; set; }
+
+ [SugarColumn(ColumnName = "QD003")]
+ [Description("鐗╂枡鍚嶇О")]
+ public string Qd003 { get; set; }
+
+ [SugarColumn(ColumnName = "QD004")]
+ [Description("瑙勬牸鍨嬪彿")]
+ public string Qd004 { get; set; }
+
+ [SugarColumn(ColumnName = "QD005")]
+ [Description("棰滆壊")]
+ public string Qd005 { get; set; }
+
+ [SugarColumn(ColumnName = "QD006")]
+ [Description("璁″垝鏁伴噺")]
+ public decimal? Qd006 { get; set; }
+
+ [SugarColumn(ColumnName = "QD007")]
+ [Description("鐢宠鏁伴噺")]
+ public decimal? Qd007 { get; set; }
+
+ [SugarColumn(ColumnName = "QD008", DefaultValue = "0")]
+ [Description("宸查鏁伴噺")]
+ public decimal Qd008 { get; set; } = 0;
+
+ [SugarColumn(ColumnName = "QD009")]
+ [Description("鍗曚綅")]
+ public string Qd009 { get; set; }
+
+ [SugarColumn(ColumnName = "QD010")]
+ [Description("澶囨敞")]
+ public string Qd010 { get; set; }
+
+ [SugarColumn(ColumnName = "QD011", DefaultValue = "0")]
+ [Description("瀹岀粨鏍囪瘑")]
+ public decimal Qd011 { get; set; } = 0;
+
+ [SugarColumn(ColumnName = "QD012")]
+ [Description("鐗╂枡鍐呯爜")]
+ public decimal? Qd012 { get; set; }
+
+ /* 鏂板瀛楁 */
+
+ [SugarColumn(ColumnName = "LINE_NUMBER")]
+ [Description("琛屽彿(鐗╂枡椤哄簭)")]
+ public int? LineNumber { get; set; }
+
+ [SugarColumn(ColumnName = "PRODUCTION_RELATED")]
+ [Description("鐢熶骇鐩稿叧")]
+ public string ProductionRelated { get; set; }
+
+ [SugarColumn(ColumnName = "STORAGE_TYPE")]
+ [Description("瀛樺偍绫诲瀷")]
+ public string StorageType { get; set; }
+
+ [SugarColumn(ColumnName = "OWNER_ORGANIZATION")]
+ [Description("璐т富缁勭粐")]
+ public string OwnerOrganization { get; set; }
+
+ [SugarColumn(ColumnName = "STORAGE_LOCATION")]
+ [Description("瀛樺偍鍦扮偣")]
+ public string StorageLocation { get; set; }
+
+ [SugarColumn(ColumnName = "SUPPLIER_CODE")]
+ [Description("渚涘簲鍟嗙紪鐮�")]
+ public string SupplierCode { get; set; }
+
+ [SugarColumn(ColumnName = "CUSTOMER_CODE")]
+ [Description("瀹㈡埛缂栫爜")]
+ public string CustomerCode { get; set; }
+
+ [SugarColumn(ColumnName = "PROJECT_CODE")]
+ [Description("鍏宠仈椤圭洰缂栫爜")]
+ public string ProjectCode { get; set; }
+
+ [SugarColumn(ColumnName = "TASK_CODE")]
+ [Description("鍏宠仈浠诲姟缂栫爜")]
+ public string TaskCode { get; set; }
+
+ [SugarColumn(ColumnName = "PRODUCTION_ORDER")]
+ [Description("鐢熶骇璁㈠崟鍙�")]
+ public string ProductionOrder { get; set; }
+
+ [SugarColumn(ColumnName = "DAILY_PLAN")]
+ [Description("鐢熶骇绾挎棩璁″垝缂栧彿")]
+ public string DailyPlan { get; set; }
+
+ [SugarColumn(ColumnName = "PRODUCTION_ACTIVITY")]
+ [Description("鐢熶骇娲诲姩")]
+ public string ProductionActivity { get; set; }
+
+ [SugarColumn(ColumnName = "FINISHED_PRODUCT")]
+ [Description("浜ф垚鍝佺紪鐮�")]
+ public string FinishedProduct { get; set; }
+ [SugarColumn(ColumnName = "PICKING_USAGE")]
+ [Description("棰嗘枡鐢ㄩ��")]
+ public string PickingUsage { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/StandardPda/MES.Service/Modes/MesItemQtrk.cs b/StandardPda/MES.Service/Modes/MesItemQtrk.cs
new file mode 100644
index 0000000..4b3fab0
--- /dev/null
+++ b/StandardPda/MES.Service/Modes/MesItemQtrk.cs
@@ -0,0 +1,162 @@
+锘縰sing SqlSugar;
+using System;
+using System.ComponentModel;
+
+namespace MES.Service.Modes;
+
+
+ [SugarTable("MES_ITEM_QTRK")]
+ public class MesItemQtrk
+ {
+ [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
+ [Description("ID")]
+ public decimal Id { get; set; }
+
+ [SugarColumn(ColumnName = "QTCK")]
+ [Description("鐢宠鍗曞彿")]
+ public string Qtck { get; set; }
+
+ [SugarColumn(ColumnName = "QT001")]
+ [Description("鐢宠鏃ユ湡")]
+ public DateTime? Qt001 { get; set; }
+
+ [SugarColumn(ColumnName = "QT002")]
+ [Description("瀹℃牳鏃ユ湡")]
+ public DateTime? Qt002 { get; set; }
+
+ [SugarColumn(ColumnName = "QT003")]
+ [Description("鍗曟嵁绫诲瀷")]
+ public string Qt003 { get; set; }
+
+ [SugarColumn(ColumnName = "QT004")]
+ [Description("鍏ュ簱绫诲瀷")]
+ public string Qt004 { get; set; }
+
+ [SugarColumn(ColumnName = "QT005")]
+ [Description("鍒跺崟浜�")]
+ public string Qt005 { get; set; }
+
+ [SugarColumn(ColumnName = "QT006")]
+ [Description("鐢熶骇宸ュ崟")]
+ public string Qt006 { get; set; }
+
+ [SugarColumn(ColumnName = "QT008")]
+ [Description("鍙戞枡浠撳簱")]
+ public string Qt008 { get; set; }
+
+ [SugarColumn(ColumnName = "QT009")]
+ [Description("鐢宠閮ㄩ棬")]
+ public string Qt009 { get; set; }
+
+ [SugarColumn(ColumnName = "QT010", Length = 300)]
+ [Description("鍏ュ簱鍘熷洜")]
+ public string Qt010 { get; set; }
+
+ [SugarColumn(ColumnName = "QT011")]
+ [Description("浠撳簱缂栫爜")]
+ public string Qt011 { get; set; }
+
+ [SugarColumn(ColumnName = "QT012")]
+ [Description("閮ㄩ棬缂栫爜")]
+ public string Qt012 { get; set; }
+
+
+ [SugarColumn(ColumnName = "QT014", DefaultValue = "0")]
+ [Description("瀹岀粨鏍囪瘑")]
+ public decimal Qt014 { get; set; } = 0;
+
+ [SugarColumn(ColumnName = "QT015", DefaultValue = "0")]
+ [Description("瀹℃牳鐘舵��")]
+ public decimal Qt015 { get; set; } = 0;
+
+ [SugarColumn(ColumnName = "QT016")]
+ [Description("瀹℃牳浜�")]
+ public string Qt016 { get; set; }
+
+ [SugarColumn(ColumnName = "QT017")]
+ [Description("浠诲姟鍗曞彿")]
+ public string Qt017 { get; set; }
+
+ [SugarColumn(ColumnName = "QT018", Length = 50)]
+ [Description("渚涘簲鍟嗙紪鐮�")]
+ public string Qt018 { get; set; }
+
+ [SugarColumn(ColumnName = "QT019", Length = 50)]
+ [Description("鍏ュ簱鏂瑰悜(閫�璐э紝鏅��)")]
+ public string Qt019 { get; set; }
+
+ [SugarColumn(ColumnName = "QT020", Length = 50)]
+ [Description("璐т富绫诲瀷")]
+ public string Qt020 { get; set; }
+ [SugarColumn(ColumnName = "CUSTOMER_CODE")]
+ [Description("瀹㈡埛")]
+ public string CustomerCode { get; set; }
+
+ [SugarColumn(ColumnName = "RECEIVER")]
+ [Description("鍏ュ簱浜�")]
+ public string Receiver { get; set; }
+
+ [SugarColumn(ColumnName = "DEPARTMENT")]
+ [Description("閮ㄩ棬")]
+ public string Department { get; set; }
+
+ [SugarColumn(ColumnName = "STOCK_KEEPER")]
+ [Description("搴撶鍛�")]
+ public string StockKeeper { get; set; }
+
+ [SugarColumn(ColumnName = "SOURCE_TYPE")]
+ [Description("鏉ユ簮绫诲埆")]
+ public string SourceType { get; set; }
+
+ [SugarColumn(ColumnName = "SOURCE_DOCUMENT")]
+ [Description("鏉ユ簮鍗曟嵁")]
+ public string SourceDocument { get; set; }
+
+ [SugarColumn(ColumnName = "PRODUCTION_RELATED")]
+ [Description("鐢熶骇鐩稿叧")]
+ public string ProductionRelated { get; set; }
+
+ [SugarColumn(ColumnName = "PRODUCTION_LINE")]
+ [Description("鐢熶骇绾挎棩璁″垝")]
+ public string ProductionLine { get; set; }
+
+ [SugarColumn(ColumnName = "PRODUCTION_ACTIVITY")]
+ [Description("鐢熶骇娲诲姩")]
+ public string ProductionActivity { get; set; }
+
+ [SugarColumn(ColumnName = "FINISHED_GOODS")]
+ [Description("浜ф垚鍝�")]
+ public string FinishedGoods { get; set; }
+
+ [SugarColumn(ColumnName = "REVERSE_POSTING")]
+ [Description("閫嗗悜鐧昏处")]
+ public string ReversePosting { get; set; }
+
+ [SugarColumn(ColumnName = "ACCOUNTING_PERIOD")]
+ [Description("璁拌处鏈熼棿")]
+ public string AccountingPeriod { get; set; }
+
+ [SugarColumn(ColumnName = "EMPLOYEE")]
+ [Description("鍛樺伐")]
+ public string Employee { get; set; }
+
+ [SugarColumn(ColumnName = "FALSE_RETURN")]
+ [Description("鍋囬��鏂�")]
+ public string FalseReturn { get; set; }
+
+ [SugarColumn(ColumnName = "PROJECT_CODE")]
+ [Description("椤圭洰")]
+ public string ProjectCode { get; set; }
+
+ [SugarColumn(ColumnName = "TASK_CODE")]
+ [Description("浠诲姟")]
+ public string TaskCode { get; set; }
+
+ [SugarColumn(ColumnName = "STATUS")]
+ [Description("鐘舵��")]
+ public string Status { get; set; }
+
+ [SugarColumn(ColumnName = "OWNER_ORGANIZATION")]
+ [Description("璐т富缁勭粐")]
+ public string OwnerOrganization { get; set; }
+}
diff --git a/StandardPda/MES.Service/Modes/MesItemQtrrDetail.cs b/StandardPda/MES.Service/Modes/MesItemQtrrDetail.cs
new file mode 100644
index 0000000..846a164
--- /dev/null
+++ b/StandardPda/MES.Service/Modes/MesItemQtrrDetail.cs
@@ -0,0 +1,118 @@
+锘縰sing SqlSugar;
+using System.ComponentModel;
+
+namespace MES.Service.Modes;
+
+[SugarTable("MES_ITEM_QTRR_DETAIL")]
+ public class MesItemQtrrDetail
+ {
+ [SugarColumn(ColumnName = "ID", IsPrimaryKey = true, OracleSequenceName = "SEQ_QTRKD")]
+ [Description("ID")]
+ public decimal Id { get; set; }
+
+ [SugarColumn(ColumnName = "MID")]
+ [Description("MID")]
+ public decimal Mid { get; set; }
+
+ [SugarColumn(ColumnName = "QD001")]
+ [Description("宸ュ崟鍙�")]
+ public string Qd001 { get; set; }
+
+ [SugarColumn(ColumnName = "QD002")]
+ [Description("鐗╂枡缂栧彿")]
+ public string Qd002 { get; set; }
+
+ [SugarColumn(ColumnName = "QD003")]
+ [Description("鐗╂枡鍚嶇О")]
+ public string Qd003 { get; set; }
+
+ [SugarColumn(ColumnName = "QD004")]
+ [Description("瑙勬牸鍨嬪彿")]
+ public string Qd004 { get; set; }
+
+ [SugarColumn(ColumnName = "QD005")]
+ [Description("棰滆壊")]
+ public string Qd005 { get; set; }
+
+ [SugarColumn(ColumnName = "QD006")]
+ [Description("璁″垝鏁伴噺")]
+ public decimal? Qd006 { get; set; }
+
+ [SugarColumn(ColumnName = "QD007")]
+ [Description("鐢宠鏁伴噺")]
+ public decimal? Qd007 { get; set; }
+
+ [SugarColumn(ColumnName = "QD008", DefaultValue = "0")]
+ [Description("宸插叆鏁伴噺")]
+ public decimal Qd008 { get; set; } = 0;
+
+ [SugarColumn(ColumnName = "QD009", Length = 30)]
+ [Description("鍗曚綅")]
+ public string Qd009 { get; set; }
+
+ [SugarColumn(ColumnName = "QD010", Length = 500)]
+ [Description("澶囨敞")]
+ public string Qd010 { get; set; }
+
+ [SugarColumn(ColumnName = "QD011", DefaultValue = "0")]
+ [Description("瀹岀粨鏍囪瘑")]
+ public decimal Qd011 { get; set; } = 0;
+
+ [SugarColumn(ColumnName = "QD012")]
+ [Description("鐗╂枡鍐呯爜")]
+ public decimal? Qd012 { get; set; }
+
+ /* 鏂板瀛楁 */
+
+ [SugarColumn(ColumnName = "LINE_NUMBER")]
+ [Description("琛屽彿(鐗╂枡椤哄簭)")]
+ public int? LineNumber { get; set; }
+
+ [SugarColumn(ColumnName = "PRODUCTION_RELATED")]
+ [Description("鐢熶骇鐩稿叧")]
+ public string ProductionRelated { get; set; }
+
+ [SugarColumn(ColumnName = "STORAGE_TYPE")]
+ [Description("瀛樺偍绫诲瀷")]
+ public string StorageType { get; set; }
+
+ [SugarColumn(ColumnName = "OWNER_ORGANIZATION")]
+ [Description("璐т富缁勭粐")]
+ public string OwnerOrganization { get; set; }
+
+ [SugarColumn(ColumnName = "STORAGE_LOCATION")]
+ [Description("瀛樺偍鍦扮偣")]
+ public string StorageLocation { get; set; }
+
+ [SugarColumn(ColumnName = "SUPPLIER_CODE")]
+ [Description("渚涘簲鍟嗙紪鐮�")]
+ public string SupplierCode { get; set; }
+
+ [SugarColumn(ColumnName = "CUSTOMER_CODE")]
+ [Description("瀹㈡埛缂栫爜")]
+ public string CustomerCode { get; set; }
+
+ [SugarColumn(ColumnName = "PROJECT_CODE")]
+ [Description("鍏宠仈椤圭洰缂栫爜")]
+ public string ProjectCode { get; set; }
+
+ [SugarColumn(ColumnName = "TASK_CODE")]
+ [Description("鍏宠仈浠诲姟缂栫爜")]
+ public string TaskCode { get; set; }
+
+ [SugarColumn(ColumnName = "PRODUCTION_ORDER")]
+ [Description("鐢熶骇璁㈠崟鍙�")]
+ public string ProductionOrder { get; set; }
+
+ [SugarColumn(ColumnName = "DAILY_PLAN")]
+ [Description("鐢熶骇绾挎棩璁″垝缂栧彿")]
+ public string DailyPlan { get; set; }
+
+ [SugarColumn(ColumnName = "PRODUCTION_ACTIVITY")]
+ [Description("鐢熶骇娲诲姩")]
+ public string ProductionActivity { get; set; }
+
+ [SugarColumn(ColumnName = "FINISHED_PRODUCT")]
+ [Description("浜ф垚鍝佺紪鐮�")]
+ public string FinishedProduct { get; set; }
+}
diff --git a/StandardPda/MES.Service/service/Warehouse/MesItemQtManager.cs b/StandardPda/MES.Service/service/Warehouse/MesItemQtManager.cs
new file mode 100644
index 0000000..958c3ec
--- /dev/null
+++ b/StandardPda/MES.Service/service/Warehouse/MesItemQtManager.cs
@@ -0,0 +1,430 @@
+锘縰sing MES.Service.DB;
+using MES.Service.Dto.service;
+using MES.Service.Modes;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace MES.Service.service.Warehouse
+{
+ public class MesItemQtManager:Repository<MesItemQt>
+ {
+ public bool MiscellaneousIssues(MesItemQtDto mesItemQtDto)
+ {
+ var itemQtFrom = mesItemQtDto.from;
+ var itemQtLists = mesItemQtDto.items;
+
+ // 鏍规嵁AsnNo鍜孧esNo瀵规槑缁嗚繘琛屽垎缁�
+ //var groupedItems = itemOutLists
+ // .GroupBy(item => new { item.AsnNo, item.MesNo, item.SqNo })
+ // .ToList();
+
+ bool result = true;
+ //foreach (var group in itemQtRKLists)
+ //{
+ //if (group.Key.AsnNo == null)
+ //{
+ // throw new NotImplementedException("AsnNo涓嶈兘涓虹┖");
+ //}
+
+ //if (group.Key.MesNo == null)
+ //{
+ // throw new NotImplementedException("鍏ュ簱鍗曞崟鍙蜂笉鑳戒负绌�");
+ //}
+
+ //if (group.Key.SqNo == null)
+ //{
+ // throw new NotImplementedException("閫�璐х敵璇峰崟琛屽彿涓嶈兘涓虹┖");
+ //}
+
+ // 鍒涘缓涓�涓复鏃剁殑itemOutFrom瀵硅薄锛屼娇鐢ㄥ垎缁勭殑Key浣滀负涓昏灞炴��
+ //var tempItemOutFrom = new ItemOutFrom
+ //{
+ // AsnNo = group.Key.AsnNo,
+ // MesNo = group.Key.MesNo,
+ // SqNo = group.Key.SqNo,
+ // // 缁ф壙鍘熷itemOutFrom鐨勫叾浠栧睘鎬�
+ // RtnNo = itemOutFrom.RtnNo,
+ // Type = itemOutFrom.Type,
+ // CreateBy = itemOutFrom.CreateBy,
+ // FMRMODE = itemOutFrom.FMRMODE,
+ // DepotId = itemOutFrom.DepotId,
+ // SupperId = itemOutFrom.SupperId
+ //};
+
+ // 鏍规嵁Type鎵ц涓嶅悓鐨勯�昏緫
+ switch (itemQtFrom.Type)
+ {
+ case "1":
+ {
+ var mesInvItemOuts = Db.Queryable<MesItemQt>()
+ .Where(s => s.Qtck == itemQtFrom.ApplyNumber
+
+ )
+ .Count();
+
+ if (mesInvItemOuts > 0)
+ {
+ throw new NotImplementedException(
+ itemQtFrom.ApplyNumber +
+ "鐨勬潅鍙戠敵璇峰崟宸茬粡瀛樺湪");
+ }
+
+ // 涓哄綋鍓嶅垎缁勪繚瀛樻暟鎹�
+ var groupResult = Save(itemQtFrom, itemQtLists);
+ if (!groupResult)
+ {
+ result = false;
+ }
+
+ break;
+ }
+ case "4":
+ var removeResult = Remove(itemQtFrom);
+ if (!removeResult)
+ {
+ result = false;
+ }
+
+ break;
+ default:
+ result = false;
+ break;
+ }
+ //}
+
+ return result;
+ }
+
+
+ private bool Save(MesItemQtFrom from, List<MesItemQtList> items)
+ {
+ //var mesInvItemIns = Db.Queryable<MesInvItemIns>()
+ // .Where(s => s.BillTypeId == 100
+ // && s.TransctionNo == "101"
+ // && s.BillNo == from.MesNo
+ // ).First();
+
+ //if (mesInvItemIns == null)
+ //{
+ // throw new NotImplementedException("閲囪喘鍏ュ簱涓嶅瓨鍦�");
+ //}
+
+
+ string SuppNo = "";
+ if (from.SupplierCode != "" && from.SupplierCode != null)
+ {
+ var mesLinkU9 = Db.Queryable<MesLinkU9>()
+ .Where(s => s.TableType == "MES_SUPPLIER"
+ && s.U9Id == from.SupplierCode).First();
+
+ if (mesLinkU9 == null)
+ {
+ throw new NotImplementedException("渚涘簲鍟咺D涓嶅瓨鍦ㄦ垨鏈悓姝ヤ簬U9");
+ }
+
+ var mesSupplier = Db.Queryable<MesSupplier>()
+ .Where(s => s.Id == Decimal.Parse(mesLinkU9.MesId))
+ .First();
+ if (mesSupplier == null)
+ {
+ throw new NotImplementedException("[" + from.SupplierCode +
+ "]渚涘簲鍟嗕笉瀛樺湪锛岃鍚屾缁橫ES");
+ }
+ SuppNo = mesSupplier.SuppNo;
+ }
+ var mesDepots = Db.Queryable<MesDepots>()
+ .Where(s => s.DepotId == Decimal.Parse(from.FromWarehouse)).First();
+
+ if (mesDepots == null)
+ {
+ throw new NotImplementedException("[" + from.FromWarehouse +
+ "]浠撳簱涓嶅瓨鍦紝璇峰悓姝ョ粰MES");
+ }
+
+ var sysDepartment = Db.Queryable<SysDepartment>()
+ .Where(s => s.Departmentid == Decimal.Parse(from.ApplyDept)).First();
+
+ if (sysDepartment == null)
+ {
+ throw new NotImplementedException("[" + from.ApplyDept +
+ "]閮ㄩ棬涓嶅瓨鍦紝璇峰悓姝ョ粰MES");
+ }
+
+
+ var nextSequenceValue =
+ Db.Ado.SqlQuery<decimal>("SELECT SEQ_QTCK.NEXTVAL FROM DUAL")
+ .First();
+
+ // var billCode =
+ // Db.Ado.SqlQuery<string>(
+ // "SELECT GETBILLCODE1('1000', '1000', 'TLSQ') FROM DUAL")
+ // .First();
+ //var billCode = from.RtnNo;
+
+ // 鍒涘缓鏉傚彂鐢宠鍗曡褰�
+ var MesItemQtrk = new MesItemQt
+ {
+ Id = nextSequenceValue,
+ Qtck = from.ApplyNumber,
+ Qt001 = from.Equals(null) ? DateTime.Now : from.ApplyDate,
+ Qt002 = from.Equals(null) ? DateTime.Now : from.AuditDate,
+ Qt003 = from.DocumentType,
+ Qt004 = from.StockOutType,
+ Qt005 = from.CreatedBy,
+ Qt006 = from.WorkOrder,
+ Qt009 = sysDepartment.Departmentname,
+ Qt012 = sysDepartment.Departmentcode,
+ Qt010 = from.Reason,
+ Qt011 = mesDepots.DepotCode,
+ Qt008 = mesDepots.DepotName,
+
+ Qt015 = 1,
+ Qt016 = from.Auditor,
+ Qt017 = from.TaskNumber,
+ Qt018 = SuppNo,
+ Qt019 = from.Direction,
+ Qt020 = from.OwnerType,
+ CustomerCode = from.CustomerCode,
+ Receiver = from.Receiver,
+ Department = from.Department,
+ StockKeeper = from.StockKeeper,
+ SourceType = from.SourceType,
+ SourceDocument = from.SourceDocument,
+ ProductionRelated = from.ProductionRelated,
+ ProductionLine = from.ProductionLine,
+ ProductionActivity = from.ProductionActivity,
+ FinishedGoods = from.FinishedGoods,
+ ReversePosting = from.ReversePosting,
+ AccountingPeriod = from.AccountingPeriod,
+ Employee = from.Employee,
+ FalseReturn = from.FalseReturn,
+ ProjectCode = from.ProjectCode,
+ TaskCode = from.TaskCode,
+ Status = from.Status,
+ OwnerOrganization = from.OwnerOrganization
+
+
+ };
+
+ // 鍒涘缓鏉傚彂鐢宠鍗曡璁板綍
+ var mesItemQtDetail = new List<MesItemQtDatall>();
+
+ foreach (var ItemQtRKList in items)
+ {
+ // 妫�鏌ュ繀瑕佸瓧娈垫槸鍚︿负绌�
+ //if (string.IsNullOrEmpty(itemOutList.SrcDocNo))
+ //{
+ // throw new NotImplementedException("閲囪喘璁㈠崟鍙蜂笉鑳戒负绌�");
+ //}
+
+
+
+ //var mesRohInData = Db.Queryable<MesRohInData>()
+ // .Where(s => s.BillNo == itemOutList.SrcDocNo
+ // && s.OrderLineId == itemOutList.SrcDocLineNo)
+ // .First();
+
+ //if (mesRohInData == null)
+ //{
+ // throw new NotImplementedException("閲囪喘璁㈠崟涓嶅瓨鍦�");
+ //}
+
+ //var deliveryDetail = Db.Queryable<DeliveryDetail>()
+ // .Where(a => a.Zzasn == from.AsnNo
+ // && Int32.Parse(a.ZzitemId) ==
+ // Int32.Parse(itemOutList.AsnLineNo))
+ // .Count();
+
+ //if (deliveryDetail <= 0)
+ //{
+ // throw new NotImplementedException("[" + from.AsnNo + "]鐨勬槑缁嗚[" +
+ // itemOutList.AsnLineNo +
+ // "]涓嶅瓨鍦�");
+ //}
+
+ var itemIdLinkU9 = Db.Queryable<MesLinkU9>()
+ .Where(s => s.TableType == "MES_ITEMS"
+ && s.U9Id == ItemQtRKList.ItemId).First();
+
+ if (itemIdLinkU9 == null)
+ {
+ throw new NotImplementedException("鐗╂枡ID涓嶅瓨鍦ㄦ垨鏈悓姝ヤ簬U9");
+ }
+
+ var mesItems = Db.Queryable<MesItems>()
+ .Where(s => s.Id == Decimal.Parse(itemIdLinkU9.MesId))
+ .First();
+
+ if (mesItems == null)
+ {
+ throw new NotImplementedException("[" + ItemQtRKList.ItemId +
+ "]鐗╂枡涓嶅瓨鍦紝璇峰悓姝ョ粰MES");
+ }
+ var mesDepot = "";
+ if (ItemQtRKList.StorageLocation != null && ItemQtRKList.StorageLocation != null)
+ {
+ mesDepots = Db.Queryable<MesDepots>()
+ .Where(s => s.DepotId == Decimal.Parse(ItemQtRKList.StorageLocation)).First();
+ if (mesDepots == null)
+ {
+ throw new NotImplementedException("[" + ItemQtRKList.StorageLocation +
+ "]浠撳簱涓嶅瓨鍦紝璇峰悓姝ョ粰MES");
+ }
+ mesDepot = mesDepots.DepotCode;
+ }
+ string supplierCode = "";
+ if (ItemQtRKList.SupplierCode != null && ItemQtRKList.SupplierCode != "")
+ {
+ var mesLinkU9 = Db.Queryable<MesLinkU9>()
+ .Where(s => s.TableType == "MES_SUPPLIER"
+ && s.U9Id == ItemQtRKList.SupplierCode).First();
+
+ if (mesLinkU9 == null)
+ {
+ throw new NotImplementedException("[" + ItemQtRKList.SupplierCode +
+ "]渚涘簲鍟嗕笉瀛樺湪锛岃鍚屾缁橫ES");
+ }
+ var mesSupplier = Db.Queryable<MesSupplier>()
+ .Where(s => s.Id == Decimal.Parse(mesLinkU9.MesId))
+ .First();
+ if (mesSupplier == null)
+ {
+ throw new NotImplementedException("[" + ItemQtRKList.SupplierCode +
+ "]渚涘簲鍟嗕笉瀛樺湪锛岃鍚屾缁橫ES");
+ }
+ supplierCode = mesSupplier.SuppNo;
+ }
+
+
+ //var mesInvItemInCItems = Db.Queryable<MesInvItemInCItems>()
+ // .Where(s => s.ItemInId == mesInvItemIns.Id
+ // && s.ItemNo == mesItems.ItemNo
+ // && s.Ebeln == itemOutList.SrcDocNo
+ // && s.EbelnLineNo ==
+ // Decimal.Parse(itemOutList.SrcDocLineNo)
+ // && s.SuppNo == mesSupplier.SuppNo
+ // && Convert.ToInt32(s.ZzitemId) ==
+ // Convert.ToInt32(itemOutList.AsnLineNo)).First();
+
+ //if (mesInvItemInCItems == null)
+ //{
+ // throw new NotImplementedException("娌℃湁瀵瑰簲鐨勫叆搴撴槑缁�");
+ //}
+
+
+ // 纭繚CbillNo涓嶄负绌�
+ if (ItemQtRKList.AppliedQuantity <= 0 || ItemQtRKList.AppliedQuantity == null)
+ {
+ throw new NotImplementedException("鐢宠鏁伴噺涓嶈兘涓�0鎴朜ULL鍊硷紒");
+ }
+
+ mesItemQtDetail.Add(new MesItemQtDatall
+ {
+ Mid = nextSequenceValue,
+ Qd002 = mesItems.ItemNo,
+ Qd003 = mesItems.ItemName,
+ Qd004 = mesItems.ItemModel,
+ Qd005 = mesItems.ColorName,
+ Qd006 = ItemQtRKList.PlannedQuantity,
+ Qd007 = ItemQtRKList.AppliedQuantity,
+ Qd008 = 0, // 宸插叆鏁伴噺榛樿涓�0
+ Qd009 = mesItems.ItemUnit,
+ Qd010 = ItemQtRKList.Remark,
+ Qd012 = mesItems.Id, // 鐗╂枡鍐呯爜
+ LineNumber = ItemQtRKList.LineNumber,
+ ProductionRelated = ItemQtRKList.ProductionRelated,
+ StorageType = ItemQtRKList.StorageType,
+ OwnerOrganization = ItemQtRKList.OwnerOrganization,
+ StorageLocation = mesDepot,
+ SupplierCode = supplierCode,
+ CustomerCode = ItemQtRKList.CustomerCode,
+ ProjectCode = ItemQtRKList.ProjectCode,
+ TaskCode = ItemQtRKList.TaskCode,
+ ProductionOrder = ItemQtRKList.ProductionOrder,
+ DailyPlan = ItemQtRKList.DailyPlan,
+ ProductionActivity = ItemQtRKList.ProductionActivity,
+ FinishedProduct = ItemQtRKList.FinishedProduct,
+ PickingUsage= ItemQtRKList.PickingUsage
+
+
+ });
+ }
+
+ var outItemCommand = Db.Insertable(mesItemQtDetail)
+ .PageSize(1).IgnoreColumnsNull().ExecuteCommand();
+ if (outItemCommand <= 0)
+ {
+ throw new Exception("鍒涘缓鏉傚彂鍗曞瓙琛ㄥけ璐�");
+ }
+
+ // 鎻掑叆閲囪喘閫�鏂欏崟璁板綍
+ var insertResult = Db.Insertable(MesItemQtrk).IgnoreColumns(true)
+ .ExecuteCommand();
+ if (insertResult <= 0)
+ {
+ throw new Exception("鍒涘缓鏉傚彂鍗曞け璐�");
+ }
+
+ return outItemCommand + insertResult >= 2;
+ }
+
+ private bool Remove(MesItemQtFrom from)
+ {
+ // 鏌ユ壘瑕佸垹闄ょ殑鏉傚彂鍗�
+ var mesItemQtrk = Db.Queryable<MesItemQt>()
+ .Where(s => s.Qtck == from.ApplyNumber
+ ).ToList();
+
+ if (mesItemQtrk == null || mesItemQtrk.Count == 0)
+ {
+ throw new NotImplementedException("鎵句笉鍒板搴旂殑鏉傚彂鍗�: " + from.ApplyNumber);
+ }
+
+ // 妫�鏌ユ槸鍚︽湁宸插鏍哥殑鍗曟嵁锛屽鏋滃瓨鍦ㄥ凡瀹℃牳(Status=1)鍒欎笉鍏佽鍒犻櫎
+ //if (mesInvItemOuts.Any(item => item.Status == 1))
+ //{
+ // throw new NotImplementedException("瀛樺湪宸插鏍哥殑閲囪喘閫�鏂欏崟锛屼笉鍏佽鍒犻櫎");
+ //}
+
+ // 鍒犻櫎鎵�鏈夌浉鍏冲崟鎹�
+ foreach (var itemRK in mesItemQtrk)
+ {
+ // 鏌ユ壘瑕佸垹闄ょ殑鏉傚彂鍗曟槑缁�
+ var mesInvItemOutItems = Db.Queryable<MesItemQtDatall>()
+ .Where(s => s.Mid == itemRK.Id)
+ .ToList();
+
+ if (mesInvItemOutItems == null || mesInvItemOutItems.Count == 0)
+ {
+ throw new NotImplementedException(
+ $"鎵句笉鍒版潅鍙戝崟[{from.ApplyNumber}]瀵瑰簲鐨勬槑缁�");
+ }
+
+ // 鍒犻櫎鏉傚彂鍗曟槑缁�
+ var deleteItemsResult = Db.Deleteable<MesItemQtDatall>()
+ .Where(s => s.Mid == itemRK.Id)
+ .ExecuteCommand();
+
+ if (deleteItemsResult <= 0)
+ {
+ throw new Exception($"鎵句笉鍒版潅鍙戝崟[ {from.ApplyNumber}]鏄庣粏锛屽垹闄ゅけ璐�");
+ }
+
+ // 鍒犻櫎鏉傚彂鍗�
+ var deleteResult = Db.Deleteable<MesItemQt>()
+ .Where(s => s.Id == itemRK.Id)
+ .ExecuteCommand();
+
+ if (deleteResult <= 0)
+ {
+ throw new Exception($"鍒犻櫎鏉傚彂鍗昜{from.ApplyNumber}]澶辫触");
+ }
+ }
+
+ return true;
+ }
+ }
+}
diff --git a/StandardPda/MES.Service/service/Warehouse/MesItemQtrkManager.cs b/StandardPda/MES.Service/service/Warehouse/MesItemQtrkManager.cs
new file mode 100644
index 0000000..268fe67
--- /dev/null
+++ b/StandardPda/MES.Service/service/Warehouse/MesItemQtrkManager.cs
@@ -0,0 +1,424 @@
+锘縰sing Masuit.Tools;
+using MES.Service.DB;
+using MES.Service.Dto.service;
+using MES.Service.Modes;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace MES.Service.service.Warehouse
+{
+ public class MesItemQtrkManager : Repository<MesItemQtrk>
+ {
+ public bool MiscellaneousReceipts(MesItemQtRKDto mesItemQtRKDto)
+ {
+ var itemQtRKFrom = mesItemQtRKDto.from;
+ var itemQtRKLists = mesItemQtRKDto.items;
+
+ // 鏍规嵁AsnNo鍜孧esNo瀵规槑缁嗚繘琛屽垎缁�
+ //var groupedItems = itemOutLists
+ // .GroupBy(item => new { item.AsnNo, item.MesNo, item.SqNo })
+ // .ToList();
+
+ bool result = true;
+ //foreach (var group in itemQtRKLists)
+ //{
+ //if (group.Key.AsnNo == null)
+ //{
+ // throw new NotImplementedException("AsnNo涓嶈兘涓虹┖");
+ //}
+
+ //if (group.Key.MesNo == null)
+ //{
+ // throw new NotImplementedException("鍏ュ簱鍗曞崟鍙蜂笉鑳戒负绌�");
+ //}
+
+ //if (group.Key.SqNo == null)
+ //{
+ // throw new NotImplementedException("閫�璐х敵璇峰崟琛屽彿涓嶈兘涓虹┖");
+ //}
+
+ // 鍒涘缓涓�涓复鏃剁殑itemOutFrom瀵硅薄锛屼娇鐢ㄥ垎缁勭殑Key浣滀负涓昏灞炴��
+ //var tempItemOutFrom = new ItemOutFrom
+ //{
+ // AsnNo = group.Key.AsnNo,
+ // MesNo = group.Key.MesNo,
+ // SqNo = group.Key.SqNo,
+ // // 缁ф壙鍘熷itemOutFrom鐨勫叾浠栧睘鎬�
+ // RtnNo = itemOutFrom.RtnNo,
+ // Type = itemOutFrom.Type,
+ // CreateBy = itemOutFrom.CreateBy,
+ // FMRMODE = itemOutFrom.FMRMODE,
+ // DepotId = itemOutFrom.DepotId,
+ // SupperId = itemOutFrom.SupperId
+ //};
+
+ // 鏍规嵁Type鎵ц涓嶅悓鐨勯�昏緫
+ switch (itemQtRKFrom.Type)
+ {
+ case "1":
+ {
+ var mesInvItemOuts = Db.Queryable<MesItemQtrk>()
+ .Where(s => s.Qtck == itemQtRKFrom.ApplyNumber
+
+ )
+ .Count();
+
+ if (mesInvItemOuts > 0)
+ {
+ throw new NotImplementedException(
+ itemQtRKFrom.ApplyNumber +
+ "鐨勬潅鏀剁敵璇峰崟宸茬粡瀛樺湪");
+ }
+
+ // 涓哄綋鍓嶅垎缁勪繚瀛樻暟鎹�
+ var groupResult = Save(itemQtRKFrom, itemQtRKLists);
+ if (!groupResult)
+ {
+ result = false;
+ }
+
+ break;
+ }
+ case "4":
+ var removeResult = Remove(itemQtRKFrom);
+ if (!removeResult)
+ {
+ result = false;
+ }
+
+ break;
+ default:
+ result = false;
+ break;
+ }
+ //}
+
+ return result;
+ }
+
+
+ private bool Save(MesItemQtRKFrom from, List<MesItemQtRKList> items)
+ {
+ //var mesInvItemIns = Db.Queryable<MesInvItemIns>()
+ // .Where(s => s.BillTypeId == 100
+ // && s.TransctionNo == "101"
+ // && s.BillNo == from.MesNo
+ // ).First();
+
+ //if (mesInvItemIns == null)
+ //{
+ // throw new NotImplementedException("閲囪喘鍏ュ簱涓嶅瓨鍦�");
+ //}
+
+
+ string SuppNo = "";
+ if (from.SupplierCode!="" && from.SupplierCode!=null)
+ {
+ var mesLinkU9 = Db.Queryable<MesLinkU9>()
+ .Where(s => s.TableType == "MES_SUPPLIER"
+ && s.U9Id == from.SupplierCode).First();
+
+ if (mesLinkU9 == null)
+ {
+ throw new NotImplementedException("渚涘簲鍟咺D涓嶅瓨鍦ㄦ垨鏈悓姝ヤ簬U9");
+ }
+
+ var mesSupplier = Db.Queryable<MesSupplier>()
+ .Where(s => s.Id == Decimal.Parse(mesLinkU9.MesId))
+ .First();
+ if (mesSupplier == null)
+ {
+ throw new NotImplementedException("[" + from.SupplierCode +
+ "]渚涘簲鍟嗕笉瀛樺湪锛岃鍚屾缁橫ES");
+ }
+ SuppNo= mesSupplier.SuppNo;
+ }
+ var mesDepots = Db.Queryable<MesDepots>()
+ .Where(s => s.DepotId == Decimal.Parse(from.FromWarehouse)).First();
+
+ if (mesDepots == null)
+ {
+ throw new NotImplementedException("[" + from.FromWarehouse +
+ "]浠撳簱涓嶅瓨鍦紝璇峰悓姝ョ粰MES");
+ }
+
+ var sysDepartment = Db.Queryable<SysDepartment>()
+ .Where(s => s.Departmentid == Decimal.Parse(from.ApplyDept)).First();
+
+ if (sysDepartment == null)
+ {
+ throw new NotImplementedException("[" + from.ApplyDept +
+ "]閮ㄩ棬涓嶅瓨鍦紝璇峰悓姝ョ粰MES");
+ }
+
+
+ var nextSequenceValue =
+ Db.Ado.SqlQuery<decimal>("SELECT SEQ_QTRK.NEXTVAL FROM DUAL")
+ .First();
+
+ // var billCode =
+ // Db.Ado.SqlQuery<string>(
+ // "SELECT GETBILLCODE1('1000', '1000', 'TLSQ') FROM DUAL")
+ // .First();
+ //var billCode = from.RtnNo;
+
+ // 鍒涘缓鏉傛敹鐢宠鍗曡褰�
+ var MesItemQtrk = new MesItemQtrk
+ {
+ Id = nextSequenceValue,
+ Qtck= from.ApplyNumber,
+ Qt001= from.Equals(null) ? DateTime.Now : from.ApplyDate,
+ Qt002= from.Equals(null) ? DateTime.Now : from.AuditDate,
+ Qt003= from.DocumentType,
+ Qt004= from.StockInType,
+ Qt005= from.CreatedBy,
+ Qt006= from.WorkOrder,
+ Qt009= sysDepartment.Departmentname,
+ Qt012 = sysDepartment.Departmentcode,
+ Qt010 = from.Reason,
+ Qt011= mesDepots.DepotCode,
+ Qt008 = mesDepots.DepotName,
+
+ Qt015= 1,
+ Qt016= from.Auditor,
+ Qt017= from.TaskNumber,
+ Qt018= SuppNo,
+ Qt019= from.Direction,
+ Qt020= from.OwnerType,
+ CustomerCode= from.CustomerCode,
+ Receiver= from.Receiver,
+ Department = from.Department,
+ StockKeeper=from.StockKeeper,
+ SourceType = from.SourceType,
+ SourceDocument = from.SourceDocument,
+ ProductionRelated = from.ProductionRelated,
+ ProductionLine = from.ProductionLine,
+ ProductionActivity = from.ProductionActivity,
+ FinishedGoods = from.FinishedGoods,
+ ReversePosting = from.ReversePosting,
+ AccountingPeriod= from.AccountingPeriod,
+ Employee= from.Employee,
+ FalseReturn = from.FalseReturn,
+ ProjectCode = from.ProjectCode,
+ TaskCode = from.TaskCode,
+ Status=from.Status,
+ OwnerOrganization= from.OwnerOrganization
+
+
+ };
+
+ // 鍒涘缓鏉傛敹鐢宠鍗曡璁板綍
+ var mesItemQtrrDetail = new List<MesItemQtrrDetail>();
+
+ foreach (var ItemQtRKList in items)
+ {
+ // 妫�鏌ュ繀瑕佸瓧娈垫槸鍚︿负绌�
+ //if (string.IsNullOrEmpty(itemOutList.SrcDocNo))
+ //{
+ // throw new NotImplementedException("閲囪喘璁㈠崟鍙蜂笉鑳戒负绌�");
+ //}
+
+
+
+ //var mesRohInData = Db.Queryable<MesRohInData>()
+ // .Where(s => s.BillNo == itemOutList.SrcDocNo
+ // && s.OrderLineId == itemOutList.SrcDocLineNo)
+ // .First();
+
+ //if (mesRohInData == null)
+ //{
+ // throw new NotImplementedException("閲囪喘璁㈠崟涓嶅瓨鍦�");
+ //}
+
+ //var deliveryDetail = Db.Queryable<DeliveryDetail>()
+ // .Where(a => a.Zzasn == from.AsnNo
+ // && Int32.Parse(a.ZzitemId) ==
+ // Int32.Parse(itemOutList.AsnLineNo))
+ // .Count();
+
+ //if (deliveryDetail <= 0)
+ //{
+ // throw new NotImplementedException("[" + from.AsnNo + "]鐨勬槑缁嗚[" +
+ // itemOutList.AsnLineNo +
+ // "]涓嶅瓨鍦�");
+ //}
+
+ var itemIdLinkU9 = Db.Queryable<MesLinkU9>()
+ .Where(s => s.TableType == "MES_ITEMS"
+ && s.U9Id == ItemQtRKList.ItemId).First();
+
+ if (itemIdLinkU9 == null)
+ {
+ throw new NotImplementedException("鐗╂枡ID涓嶅瓨鍦ㄦ垨鏈悓姝ヤ簬U9");
+ }
+
+ var mesItems = Db.Queryable<MesItems>()
+ .Where(s => s.Id == Decimal.Parse(itemIdLinkU9.MesId))
+ .First();
+
+ if (mesItems == null)
+ {
+ throw new NotImplementedException("[" + ItemQtRKList.ItemId +
+ "]鐗╂枡涓嶅瓨鍦紝璇峰悓姝ョ粰MES");
+ }
+ var mesDepot = "";
+ if (ItemQtRKList.StorageLocation != null && ItemQtRKList.StorageLocation!=null)
+ {
+ mesDepots = Db.Queryable<MesDepots>()
+ .Where(s => s.DepotId == Decimal.Parse(ItemQtRKList.StorageLocation)).First();
+ if (mesDepots == null)
+ {
+ throw new NotImplementedException("[" + ItemQtRKList.StorageLocation +
+ "]浠撳簱涓嶅瓨鍦紝璇峰悓姝ョ粰MES");
+ }
+ mesDepot = mesDepots.DepotCode;
+ }
+ string supplierCode = "";
+ if (ItemQtRKList.SupplierCode!=null && ItemQtRKList.SupplierCode != "")
+ {
+ var mesLinkU9 = Db.Queryable<MesLinkU9>()
+ .Where(s => s.TableType == "MES_SUPPLIER"
+ && s.U9Id == ItemQtRKList.SupplierCode).First();
+
+ var mesSupplier = Db.Queryable<MesSupplier>()
+ .Where(s => s.Id == Decimal.Parse(mesLinkU9.MesId))
+ .First();
+ if (mesSupplier == null)
+ {
+ throw new NotImplementedException("[" + ItemQtRKList.SupplierCode +
+ "]渚涘簲鍟嗕笉瀛樺湪锛岃鍚屾缁橫ES");
+ }
+ supplierCode = mesSupplier.SuppNo;
+ }
+
+
+ //var mesInvItemInCItems = Db.Queryable<MesInvItemInCItems>()
+ // .Where(s => s.ItemInId == mesInvItemIns.Id
+ // && s.ItemNo == mesItems.ItemNo
+ // && s.Ebeln == itemOutList.SrcDocNo
+ // && s.EbelnLineNo ==
+ // Decimal.Parse(itemOutList.SrcDocLineNo)
+ // && s.SuppNo == mesSupplier.SuppNo
+ // && Convert.ToInt32(s.ZzitemId) ==
+ // Convert.ToInt32(itemOutList.AsnLineNo)).First();
+
+ //if (mesInvItemInCItems == null)
+ //{
+ // throw new NotImplementedException("娌℃湁瀵瑰簲鐨勫叆搴撴槑缁�");
+ //}
+
+
+ // 纭繚CbillNo涓嶄负绌�
+ if (ItemQtRKList.AppliedQuantity<=0 || ItemQtRKList.AppliedQuantity==null)
+ {
+ throw new NotImplementedException("鐢宠鏁伴噺涓嶈兘涓�0鎴朜ULL鍊硷紒");
+ }
+
+ mesItemQtrrDetail.Add(new MesItemQtrrDetail
+ {
+ Mid = nextSequenceValue,
+ Qd002= mesItems.ItemNo,
+ Qd003= mesItems.ItemName,
+ Qd004= mesItems.ItemModel,
+ Qd005= mesItems.ColorName,
+ Qd006= ItemQtRKList.PlannedQuantity,
+ Qd007= ItemQtRKList.AppliedQuantity,
+ Qd008=0, // 宸插叆鏁伴噺榛樿涓�0
+ Qd009= mesItems.ItemUnit,
+ Qd010= ItemQtRKList.Remark,
+ Qd012= mesItems.Id, // 鐗╂枡鍐呯爜
+ LineNumber= ItemQtRKList.LineNumber,
+ ProductionRelated= ItemQtRKList.ProductionRelated,
+ StorageType= ItemQtRKList.StorageType,
+ OwnerOrganization = ItemQtRKList.OwnerOrganization,
+ StorageLocation= mesDepot,
+ SupplierCode= supplierCode,
+ CustomerCode = ItemQtRKList.CustomerCode,
+ ProjectCode = ItemQtRKList.ProjectCode,
+ TaskCode = ItemQtRKList.TaskCode,
+ ProductionOrder = ItemQtRKList.ProductionOrder,
+ DailyPlan = ItemQtRKList.DailyPlan,
+ ProductionActivity = ItemQtRKList.ProductionActivity,
+ FinishedProduct = ItemQtRKList.FinishedProduct
+
+ });
+ }
+
+ var outItemCommand = Db.Insertable(mesItemQtrrDetail)
+ .PageSize(1).IgnoreColumnsNull().ExecuteCommand();
+ if (outItemCommand <= 0)
+ {
+ throw new Exception("鍒涘缓鏉傛敹鍗曞瓙琛ㄥけ璐�");
+ }
+
+ // 鎻掑叆閲囪喘閫�鏂欏崟璁板綍
+ var insertResult = Db.Insertable(MesItemQtrk).IgnoreColumns(true)
+ .ExecuteCommand();
+ if (insertResult <= 0)
+ {
+ throw new Exception("鍒涘缓鏉傛敹鍗曞け璐�");
+ }
+
+ return outItemCommand + insertResult >= 2;
+ }
+
+ private bool Remove(MesItemQtRKFrom from)
+ {
+ // 鏌ユ壘瑕佸垹闄ょ殑鏉傛敹鍗�
+ var mesItemQtrk = Db.Queryable<MesItemQtrk>()
+ .Where(s => s.Qtck == from.ApplyNumber
+ ).ToList();
+
+ if (mesItemQtrk == null || mesItemQtrk.Count == 0)
+ {
+ throw new NotImplementedException("鎵句笉鍒板搴旂殑鏉傛敹鍗�: " + from.ApplyNumber);
+ }
+
+ // 妫�鏌ユ槸鍚︽湁宸插鏍哥殑鍗曟嵁锛屽鏋滃瓨鍦ㄥ凡瀹℃牳(Status=1)鍒欎笉鍏佽鍒犻櫎
+ //if (mesInvItemOuts.Any(item => item.Status == 1))
+ //{
+ // throw new NotImplementedException("瀛樺湪宸插鏍哥殑閲囪喘閫�鏂欏崟锛屼笉鍏佽鍒犻櫎");
+ //}
+
+ // 鍒犻櫎鎵�鏈夌浉鍏冲崟鎹�
+ foreach (var itemRK in mesItemQtrk)
+ {
+ // 鏌ユ壘瑕佸垹闄ょ殑鏉傛敹鍗曟槑缁�
+ var mesInvItemOutItems = Db.Queryable<MesItemQtrrDetail>()
+ .Where(s => s.Mid == itemRK.Id)
+ .ToList();
+
+ if (mesInvItemOutItems == null || mesInvItemOutItems.Count == 0)
+ {
+ throw new NotImplementedException(
+ $"鎵句笉鍒版潅鏀跺崟[{from.ApplyNumber}]瀵瑰簲鐨勬槑缁�");
+ }
+
+ // 鍒犻櫎鏉傛敹鍗曟槑缁�
+ var deleteItemsResult = Db.Deleteable<MesItemQtrrDetail>()
+ .Where(s => s.Mid == itemRK.Id)
+ .ExecuteCommand();
+
+ if (deleteItemsResult <= 0)
+ {
+ throw new Exception($"鎵句笉鍒版潅鏀跺崟[ {from.ApplyNumber}]鏄庣粏锛屽垹闄ゅけ璐�");
+ }
+
+ // 鍒犻櫎鏉傛敹鍗�
+ var deleteResult = Db.Deleteable<MesItemQtrk>()
+ .Where(s => s.Id == itemRK.Id)
+ .ExecuteCommand();
+
+ if (deleteResult <= 0)
+ {
+ throw new Exception($"鍒犻櫎鏉傛敹鍗昜{from.ApplyNumber}]澶辫触");
+ }
+ }
+
+ return true;
+ }
+ }
+}
diff --git a/StandardPda/MES.Service/service/Warehouse/WomdaaManager.cs b/StandardPda/MES.Service/service/Warehouse/WomdaaManager.cs
index edc8bea..b0d1277 100644
--- a/StandardPda/MES.Service/service/Warehouse/WomdaaManager.cs
+++ b/StandardPda/MES.Service/service/Warehouse/WomdaaManager.cs
@@ -2,12 +2,13 @@
using MES.Service.DB;
using MES.Service.Dto.service;
using MES.Service.Modes;
+using MES.Service.service.BasicData;
using System;
using System.Collections.Generic;
+using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
-using System.Data;
namespace MES.Service.service.Warehouse
{
@@ -22,11 +23,11 @@
{
OracleSQLHelper SQLHelper = new();
//鏌ュ伐鍗曚俊鎭�
- var sql1 = @"select DAA001 tickeNo,s.ITEM_NO itemNo,s.ITEM_NAME itemName,s.ITEM_MODEL itemModel,DAA008 plannedNum from MESLINE_LIKE_CCLOGIN A
- join MES_LINE b on A.LINEID=b.ID
- left join WOMDAA C on C.DAA015=B.LINE_NO
- left join mes_items s on s.id = C.daa002
- where LOGINID='" + id + "' and DAA018='宸插紑宸�' order by DAA016 asc";
+ //var sql1 = @"select DAA001 tickeNo,s.ITEM_NO itemNo,s.ITEM_NAME itemName,s.ITEM_MODEL itemModel,DAA008 plannedNum from MESLINE_LIKE_CCLOGIN A
+ // join MES_LINE b on A.LINEID=b.ID
+ // left join WOMDAA C on C.DAA015=B.LINE_NO
+ // left join mes_items s on s.id = C.daa002
+ // where LOGINID='" + id + "' and DAA018='宸插紑宸�' order by DAA016 asc";
//鏀逛负鎸夌珯浣嶅彿鍙嶆煡浜х嚎锛屽啀閫氳繃浜х嚎鏌ュ嚭宸ュ崟淇℃伅
//var sql1 = @"select DAA001 tickeNo,s.ITEM_NO itemNo,s.ITEM_NAME itemName,s.ITEM_MODEL itemModel,DAA008 plannedNum from MESLINE_LIKE_CCLOGIN A
@@ -34,8 +35,16 @@
// join MES_LINE b on A.LINEID=b.ID
// left join WOMDAA C on C.DAA015=B.LINE_NO
// left join mes_items s on s.id = C.daa002
- // where WORKSNO='" + id+ "' and DAA018='宸插紑宸�' order by DAA016 asc";
+ // where WORKSNO='" + id + "' and DAA018='宸插紑宸�' order by DAA016 asc";
+
+ //鍙栫洿鎺ュ叧鑱旂嚎浣撶殑浜ф祴鐧诲綍鍙锋暟鎹紝鍘诲彇鑾峰彇宸ュ崟
+ var sql1 = "select DAA001 tickeNo,s.ITEM_NO itemNo,s.ITEM_NAME itemName,s.ITEM_MODEL itemModel,DAA008 plannedNum from " +
+ "MESLINE_LIKE_CCLOGIN_WORKS A1" +
+ " join MES_LINE b on A1.LOGINID=b.ID" +
+ " left join WOMDAA C on C.DAA015=B.LINE_NO" +
+ " left join mes_items s on s.id = C.daa002" +
+ " where WORKSNO='" + id + "' and DAA018='宸插紑宸�' order by DAA016 asc";
return SQLHelper.ExecuteQuery(sql1);
}
@@ -45,19 +54,265 @@
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
+ //public bool AddAsnInfo(AsnInfo asnInfo)
+ //{
+ // OracleSQLHelper SQLHelper = new();
+ // //璁板綍浜ф祴杩囩珯淇℃伅
+ // var sql1 = @"INSERT INTO MES_SN_STATUS_DETAILS (ID,TICKET_NO,SN_NO,WORKSTATION_NO,SN_STATE,LOGIN_ID) VALUES (SEQ_MES_SN_STATUS_DETAILS_ID.NEXTVAL,'" + asnInfo.tickeNo+ "','"+ asnInfo.snNo+ "','"+ asnInfo.workstationNo+ "','"+ asnInfo.snState+ "','"+asnInfo.loginId+"')";
+ // bool result = true;
+ // int i= SQLHelper.ExecuteNonQuery(sql1);
+ // //涓昏〃淇℃伅鎻掑叆鎴愬姛锛岀户缁彃鍏ラ」鐩�
+ // if (i > 0) {
+ // //鍒ゆ柇椤圭洰鏄惁涓虹┖锛屼负绌轰笉鎻掑叆
+ // if (asnInfo.failItems.Count>0)
+ // {
+ // //鎻掑叆閫昏緫
+
+ // }
+ // else
+ // {
+ // result = true;
+ // }
+
+
+ // } else { result = false; }
+
+ // return result;
+ //}
public bool AddAsnInfo(AsnInfo asnInfo)
{
- OracleSQLHelper SQLHelper = new();
- //璁板綍浜ф祴杩囩珯淇℃伅
- var sql1 = @"INSERT INTO MES_SN_STATUS_DETAILS (ID,TICKET_NO,SN_NO,WORKSTATION_NO,SN_STATE) VALUES (SEQ_MES_SN_STATUS_DETAILS_ID.NEXTVAL,'"+ asnInfo.tickeNo+ "','"+ asnInfo.snNo+ "','"+ asnInfo.workstationNo+ "','"+ asnInfo.snState+ "')";
+ var sqlHelper = new OracleSQLHelper();
bool result = true;
- int i= SQLHelper.ExecuteNonQuery(sql1);
- if (i > 0) {result = true;} else { result = false; }
-
+ //
+ var (connection, transaction) = sqlHelper.BeginTransaction();
+
+ try
+ {
+ // 涓昏〃鎻掑叆
+ var sql1 = $@"INSERT INTO MES_SN_STATUS_DETAILS
+ (ID, TICKET_NO, SN_NO, WORKSTATION_NO, SN_STATE, LOGIN_ID)
+ VALUES (SEQ_MES_SN_STATUS_DETAILS_ID.NEXTVAL,
+ '{asnInfo.tickeNo}',
+ '{asnInfo.snNo}',
+ '{asnInfo.workstationNo}',
+ '{asnInfo.snState}',
+ '{asnInfo.loginId}')";
+
+ int i = sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, sql1);
+
+ if (i > 0 && asnInfo.failItems?.Count > 0)
+ {
+ foreach (var item in asnInfo.failItems)
+ {
+ var sql2 = $@"INSERT INTO CC_FAIL_ITEMS
+ (ID, MID, DEFECT_ISSUE, ROOT_CAUSE, REPAIR_METHOD, MATERIAL_HANDLING, CREATE_DATE, CREATED_BY)
+ VALUES (SEQ_CC_FAIL_ITEMS.NEXTVAL,
+ SEQ_MES_SN_STATUS_DETAILS_ID.CURRVAL,
+ '{item.DefectIssue}',
+ '{item.RootCause}',
+ '{item.RepairMethod}',
+ '{item.MaterialHandling}',
+ SYSDATE,
+ '{asnInfo.loginId}')";
+
+ sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, sql2);
+ }
+ }
+
+ // 鍏ㄩ儴鎴愬姛鎻愪氦
+ transaction.Commit();
+ }
+ catch (Exception ex)
+ {
+ transaction.Rollback();
+ result = false;
+ throw; // 寤鸿璁板綍鏃ュ織
+ }
+ finally
+ {
+ sqlHelper.CloseConnection(connection);
+ }
+
return result;
}
+ /// <summary>
+ /// 璁剧疆涓鐮�
+ /// </summary>
+ /// <param name="mesMiddleBox"></param>
+ /// <returns></returns>
+ public string[] SetMediumBoxCode(MesMiddleBox mesMiddleBox)
+ {
+ var sqlHelper = new OracleSQLHelper();
+ string[] msg= new string[2];
+ msg[0] = "true";
+ //
+ var (connection, transaction) = sqlHelper.BeginTransaction();
+ try
+ {
+ if (mesMiddleBox.type.ToUpper() =="A") {
+ if (mesMiddleBox.SnList.Count > 0)
+ {
+ string sql1 = "select count(*) count from MES_MIDDLE_BOX where MEDIUMBOXCODE='"+ mesMiddleBox.MediumBoxCode + "'";
+ DataTable data= sqlHelper.ExecuteQuery(sql1);
+ if (data.Rows[0]["COUNT"].ToString() != "0") {
+ msg[0] = "false";
+ msg[1] = "璇ヤ腑绠辩爜宸茬粡缁戝畾SN鏁版嵁锛屽闇�鍐嶆缁戝畾璇峰厛瑙g粦锛佷腑绠辩爜锛�" + mesMiddleBox.MediumBoxCode;
+ transaction.Rollback();
+
+ return msg;
+ }
+ foreach (var item in mesMiddleBox.SnList)
+ {
+ var sql2 = $@"INSERT INTO MES_MIDDLE_BOX
+ (
+ ID,
+ MEDIUMBOXCODE,
+ LOGIN_ID,
+ SN_NO,
+ TICKET_NO,
+ CREATE_DATE,
+ CREATED_BY
+ )
+ VALUES
+ (
+ SEQ_MES_MIDDLE_BOX_ID.NEXTVAL, -- 搴忓垪鐢熸垚涓婚敭
+ '{mesMiddleBox.MediumBoxCode.ToString()}', -- 涓鐮�
+ '{mesMiddleBox.LoginId}', -- 鐧诲綍鍙�
+ '{item.SnNo}', -- SN鍙�
+ '{item.TicketNo}', -- 宸ュ崟鍗曞彿
+ SYSDATE, -- 鍒涘缓鏃堕棿
+ '{mesMiddleBox.LoginId}' -- 鍒涘缓浜�
+ )
+ ";
+
+ sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, sql2);
+ }
+ }
+ else
+ {
+ msg[0] = "false";
+ }
+ } else if(mesMiddleBox.type.ToUpper() == "F") {
+ //瑙g粦锛屾牴鎹腑绠辩爜鍏ㄩ儴鍒犻櫎
+ var sql2 = $@"delete MES_MIDDLE_BOX where MEDIUMBOXCODE='{mesMiddleBox.MediumBoxCode}'";
+
+ sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, sql2);
+ }
+ else
+ {
+ msg[1] = "SN鏄庣粏涓虹┖锛岃纭锛�";
+ msg[0] = "false";
+ }
+
+
+ // 鍏ㄩ儴鎴愬姛鎻愪氦
+ transaction.Commit();
+ }
+ catch (Exception ex)
+ {
+ transaction.Rollback();
+ msg[0] = "false";
+ msg[1] = ex.Message;
+ throw; // 寤鸿璁板綍鏃ュ織
+ }
+ finally
+ {
+ sqlHelper.CloseConnection(connection);
+ }
+
+ return msg;
+ }
+
+
+ public string[] SetStackCode(MesPalletBinding mesPalletBinding)
+ {
+ var sqlHelper = new OracleSQLHelper();
+ string[] msg = new string[2];
+ msg[0] = "true";
+ //
+ var (connection, transaction) = sqlHelper.BeginTransaction();
+
+ try
+ {
+ //缁戝畾
+ if (mesPalletBinding.Type.ToUpper() == "A") {
+ if (mesPalletBinding.SnList.Count > 0)
+ {
+ string sql1 = "select count(*) count from MES_PALLET_BINDING where STACKCODE='" + mesPalletBinding.StackCode + "'";
+ DataTable data = sqlHelper.ExecuteQuery(sql1);
+ if (data.Rows[0]["COUNT"].ToString() != "0")
+ {
+ msg[0] = "false";
+ msg[1] = "璇ユ爤鏉跨爜宸茬粡缁戝畾SN鏁版嵁锛屽闇�鍐嶆缁戝畾璇峰厛瑙g粦锛佹爤鏉跨爜锛�" + mesPalletBinding.StackCode;
+ transaction.Rollback();
+
+ return msg;
+ }
+ foreach (var item in mesPalletBinding.SnList)
+ {
+ var sql2 = $@"INSERT INTO MES_PALLET_BINDING
+ (
+ ID,
+ STACKCODE,
+ LOGIN_ID,
+ SN_NO,
+ TICKET_NO,
+ MEDIUMBOXCODE,
+ CREATE_DATE,
+ CREATED_BY
+ )
+ VALUES
+ (
+ SEQ_MES_PALLET_BINDING_ID.NEXTVAL, -- 搴忓垪鐢熸垚涓婚敭
+ '{mesPalletBinding.StackCode}', -- 鏍堟澘鐮�
+ '{mesPalletBinding.LoginId}', -- 鐧诲綍鍙�
+ '{item.SnNo}', -- SN鍙�
+ '{item.TicketNo}', -- 宸ュ崟鍗曞彿
+ '{item.MediumBoxCode}', -- 涓鐮�
+ SYSDATE, -- 鍒涘缓鏃堕棿
+ '{mesPalletBinding.LoginId}' -- 鍒涘缓浜�
+ )
+
+ ";
+
+ sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, sql2);
+ }
+ }
+ else
+ {
+ msg[1] = "SN鏄庣粏涓虹┖锛岃纭锛�";
+ msg[0] = "false";
+ }
+ }
+ //瑙g粦
+ else if(mesPalletBinding.Type.ToUpper() == "F")
+ {
+ //瑙g粦锛屾牴鎹腑绠辩爜鍏ㄩ儴鍒犻櫎
+ var sql2 = $@"delete MES_PALLET_BINDING where STACKCODE='" + mesPalletBinding.StackCode + "'";
+
+ sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, sql2);
+ }
+
+
+ // 鍏ㄩ儴鎴愬姛鎻愪氦
+ transaction.Commit();
+ }
+ catch (Exception ex)
+ {
+ transaction.Rollback();
+ msg[0] = "false";
+ msg[1] = ex.Message;
+ throw; // 寤鸿璁板綍鏃ュ織
+ }
+ finally
+ {
+ sqlHelper.CloseConnection(connection);
+ }
+
+ return msg;
+ }
}
}
diff --git a/StandardPda/MESApplication/Controllers/Warehouse/MesItemQtController.cs b/StandardPda/MESApplication/Controllers/Warehouse/MesItemQtController.cs
new file mode 100644
index 0000000..32d28c1
--- /dev/null
+++ b/StandardPda/MESApplication/Controllers/Warehouse/MesItemQtController.cs
@@ -0,0 +1,216 @@
+锘縰sing MES.Service.Dto.service;
+using MES.Service.Modes;
+using MES.Service.service;
+using MES.Service.service.BasicData;
+using MES.Service.service.Warehouse;
+using MES.Service.util;
+using Microsoft.AspNetCore.Mvc;
+using System.Dynamic;
+
+// For more information on enabling Web API for empty projects, visit https://go.microsoft.com/fwlink/?LinkID=397860
+
+namespace MESApplication.Controllers.Warehouse
+{
+ [Route("api/[controller]")]
+ [ApiController]
+ public class MesItemQtController : ControllerBase
+ {
+ private readonly MesItemQtManager m = new();
+
+ private readonly MessageCenterManager _manager = new();
+
+ private readonly string METHOD = "POST";
+
+ private readonly string TableName = "MesItemQt";
+
+ private readonly string URL = "http://localhost:10054/api/MesItemQt/";
+
+ /// <summary>
+ /// 鍏朵粬鍑哄簱鐢宠鍗曪紙鏉傚彂锛�
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost("MiscellaneousIssues")]
+ public ResponseResult MiscellaneousIssues(MesItemQtDto oItemOut)
+ {
+ var entity = new MessageCenter();
+ entity.TableName = TableName;
+ entity.Url = URL + "MiscellaneousIssues";
+ entity.Method = METHOD;
+ entity.Data = Newtonsoft.Json.JsonConvert.SerializeObject(oItemOut);
+ entity.Status = 1;
+ entity.CreateBy = "PL017";
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ var result = m.MiscellaneousIssues(oItemOut);
+ resultInfos.tbBillList = result;
+
+ entity.Result = 0;
+ if (result) entity.Result = 1;
+ entity.DealWith = 1;
+ _manager.save(entity);
+
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ entity.Result = 0;
+ entity.DealWith = 0;
+ entity.ResultData = ex.Message;
+ _manager.save(entity);
+
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ /// <summary>
+ /// 鑾峰彇鎵�鏈�
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost("GetList")]
+ public ResponseResult GetList()
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ resultInfos.tbBillList = m.GetList();
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+
+ /// <summary>
+ /// 鏍规嵁涓婚敭鑾峰彇
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost("GetById")]
+ public ResponseResult GetById(int id)
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ resultInfos.tbBillList = m.GetById(id);
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ /// <summary>
+ /// 鏍规嵁涓婚敭鍒犻櫎
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost("DeleteByIds")]
+ public ResponseResult DeleteByIds([FromBody] object[] ids)
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ resultInfos.tbBillList = m.DeleteByIds(ids);
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ /// <summary>
+ /// 娣诲姞
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost("Insert")]
+ public ResponseResult Add([FromBody] MesItemQt data)
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ resultInfos.tbBillList = m.Insert(data);
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ /// <summary>
+ /// 娣诲姞杩斿洖鑷
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost("InsertReturnIdentity")]
+ public ResponseResult InsertReturnIdentity([FromBody] MesItemQt data)
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ resultInfos.tbBillList = m.InsertReturnIdentity(data);
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ /// <summary>
+ /// 淇敼
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost("Update")]
+ public ResponseResult Update([FromBody] MesItemQt data)
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ resultInfos.tbBillList = m.Update(data);
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+ }
+}
diff --git a/StandardPda/MESApplication/Controllers/Warehouse/MesItemQtrkController.cs b/StandardPda/MESApplication/Controllers/Warehouse/MesItemQtrkController.cs
new file mode 100644
index 0000000..836e7d6
--- /dev/null
+++ b/StandardPda/MESApplication/Controllers/Warehouse/MesItemQtrkController.cs
@@ -0,0 +1,214 @@
+锘縰sing MES.Service.Dto.service;
+using MES.Service.Modes;
+using MES.Service.service;
+using MES.Service.service.Warehouse;
+using MES.Service.util;
+using Microsoft.AspNetCore.Http;
+using Microsoft.AspNetCore.Mvc;
+using System.Dynamic;
+
+namespace MESApplication.Controllers.Warehouse
+{
+ [Route("api/[controller]")]
+ [ApiController]
+ public class MesItemQtrkController : ControllerBase
+ {
+ private readonly MesItemQtrkManager m = new();
+
+ private readonly MessageCenterManager _manager = new();
+
+ private readonly string METHOD = "POST";
+
+ private readonly string TableName = "MesItemQtrk";
+
+ private readonly string URL = "http://localhost:10054/api/MesItemQtrk/";
+
+ /// <summary>
+ /// 鍏朵粬鍏ュ簱鐢宠鍗曪紙鏉傛敹锛�
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost("MiscellaneousReceipts")]
+ public ResponseResult MiscellaneousReceipts(MesItemQtRKDto mesItemQtRKDto)
+ {
+ var entity = new MessageCenter();
+ entity.TableName = TableName;
+ entity.Url = URL + "MiscellaneousReceipts";
+ entity.Method = METHOD;
+ entity.Data = Newtonsoft.Json.JsonConvert.SerializeObject(mesItemQtRKDto);
+ entity.Status = 1;
+ entity.CreateBy = "PL017";
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ var result = m.MiscellaneousReceipts(mesItemQtRKDto);
+ resultInfos.tbBillList = result;
+
+ entity.Result = 0;
+ if (result) entity.Result = 1;
+ entity.DealWith = 1;
+ _manager.save(entity);
+
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ entity.Result = 0;
+ entity.DealWith = 0;
+ entity.ResultData = ex.Message;
+ _manager.save(entity);
+
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ /// <summary>
+ /// 鑾峰彇鎵�鏈�
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost("GetList")]
+ public ResponseResult GetList()
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ resultInfos.tbBillList = m.GetList();
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+
+ /// <summary>
+ /// 鏍规嵁涓婚敭鑾峰彇
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost("GetById")]
+ public ResponseResult GetById(int id)
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ resultInfos.tbBillList = m.GetById(id);
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ /// <summary>
+ /// 鏍规嵁涓婚敭鍒犻櫎
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost("DeleteByIds")]
+ public ResponseResult DeleteByIds([FromBody] object[] ids)
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ resultInfos.tbBillList = m.DeleteByIds(ids);
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ /// <summary>
+ /// 娣诲姞
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost("Insert")]
+ public ResponseResult Add([FromBody] MesItemQtrk data)
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ resultInfos.tbBillList = m.Insert(data);
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ /// <summary>
+ /// 娣诲姞杩斿洖鑷
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost("InsertReturnIdentity")]
+ public ResponseResult InsertReturnIdentity([FromBody] MesItemQtrk data)
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ resultInfos.tbBillList = m.InsertReturnIdentity(data);
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ /// <summary>
+ /// 淇敼
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost("Update")]
+ public ResponseResult Update([FromBody] MesItemQtrk data)
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ resultInfos.tbBillList = m.Update(data);
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+ }
+}
diff --git a/StandardPda/MESApplication/Controllers/Warehouse/womdaaController.cs b/StandardPda/MESApplication/Controllers/Warehouse/womdaaController.cs
index b0c5720..dfdcdd9 100644
--- a/StandardPda/MESApplication/Controllers/Warehouse/womdaaController.cs
+++ b/StandardPda/MESApplication/Controllers/Warehouse/womdaaController.cs
@@ -1,4 +1,5 @@
-锘縰sing MES.Service.Dto.service;
+锘縰sing AngleSharp.Text;
+using MES.Service.Dto.service;
using MES.Service.Modes;
using MES.Service.service;
using MES.Service.service.Warehouse;
@@ -111,6 +112,116 @@
}
}
+ /// <summary>
+ ///璁剧疆涓鐮�
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost("SetMediumBoxCode")]
+ public ResponseResult SetMediumBoxCode(MesMiddleBox MesMiddleBox)
+ {
+ var entity = new MessageCenter();
+ entity.TableName = TableName;
+ entity.Url = URL + "SetMediumBoxCode";
+ entity.Method = METHOD;
+ entity.Data = Newtonsoft.Json.JsonConvert.SerializeObject(MesMiddleBox);
+ entity.Status = 1;
+ entity.CreateBy = "PL017";
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ var result = m.SetMediumBoxCode(MesMiddleBox);
+ resultInfos.tbBillList = result;
+
+ entity.Result = 0;
+ if (result[0].ToBoolean()) entity.Result = 1;
+ entity.DealWith = 1;
+ _manager.save(entity);
+
+ if (result[0].ToBoolean())
+ {
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ else {
+ return new ResponseResult
+ {
+ status = 1,
+ message = result[1],
+ data = resultInfos
+ };
+ }
+
+ }
+ catch (Exception ex)
+ {
+ entity.Result = 0;
+ entity.DealWith = 0;
+ entity.ResultData = ex.Message;
+ _manager.save(entity);
+
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ /// <summary>
+ ///璁剧疆鏍堟澘鐮�
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost("SetStackCode")]
+ public ResponseResult SetStackCode(MesPalletBinding mesPalletBinding)
+ {
+ var entity = new MessageCenter();
+ entity.TableName = TableName;
+ entity.Url = URL + "SetStackCode";
+ entity.Method = METHOD;
+ entity.Data = Newtonsoft.Json.JsonConvert.SerializeObject(mesPalletBinding);
+ entity.Status = 1;
+ entity.CreateBy = "PL017";
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ var result = m.SetStackCode(mesPalletBinding);
+ resultInfos.tbBillList = result;
+
+ entity.Result = 0;
+ if (result[0].ToBoolean()) entity.Result = 1;
+ entity.DealWith = 1;
+ _manager.save(entity);
+
+ if (result[0].ToBoolean())
+ {
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ else
+ {
+ return new ResponseResult
+ {
+ status = 1,
+ message = result[1],
+ data = resultInfos
+ };
+ }
+ }
+ catch (Exception ex)
+ {
+ entity.Result = 0;
+ entity.DealWith = 0;
+ entity.ResultData = ex.Message;
+ _manager.save(entity);
+
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
}
}
--
Gitblit v1.9.3