From 3dfa3d93337cca6363b0e138c74f80af96431b83 Mon Sep 17 00:00:00 2001 From: 展杰 <1240968267@qq.com> Date: 星期五, 16 八月 2024 08:58:54 +0800 Subject: [PATCH] 合并上格最新代码 --- MES.Service/service/Warehouse/MesInvItemMovesCDetailsManager.cs | 79 + MES.Service/service/BasicData/MesStaffManager.cs | 2 MESApplication/MESApplication.csproj | 9 MES.Service/Dto/service/OutItemDto.cs | 3 MESApplication/Controllers/Base/LoginController.cs | 19 MESApplication/Filter/ErrorLog.cs | 70 + MESApplication/bin/Debug/net8.0/MES.Service.pdb | 0 MESApplication/Controllers/Warehouse/MesInvItemMovesCDetailsController.cs | 163 ++ MES.Service/Dto/service/PurchaseInventory.cs | 2 MES.Service/service/Warehouse/MesInvItemMovesManager.cs | 522 +++++++++ MESApplication/bin/Debug/net8.0/MES.Service.dll | 0 MESApplication/Controllers/Warehouse/MesInvItemMovesController.cs | 306 +++++ MES.Service/service/QC/MesQaItemsDetectDetail5Manager.cs | 97 MESApplication/bin/Debug/net8.0/MESApplication.pdb | 0 MES.Service/Modes/MesInvItemOutItems.cs | 7 MES.Service/service/Warehouse/MesInvBusiness2Manager.cs | 94 MESApplication/Filter/ActionFilter.cs | 160 ++ MES.Service/service/Warehouse/OpeningReceiptServer.cs | 95 + MES.Service/util/CollectionUtil.cs | 2 MES.Service/service/Warehouse/MesDepotSectionsManager.cs | 66 + MES.Service/bin/Debug/net8.0/MES.Service.pdb | 0 MES.Service/Modes/MesInvItemMovesCDetails.cs | 237 ++++ MESApplication/Controllers/Warehouse/OpeningReceiptController.cs | 20 MES.Service/Modes/MesInvItemMoves.cs | 178 +++ MESApplication/bin/Debug/net8.0/MESApplication.dll | 0 MES.Service/bin/Debug/net8.0/MES.Service.dll | 0 MES.Service/service/Warehouse/MesInvItemArnDetailManager.cs | 10 MESApplication/Controllers/Warehouse/MesInvBusiness2Controller.cs | 308 ++-- MES.Service/Modes/MesInvBusiness2.cs | 419 +++--- MES.Service/Modes/MesInvItemStocks.cs | 38 MES.Service/Modes/MesQaItemsDetectDetail5.cs | 326 ++-- MES.Service/Modes/MesInvItemInCDetails.cs | 3 MES.Service/Dto/service/InventoryItem.cs | 8 MES.Service/Modes/MesDepotSections.cs | 134 +- MESApplication/Startup.cs | 17 MESApplication/bin/Debug/net8.0/MESApplication.exe | 0 MESApplication/Controllers/Base/DemoController.cs | 2 MES.Service/Dto/service/MovesDto.cs | 15 MESApplication/Controllers/Warehouse/MesDepotSectionsController.cs | 42 MES.Service/Dto/service/WarehouseQuery.cs | 4 40 files changed, 2,723 insertions(+), 734 deletions(-) diff --git a/MES.Service/Dto/service/InventoryItem.cs b/MES.Service/Dto/service/InventoryItem.cs index ca5767f..2d4a948 100644 --- a/MES.Service/Dto/service/InventoryItem.cs +++ b/MES.Service/Dto/service/InventoryItem.cs @@ -16,4 +16,12 @@ [SugarColumn(ColumnName = "QTY")] public decimal Qty { get; set; } // 浣跨敤 decimal 鏉ヨ〃绀烘暟閲� + + [SugarColumn(ColumnName = "sections_code")] + public string SectionsCode { get; set; } + + [SugarColumn(ColumnName = "erp_item_no")] + public string ErpItemNo { get; set; } + + [SugarColumn(ColumnName = "flist")] public string Flist { get; set; } } \ No newline at end of file diff --git a/MES.Service/Dto/service/MovesDto.cs b/MES.Service/Dto/service/MovesDto.cs new file mode 100644 index 0000000..55141e9 --- /dev/null +++ b/MES.Service/Dto/service/MovesDto.cs @@ -0,0 +1,15 @@ +锘縰sing MES.Service.Modes; + +namespace MES.Service.Dto.service; + +public class MovesDto +{ + //鍑哄叆鍗� + public List<MesInvItemMoves>? FromList { get; set; } + public List<MesInvItemOutItems>? OutItems { get; set; } + public List<MesInvItemMovesCDetails>? BarcodeList { get; set; } + + //鍏ュ簱鍗� + public bool? InAudit{ get; set; } + public MesInvItemBarcodes? BarcodesInfo{ get; set; } +} \ No newline at end of file diff --git a/MES.Service/Dto/service/OutItemDto.cs b/MES.Service/Dto/service/OutItemDto.cs index 804bb9c..53f1187 100644 --- a/MES.Service/Dto/service/OutItemDto.cs +++ b/MES.Service/Dto/service/OutItemDto.cs @@ -7,8 +7,7 @@ public MesInvItemOuts? Form { get; set; } public List<MesInvItemOutItems>? SaveItems { get; set; } public List<MESInvItemOutItems>? SelectItems { get; set; } - - + public string? ItemNo { get; set; } public decimal? Quantity { get; set; } diff --git a/MES.Service/Dto/service/PurchaseInventory.cs b/MES.Service/Dto/service/PurchaseInventory.cs index bb590d6..3067272 100644 --- a/MES.Service/Dto/service/PurchaseInventory.cs +++ b/MES.Service/Dto/service/PurchaseInventory.cs @@ -12,4 +12,6 @@ public List<MesInvItemInCDetails>? InvItemInCDetails { get; set; } public List<MesInvItemInCItems>? ItemInDetails { get; set; } + + public List<MesInvItemStocks>? ItemStocks { get; set; } } \ No newline at end of file diff --git a/MES.Service/Dto/service/WarehouseQuery.cs b/MES.Service/Dto/service/WarehouseQuery.cs index ea3e707..a7422e3 100644 --- a/MES.Service/Dto/service/WarehouseQuery.cs +++ b/MES.Service/Dto/service/WarehouseQuery.cs @@ -19,4 +19,8 @@ public string? Type { get; set; } public string? DepotCode { get; set; } public string? SuppNo { get; set; } + + public string? Factory { get; set; } + + public string? Company { get; set; } } \ No newline at end of file diff --git a/MES.Service/Modes/MesDepotSections.cs b/MES.Service/Modes/MesDepotSections.cs index 7011883..5cb98ee 100644 --- a/MES.Service/Modes/MesDepotSections.cs +++ b/MES.Service/Modes/MesDepotSections.cs @@ -8,96 +8,108 @@ [SugarTable("MES_DEPOT_SECTIONS")] public class MesDepotSections { - /// <summary> - /// ID(SEQ_INV_ID)锛圗RPID锛� - /// </summary> - [SugarColumn(ColumnName = "DEPOT_SECTION_ID", IsPrimaryKey = true)] + /// <summary> + /// ID(SEQ_INV_ID)锛圗RPID锛� + /// </summary> + [SugarColumn(ColumnName = "DEPOT_SECTION_ID", IsPrimaryKey = true)] public decimal DepotSectionId { get; set; } - /// <summary> - /// 璐т綅缂栫爜 - /// </summary> - [SugarColumn(ColumnName = "DEPOT_SECTION_CODE")] + /// <summary> + /// 璐т綅缂栫爜 + /// </summary> + [SugarColumn(ColumnName = "DEPOT_SECTION_CODE")] public string DepotSectionCode { get; set; } - /// <summary> - /// 璐т綅鍚嶇О - /// </summary> - [SugarColumn(ColumnName = "DEPOT_SECTION_NAME")] + /// <summary> + /// 璐т綅鍚嶇О + /// </summary> + [SugarColumn(ColumnName = "DEPOT_SECTION_NAME")] public string DepotSectionName { get; set; } - /// <summary> - /// 浠撳簱缂栫爜 - /// </summary> - [SugarColumn(ColumnName = "DEPOT_ID")] + /// <summary> + /// 浠撳簱缂栫爜 + /// </summary> + [SugarColumn(ColumnName = "DEPOT_ID")] public decimal? DepotId { get; set; } - /// <summary> - /// 鍙備笌榻愬鏍¢獙(0:鍚�,1:鏄�) - /// </summary> - [SugarColumn(ColumnName = "COMPLETENESS_FLAG")] + /// <summary> + /// 鍙備笌榻愬鏍¢獙(0:鍚�,1:鏄�) + /// </summary> + [SugarColumn(ColumnName = "COMPLETENESS_FLAG")] public short? CompletenessFlag { get; set; } - /// <summary> - /// 澶囨敞 - /// </summary> - [SugarColumn(ColumnName = "DESCRIPTION")] + /// <summary> + /// 澶囨敞 + /// </summary> + [SugarColumn(ColumnName = "DESCRIPTION")] public string Description { get; set; } - /// <summary> - /// 鍒涘缓浜� - /// </summary> - [SugarColumn(ColumnName = "CREATE_BY")] + /// <summary> + /// 鍒涘缓浜� + /// </summary> + [SugarColumn(ColumnName = "CREATE_BY")] public string CreateBy { get; set; } - /// <summary> - /// 鍒涘缓鏃堕棿 - /// </summary> - [SugarColumn(ColumnName = "CREATE_DATE")] + /// <summary> + /// 鍒涘缓鏃堕棿 + /// </summary> + [SugarColumn(ColumnName = "CREATE_DATE")] public DateTime? CreateDate { get; set; } - /// <summary> - /// 鏈�鍚庢洿鏂颁汉 - /// </summary> - [SugarColumn(ColumnName = "LASTUPDATE_BY")] + /// <summary> + /// 鏈�鍚庢洿鏂颁汉 + /// </summary> + [SugarColumn(ColumnName = "LASTUPDATE_BY")] public string LastupdateBy { get; set; } - /// <summary> - /// 鏈�鍚庢洿鏂版椂闂� - /// </summary> - [SugarColumn(ColumnName = "LASTUPDATE_DATE")] + /// <summary> + /// 鏈�鍚庢洿鏂版椂闂� + /// </summary> + [SugarColumn(ColumnName = "LASTUPDATE_DATE")] public DateTime? LastupdateDate { get; set; } - /// <summary> - /// </summary> - [SugarColumn(ColumnName = "COMPANY")] + /// <summary> + /// </summary> + [SugarColumn(ColumnName = "COMPANY")] public string Company { get; set; } - /// <summary> - /// </summary> - [SugarColumn(ColumnName = "FACTORY")] + /// <summary> + /// </summary> + [SugarColumn(ColumnName = "FACTORY")] public string Factory { get; set; } - /// <summary> - /// 鍗℃澘鏁� - /// </summary> - [SugarColumn(ColumnName = "KB_QTY")] + /// <summary> + /// 鍗℃澘鏁� + /// </summary> + [SugarColumn(ColumnName = "KB_QTY")] public decimal? KbQty { get; set; } - /// <summary> - /// 浠撲綅缁処D - /// </summary> - [SugarColumn(ColumnName = "ZUID")] + /// <summary> + /// 浠撲綅缁処D + /// </summary> + [SugarColumn(ColumnName = "ZUID")] public decimal? Zuid { get; set; } - /// <summary> - /// 浠撲綅鍏ㄥ悕 - /// </summary> - [SugarColumn(ColumnName = "DEPOT_SECTION_NAMET")] + /// <summary> + /// 浠撲綅鍏ㄥ悕 + /// </summary> + [SugarColumn(ColumnName = "DEPOT_SECTION_NAMET")] public string DepotSectionNamet { get; set; } - /// <summary> - /// </summary> - [SugarColumn(ColumnName = "ERPID")] + /// <summary> + /// </summary> + [SugarColumn(ColumnName = "ERPID")] public decimal? Erpid { get; set; } + + /// <summary> + /// 浠撳簱绫诲埆缂栫爜 + /// </summary> + [SugarColumn(IsIgnore = true)] + public string? DepotCode { get; set; } + + /// <summary> + /// 浠撳簱绫诲埆鍚嶇О + /// </summary> + [SugarColumn(IsIgnore = true)] + public string? DepotName { get; set; } } \ No newline at end of file diff --git a/MES.Service/Modes/MesInvBusiness2.cs b/MES.Service/Modes/MesInvBusiness2.cs index 82f13d9..9ca8594 100644 --- a/MES.Service/Modes/MesInvBusiness2.cs +++ b/MES.Service/Modes/MesInvBusiness2.cs @@ -1,194 +1,227 @@ -锘縰sing System; -using System.Collections.Generic; -using System.Linq; -using SqlSugar; -namespace MES.Service.Modes +锘縰sing SqlSugar; + +namespace MES.Service.Modes; + +/// <summary> +/// 搴撳瓨浜ゆ槗璁板綍琛� +/// </summary> +[SugarTable("MES_INV_BUSINESS2")] +public class MesInvBusiness2 { - /// <summary> - /// 搴撳瓨浜ゆ槗璁板綍琛� - ///</summary> - [SugarTable("MES_INV_BUSINESS2")] - public class MesInvBusiness2 - { - /// <summary> - /// ID(seq_inv_id) - ///</summary> - [SugarColumn(ColumnName="ID",OracleSequenceName = "SEQ_ID",IsPrimaryKey = true )] - public decimal Id { get; set; } - /// <summary> - /// 鐘舵�亅0-鏈氦鏄�1-宸蹭氦鏄� - ///</summary> - [SugarColumn(ColumnName="STATUS" )] - public decimal? Status { get; set; } - /// <summary> - /// 鍗曟嵁绫诲瀷ID - ///</summary> - [SugarColumn(ColumnName="BILL_TYPE_ID" )] - public decimal? BillTypeId { get; set; } - /// <summary> - /// 浜嬪姟绫诲瀷缂栫爜 - ///</summary> - [SugarColumn(ColumnName="TRANSACTION_CODE" )] - public string TransactionCode { get; set; } - /// <summary> - /// 浜ゆ槗绫诲瀷|1-鍏ュ簱0-杞簱-1鍑哄簱 - ///</summary> - [SugarColumn(ColumnName="BUSINESS_TYPE" )] - public decimal? BusinessType { get; set; } - /// <summary> - /// 鍗曟嵁ID - ///</summary> - [SugarColumn(ColumnName="BILL_ID" )] - public decimal? BillId { get; set; } - /// <summary> - /// 鍗曟嵁缂栫爜 - ///</summary> - [SugarColumn(ColumnName="BILL_NO" )] - public string BillNo { get; set; } - /// <summary> - /// 鐢熶骇璁㈠崟鍙� - ///</summary> - [SugarColumn(ColumnName="TASK_NO" )] - public string TaskNo { get; set; } - /// <summary> - /// 瀹㈡埛缂栧彿 - ///</summary> - [SugarColumn(ColumnName="CUSTOMER_NO" )] - public string CustomerNo { get; set; } - /// <summary> - /// 鍗曟嵁琛孖D - ///</summary> - [SugarColumn(ColumnName="BILL_LINE_ID" )] - public decimal? BillLineId { get; set; } - /// <summary> - /// 鐗╂枡鏉$爜 - ///</summary> - [SugarColumn(ColumnName="ITEM_BARCODE" )] - public string ItemBarcode { get; set; } - /// <summary> - /// 鏈徃鐗╂枡缂栫爜 - ///</summary> - [SugarColumn(ColumnName="ITEM_NO" )] - public string ItemNo { get; set; } - /// <summary> - /// 瀹㈡埛鐗╂枡缂栫爜 - ///</summary> - [SugarColumn(ColumnName="C_ITEM_CODE" )] - public string CItemCode { get; set; } - /// <summary> - /// 鍘傚鎵规 - ///</summary> - [SugarColumn(ColumnName="LOT_NO" )] - public string LotNo { get; set; } - /// <summary> - /// 鏄惁鐜繚(0:鍚�,1:鏄�) - ///</summary> - [SugarColumn(ColumnName="EP_FLAG" )] - public short? EpFlag { get; set; } - /// <summary> - /// 鏁伴噺 - ///</summary> - [SugarColumn(ColumnName="QUANTITY" )] - public decimal? Quantity { get; set; } - /// <summary> - /// 婧愬瓙搴揅ODE - ///</summary> - [SugarColumn(ColumnName="FROM_INV_DEPOTS_CODE" )] - public string FromInvDepotsCode { get; set; } - /// <summary> - /// 婧愯揣浣岰ODE - ///</summary> - [SugarColumn(ColumnName="FROM_INV_DEPOT_SECTIONS_CODE" )] - public string FromInvDepotSectionsCode { get; set; } - /// <summary> - /// 鐩殑瀛愬簱CODE - ///</summary> - [SugarColumn(ColumnName="TO_INV_DEPOTS_CODE" )] - public string ToInvDepotsCode { get; set; } - /// <summary> - /// 鐩殑璐т綅CODE - ///</summary> - [SugarColumn(ColumnName="TO_INV_DEPOT_SECTIONS_CODE" )] - public string ToInvDepotSectionsCode { get; set; } - /// <summary> - /// 浜ゆ槗寮傚父淇℃伅 - ///</summary> - [SugarColumn(ColumnName="DESCRIPTION" )] - public string Description { get; set; } - /// <summary> - /// 鍒涘缓浜� - ///</summary> - [SugarColumn(ColumnName="CREATE_BY" )] - public string CreateBy { get; set; } - /// <summary> - /// 鍒涘缓鏃堕棿 - ///</summary> - [SugarColumn(ColumnName="CREATE_DATE" )] - public DateTime? CreateDate { get; set; } - /// <summary> - /// 鏈�鍚庢洿鏂颁汉 - ///</summary> - [SugarColumn(ColumnName="LASTUPDATE_BY" )] - public string LastupdateBy { get; set; } - /// <summary> - /// 鏈�鍚庢洿鏂版椂闂� - ///</summary> - [SugarColumn(ColumnName="LASTUPDATE_DATE" )] - public DateTime? LastupdateDate { get; set; } - /// <summary> - /// 瓒呮崯缁熻鏍囪瘑 - ///</summary> - [SugarColumn(ColumnName="ULLAGE_STAT_FLAG" )] - public short? UllageStatFlag { get; set; } - /// <summary> - /// 鍒嗗巶缂栫爜 - ///</summary> - [SugarColumn(ColumnName="FACTORY" )] - public string Factory { get; set; } - /// <summary> - /// 鍏徃浠g爜 - ///</summary> - [SugarColumn(ColumnName="COMPANY" )] - public string Company { get; set; } - /// <summary> - /// 绠卞彿鏉$爜 - ///</summary> - [SugarColumn(ColumnName="ITEM_BARCODE2" )] - public string ItemBarcode2 { get; set; } - /// <summary> - /// 鍗℃澘鏉$爜 - ///</summary> - [SugarColumn(ColumnName="ITEM_BARCODE3" )] - public string ItemBarcode3 { get; set; } - /// <summary> - /// 浠诲姟鍗曞彿 - ///</summary> - [SugarColumn(ColumnName="WORK_NO" )] - public string WorkNo { get; set; } - /// <summary> - /// 浠诲姟鍗曡鍙� - ///</summary> - [SugarColumn(ColumnName="WORK_LINE" )] - public decimal? WorkLine { get; set; } - /// <summary> - /// 渚涘簲鍟� - ///</summary> - [SugarColumn(ColumnName="SUPP_NO" )] - public string SuppNo { get; set; } - /// <summary> - /// 鐢熶骇绾� - ///</summary> - [SugarColumn(ColumnName="LINE_NO" )] - public string LineNo { get; set; } - /// <summary> - /// 閲囪喘璁㈠崟id - ///</summary> - [SugarColumn(ColumnName="EBELN_K3ID" )] - public decimal? EbelnK3id { get; set; } - /// <summary> - /// 閲囪喘璁㈠崟琛宨d - ///</summary> - [SugarColumn(ColumnName="LINE_K3ID" )] - public decimal? LineK3id { get; set; } - } -} + /// <summary> + /// ID(seq_inv_id) + /// </summary> + [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_ID", + IsPrimaryKey = true)] + public decimal Id { get; set; } + + /// <summary> + /// 鐘舵�亅0-鏈氦鏄�1-宸蹭氦鏄� + /// </summary> + [SugarColumn(ColumnName = "STATUS")] + public decimal? Status { get; set; } + + /// <summary> + /// 鍗曟嵁绫诲瀷ID + /// </summary> + [SugarColumn(ColumnName = "BILL_TYPE_ID")] + public decimal? BillTypeId { get; set; } + + /// <summary> + /// 浜嬪姟绫诲瀷缂栫爜 + /// </summary> + [SugarColumn(ColumnName = "TRANSACTION_CODE")] + public string TransactionCode { get; set; } + + /// <summary> + /// 浜ゆ槗绫诲瀷|1-鍏ュ簱0-杞簱-1鍑哄簱 + /// </summary> + [SugarColumn(ColumnName = "BUSINESS_TYPE")] + public decimal? BusinessType { get; set; } + + /// <summary> + /// 鍗曟嵁ID + /// </summary> + [SugarColumn(ColumnName = "BILL_ID")] + public decimal? BillId { get; set; } + + /// <summary> + /// 鍗曟嵁缂栫爜 + /// </summary> + [SugarColumn(ColumnName = "BILL_NO")] + public string BillNo { get; set; } + + /// <summary> + /// 鐢熶骇璁㈠崟鍙� + /// </summary> + [SugarColumn(ColumnName = "TASK_NO")] + public string TaskNo { get; set; } + + /// <summary> + /// 瀹㈡埛缂栧彿 + /// </summary> + [SugarColumn(ColumnName = "CUSTOMER_NO")] + public string CustomerNo { get; set; } + + /// <summary> + /// 鍗曟嵁琛孖D + /// </summary> + [SugarColumn(ColumnName = "BILL_LINE_ID")] + public decimal? BillLineId { get; set; } + + /// <summary> + /// 鐗╂枡鏉$爜 + /// </summary> + [SugarColumn(ColumnName = "ITEM_BARCODE")] + public string ItemBarcode { get; set; } + + /// <summary> + /// 鏈徃鐗╂枡缂栫爜 + /// </summary> + [SugarColumn(ColumnName = "ITEM_NO")] + public string ItemNo { get; set; } + + /// <summary> + /// 瀹㈡埛鐗╂枡缂栫爜 + /// </summary> + [SugarColumn(ColumnName = "C_ITEM_CODE")] + public string CItemCode { get; set; } + + /// <summary> + /// 鍘傚鎵规 + /// </summary> + [SugarColumn(ColumnName = "LOT_NO")] + public string LotNo { get; set; } + + /// <summary> + /// 鏄惁鐜繚(0:鍚�,1:鏄�) + /// </summary> + [SugarColumn(ColumnName = "EP_FLAG")] + public short? EpFlag { get; set; } + + /// <summary> + /// 鏁伴噺 + /// </summary> + [SugarColumn(ColumnName = "QUANTITY")] + public decimal? Quantity { get; set; } + + /// <summary> + /// 婧愬瓙搴揅ODE + /// </summary> + [SugarColumn(ColumnName = "FROM_INV_DEPOTS_CODE")] + public string FromInvDepotsCode { get; set; } + + /// <summary> + /// 婧愯揣浣岰ODE + /// </summary> + [SugarColumn(ColumnName = "FROM_INV_DEPOT_SECTIONS_CODE")] + public string FromInvDepotSectionsCode { get; set; } + + /// <summary> + /// 鐩殑瀛愬簱CODE + /// </summary> + [SugarColumn(ColumnName = "TO_INV_DEPOTS_CODE")] + public string ToInvDepotsCode { get; set; } + + /// <summary> + /// 鐩殑璐т綅CODE + /// </summary> + [SugarColumn(ColumnName = "TO_INV_DEPOT_SECTIONS_CODE")] + public string ToInvDepotSectionsCode { get; set; } + + /// <summary> + /// 浜ゆ槗寮傚父淇℃伅 + /// </summary> + [SugarColumn(ColumnName = "DESCRIPTION")] + public string Description { get; set; } + + /// <summary> + /// 鍒涘缓浜� + /// </summary> + [SugarColumn(ColumnName = "CREATE_BY")] + public string CreateBy { get; set; } + + /// <summary> + /// 鍒涘缓鏃堕棿 + /// </summary> + [SugarColumn(ColumnName = "CREATE_DATE")] + public DateTime? CreateDate { get; set; } + + /// <summary> + /// 鏈�鍚庢洿鏂颁汉 + /// </summary> + [SugarColumn(ColumnName = "LASTUPDATE_BY")] + public string LastupdateBy { get; set; } + + /// <summary> + /// 鏈�鍚庢洿鏂版椂闂� + /// </summary> + [SugarColumn(ColumnName = "LASTUPDATE_DATE")] + public DateTime? LastupdateDate { get; set; } + + /// <summary> + /// 瓒呮崯缁熻鏍囪瘑 + /// </summary> + [SugarColumn(ColumnName = "ULLAGE_STAT_FLAG")] + public short? UllageStatFlag { get; set; } + + /// <summary> + /// 鍒嗗巶缂栫爜 + /// </summary> + [SugarColumn(ColumnName = "FACTORY")] + public string Factory { get; set; } + + /// <summary> + /// 鍏徃浠g爜 + /// </summary> + [SugarColumn(ColumnName = "COMPANY")] + public string Company { get; set; } + + /// <summary> + /// 绠卞彿鏉$爜 + /// </summary> + [SugarColumn(ColumnName = "ITEM_BARCODE2")] + public string ItemBarcode2 { get; set; } + + /// <summary> + /// 鍗℃澘鏉$爜 + /// </summary> + [SugarColumn(ColumnName = "ITEM_BARCODE3")] + public string ItemBarcode3 { get; set; } + + /// <summary> + /// 浠诲姟鍗曞彿 + /// </summary> + [SugarColumn(ColumnName = "WORK_NO")] + public string WorkNo { get; set; } + + /// <summary> + /// 浠诲姟鍗曡鍙� + /// </summary> + [SugarColumn(ColumnName = "WORK_LINE")] + public decimal? WorkLine { get; set; } + + /// <summary> + /// 渚涘簲鍟� + /// </summary> + [SugarColumn(ColumnName = "SUPP_NO")] + public string SuppNo { get; set; } + + /// <summary> + /// 鐢熶骇绾� + /// </summary> + [SugarColumn(ColumnName = "LINE_NO")] + public string LineNo { get; set; } + + /// <summary> + /// 閲囪喘璁㈠崟id + /// </summary> + [SugarColumn(ColumnName = "EBELN_K3ID")] + public decimal? EbelnK3id { get; set; } + + /// <summary> + /// 閲囪喘璁㈠崟琛宨d + /// </summary> + [SugarColumn(ColumnName = "LINE_K3ID")] + public decimal? LineK3id { get; set; } +} \ No newline at end of file diff --git a/MES.Service/Modes/MesInvItemInCDetails.cs b/MES.Service/Modes/MesInvItemInCDetails.cs index be92da1..0bf8253 100644 --- a/MES.Service/Modes/MesInvItemInCDetails.cs +++ b/MES.Service/Modes/MesInvItemInCDetails.cs @@ -11,7 +11,8 @@ /// <summary> /// SEQ_OUT /// </summary> - [SugarColumn(ColumnName = "ID",OracleSequenceName = "SEQ_INV_ID", IsPrimaryKey = true)] + [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_INV_ID", + IsPrimaryKey = true)] public decimal Id { get; set; } /// <summary> diff --git a/MES.Service/Modes/MesInvItemMoves.cs b/MES.Service/Modes/MesInvItemMoves.cs new file mode 100644 index 0000000..07b4ba6 --- /dev/null +++ b/MES.Service/Modes/MesInvItemMoves.cs @@ -0,0 +1,178 @@ +锘縰sing SqlSugar; + +namespace MES.Service.Modes; + +/// <summary> +/// 鐗╂枡绉诲簱涓昏〃 +/// </summary> +[SugarTable("MES_INV_ITEM_MOVES")] +public class MesInvItemMoves +{ + /// <summary> + /// SEQ_INV_ID + /// </summary> + [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)] + public decimal Id { get; set; } + + /// <summary> + /// 绉诲簱鍗曞彿 + /// </summary> + [SugarColumn(ColumnName = "BILL_NO")] + public string BillNo { get; set; } + + /// <summary> + /// 绉诲叆瀛愬簱id + /// </summary> + [SugarColumn(ColumnName = "INV_DEPOTS_ID")] + public decimal? InvDepotsId { get; set; } + + /// <summary> + /// 绉诲叆璐т綅id + /// </summary> + [SugarColumn(ColumnName = "INV_DEPOT_SECTIONS_ID")] + public decimal? InvDepotSectionsId { get; set; } + + /// <summary> + /// 鍒涘缓浜� + /// </summary> + [SugarColumn(ColumnName = "CREATE_BY")] + public string CreateBy { get; set; } + + /// <summary> + /// 鍒涘缓鏃堕棿 + /// </summary> + [SugarColumn(ColumnName = "CREATE_DATE")] + public DateTime? CreateDate { get; set; } + + /// <summary> + /// 鏈�鍚庢洿鏂颁汉 + /// </summary> + [SugarColumn(ColumnName = "LASTUPDATE_BY")] + public string LastupdateBy { get; set; } + + /// <summary> + /// 鏈�鍚庢洿鏂版椂闂� + /// </summary> + [SugarColumn(ColumnName = "LASTUPDATE_DATE")] + public DateTime? LastupdateDate { get; set; } + + /// <summary> + /// 鐘舵�亅0-鍒跺崟1-杩囪处 + /// </summary> + [SugarColumn(ColumnName = "STATUS")] + public decimal? Status { get; set; } + + /// <summary> + /// 澶囨敞 + /// </summary> + [SugarColumn(ColumnName = "REMARK")] + public string Remark { get; set; } + + /// <summary> + /// 鍗曟嵁绫诲瀷ID + /// </summary> + [SugarColumn(ColumnName = "BILL_TYPE_ID")] + public decimal? BillTypeId { get; set; } + + /// <summary> + /// 浜嬪姟绫诲瀷ID + /// </summary> + [SugarColumn(ColumnName = "TRANSACTION_ID")] + public decimal? TransactionId { get; set; } + + /// <summary> + /// 瀹℃牳浜� + /// </summary> + [SugarColumn(ColumnName = "CHECKUSER")] + public string Checkuser { get; set; } + + /// <summary> + /// 瀹℃牳鏃ユ湡 + /// </summary> + [SugarColumn(ColumnName = "CHECKDATE")] + public DateTime? Checkdate { get; set; } + + /// <summary> + /// 绉诲叆瀛愬簱code + /// </summary> + [SugarColumn(ColumnName = "INV_DEPOTS_CODE")] + public string InvDepotsCode { get; set; } + + /// <summary> + /// 绉诲叆璐т綅code + /// </summary> + [SugarColumn(ColumnName = "INV_DEPOT_SECTIONS_CODE")] + public string InvDepotSectionsCode { get; set; } + + /// <summary> + /// 浜嬪姟绫诲瀷缂栫爜 + /// </summary> + [SugarColumn(ColumnName = "TRANSACTION_NO")] + public decimal? TransactionNo { get; set; } + + /// <summary> + /// 绉诲嚭瀛愬簱code + /// </summary> + [SugarColumn(ColumnName = "FROM_DEPOTS_CODE")] + public string FromDepotsCode { get; set; } + + /// <summary> + /// 宸ュ巶缂栫爜 + /// </summary> + [SugarColumn(ColumnName = "FACTORY_CODE")] + public string FactoryCode { get; set; } + + /// <summary> + /// SAP杩斿洖鍗曟嵁 + /// </summary> + [SugarColumn(ColumnName = "SAPNO")] + public string Sapno { get; set; } + + /// <summary> + /// 宸插洖鍐橲AP + /// </summary> + [SugarColumn(ColumnName = "SAPSTATUS")] + public short? Sapstatus { get; set; } + + /// <summary> + /// SAP杩斿洖骞翠唤 + /// </summary> + [SugarColumn(ColumnName = "SAPYEAR")] + public short? Sapyear { get; set; } + + /// <summary> + /// SAP杩斿洖淇℃伅 + /// </summary> + [SugarColumn(ColumnName = "SAPTEXT")] + public string Saptext { get; set; } + + /// <summary> + /// 鍒嗗巶缂栫爜 + /// </summary> + [SugarColumn(ColumnName = "FACTORY")] + public string Factory { get; set; } + + /// <summary> + /// 鍏徃浠g爜 + /// </summary> + [SugarColumn(ColumnName = "COMPANY")] + public string Company { get; set; } + + /// <summary> + /// 鍙嶅鏍镐簨鍔$被鍨嬬紪鐮� + /// </summary> + [SugarColumn(ColumnName = "MTRANSACTION_NO")] + public decimal? MtransactionNo { get; set; } + + /// <summary> + /// 鑷姩淇濆瓨瀛楁 + /// </summary> + [SugarColumn(ColumnName = "ZD_NUM")] + public decimal? ZdNum { get; set; } + + /// <summary> + /// 鏄惁鎺ㄩ�丒RP1-鏄紝2-鍚� + /// </summary> + [SugarColumn(ColumnName = "TS")] + public decimal? Ts { get; set; } +} \ No newline at end of file diff --git a/MES.Service/Modes/MesInvItemMovesCDetails.cs b/MES.Service/Modes/MesInvItemMovesCDetails.cs new file mode 100644 index 0000000..1fc798b --- /dev/null +++ b/MES.Service/Modes/MesInvItemMovesCDetails.cs @@ -0,0 +1,237 @@ +锘縰sing SqlSugar; + +namespace MES.Service.Modes; + +/// <summary> +/// 鐗╂枡绉诲簱鏉$爜鏄庣粏浠庤〃 +/// </summary> +[SugarTable("MES_INV_ITEM_MOVES_C_DETAILS")] +public class MesInvItemMovesCDetails +{ + /// <summary> + /// seq_inv_id + /// </summary> + [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_INV_ID", + IsPrimaryKey = true)] + public decimal Id { get; set; } + + /// <summary> + /// </summary> + [SugarColumn(ColumnName = "ITEM_MOVE_ID")] + public decimal? ItemMoveId { get; set; } + + /// <summary> + /// 鐗╂枡鏉$爜 + /// </summary> + [SugarColumn(ColumnName = "ITEM_BARCODE")] + public string? ItemBarcode { get; set; } + + /// <summary> + /// 瀹㈡埛鐗╂枡缂栫爜锛堟棤鏉$爜鎵嬪伐褰曞叆锛屾湁鏉$爜涓哄啑浣欏瓧娈碉級 + /// </summary> + [SugarColumn(ColumnName = "C_ITEM_CODE")] + public string? CItemCode { get; set; } + + /// <summary> + /// 淇″崕鐗╂枡缂栫爜锛堟棤鏉$爜鎵嬪伐褰曞叆锛屾湁鏉$爜涓哄啑浣欏瓧娈碉級 + /// </summary> + [SugarColumn(ColumnName = "ITEM_NO")] + public string? ItemNo { get; set; } + + /// <summary> + /// 鍘傚鎵规 + /// </summary> + [SugarColumn(ColumnName = "LOT_NO")] + public string? LotNo { get; set; } + + /// <summary> + /// 鏁伴噺锛堟棤鏉$爜鎵嬪伐褰曞叆锛屾湁鏉$爜涓哄啑浣欏瓧娈碉級 + /// </summary> + [SugarColumn(ColumnName = "QUANTITY")] + public decimal? Quantity { get; set; } + + /// <summary> + /// 鍑哄簱鏂瑰紡(1:鏈夋潯鐮�,0:鏃犳潯鐮�) + /// </summary> + [SugarColumn(ColumnName = "BARCODE_FLAG")] + public short? BarcodeFlag { get; set; } + + /// <summary> + /// 鐜繚鏍囧織锛堟棤鏉$爜鎵嬪伐褰曞叆锛屾湁鏉$爜涓哄啑浣欏瓧娈碉級 + /// </summary> + [SugarColumn(ColumnName = "EP_FLAG")] + public short? EpFlag { get; set; } + + /// <summary> + /// 鍒涘缓浜� + /// </summary> + [SugarColumn(ColumnName = "CREATE_BY")] + public string? CreateBy { get; set; } + + /// <summary> + /// 鍒涘缓鏃堕棿 + /// </summary> + [SugarColumn(ColumnName = "CREATE_DATE")] + public DateTime? CreateDate { get; set; } + + /// <summary> + /// 鏈�鍚庢洿鏂颁汉 + /// </summary> + [SugarColumn(ColumnName = "LASTUPDATE_BY")] + public string? LastupdateBy { get; set; } + + /// <summary> + /// 鏈�鍚庢洿鏂版椂闂� + /// </summary> + [SugarColumn(ColumnName = "LASTUPDATE_DATE")] + public DateTime? LastupdateDate { get; set; } + + /// <summary> + /// 瀛愬簱id + /// </summary> + [SugarColumn(ColumnName = "INV_DEPOTS_ID")] + public decimal? InvDepotsId { get; set; } + + /// <summary> + /// 璐т綅id + /// </summary> + [SugarColumn(ColumnName = "INV_DEPOT_SECTIONS_ID")] + public decimal? InvDepotSectionsId { get; set; } + + /// <summary> + /// 瀹㈡埛缂栫爜 + /// </summary> + [SugarColumn(ColumnName = "CUST_NO")] + public string? CustNo { get; set; } + + /// <summary> + /// 浠诲姟浠ゅ彿 + /// </summary> + [SugarColumn(ColumnName = "TASK_NO")] + public string? TaskNo { get; set; } + + /// <summary> + /// 绉诲嚭浠撳簱缂栧彿 + /// </summary> + [SugarColumn(ColumnName = "FROM_DEPOTS_CODE")] + public string? FromDepotsCode { get; set; } + + /// <summary> + /// 绉诲嚭搴撲綅缂栧彿 + /// </summary> + [SugarColumn(ColumnName = "FROM_DEPOT_SECTIONS_CODE")] + public string? FromDepotSectionsCode { get; set; } + + /// <summary> + /// 鏉$爜澶囨敞 + /// </summary> + [SugarColumn(ColumnName = "REMARK")] + public string? Remark { get; set; } + + /// <summary> + /// 鍒嗗巶缂栫爜 + /// </summary> + [SugarColumn(ColumnName = "FACTORY")] + public string? Factory { get; set; } + + /// <summary> + /// 鍏徃浠g爜 + /// </summary> + [SugarColumn(ColumnName = "COMPANY")] + public string? Company { get; set; } + + /// <summary> + /// 绠卞彿 + /// </summary> + [SugarColumn(ColumnName = "BOX_NO")] + public string? BoxNo { get; set; } + + /// <summary> + /// 鍗℃澘鍙� + /// </summary> + [SugarColumn(ColumnName = "KO_NO")] + public string? KoNo { get; set; } + + /// <summary> + /// 绉诲叆浠撳簱缂栧彿 + /// </summary> + [SugarColumn(ColumnName = "INV_DEPOTS_CODE")] + public string? InvDepotsCode { get; set; } + + /// <summary> + /// 绉诲叆搴撲綅缂栧彿 + /// </summary> + [SugarColumn(ColumnName = "INV_DEPOT_SECTIONS_CODE")] + public string? InvDepotSectionsCode { get; set; } + + /// <summary> + /// 璐ㄦ缁撴灉 + /// </summary> + [SugarColumn(ColumnName = "IQC_STATUS")] + public string? IqcStatus { get; set; } + + /// <summary> + /// 灏忚溅缂栧彿 + /// </summary> + [SugarColumn(ColumnName = "FCAR")] + public string? Fcar { get; set; } + + /// <summary> + /// 鍏ュ簱鏃ユ湡 + /// </summary> + [SugarColumn(ColumnName = "INDEP_DATE")] + public DateTime? IndepDate { get; set; } + + /// <summary> + /// 鍐荤粨鎻愪氦閲嶆锛�0锛氬喕缁撴湭鎻愪氦閲嶆锛�1锛氬喕缁撳苟鎻愪氦閲嶆 + /// </summary> + [SugarColumn(ColumnName = "VISABLE_SUBMIT")] + public short? VisableSubmit { get; set; } + + /// <summary> + /// 鎻愪氦閲嶆浜� + /// </summary> + [SugarColumn(ColumnName = "VISABLE_SUBMIT_BY")] + public string? VisableSubmitBy { get; set; } + + /// <summary> + /// 鎻愪氦閲嶆鏃堕棿 + /// </summary> + [SugarColumn(ColumnName = "VISABLE_SUBMIT_DATE")] + public DateTime? VisableSubmitDate { get; set; } + + /// <summary> + /// 浜у搧鍨嬪彿 + /// </summary> + [SugarColumn(ColumnName = "BOARD_STYLE")] + public string? BoardStyle { get; set; } + + /// <summary> + /// 浠诲姟鍗曞彿 + /// </summary> + [SugarColumn(ColumnName = "WORK_NO")] + public string? WorkNo { get; set; } + + /// <summary> + /// 浠诲姟鍗曡鍙� + /// </summary> + [SugarColumn(ColumnName = "WORK_LINE")] + public decimal? WorkLine { get; set; } + + /// <summary> + /// 渚涘簲鍟嗙紪鍙� + /// </summary> + [SugarColumn(ColumnName = "SUPP_NO")] + public string? SuppNo { get; set; } + + /// <summary> + /// 璋冨叆 + /// </summary> + [SugarColumn(ColumnName = "MOVE_OK")] + public decimal? MoveOk { get; set; } + + [SugarColumn(IsIgnore = true)] public string? ItemName { get; set; } + [SugarColumn(IsIgnore = true)] public string? ItemModel { get; set; } + [SugarColumn(IsIgnore = true)] public string? ItemUnit { get; set; } + [SugarColumn(IsIgnore = true)] public string? SuppName { get; set; } +} \ No newline at end of file diff --git a/MES.Service/Modes/MesInvItemOutItems.cs b/MES.Service/Modes/MesInvItemOutItems.cs index 1e640a8..51098b2 100644 --- a/MES.Service/Modes/MesInvItemOutItems.cs +++ b/MES.Service/Modes/MesInvItemOutItems.cs @@ -207,4 +207,11 @@ /// </summary> [SugarColumn(ColumnName = "TL_QTY")] public decimal? TlQty { get; set; } + + [SugarColumn(ColumnName = "ITEM_ID")] public decimal? ItemId { get; set; } + + [SugarColumn(IsIgnore = true)] public string? ItemName { get; set; } + [SugarColumn(IsIgnore = true)] public string? ItemModel { get; set; } + [SugarColumn(IsIgnore = true)] public string? ItemUnit { get; set; } + [SugarColumn(IsIgnore = true)] public string? QuantityOk { get; set; } } \ No newline at end of file diff --git a/MES.Service/Modes/MesInvItemStocks.cs b/MES.Service/Modes/MesInvItemStocks.cs index c3c46e1..2a5a4d1 100644 --- a/MES.Service/Modes/MesInvItemStocks.cs +++ b/MES.Service/Modes/MesInvItemStocks.cs @@ -9,7 +9,7 @@ public class MesInvItemStocks { /// <summary> - /// SEQ_ME_ID + /// SEQ_ME_ID /// </summary> [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_ME_ID", IsPrimaryKey = true)] @@ -19,25 +19,25 @@ /// 鐢熶骇璁㈠崟 /// </summary> [SugarColumn(ColumnName = "TASK_NO")] - public string TaskNo { get; set; } + public string? TaskNo { get; set; } /// <summary> /// 鐗╂枡鏉$爜 /// </summary> [SugarColumn(ColumnName = "ITEM_BARCODE")] - public string ItemBarcode { get; set; } + public string? ItemBarcode { get; set; } /// <summary> /// 瀹㈡埛鐗╂枡缂栫爜锛堟棤鏉$爜鎵嬪伐褰曞叆锛屾湁鏉$爜涓哄啑浣欏瓧娈碉級 /// </summary> [SugarColumn(ColumnName = "C_ITEM_CODE")] - public string CItemCode { get; set; } + public string? CItemCode { get; set; } /// <summary> /// 鏈徃鐗╂枡缂栫爜锛堟棤鏉$爜鎵嬪伐褰曞叆锛屾湁鏉$爜涓哄啑浣欏瓧娈碉級 /// </summary> [SugarColumn(ColumnName = "ITEM_NO")] - public string ItemNo { get; set; } + public string? ItemNo { get; set; } /// <summary> /// 瀛愬簱id @@ -55,7 +55,7 @@ /// 鍘傚鎵规 /// </summary> [SugarColumn(ColumnName = "LOT_NO")] - public string LotNo { get; set; } + public string? LotNo { get; set; } /// <summary> /// 鏁伴噺 @@ -73,7 +73,7 @@ /// 瀹㈡埛缂栫爜 /// </summary> [SugarColumn(ColumnName = "CUSTOMER_NO")] - public string CustomerNo { get; set; } + public string? CustomerNo { get; set; } /// <summary> /// 閲嶉噺 @@ -85,13 +85,13 @@ /// 瀛愬簱CODE /// </summary> [SugarColumn(ColumnName = "DEPOTS_CODE")] - public string DepotsCode { get; set; } + public string? DepotsCode { get; set; } /// <summary> /// 璐т綅CODE /// </summary> [SugarColumn(ColumnName = "DEPOT_SECTIONS_CODE")] - public string DepotSectionsCode { get; set; } + public string? DepotSectionsCode { get; set; } /// <summary> /// 妫�楠屾棩鏈� @@ -115,25 +115,25 @@ /// 宸ュ巶缂栧彿 /// </summary> [SugarColumn(ColumnName = "FACTORY")] - public string Factory { get; set; } + public string? Factory { get; set; } /// <summary> /// 鍏徃缂栧彿 /// </summary> [SugarColumn(ColumnName = "COMPANY")] - public string Company { get; set; } + public string? Company { get; set; } /// <summary> /// 璐ㄦ鐘舵�� /// </summary> [SugarColumn(ColumnName = "IQC_STATUS")] - public string IqcStatus { get; set; } + public string? IqcStatus { get; set; } /// <summary> /// 灏忚溅鏉$爜 /// </summary> [SugarColumn(ColumnName = "FCAR")] - public string Fcar { get; set; } + public string? Fcar { get; set; } /// <summary> /// 鍐荤粨鎻愪氦閲嶆锛�0锛氬喕缁撴湭鎻愪氦閲嶆锛�1锛氬喕缁撳苟鎻愪氦閲嶆 @@ -145,7 +145,7 @@ /// 鎻愪氦閲嶆浜� /// </summary> [SugarColumn(ColumnName = "VISABLE_SUBMIT_BY")] - public string VisableSubmitBy { get; set; } + public string? VisableSubmitBy { get; set; } /// <summary> /// 鎻愪氦閲嶆鏃堕棿 @@ -157,13 +157,13 @@ /// 浜у搧鍨嬪彿 /// </summary> [SugarColumn(ColumnName = "BOARD_STYLE")] - public string BoardStyle { get; set; } + public string? BoardStyle { get; set; } /// <summary> /// 浠诲姟鍗曞彿 /// </summary> [SugarColumn(ColumnName = "WORK_NO")] - public string WorkNo { get; set; } + public string? WorkNo { get; set; } /// <summary> /// 浠诲姟鍗曡鍙� @@ -175,19 +175,19 @@ /// 渚涘簲鍟� /// </summary> [SugarColumn(ColumnName = "SUPP_NO")] - public string SuppNo { get; set; } + public string? SuppNo { get; set; } /// <summary> /// 鐢熶骇绾� /// </summary> [SugarColumn(ColumnName = "LINE_NO")] - public string LineNo { get; set; } + public string? LineNo { get; set; } /// <summary> /// 鍗婃垚鍝佸叆搴撳崟鍙� /// </summary> [SugarColumn(ColumnName = "BILL_NO")] - public string BillNo { get; set; } + public string? BillNo { get; set; } /// <summary> /// 閲囪喘璁㈠崟id diff --git a/MES.Service/Modes/MesQaItemsDetectDetail5.cs b/MES.Service/Modes/MesQaItemsDetectDetail5.cs index 9421a04..68ee666 100644 --- a/MES.Service/Modes/MesQaItemsDetectDetail5.cs +++ b/MES.Service/Modes/MesQaItemsDetectDetail5.cs @@ -1,154 +1,174 @@ -锘縰sing System; -using System.Collections.Generic; -using System.Linq; -using SqlSugar; -namespace MES.Service.Modes +锘縰sing SqlSugar; + +namespace MES.Service.Modes; + +/// <summary> +/// 鏉ユ枡妫�楠屼粠琛� +/// </summary> +[SugarTable("MES_QA_ITEMS_DETECT_DETAIL5")] +public class MesQaItemsDetectDetail5 { - /// <summary> - /// 鏉ユ枡妫�楠屼粠琛� - ///</summary> - [SugarTable("MES_QA_ITEMS_DETECT_DETAIL5")] - public class MesQaItemsDetectDetail5 - { - /// <summary> - /// - ///</summary> - [SugarColumn(ColumnName="ID" ,IsPrimaryKey = true )] - public decimal Id { get; set; } - /// <summary> - /// 鏍囧噯鍊肩被鍨� - ///</summary> - [SugarColumn(ColumnName="FTEXT_TYPE" )] - public string FtextType { get; set; } - /// <summary> - /// 鏍囧噯鍊� - ///</summary> - [SugarColumn(ColumnName="FSTAND" )] - public decimal? Fstand { get; set; } - /// <summary> - /// 涓婂叕宸� - ///</summary> - [SugarColumn(ColumnName="FUP_ALLOW" )] - public string FupAllow { get; set; } - /// <summary> - /// 涓嬪叕宸� - ///</summary> - [SugarColumn(ColumnName="FDOWN_ALLOW" )] - public string FdownAllow { get; set; } - /// <summary> - /// 妫�楠屾按鍑� - ///</summary> - [SugarColumn(ColumnName="SAMPLE_SIZE_NO" )] - public string SampleSizeNo { get; set; } - /// <summary> - /// 妫�楠屾按骞� - ///</summary> - [SugarColumn(ColumnName="FCHECK_LEVEL" )] - public string FcheckLevel { get; set; } - /// <summary> - /// 鎷掓敹姘村钩 - ///</summary> - [SugarColumn(ColumnName="FAC_LEVEL" )] - public string FacLevel { get; set; } - /// <summary> - /// 妫�楠岄」鐩� - ///</summary> - [SugarColumn(ColumnName="FCHECK_ITEM" )] - public string FcheckItem { get; set; } - /// <summary> - /// 瑙勬牸瑕佹眰 - ///</summary> - [SugarColumn(ColumnName="FSPEC_REQU" )] - public string FspecRequ { get; set; } - /// <summary> - /// 鎶芥鏁伴噺 - ///</summary> - [SugarColumn(ColumnName="CHECK_QYT" )] - public decimal? CheckQyt { get; set; } - /// <summary> - /// 妫�楠岀粨鏋� - ///</summary> - [SugarColumn(ColumnName="FCHECK_RESU" )] - public string FcheckResu { get; set; } - /// <summary> - /// AC鏁伴噺 - ///</summary> - [SugarColumn(ColumnName="FAC_QTY" )] - public decimal? FacQty { get; set; } - /// <summary> - /// RE鏁伴噺 - ///</summary> - [SugarColumn(ColumnName="FRE_QTY" )] - public decimal? FreQty { get; set; } - /// <summary> - /// 涓嶅悎鏍兼暟 - ///</summary> - [SugarColumn(ColumnName="FNG_QTY" )] - public decimal? FngQty { get; set; } - /// <summary> - /// 涓嶈壇鐜� - ///</summary> - [SugarColumn(ColumnName="FNG_RATE" )] - public decimal? FngRate { get; set; } - /// <summary> - /// 宸插綍鍏ユ暟閲� - ///</summary> - [SugarColumn(ColumnName="FENTER_QTY" )] - public decimal? FenterQty { get; set; } - /// <summary> - /// - ///</summary> - [SugarColumn(ColumnName="RELEASE_NO" )] - public string ReleaseNo { get; set; } - /// <summary> - /// - ///</summary> - [SugarColumn(ColumnName="COMPANY" )] - public string Company { get; set; } - /// <summary> - /// - ///</summary> - [SugarColumn(ColumnName="FACTORY" )] - public string Factory { get; set; } - /// <summary> - /// 妫�楠岄」鐩弿杩� - ///</summary> - [SugarColumn(ColumnName="FCHECK_ITEM_DESC" )] - public string FcheckItemDesc { get; set; } - /// <summary> - /// 宸ュ簭鍙� - ///</summary> - [SugarColumn(ColumnName="PROC_NO" )] - public string ProcNo { get; set; } - /// <summary> - /// 宸ヤ綔涓績缂栫爜 - ///</summary> - [SugarColumn(ColumnName="WORKSHOP_CENTER_CODE" )] - public string WorkshopCenterCode { get; set; } - /// <summary> - /// 鍗曚綅 - ///</summary> - [SugarColumn(ColumnName="FUNIT" )] - public string Funit { get; set; } - /// <summary> - /// 鐗瑰畾淇敼 - ///</summary> - [SugarColumn(ColumnName="GIVEN_MODIFY" )] - public short? GivenModify { get; set; } - /// <summary> - /// 妫�楠屽伐鍏� - ///</summary> - [SugarColumn(ColumnName="FCHECK_TOOL" )] - public string FcheckTool { get; set; } - /// <summary> - /// 鏇存柊浜� - ///</summary> - [SugarColumn(ColumnName="LASTUPDATE_BY" )] - public string LastupdateBy { get; set; } - /// <summary> - /// 鏇存柊鏃堕棿 - ///</summary> - [SugarColumn(ColumnName="LASTUPDATE_DATE" )] - public DateTime? LastupdateDate { get; set; } - } -} + /// <summary> + /// </summary> + [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)] + public decimal Id { get; set; } + + /// <summary> + /// 鏍囧噯鍊肩被鍨� + /// </summary> + [SugarColumn(ColumnName = "FTEXT_TYPE")] + public string FtextType { get; set; } + + /// <summary> + /// 鏍囧噯鍊� + /// </summary> + [SugarColumn(ColumnName = "FSTAND")] + public decimal? Fstand { get; set; } + + /// <summary> + /// 涓婂叕宸� + /// </summary> + [SugarColumn(ColumnName = "FUP_ALLOW")] + public string FupAllow { get; set; } + + /// <summary> + /// 涓嬪叕宸� + /// </summary> + [SugarColumn(ColumnName = "FDOWN_ALLOW")] + public string FdownAllow { get; set; } + + /// <summary> + /// 妫�楠屾按鍑� + /// </summary> + [SugarColumn(ColumnName = "SAMPLE_SIZE_NO")] + public string SampleSizeNo { get; set; } + + /// <summary> + /// 妫�楠屾按骞� + /// </summary> + [SugarColumn(ColumnName = "FCHECK_LEVEL")] + public string FcheckLevel { get; set; } + + /// <summary> + /// 鎷掓敹姘村钩 + /// </summary> + [SugarColumn(ColumnName = "FAC_LEVEL")] + public string FacLevel { get; set; } + + /// <summary> + /// 妫�楠岄」鐩� + /// </summary> + [SugarColumn(ColumnName = "FCHECK_ITEM")] + public string FcheckItem { get; set; } + + /// <summary> + /// 瑙勬牸瑕佹眰 + /// </summary> + [SugarColumn(ColumnName = "FSPEC_REQU")] + public string FspecRequ { get; set; } + + /// <summary> + /// 鎶芥鏁伴噺 + /// </summary> + [SugarColumn(ColumnName = "CHECK_QYT")] + public decimal? CheckQyt { get; set; } + + /// <summary> + /// 妫�楠岀粨鏋� + /// </summary> + [SugarColumn(ColumnName = "FCHECK_RESU")] + public string FcheckResu { get; set; } + + /// <summary> + /// AC鏁伴噺 + /// </summary> + [SugarColumn(ColumnName = "FAC_QTY")] + public decimal? FacQty { get; set; } + + /// <summary> + /// RE鏁伴噺 + /// </summary> + [SugarColumn(ColumnName = "FRE_QTY")] + public decimal? FreQty { get; set; } + + /// <summary> + /// 涓嶅悎鏍兼暟 + /// </summary> + [SugarColumn(ColumnName = "FNG_QTY")] + public decimal? FngQty { get; set; } + + /// <summary> + /// 涓嶈壇鐜� + /// </summary> + [SugarColumn(ColumnName = "FNG_RATE")] + public decimal? FngRate { get; set; } + + /// <summary> + /// 宸插綍鍏ユ暟閲� + /// </summary> + [SugarColumn(ColumnName = "FENTER_QTY")] + public decimal? FenterQty { get; set; } + + /// <summary> + /// </summary> + [SugarColumn(ColumnName = "RELEASE_NO")] + public string ReleaseNo { get; set; } + + /// <summary> + /// </summary> + [SugarColumn(ColumnName = "COMPANY")] + public string Company { get; set; } + + /// <summary> + /// </summary> + [SugarColumn(ColumnName = "FACTORY")] + public string Factory { get; set; } + + /// <summary> + /// 妫�楠岄」鐩弿杩� + /// </summary> + [SugarColumn(ColumnName = "FCHECK_ITEM_DESC")] + public string FcheckItemDesc { get; set; } + + /// <summary> + /// 宸ュ簭鍙� + /// </summary> + [SugarColumn(ColumnName = "PROC_NO")] + public string ProcNo { get; set; } + + /// <summary> + /// 宸ヤ綔涓績缂栫爜 + /// </summary> + [SugarColumn(ColumnName = "WORKSHOP_CENTER_CODE")] + public string WorkshopCenterCode { get; set; } + + /// <summary> + /// 鍗曚綅 + /// </summary> + [SugarColumn(ColumnName = "FUNIT")] + public string Funit { get; set; } + + /// <summary> + /// 鐗瑰畾淇敼 + /// </summary> + [SugarColumn(ColumnName = "GIVEN_MODIFY")] + public short? GivenModify { get; set; } + + /// <summary> + /// 妫�楠屽伐鍏� + /// </summary> + [SugarColumn(ColumnName = "FCHECK_TOOL")] + public string FcheckTool { get; set; } + + /// <summary> + /// 鏇存柊浜� + /// </summary> + [SugarColumn(ColumnName = "LASTUPDATE_BY")] + public string LastupdateBy { get; set; } + + /// <summary> + /// 鏇存柊鏃堕棿 + /// </summary> + [SugarColumn(ColumnName = "LASTUPDATE_DATE")] + public DateTime? LastupdateDate { get; set; } +} \ No newline at end of file diff --git a/MES.Service/bin/Debug/net8.0/MES.Service.dll b/MES.Service/bin/Debug/net8.0/MES.Service.dll index 0c9d6b5..8c02925 100644 --- a/MES.Service/bin/Debug/net8.0/MES.Service.dll +++ b/MES.Service/bin/Debug/net8.0/MES.Service.dll Binary files differ diff --git a/MES.Service/bin/Debug/net8.0/MES.Service.pdb b/MES.Service/bin/Debug/net8.0/MES.Service.pdb index c328566..6b9f379 100644 --- a/MES.Service/bin/Debug/net8.0/MES.Service.pdb +++ b/MES.Service/bin/Debug/net8.0/MES.Service.pdb Binary files differ diff --git a/MES.Service/service/BasicData/MesStaffManager.cs b/MES.Service/service/BasicData/MesStaffManager.cs index b16b7b0..b59bf83 100644 --- a/MES.Service/service/BasicData/MesStaffManager.cs +++ b/MES.Service/service/BasicData/MesStaffManager.cs @@ -154,7 +154,7 @@ Status = 0, Isdeparture = 0, CheckFlag = 0, - ExpFiel12 = 0, + ExpFiel12 = 0 }; } diff --git a/MES.Service/service/QC/MesQaItemsDetectDetail5Manager.cs b/MES.Service/service/QC/MesQaItemsDetectDetail5Manager.cs index 8fda982..a471429 100644 --- a/MES.Service/service/QC/MesQaItemsDetectDetail5Manager.cs +++ b/MES.Service/service/QC/MesQaItemsDetectDetail5Manager.cs @@ -1,78 +1,79 @@ -锘縰sing SqlSugar; -using System; -using System.Collections.Generic; -using MES.Service.DB; +锘縰sing MES.Service.DB; using MES.Service.Modes; +using SqlSugar; -namespace MES.Service.service.QC +namespace MES.Service.service.QC; + +public class + MesQaItemsDetectDetail5Manager : Repository<MesQaItemsDetectDetail5> { -public class MesQaItemsDetectDetail5Manager : Repository<MesQaItemsDetectDetail5> -{ - //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉� //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 MesQaItemsDetectDetail5Manager.cs #region 鏁欏鏂规硶 + /// <summary> - /// 浠撳偍鏂规硶婊¤冻涓嶄簡澶嶆潅涓氬姟闇�姹傦紝涓氬姟浠g爜璇峰湪杩欓噷闈㈠畾涔夋柟娉� + /// 浠撳偍鏂规硶婊¤冻涓嶄簡澶嶆潅涓氬姟闇�姹傦紝涓氬姟浠g爜璇峰湪杩欓噷闈㈠畾涔夋柟娉� /// </summary> public void Study() { - - /*********鏌ヨ*********/ + /*********鏌ヨ*********/ - var data1 = base.GetById(1);//鏍规嵁ID鏌ヨ - var data2 = base.GetList();//鏌ヨ鎵�鏈� - var data3 = base.GetList(it => 1 == 1); //鏍规嵁鏉′欢鏌ヨ + var data1 = base.GetById(1); //鏍规嵁ID鏌ヨ + var data2 = base.GetList(); //鏌ヨ鎵�鏈� + var data3 = base.GetList(it => 1 == 1); //鏍规嵁鏉′欢鏌ヨ //var data4 = base.GetSingle(it => 1 == 1);//鏍规嵁鏉′欢鏌ヨ涓�鏉�,濡傛灉瓒呰繃涓�鏉′細鎶ラ敊 - var p = new PageModel() { PageIndex = 1, PageSize = 2 };// 鍒嗛〉鏌ヨ + var p = new PageModel { PageIndex = 1, PageSize = 2 }; // 鍒嗛〉鏌ヨ var data5 = base.GetPageList(it => 1 == 1, p); - Console.Write(p.TotalCount);//杩斿洖鎬绘暟 + Console.Write(p.TotalCount); //杩斿洖鎬绘暟 - var data6 = base.GetPageList(it => 1 == 1, p, it => SqlFunc.GetRandom(), OrderByType.Asc);// 鍒嗛〉鏌ヨ鍔犳帓搴� - Console.Write(p.TotalCount);//杩斿洖鎬绘暟 - - List<IConditionalModel> conModels = new List<IConditionalModel>(); //缁勮鏉′欢鏌ヨ浣滀负鏉′欢瀹炵幇 鍒嗛〉鏌ヨ鍔犳帓搴� - conModels.Add(new ConditionalModel() { FieldName= typeof(MesQaItemsDetectDetail5).GetProperties()[0].Name, ConditionalType = ConditionalType.Equal, FieldValue = "1" });//id=1 - var data7 = base.GetPageList(conModels, p, it => SqlFunc.GetRandom(), OrderByType.Asc); + var data6 = + base.GetPageList(it => 1 == 1, p, + it => SqlFunc.GetRandom()); // 鍒嗛〉鏌ヨ鍔犳帓搴� + Console.Write(p.TotalCount); //杩斿洖鎬绘暟 - base.AsQueryable().Where(x => 1 == 1).ToList();//鏀寔浜嗚浆鎹㈡垚queryable,鎴戜滑鍙互鐢╭ueryable瀹炵幇澶嶆潅鍔熻兘 + var conModels = new List<IConditionalModel>(); //缁勮鏉′欢鏌ヨ浣滀负鏉′欢瀹炵幇 鍒嗛〉鏌ヨ鍔犳帓搴� + conModels.Add(new ConditionalModel + { + FieldName = typeof(MesQaItemsDetectDetail5).GetProperties()[0].Name, + ConditionalType = ConditionalType.Equal, FieldValue = "1" + }); //id=1 + var data7 = base.GetPageList(conModels, p, it => SqlFunc.GetRandom()); - + AsQueryable().Where(x => 1 == 1) + .ToList(); //鏀寔浜嗚浆鎹㈡垚queryable,鎴戜滑鍙互鐢╭ueryable瀹炵幇澶嶆潅鍔熻兘 + /*********鎻掑叆*********/ - var insertData = new MesQaItemsDetectDetail5() { };//娴嬭瘯鍙傛暟 - var insertArray = new MesQaItemsDetectDetail5[] { insertData }; - base.Insert(insertData);//鎻掑叆 - base.InsertRange(insertArray);//鎵归噺鎻掑叆 - var id = base.InsertReturnIdentity(insertData);//鎻掑叆杩斿洖鑷鍒� - base.AsInsertable(insertData).ExecuteCommand();//鎴戜滑鍙互杞垚 Insertable瀹炵幇澶嶆潅鎻掑叆 + var insertData = new MesQaItemsDetectDetail5(); //娴嬭瘯鍙傛暟 + var insertArray = new[] { insertData }; + base.Insert(insertData); //鎻掑叆 + base.InsertRange(insertArray); //鎵归噺鎻掑叆 + var id = base.InsertReturnIdentity(insertData); //鎻掑叆杩斿洖鑷鍒� + AsInsertable(insertData).ExecuteCommand(); //鎴戜滑鍙互杞垚 Insertable瀹炵幇澶嶆潅鎻掑叆 - - /*********鏇存柊*********/ - var updateData = new MesQaItemsDetectDetail5() { };//娴嬭瘯鍙傛暟 - var updateArray = new MesQaItemsDetectDetail5[] { updateData };//娴嬭瘯鍙傛暟 - base.Update(updateData);//鏍规嵁瀹炰綋鏇存柊 - base.UpdateRange(updateArray);//鎵归噺鏇存柊 + /*********鏇存柊*********/ + var updateData = new MesQaItemsDetectDetail5(); //娴嬭瘯鍙傛暟 + var updateArray = new[] { updateData }; //娴嬭瘯鍙傛暟 + base.Update(updateData); //鏍规嵁瀹炰綋鏇存柊 + base.UpdateRange(updateArray); //鎵归噺鏇存柊 //base.Update(it => new MesQaItemsDetectDetail5() { ClassName = "a", CreateTime = DateTime.Now }, it => it.id==1);// 鍙洿鏂癈lassName鍒楀拰CreateTime鍒楋紝鍏跺畠鍒椾笉鏇存柊锛屾潯浠秈d=1 - base.AsUpdateable(updateData).ExecuteCommand(); //杞垚Updateable鍙互瀹炵幇澶嶆潅鐨勬彃鍏� + AsUpdateable(updateData).ExecuteCommand(); //杞垚Updateable鍙互瀹炵幇澶嶆潅鐨勬彃鍏� + /*********鍒犻櫎*********/ + var deldata = new MesQaItemsDetectDetail5(); //娴嬭瘯鍙傛暟 + base.Delete(deldata); //鏍规嵁瀹炰綋鍒犻櫎 + base.DeleteById(1); //鏍规嵁涓婚敭鍒犻櫎 + base.DeleteById(new[] { 1, 2 }); //鏍规嵁涓婚敭鏁扮粍鍒犻櫎 + base.Delete(it => 1 == 2); //鏍规嵁鏉′欢鍒犻櫎 + AsDeleteable().Where(it => 1 == 2) + .ExecuteCommand(); //杞垚Deleteable瀹炵幇澶嶆潅鐨勬搷浣� + } - /*********鍒犻櫎*********/ - var deldata = new MesQaItemsDetectDetail5() { };//娴嬭瘯鍙傛暟 - base.Delete(deldata);//鏍规嵁瀹炰綋鍒犻櫎 - base.DeleteById(1);//鏍规嵁涓婚敭鍒犻櫎 - base.DeleteById(new int[] { 1,2});//鏍规嵁涓婚敭鏁扮粍鍒犻櫎 - base.Delete(it=>1==2);//鏍规嵁鏉′欢鍒犻櫎 - base.AsDeleteable().Where(it=>1==2).ExecuteCommand();//杞垚Deleteable瀹炵幇澶嶆潅鐨勬搷浣� - } #endregion - - - } } \ No newline at end of file diff --git a/MES.Service/service/Warehouse/MesDepotSectionsManager.cs b/MES.Service/service/Warehouse/MesDepotSectionsManager.cs index 5803893..0fbb744 100644 --- a/MES.Service/service/Warehouse/MesDepotSectionsManager.cs +++ b/MES.Service/service/Warehouse/MesDepotSectionsManager.cs @@ -8,7 +8,7 @@ public class MesDepotSectionsManager : Repository<MesDepotSections> { //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉� - + public string GetSectionName(WarehouseQuery query) { var sectionName = Db.Queryable<MesDepotSections, MesDepots>((a, b) => @@ -17,10 +17,70 @@ .Select((a, b) => a.DepotSectionName).Single(); if (sectionName == null) - { throw new Exception("搴撲綅缂栫爜 " + query.sectionCode + " 涓嶅瓨鍦紝璇风‘璁わ紒"); - } return sectionName; } + + //搴撲綅鍙樻洿 + public MesDepotSections ScanInDepotSectionsName(WarehouseQuery query) + { + if (string.IsNullOrEmpty(query.sectionCode)) + throw new Exception("璇锋壂搴撲綅鏉$爜!"); + + var mesDepotSections = Db.Queryable<MesDepotSections, MesDepots>( + (a, b) => + new JoinQueryInfos(JoinType.Inner, a.DepotId == b.DepotId)) + .Where((a, b) => a.DepotSectionCode == query.sectionCode) + .Select((a, b) => new MesDepotSections + { + DepotSectionName = a.DepotSectionName, + DepotCode = b.DepotCode, + DepotName = b.DepotName + }).First(); + + if (mesDepotSections == null) + throw new Exception("搴撲綅缂栫爜" + query.sectionCode + " 涓嶅瓨鍦紝璇风‘璁�!"); + + return mesDepotSections; + } + + //搴撲綅鍙樻洿 + public MesInvItemStocks ScanEditBarcode(WarehouseQuery entity) + { + if (string.IsNullOrEmpty(entity.sectionCode)) + throw new Exception("璇锋壂搴撲綅鏉$爜!"); + + var mesDepotSections = Db.Queryable<MesDepotSections, MesDepots>( + (a, b) => + new JoinQueryInfos(JoinType.Inner, + a.Zuid.ToString() == b.Zuid)) + .Where((a, b) => a.DepotSectionCode == entity.sectionCode) + .First(); + if (mesDepotSections == null) + throw new Exception("搴撲綅缂栫爜" + entity.sectionCode + " 涓嶅瓨鍦紝璇风‘璁わ紒"); + + var mesInvItemStocks = Db.Queryable<MesInvItemStocks>() + .Where(s => s.ItemBarcode == entity.barcode).First(); + + if (mesInvItemStocks == null) throw new Exception("鏉$爜鍦ㄤ粨搴撲腑涓嶅瓨鍦紝璇锋牳瀵癸紒"); + + if (mesInvItemStocks.DepotsCode != mesDepotSections.DepotCode) + throw new Exception( + "鏉$爜鍘熶粨搴擄細" + mesInvItemStocks.DepotsCode + " 涓庣洰鏍囦粨搴擄細" + + mesDepotSections.DepotCode + " 涓嶄竴鑷达紝搴撲綅鍙樻洿澶辫触锛�"); + + UseTransaction(db => + { + return db.Updateable<MesInvItemStocks>() + .SetColumns(s => s.DepotsCode == mesDepotSections.DepotCode) + .SetColumns(s => s.DepotSectionsCode == entity.sectionCode) + .Where(s => s.ItemBarcode == entity.barcode) + .ExecuteCommand(); + }); + + return mesInvItemStocks; + } + + //璋冩嫧鍏ュ簱 } \ No newline at end of file diff --git a/MES.Service/service/Warehouse/MesInvBusiness2Manager.cs b/MES.Service/service/Warehouse/MesInvBusiness2Manager.cs index 8704a00..13679e8 100644 --- a/MES.Service/service/Warehouse/MesInvBusiness2Manager.cs +++ b/MES.Service/service/Warehouse/MesInvBusiness2Manager.cs @@ -1,78 +1,78 @@ -锘縰sing SqlSugar; -using System; -using System.Collections.Generic; -using MES.Service.DB; +锘縰sing MES.Service.DB; using MES.Service.Modes; +using SqlSugar; -namespace MES.Service.service.Warehouse -{ +namespace MES.Service.service.Warehouse; + public class MesInvBusiness2Manager : Repository<MesInvBusiness2> { - //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉� //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 MesInvBusiness2Manager.cs #region 鏁欏鏂规硶 + /// <summary> - /// 浠撳偍鏂规硶婊¤冻涓嶄簡澶嶆潅涓氬姟闇�姹傦紝涓氬姟浠g爜璇峰湪杩欓噷闈㈠畾涔夋柟娉� + /// 浠撳偍鏂规硶婊¤冻涓嶄簡澶嶆潅涓氬姟闇�姹傦紝涓氬姟浠g爜璇峰湪杩欓噷闈㈠畾涔夋柟娉� /// </summary> public void Study() { - - /*********鏌ヨ*********/ + /*********鏌ヨ*********/ - var data1 = base.GetById(1);//鏍规嵁ID鏌ヨ - var data2 = base.GetList();//鏌ヨ鎵�鏈� - var data3 = base.GetList(it => 1 == 1); //鏍规嵁鏉′欢鏌ヨ + var data1 = base.GetById(1); //鏍规嵁ID鏌ヨ + var data2 = base.GetList(); //鏌ヨ鎵�鏈� + var data3 = base.GetList(it => 1 == 1); //鏍规嵁鏉′欢鏌ヨ //var data4 = base.GetSingle(it => 1 == 1);//鏍规嵁鏉′欢鏌ヨ涓�鏉�,濡傛灉瓒呰繃涓�鏉′細鎶ラ敊 - var p = new PageModel() { PageIndex = 1, PageSize = 2 };// 鍒嗛〉鏌ヨ + var p = new PageModel { PageIndex = 1, PageSize = 2 }; // 鍒嗛〉鏌ヨ var data5 = base.GetPageList(it => 1 == 1, p); - Console.Write(p.TotalCount);//杩斿洖鎬绘暟 + Console.Write(p.TotalCount); //杩斿洖鎬绘暟 - var data6 = base.GetPageList(it => 1 == 1, p, it => SqlFunc.GetRandom(), OrderByType.Asc);// 鍒嗛〉鏌ヨ鍔犳帓搴� - Console.Write(p.TotalCount);//杩斿洖鎬绘暟 - - List<IConditionalModel> conModels = new List<IConditionalModel>(); //缁勮鏉′欢鏌ヨ浣滀负鏉′欢瀹炵幇 鍒嗛〉鏌ヨ鍔犳帓搴� - conModels.Add(new ConditionalModel() { FieldName= typeof(MesInvBusiness2).GetProperties()[0].Name, ConditionalType = ConditionalType.Equal, FieldValue = "1" });//id=1 - var data7 = base.GetPageList(conModels, p, it => SqlFunc.GetRandom(), OrderByType.Asc); + var data6 = + base.GetPageList(it => 1 == 1, p, + it => SqlFunc.GetRandom()); // 鍒嗛〉鏌ヨ鍔犳帓搴� + Console.Write(p.TotalCount); //杩斿洖鎬绘暟 - base.AsQueryable().Where(x => 1 == 1).ToList();//鏀寔浜嗚浆鎹㈡垚queryable,鎴戜滑鍙互鐢╭ueryable瀹炵幇澶嶆潅鍔熻兘 + var conModels = new List<IConditionalModel>(); //缁勮鏉′欢鏌ヨ浣滀负鏉′欢瀹炵幇 鍒嗛〉鏌ヨ鍔犳帓搴� + conModels.Add(new ConditionalModel + { + FieldName = typeof(MesInvBusiness2).GetProperties()[0].Name, + ConditionalType = ConditionalType.Equal, FieldValue = "1" + }); //id=1 + var data7 = base.GetPageList(conModels, p, it => SqlFunc.GetRandom()); - + AsQueryable().Where(x => 1 == 1) + .ToList(); //鏀寔浜嗚浆鎹㈡垚queryable,鎴戜滑鍙互鐢╭ueryable瀹炵幇澶嶆潅鍔熻兘 + /*********鎻掑叆*********/ - var insertData = new MesInvBusiness2() { };//娴嬭瘯鍙傛暟 - var insertArray = new MesInvBusiness2[] { insertData }; - base.Insert(insertData);//鎻掑叆 - base.InsertRange(insertArray);//鎵归噺鎻掑叆 - var id = base.InsertReturnIdentity(insertData);//鎻掑叆杩斿洖鑷鍒� - base.AsInsertable(insertData).ExecuteCommand();//鎴戜滑鍙互杞垚 Insertable瀹炵幇澶嶆潅鎻掑叆 + var insertData = new MesInvBusiness2(); //娴嬭瘯鍙傛暟 + var insertArray = new[] { insertData }; + base.Insert(insertData); //鎻掑叆 + base.InsertRange(insertArray); //鎵归噺鎻掑叆 + var id = base.InsertReturnIdentity(insertData); //鎻掑叆杩斿洖鑷鍒� + AsInsertable(insertData).ExecuteCommand(); //鎴戜滑鍙互杞垚 Insertable瀹炵幇澶嶆潅鎻掑叆 - - /*********鏇存柊*********/ - var updateData = new MesInvBusiness2() { };//娴嬭瘯鍙傛暟 - var updateArray = new MesInvBusiness2[] { updateData };//娴嬭瘯鍙傛暟 - base.Update(updateData);//鏍规嵁瀹炰綋鏇存柊 - base.UpdateRange(updateArray);//鎵归噺鏇存柊 + /*********鏇存柊*********/ + var updateData = new MesInvBusiness2(); //娴嬭瘯鍙傛暟 + var updateArray = new[] { updateData }; //娴嬭瘯鍙傛暟 + base.Update(updateData); //鏍规嵁瀹炰綋鏇存柊 + base.UpdateRange(updateArray); //鎵归噺鏇存柊 //base.Update(it => new MesInvBusiness2() { ClassName = "a", CreateTime = DateTime.Now }, it => it.id==1);// 鍙洿鏂癈lassName鍒楀拰CreateTime鍒楋紝鍏跺畠鍒椾笉鏇存柊锛屾潯浠秈d=1 - base.AsUpdateable(updateData).ExecuteCommand(); //杞垚Updateable鍙互瀹炵幇澶嶆潅鐨勬彃鍏� + AsUpdateable(updateData).ExecuteCommand(); //杞垚Updateable鍙互瀹炵幇澶嶆潅鐨勬彃鍏� + /*********鍒犻櫎*********/ + var deldata = new MesInvBusiness2(); //娴嬭瘯鍙傛暟 + base.Delete(deldata); //鏍规嵁瀹炰綋鍒犻櫎 + base.DeleteById(1); //鏍规嵁涓婚敭鍒犻櫎 + base.DeleteById(new[] { 1, 2 }); //鏍规嵁涓婚敭鏁扮粍鍒犻櫎 + base.Delete(it => 1 == 2); //鏍规嵁鏉′欢鍒犻櫎 + AsDeleteable().Where(it => 1 == 2) + .ExecuteCommand(); //杞垚Deleteable瀹炵幇澶嶆潅鐨勬搷浣� + } - /*********鍒犻櫎*********/ - var deldata = new MesInvBusiness2() { };//娴嬭瘯鍙傛暟 - base.Delete(deldata);//鏍规嵁瀹炰綋鍒犻櫎 - base.DeleteById(1);//鏍规嵁涓婚敭鍒犻櫎 - base.DeleteById(new int[] { 1,2});//鏍规嵁涓婚敭鏁扮粍鍒犻櫎 - base.Delete(it=>1==2);//鏍规嵁鏉′欢鍒犻櫎 - base.AsDeleteable().Where(it=>1==2).ExecuteCommand();//杞垚Deleteable瀹炵幇澶嶆潅鐨勬搷浣� - } #endregion - - - } } \ No newline at end of file diff --git a/MES.Service/service/Warehouse/MesInvItemArnDetailManager.cs b/MES.Service/service/Warehouse/MesInvItemArnDetailManager.cs index 49ad635..f4a9f24 100644 --- a/MES.Service/service/Warehouse/MesInvItemArnDetailManager.cs +++ b/MES.Service/service/Warehouse/MesInvItemArnDetailManager.cs @@ -59,8 +59,8 @@ // 鏌ヨ var result = Db .Queryable<MesQaItemsDetect01, MesInvItemArn, MesInvItemArnDetail, - MesItems, MesUnit,MesQaItemsDetectDetail5>( - (a, d, b, c, t,z) => new object[] + MesItems, MesUnit, MesQaItemsDetectDetail5>( + (a, d, b, c, t, z) => new object[] { JoinType.Inner, d.BillNo == a.LotNo, JoinType.Inner, d.Id == b.Mid && b.ItemNo == a.ItemNo, @@ -70,9 +70,9 @@ JoinType.Inner, c.Fpurchaseunitid == t.Id, JoinType.Inner, z.ReleaseNo == a.ReleaseNo }) - .Where((a, d, b, c, t,z) => a.FngHandle == "閫�璐�" && - z.FcheckResu == "涓嶅悎鏍�" && - query.ItemArnDetailIds.Contains(b.Id)) + .Where((a, d, b, c, t, z) => a.FngHandle == "閫�璐�" && + z.FcheckResu == "涓嶅悎鏍�" && + query.ItemArnDetailIds.Contains(b.Id)) .Select((a, d, b, c, t) => new Material { FmrMode = a.Fmrmode, diff --git a/MES.Service/service/Warehouse/MesInvItemMovesCDetailsManager.cs b/MES.Service/service/Warehouse/MesInvItemMovesCDetailsManager.cs new file mode 100644 index 0000000..cf8c2a3 --- /dev/null +++ b/MES.Service/service/Warehouse/MesInvItemMovesCDetailsManager.cs @@ -0,0 +1,79 @@ +锘縰sing MES.Service.DB; +using MES.Service.Modes; +using SqlSugar; + +namespace MES.Service.service.Warehouse; + +public class + MesInvItemMovesCDetailsManager : Repository<MesInvItemMovesCDetails> +{ + //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉� + + //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 MesInvItemMovesCDetailsManager.cs + + + #region 鏁欏鏂规硶 + + /// <summary> + /// 浠撳偍鏂规硶婊¤冻涓嶄簡澶嶆潅涓氬姟闇�姹傦紝涓氬姟浠g爜璇峰湪杩欓噷闈㈠畾涔夋柟娉� + /// </summary> + public void Study() + { + /*********鏌ヨ*********/ + + var data1 = base.GetById(1); //鏍规嵁ID鏌ヨ + var data2 = base.GetList(); //鏌ヨ鎵�鏈� + var data3 = base.GetList(it => 1 == 1); //鏍规嵁鏉′欢鏌ヨ + //var data4 = base.GetSingle(it => 1 == 1);//鏍规嵁鏉′欢鏌ヨ涓�鏉�,濡傛灉瓒呰繃涓�鏉′細鎶ラ敊 + + var p = new PageModel { PageIndex = 1, PageSize = 2 }; // 鍒嗛〉鏌ヨ + var data5 = base.GetPageList(it => 1 == 1, p); + Console.Write(p.TotalCount); //杩斿洖鎬绘暟 + + var data6 = + base.GetPageList(it => 1 == 1, p, + it => SqlFunc.GetRandom()); // 鍒嗛〉鏌ヨ鍔犳帓搴� + Console.Write(p.TotalCount); //杩斿洖鎬绘暟 + + var conModels = new List<IConditionalModel>(); //缁勮鏉′欢鏌ヨ浣滀负鏉′欢瀹炵幇 鍒嗛〉鏌ヨ鍔犳帓搴� + conModels.Add(new ConditionalModel + { + FieldName = typeof(MesInvItemMovesCDetails).GetProperties()[0].Name, + ConditionalType = ConditionalType.Equal, FieldValue = "1" + }); //id=1 + var data7 = base.GetPageList(conModels, p, it => SqlFunc.GetRandom()); + + AsQueryable().Where(x => 1 == 1) + .ToList(); //鏀寔浜嗚浆鎹㈡垚queryable,鎴戜滑鍙互鐢╭ueryable瀹炵幇澶嶆潅鍔熻兘 + + + /*********鎻掑叆*********/ + var insertData = new MesInvItemMovesCDetails(); //娴嬭瘯鍙傛暟 + var insertArray = new[] { insertData }; + base.Insert(insertData); //鎻掑叆 + base.InsertRange(insertArray); //鎵归噺鎻掑叆 + var id = base.InsertReturnIdentity(insertData); //鎻掑叆杩斿洖鑷鍒� + AsInsertable(insertData).ExecuteCommand(); //鎴戜滑鍙互杞垚 Insertable瀹炵幇澶嶆潅鎻掑叆 + + + /*********鏇存柊*********/ + var updateData = new MesInvItemMovesCDetails(); //娴嬭瘯鍙傛暟 + var updateArray = new[] { updateData }; //娴嬭瘯鍙傛暟 + base.Update(updateData); //鏍规嵁瀹炰綋鏇存柊 + base.UpdateRange(updateArray); //鎵归噺鏇存柊 + //base.Update(it => new MesInvItemMovesCDetails() { ClassName = "a", CreateTime = DateTime.Now }, it => it.id==1);// 鍙洿鏂癈lassName鍒楀拰CreateTime鍒楋紝鍏跺畠鍒椾笉鏇存柊锛屾潯浠秈d=1 + AsUpdateable(updateData).ExecuteCommand(); //杞垚Updateable鍙互瀹炵幇澶嶆潅鐨勬彃鍏� + + + /*********鍒犻櫎*********/ + var deldata = new MesInvItemMovesCDetails(); //娴嬭瘯鍙傛暟 + base.Delete(deldata); //鏍规嵁瀹炰綋鍒犻櫎 + base.DeleteById(1); //鏍规嵁涓婚敭鍒犻櫎 + base.DeleteById(new[] { 1, 2 }); //鏍规嵁涓婚敭鏁扮粍鍒犻櫎 + base.Delete(it => 1 == 2); //鏍规嵁鏉′欢鍒犻櫎 + AsDeleteable().Where(it => 1 == 2) + .ExecuteCommand(); //杞垚Deleteable瀹炵幇澶嶆潅鐨勬搷浣� + } + + #endregion +} \ No newline at end of file diff --git a/MES.Service/service/Warehouse/MesInvItemMovesManager.cs b/MES.Service/service/Warehouse/MesInvItemMovesManager.cs new file mode 100644 index 0000000..eeb48e6 --- /dev/null +++ b/MES.Service/service/Warehouse/MesInvItemMovesManager.cs @@ -0,0 +1,522 @@ +锘縰sing MES.Service.DB; +using MES.Service.Dto.service; +using MES.Service.Modes; +using MES.Service.util; +using SqlSugar; + +namespace MES.Service.service.Warehouse; + +public class MesInvItemMovesManager : Repository<MesInvItemMoves> +{ + //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉� + + //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 MesInvItemMovesManager.cs + + public MovesDto ScanInBarcode(WarehouseQuery query) + { + if (string.IsNullOrEmpty(query.sectionCode)) + { + throw new Exception("璇锋壂搴撲綅鏉$爜锛�"); + } + + int pBillTypeId = 300; + int pTransctionNo = 301; + + var depotQuery = Db.Queryable<MesDepotSections, MesDepots>((a, b) => + new JoinQueryInfos( + JoinType.Inner, a.Zuid.ToString() == b.Zuid)) + .Where((a, b) => a.DepotSectionCode == query.sectionCode) + .Select((a, b) => new { b.DepotCode }) + .First(); + + if (depotQuery == null) + { + throw new Exception($"002[搴撲綅缂栫爜 {query.sectionCode} 涓嶅瓨鍦紝璇风‘璁わ紒"); + } + + var cDepotCode = depotQuery.DepotCode; + + // 鏌ヨ璋冩嫈鍏ュ簱淇℃伅 + var itemMoveQuery = Db + .Queryable<MesInvItemMoves, MesInvItemMovesCDetails>((a, b) => + new JoinQueryInfos( + JoinType.Inner, a.Id == b.ItemMoveId)) + .Where((a, b) => b.ItemBarcode == query.barcode && + a.BillTypeId == pBillTypeId && + a.TransactionNo == pTransctionNo && + a.Status == 1 && SqlFunc.IsNull(b.MoveOk, 0) != 1) + .Select((a, b) => new { a.Id, a.BillNo, a.InvDepotsCode }) + .First(); + + if (itemMoveQuery == null) + { + throw new Exception("鏉$爜鏈仛璋冩嫈鍑哄簱鎵爜锛岃鏍稿锛�"); + } + + var cBillNo = itemMoveQuery.BillNo; + var iDepotCode = itemMoveQuery.InvDepotsCode; + + // 楠岃瘉搴撳尯涓庝粨搴� + var depotValidationQuery = Db.Queryable<MesDepotSections, MesDepots>( + (a, b) => new JoinQueryInfos( + JoinType.Inner, a.Zuid.ToString() == b.Zuid)) + .Where((a, b) => a.DepotSectionCode == query.sectionCode && + b.DepotCode == iDepotCode) + .Select((a, b) => new { b.DepotCode }) + .First(); + + if (depotValidationQuery == null) + { + throw new Exception($"002[搴撲綅缂栫爜 {query.sectionCode} 涓嶅瓨鍦紝璇风‘璁わ紒"); + } + + if (iDepotCode != depotValidationQuery.DepotCode) + { + throw new Exception("瀹為檯浠撳簱涓庣敵璇疯皟鍏ヤ粨搴撲笉绗︼紝璇锋牳瀵癸紒"); + } + + var barcodeCount = Db.Queryable<MesInvItemMovesCDetails>() + .Where(b => + b.ItemBarcode == query.barcode && + b.ItemMoveId == itemMoveQuery.Id && b.MoveOk == 1) + .Count(); + + if (barcodeCount > 0) + { + throw new Exception("鏉$爜璋冩嫈宸插畬鎴愶紝璇锋牳瀵癸紒"); + } + + var barcodeInfo = Db.Queryable<MesInvItemBarcodes>() + .Where(t => t.ItemBarcode == query.barcode) + .First(); + + if (barcodeInfo == null) + { + throw new Exception("鏉$爜涓嶅瓨鍦紝璇锋牳瀵癸紒"); + } + + var isAudit = UseTransaction(db => + { + // 鏇存柊涓氬姟銆佸簱瀛樺拰鏉$爜鏁版嵁 + db.Updateable<MesInvBusiness2>() + .SetColumns(b => new MesInvBusiness2 + { + ToInvDepotsCode = cDepotCode, + ToInvDepotSectionsCode = query.sectionCode + }) + .Where(b => + b.BillNo == cBillNo && b.BillTypeId == pBillTypeId && + b.TransactionCode == pTransctionNo.ToString() && + b.ItemBarcode == query.barcode) + .ExecuteCommand(); + + db.Updateable<MesInvItemStocks>() + .SetColumns(b => new MesInvItemStocks + { + DepotsCode = cDepotCode, + DepotSectionsCode = query.sectionCode + }) + .Where(b => b.ItemBarcode == query.barcode) + .ExecuteCommand(); + + db.Updateable<MesInvItemMovesCDetails>() + .SetColumns(b => new MesInvItemMovesCDetails + { + MoveOk = 1, + InvDepotsCode = cDepotCode, + InvDepotSectionsCode = query.sectionCode + }) + .Where(b => + b.ItemBarcode == query.barcode && + b.ItemMoveId == itemMoveQuery.Id) + .ExecuteCommand(); + + // 妫�鏌ユ槸鍚︽墍鏈夋潯鐮佸凡鎵爜绉诲簱 + var totalQuantity = db.Queryable<MesInvItemOutItems>() + .Where(a => a.ItemOutId == itemMoveQuery.Id) + .Sum(a => SqlFunc.IsNull(a.Quantity, 0)); + + var scannedQuantity = db.Queryable<MesInvItemMovesCDetails>() + .Where(a => a.ItemMoveId == itemMoveQuery.Id && a.MoveOk == 1) + .Sum(a => SqlFunc.IsNull(a.Quantity, 0)); + + if (totalQuantity == scannedQuantity) + { + return 1; + } + + return 0; + }); + + MovesDto dto = new MovesDto(); + dto.InAudit = isAudit == 1; + dto.BarcodesInfo = barcodeInfo; + return dto; + } + + + public List<MesInvItemMoves> GetBillNo(WarehouseQuery query) + { + query.Factory = "1000"; + query.Company = "1000"; + + return Db.Queryable<MesInvItemMoves>() + .Where(it => + SqlFunc.IsNull(it.Status, 0) == 1 && + SqlFunc.IsNull(it.Ts, 0) != 1) + .Where(it => + it.Factory == query.Factory && it.Company == query.Company) + .OrderBy(it => it.Id, OrderByType.Desc).ToList(); + } + + public List<MesInvItemMoves> GetPage(WarehouseQuery query) + { + return Db.Queryable<MesInvItemMoves>() + .WhereIF(!string.IsNullOrEmpty(query.billNo), + s => s.BillNo == query.billNo) + .OrderByDescending(s => s.Id) + .ToPageList(query.PageIndex, query.Limit); + } + + public MovesDto GetItems(WarehouseQuery query) + { + MovesDto dto = new MovesDto(); + + dto.BarcodeList = GetItemMovesCDetails(query); + dto.OutItems = GetItemOutItems(query); + + return dto; + } + + private List<MesInvItemOutItems> GetItemOutItems(WarehouseQuery query) + { + var sql = string.Format( + "SELECT C.ITEM_NO, C.QUANTITY, C.REMARK, C.REMARK, S.ITEM_NAME, S.ITEM_MODEL, U.FNAME ITEM_UNIT, D.QUANTITY_OK, NVL(ST.QUANTITY, 0) WLKC FROM MES_INV_ITEM_OUT_ITEMS C JOIN MES_ITEMS S ON C.ITEM_ID = S.ID LEFT JOIN MES_UNIT U ON U.ID = S.ITEM_UNIT LEFT JOIN MES_DEPOTS P ON P.DEPOT_CODE = C.DEPOT_CODE LEFT JOIN MES_DEPOT_SECTIONS E ON E.DEPOT_SECTION_CODE = C.DEPOT_SECTION_CODE LEFT JOIN (SELECT ITEM_MOVE_ID, ITEM_NO, SUM(QUANTITY) QUANTITY_OK FROM MES_INV_ITEM_MOVES_C_DETAILS GROUP BY ITEM_MOVE_ID, ITEM_NO) D ON D.ITEM_MOVE_ID = C.ITEM_OUT_ID AND D.ITEM_NO = C.ITEM_NO LEFT JOIN MES_INV_ITEM_MOVES A ON A.ID = C.ITEM_OUT_ID left join (SELECT ITEM_ID, SUM(QUANTITY) QUANTITY, DEPOTS_CODE FROM MES_INV_ITEM_STOCKS GROUP BY ITEM_ID, DEPOTS_CODE) ST ON C.ITEM_ID = ST.ITEM_ID AND ST.DEPOTS_CODE = A.FROM_DEPOTS_CODE where C.ITEM_OUT_ID = {0}", + query.id); + + return Db.Ado.SqlQuery<MesInvItemOutItems>(sql); + } + + private List<MesInvItemMovesCDetails> GetItemMovesCDetails( + WarehouseQuery query) + { + return Db.Queryable<MesInvItemMovesCDetails, MesItems, MesSupplier>( + (b, c, f) => new JoinQueryInfos( + JoinType.Left, + b.ItemNo == c.ItemNo && b.Company == c.Company && + b.Factory == c.Factory, + JoinType.Left, b.SuppNo == f.SuppNo + )) + .Where((b, c, f) => b.ItemMoveId == query.id) + .Select((b, c, f) => new MesInvItemMovesCDetails + { + FromDepotSectionsCode = b.FromDepotSectionsCode, + BoardStyle = b.BoardStyle, + FromDepotsCode = b.FromDepotsCode, + InvDepotSectionsCode = b.InvDepotSectionsCode, + InvDepotsCode = b.InvDepotsCode, + Quantity = b.Quantity, + LotNo = b.LotNo, + ItemNo = b.ItemNo, + ItemBarcode = b.ItemBarcode, + ItemName = c.ItemName, + ItemModel = c.ItemModel, + ItemUnit = c.ItemUnit, + SuppName = f.SuppName, + MoveOk = + SqlFunc.IsNull(b.MoveOk, 0) // 浣跨敤 SqlFunc.IsNull 瀹炵幇 NVL 鐨勬晥鏋� + }).ToList(); + } + + public OutItemDto ScanMoveBarcode(WarehouseQuery query) + { + var BillTypeId = 300; + var TransctionNo = 301; + query.Factory = "1000"; + query.Company = "1000"; + + if (string.IsNullOrEmpty(query.billNo)) throw new Exception("璇烽�夊崟鎹彿锛�"); + + var mesInvItemStocks = Db.Queryable<MesInvItemStocks>() + .Where(s => s.ItemBarcode == query.barcode && + s.Quantity > 0 && s.DepotsCode != null).First(); + if (mesInvItemStocks == null) + throw new Exception("搴撳瓨涓棤姝ゆ潯鐮侊紝璇锋牳瀵癸紒" + query.barcode); + + var mesInvItemMoves = Db.Queryable<MesInvItemMoves>() + .Where(d => d.TransactionNo == TransctionNo + && SqlFunc.IsNull(d.Status, 0) == 1).First(); + + if (mesInvItemMoves == null) + throw new Exception("鍑哄簱鍗� " + query.billNo + "涓嶅瓨鍦紝璇风‘璁わ紒"); + + var count = Db.Queryable<MesInvItemMoves, MesInvItemMovesCDetails>( + (a, b) => + new JoinQueryInfos(JoinType.Inner, a.Id == b.ItemMoveId)) + .Where((a, b) => b.ItemBarcode == query.barcode + && a.TransactionNo == TransctionNo && + SqlFunc.IsNull(a.Status, 0) == 0).Count(); + if (count > 0) throw new Exception("鏉$爜閲嶅鎵弿锛岃鏍稿锛�"); + + count = Db.Queryable<MesInvItemMoves, MesInvItemMovesCDetails>((a, b) => + new JoinQueryInfos(JoinType.Inner, a.Id == b.ItemMoveId)) + .Where((a, b) => b.ItemBarcode == query.barcode + && a.TransactionNo == TransctionNo && + SqlFunc.IsNull(b.MoveOk, 0) == 0).Count(); + + if (count > 0) throw new Exception("鏉$爜閲嶅鎵弿锛岃鏍稿锛�"); + + if (mesInvItemMoves.FromDepotsCode != mesInvItemStocks.DepotsCode) + throw new Exception("鏉$爜鐜板瓨浠撳簱涓庣敵璇峰嚭璐т粨搴撲笉涓�鑷达紝璇锋牳瀵癸紒"); + + var quantity = Db.Queryable<MesInvItemOutItems>() + .Where(b => b.ItemNo == mesInvItemStocks.ItemNo + && b.ItemOutId == mesInvItemMoves.Id) + .Sum(b => b.Quantity); + + if (quantity == null) + throw new Exception("鎵爜鐗╂枡闈炴湰娆$敵璇风墿鏂欙紝璇锋牳瀵癸紒" + query.barcode); + + var sum = Db.Queryable<MesInvItemMovesCDetails>() + .Where(b => b.ItemNo == mesInvItemStocks.ItemNo + && b.ItemMoveId == mesInvItemMoves.Id) + .Sum(b => b.Quantity) ?? 0; + + var sumqty = sum + (mesInvItemStocks.Quantity ?? 0); + + if (sumqty > quantity) + throw new Exception( + "宸叉壂鏉$爜鏁伴噺鎴栨湰娆℃壂鐮佹暟閲忥細" + sumqty + " 澶т簬鐢宠鏁伴噺锛�" + quantity + "锛岃鏍稿锛�"); + + UseTransaction(db => + { + SaveMesInvItemMovesCDetails(db, query, mesInvItemMoves, + mesInvItemStocks); + + // Insert into mes_inv_business2 + SaveMesInvBusiness2(db, query, BillTypeId, TransctionNo, + mesInvItemStocks, mesInvItemMoves); + + if (TransctionNo == 303) + db.Updateable<MesInvItemStocks>() + .SetColumns(s => + s.DepotSectionsCode == mesInvItemMoves.InvDepotsCode) + .SetColumns(s => + s.DepotsCode == mesInvItemMoves.InvDepotsCode) + .Where(s => s.Id == mesInvItemStocks.Id) + .ExecuteCommand(); + else + db.Updateable<MesInvItemStocks>() + .SetColumns(s => s.DepotSectionsCode == null) + .SetColumns(s => s.DepotsCode == null) + .Where(s => s.Id == mesInvItemStocks.Id) + .ExecuteCommand(); + + var scanOutShowDb = ScanOutShowDb(query); + if (CollectionUtil.IsNullOrEmpty(scanOutShowDb)) + db.Updateable<MesInvItemMoves>() + .SetColumns(s => s.Status == 1) + .SetColumns(s => s.Checkdate == DateTime.Now) + .SetColumns(s => s.Checkuser == query.userName) + .Where(s => s.BillNo == query.billNo).ExecuteCommand(); + + return 1; + }); + + var itemDto = new OutItemDto(); + //itemDto.SumItem = scanOutShowDb; + + if (TransctionNo == 201) itemDto.Quantity = mesInvItemStocks.Quantity; + + itemDto.ItemNo = mesInvItemStocks.ItemNo; + + return itemDto; + } + + private void SaveMesInvBusiness2(SqlSugarScope Db, WarehouseQuery query, + int BillTypeId, + int TransctionNo, MesInvItemStocks mesInvItemStocks, + MesInvItemMoves mesInvItemMoves) + { + var executeCommand = Db.Insertable(new MesInvBusiness2 + { + Status = 1, + BillTypeId = BillTypeId, + TransactionCode = TransctionNo.ToString(), + BusinessType = 1, + ItemBarcode = query.barcode, + ItemNo = mesInvItemStocks.ItemNo, + LotNo = mesInvItemStocks.LotNo, + EpFlag = 1, + Quantity = mesInvItemStocks.Quantity, + FromInvDepotsCode = mesInvItemStocks.DepotsCode, + FromInvDepotSectionsCode = mesInvItemStocks.DepotSectionsCode, + ToInvDepotsCode = TransctionNo == 303 + ? mesInvItemMoves.InvDepotsCode + : null, + ToInvDepotSectionsCode = TransctionNo == 303 + ? mesInvItemMoves.InvDepotsCode + : null, + CreateBy = query.userName, + CreateDate = DateTime.Now, + LastupdateBy = query.userName, + LastupdateDate = DateTime.Now, + Factory = query.Factory, + Company = query.Company, + TaskNo = mesInvItemStocks.TaskNo, + BillNo = query.billNo, + WorkNo = mesInvItemStocks.WorkNo, + WorkLine = mesInvItemStocks.WorkLine, + SuppNo = mesInvItemStocks.SuppNo + }).ExecuteCommand(); + + if (executeCommand <= 0) throw new Exception("鍐欏叆MesInvBusiness2琛ㄥけ璐�"); + } + + private void SaveMesInvItemMovesCDetails(SqlSugarScope Db, + WarehouseQuery query, + MesInvItemMoves mesInvItemMoves, MesInvItemStocks mesInvItemStocks) + { + var executeCommand = Db.Insertable(new MesInvItemMovesCDetails + { + ItemMoveId = mesInvItemMoves.Id, + ItemBarcode = query.barcode, + CItemCode = mesInvItemStocks.CItemCode, + ItemNo = mesInvItemStocks.ItemNo, + LotNo = mesInvItemStocks.LotNo, + Quantity = mesInvItemStocks.Quantity, + EpFlag = mesInvItemStocks.EpFlag, + CreateBy = query.userName, + CreateDate = DateTime.Now, + LastupdateBy = query.userName, + LastupdateDate = DateTime.Now, + CustNo = mesInvItemStocks.CustomerNo, + TaskNo = mesInvItemStocks.TaskNo, + FromDepotsCode = mesInvItemStocks.DepotsCode, + FromDepotSectionsCode = mesInvItemStocks.DepotSectionsCode, + Factory = mesInvItemStocks.Factory, + Company = mesInvItemStocks.Company, + IqcStatus = mesInvItemStocks.IqcStatus, + Fcar = mesInvItemStocks.Fcar, + IndepDate = mesInvItemStocks.IndepDate, + VisableSubmit = mesInvItemStocks.VisableSubmit, + VisableSubmitBy = mesInvItemStocks.VisableSubmitBy, + VisableSubmitDate = mesInvItemStocks.VisableSubmitDate, + BoardStyle = mesInvItemStocks.BoardStyle, + WorkNo = mesInvItemStocks.WorkNo, + WorkLine = mesInvItemStocks.WorkLine, + SuppNo = mesInvItemStocks.SuppNo + }).ExecuteCommand(); + + if (executeCommand <= 0) + throw new Exception("鍐欏叆MesInvItemMovesCDetails琛ㄥけ璐�"); + } + + //scan_out_show_DB + private List<InventoryItem> ScanOutShowDb(WarehouseQuery query) + { + var BillTypeId = 300; + var TransctionNo = 301; + query.Factory = "1000"; + query.Company = "1000"; + + if (string.IsNullOrEmpty(query.billNo)) throw new Exception("璇烽�夊崟鎹彿锛�"); + + var sql = string.Format( + "select f_get_sections_code({0}, {1}, b.item_no) sections_code , s.erp_item_no , S.ITEM_MODEL , to_char(nvl(b.quantity, 0) - nvl(quantity_ok, 0), 'FM9999999990.00') flist from mes_inv_item_moves a join mes_inv_item_out_items b on b.item_out_id = a.id join mes_items s on b.item_no = s.item_no left join (select ITEM_MOVE_ID, item_no, sum(quantity) quantity_ok from MES_INV_ITEM_MOVES_C_DETAILS group by ITEM_MOVE_ID, item_no) c on c.ITEM_MOVE_ID = a.id and b.item_no = c.item_no where 1 = 1 and a.bill_type_id = {2} and a.transaction_no = {3} and a.bill_no = {4} and nvl(b.quantity, 0) - nvl(quantity_ok, 0) > 0 and rownum < 500 AND A.STATUS = 1 order by f_get_sections_code({0}, {1}, b.item_no), s.erp_item_no ", + query.Factory, query.Company, BillTypeId, TransctionNo, + query.billNo); + + var results = Db.Ado.SqlQuery<InventoryItem>(sql); + + return results; + } + + public bool Audit(WarehouseQuery query) + { + return Db.Updateable<MesInvItemMoves>() + .SetColumns(a => new MesInvItemMoves { Ts = 1 }) + .Where(a => a.Id == query.id) + .ExecuteCommand() > 0; + } + + public MessageCenter SaveMessageCenter(WarehouseQuery query) + { + var message = MesToErpParam(query); + + var executeReturnIdentity = + Db.Insertable(message).ExecuteReturnIdentity(); + if (executeReturnIdentity > 0) + { + message.Id = executeReturnIdentity; + message.Pid = executeReturnIdentity; + return message; + } + + throw new Exception("鑾峰彇鏁版嵁澶辫触"); + } + + public MessageCenter MesToErpParam(WarehouseQuery query) + { + var erpParameters = ""; + var title = ""; + var tableName = "MES_INV_ITEM_MOVES_" + query.Type; + if ("A".Equals(query.Type)) + { + erpParameters = GetErpParameters(query.billNo); + title = "璋冩嫧鍏ュ簱鍗�" + query.billNo + "瀹℃牳"; + } + else if ("B".Equals(query.Type)) + { + erpParameters = GetDeApprovePam(query.id); + title = "璋冩嫧鍏ュ簱鍗�" + query.billNo + "鍙嶅鏍�"; + } + + var ErpUrl = AppsettingsUtility.Settings.ProductionErpUrl; + var message = new MessageCenter + { + TableName = tableName, + Url = ErpUrl, + Status = 1, + CreateBy = query.userName, + Route = query.billNo, + Title = title, + PageName = "Allocation/Add?id=" + query.id + + "&billNo=" + query.billNo, + CreateDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), + Method = "POST", + Seq = 1, + Data = erpParameters, + IsMessage = 0, + ContentType = "application/x-www-form-urlencoded" + }; + return message; + } + + private string GetErpParameters(string? billNo) + { + // var invItemIns = Db.Queryable<MesInvItemOuts>() + // .Single(x => x.ItemOutNo == billNo); + // + // //璋冪敤function鍑芥暟 + // var sql = + // $"SELECT F_GENERATE_DATA_INSERTED('{billNo}') FROM DUAL;"; + // var jsonString = Db.Ado.SqlQuerySingle<string>(sql); + // + // var encodedUrl = "taskname=CGTL&mesid=" + invItemIns.Id + + // "&optype=create&datajson=" + jsonString; + // + // return encodedUrl; + return null; + } + + private string GetDeApprovePam(decimal? id) + { + // var sid = (int)id; + // var encodedUrl = "taskname=CGTL&mesid=" + sid + + // "&optype=delete&datajson={}"; + // + // return encodedUrl; + return null; + } +} \ No newline at end of file diff --git a/MES.Service/service/Warehouse/OpeningReceiptServer.cs b/MES.Service/service/Warehouse/OpeningReceiptServer.cs index 7e8c60e..d525417 100644 --- a/MES.Service/service/Warehouse/OpeningReceiptServer.cs +++ b/MES.Service/service/Warehouse/OpeningReceiptServer.cs @@ -1,55 +1,43 @@ 锘縰sing MES.Service.DB; using MES.Service.Dto.service; using MES.Service.Modes; -using MES.Service.util; using SqlSugar; namespace MES.Service.service.Warehouse; -public class OpeningReceiptServer :RepositoryNoEntity +public class OpeningReceiptServer : RepositoryNoEntity { - private const string Factory = "1000"; private const string Company = "1000"; + private const int billTypeId = 100; + + private const int transactionNo = 601; + public MesInvItemBarcodes ScanInBarcodeQC(WarehouseQuery query) { if (string.IsNullOrWhiteSpace(query.sectionCode)) - { throw new Exception("璇锋壂搴撲綅鏉$爜锛�"); - } var depotCode = GetDepotCode(query.sectionCode); if (depotCode == null) - { throw new Exception($"002[搴撲綅缂栫爜 {query.sectionCode} 涓嶅瓨鍦紝璇风‘璁わ紒"); - } - - int billTypeId = 100; - int transactionNo = 601; var checkBarcodeAlreadyReceived = CheckBarcodeAlreadyReceived(query.barcode); - if (checkBarcodeAlreadyReceived > 0) - { - throw new Exception("鏉$爜閲嶅鎵弿锛岃鏍稿锛�"); - } + if (checkBarcodeAlreadyReceived > 0) throw new Exception("鏉$爜閲嶅鎵弿锛岃鏍稿锛�"); if (CheckBarcodeInStock(query.barcode) > 0) - { throw new Exception("鏉$爜宸插湪搴撳瓨涓紝璇锋牳瀵癸紒"); - } var barcodeInfo = GetBarcodeInfo(query.barcode); if (barcodeInfo == null || barcodeInfo.ComeFlg != 0) - { throw new Exception("鏉$爜涓嶆槸鏈熷垵鏉$爜锛屾棤娉曠敤鏈熷垵鍏ュ簱锛�"); - } var inventoryItemInId = GetOrCreateInventoryItemInId(barcodeInfo, - depotCode, query.userName, transactionNo, out string billNo); + depotCode, query.userName, out var billNo); UseTransaction(db => { @@ -64,8 +52,53 @@ return 1; }); - return barcodeInfo; + } + + public PurchaseInventory GetForm(WarehouseQuery query) + { + var mesInvItemBarcodes = Db.Queryable<MesInvItemBarcodes>() + .Where(s => s.ItemBarcode == query.barcode).Count(); + + if (mesInvItemBarcodes <= 0) throw new Exception("鏉$爜涓嶅瓨鍦�"); + + var mesInvItemInCDetails = Db.Queryable<MesInvItemInCDetails>() + .Where(s => s.ItemBarcode == query.barcode).Single(); + + var entity = new PurchaseInventory + { + ItemIns = GetMesInvItemIns(mesInvItemInCDetails.ItemInId), + InvItemInCDetails = + GetMesInvItemInCDetailsList(mesInvItemInCDetails.ItemInId), + ItemStocks = Db.Queryable<MesInvItemStocks>() + .Where(s => s.ItemBarcode == query.barcode).ToList() + }; + + return entity; + } + + public MesInvItemIns GetMesInvItemIns(decimal id) + { + return Db.Queryable<MesInvItemIns>() + .Where(s => s.Id == id).Single(); + } + + public List<MesInvItemInCDetails> GetMesInvItemInCDetailsList(decimal id) + { + return Db.Queryable<MesInvItemInCDetails, MesUnit>((a, b) => + new JoinQueryInfos(JoinType.Inner, a.Unit == b.Id.ToString())) + .Where((a, b) => a.ItemInId == id) + .Select((a, b) => new MesInvItemInCDetails + { + ItemBarcode = a.ItemBarcode, + ItemNo = a.ItemNo, + ItemSname = a.ItemSname, + DepotSectionCode = a.DepotSectionCode, + Quantity = a.Quantity, + Unit = b.Fname, + Remark = a.Remark + }) + .ToList(); } private void InsertInventoryDetails(decimal itemInId, string billNo, @@ -106,14 +139,11 @@ TaskNo = barcodeInfo.TaskNo }).ExecuteCommand(); - if (executeCommand <= 0) - { - throw new Exception("鍐欏叆澶辫触"); - } + if (executeCommand <= 0) throw new Exception("鍐欏叆澶辫触"); } private decimal GetOrCreateInventoryItemInId(MesInvItemBarcodes barcodeInfo, - string depotCode, string userName, int transactionNo, out string billNo) + string depotCode, string userName, out string billNo) { var inventory = Db.Queryable<MesInvItemIns>() .Where(d => d.InsDate >= DateTime.Today && @@ -125,7 +155,6 @@ d.SuppNo == barcodeInfo.SuppNo && d.DepotsCode == depotCode) .First(); - if (inventory != null) { billNo = inventory.BillNo; @@ -139,7 +168,7 @@ var executeReturnIdentity = Db.Insertable(new MesInvItemIns { BillNo = billNo, - BillTypeId = 100, + BillTypeId = billTypeId, InsDate = DateTime.Now, DepotsCode = depotCode, TransctionNo = transactionNo.ToString(), @@ -218,10 +247,7 @@ SuppNo = barcodeInfo.SuppNo }).ExecuteCommand(); - if (executeCommand <= 0) - { - throw new Exception("鍐欏叆澶辫触"); - } + if (executeCommand <= 0) throw new Exception("鍐欏叆澶辫触"); } private void InsertBusinessRecord(MesInvItemBarcodes barcodeInfo, @@ -231,7 +257,7 @@ var executeCommand = Db.Insertable(new MesInvBusiness2 { Status = 1, - BillTypeId = 100, + BillTypeId = billTypeId, TransactionCode = "601", BusinessType = 1, ItemBarcode = barcodeInfo.ItemBarcode, @@ -254,9 +280,6 @@ SuppNo = barcodeInfo.SuppNo }).ExecuteCommand(); - if (executeCommand <= 0) - { - throw new Exception("鍐欏叆澶辫触"); - } + if (executeCommand <= 0) throw new Exception("鍐欏叆澶辫触"); } } \ No newline at end of file diff --git a/MES.Service/util/CollectionUtil.cs b/MES.Service/util/CollectionUtil.cs index 0652cd3..267fcd4 100644 --- a/MES.Service/util/CollectionUtil.cs +++ b/MES.Service/util/CollectionUtil.cs @@ -8,7 +8,7 @@ */ public static bool IsNullOrEmpty<T>(List<T> list) { - return list == null || !list.Any(); + return list == null || list.Count == 0; } /** diff --git a/MESApplication/Controllers/Base/DemoController.cs b/MESApplication/Controllers/Base/DemoController.cs index ce0eaba..0a28eae 100644 --- a/MESApplication/Controllers/Base/DemoController.cs +++ b/MESApplication/Controllers/Base/DemoController.cs @@ -3,7 +3,6 @@ using MES.Service.util; using Microsoft.AspNetCore.Mvc; using Newtonsoft.Json.Linq; - namespace MESApplication.Controllers.Base; [Route("api/[controller]")] @@ -28,6 +27,7 @@ } catch (Exception ex) { + throw ex; return ResponseResult.ResponseError(ex); } } diff --git a/MESApplication/Controllers/Base/LoginController.cs b/MESApplication/Controllers/Base/LoginController.cs index 58de874..02e836d 100644 --- a/MESApplication/Controllers/Base/LoginController.cs +++ b/MESApplication/Controllers/Base/LoginController.cs @@ -7,10 +7,18 @@ namespace MESApplication.Controllers.Base; +/// <summary> +/// 鐢ㄦ埛 +/// </summary> [Route("api/[controller]")] [ApiController] public class LoginController : ControllerBase { + /// <summary> + /// 鐧诲綍 + /// </summary> + /// <param name="model"></param> + /// <returns></returns> [HttpPost("login")] public ResponseResult login([FromBody] LoginModel model) { @@ -34,6 +42,11 @@ } } + /// <summary> + /// 閲嶈瀵嗙爜 + /// </summary> + /// <param name="data"></param> + /// <returns></returns> [HttpPost("resetPassword")] public ResponseResult resetPassword([FromBody] JObject data) { @@ -66,7 +79,11 @@ } } - + /// <summary> + /// 鐢ㄦ埛鑿滃崟 + /// </summary> + /// <param name="data"></param> + /// <returns></returns> [HttpPost("getUserMenu")] public ResponseResult getUserMenu([FromBody] JObject data) { diff --git a/MESApplication/Controllers/Warehouse/MesDepotSectionsController.cs b/MESApplication/Controllers/Warehouse/MesDepotSectionsController.cs index 8819082..0cfbcc2 100644 --- a/MESApplication/Controllers/Warehouse/MesDepotSectionsController.cs +++ b/MESApplication/Controllers/Warehouse/MesDepotSectionsController.cs @@ -16,6 +16,48 @@ /***杩涘叆妯$増绠$悊鍙互淇敼妯$増***/ + //ScanInDepotSectionsName + [HttpPost("ScanInDepotSectionsName")] + public ResponseResult ScanInDepotSectionsName(WarehouseQuery query) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.ScanInDepotSectionsName(query); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + + //ScanEditBarcode + [HttpPost("ScanEditBarcode")] + public ResponseResult ScanEditBarcode(WarehouseQuery query) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.ScanEditBarcode(query); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + //GetSectionName [HttpPost("GetSectionName")] public ResponseResult GetSectionName(WarehouseQuery query) diff --git a/MESApplication/Controllers/Warehouse/MesInvBusiness2Controller.cs b/MESApplication/Controllers/Warehouse/MesInvBusiness2Controller.cs index c50ee43..bbcda91 100644 --- a/MESApplication/Controllers/Warehouse/MesInvBusiness2Controller.cs +++ b/MESApplication/Controllers/Warehouse/MesInvBusiness2Controller.cs @@ -1,170 +1,162 @@ -锘縰sing Microsoft.AspNetCore.Mvc; -using Microsoft.Extensions.Logging; -using SqlSugar; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using System.Dynamic; +锘縰sing System.Dynamic; using MES.Service.Modes; -using MES.Service.service; using MES.Service.service.Warehouse; using MES.Service.util; +using Microsoft.AspNetCore.Mvc; -namespace MESApplication.Controllers.Warehouse +namespace MESApplication.Controllers.Warehouse; + +[ApiController] +[Route("api/[controller]")] +public class MesInvBusiness2Controller : ControllerBase { - [ApiController] - [Route("api/[controller]")] - public class MesInvBusiness2Controller : ControllerBase + private readonly MesInvBusiness2Manager m = new(); + + + /***杩涘叆妯$増绠$悊鍙互淇敼妯$増***/ + + /// <summary> + /// 鑾峰彇鎵�鏈� + /// </summary> + /// <returns></returns> + [HttpPost("GetList")] + public ResponseResult GetList() { - - private MesInvBusiness2Manager m = new MesInvBusiness2Manager(); - - - /***杩涘叆妯$増绠$悊鍙互淇敼妯$増***/ - - /// <summary> - /// 鑾峰彇鎵�鏈� - /// </summary> - /// <returns></returns> - [HttpPost("GetList")] - public ResponseResult GetList() + try { - try + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.GetList(); + return new ResponseResult { - dynamic resultInfos = new ExpandoObject(); - resultInfos.tbBillList = m.GetList(); - return new ResponseResult - { - status = 0, - message = "OK", - data = resultInfos - }; - } - catch (Exception ex) - { - return ResponseResult.ResponseError(ex); - } + status = 0, + message = "OK", + data = resultInfos + }; } - - - /// <summary> - /// 鏍规嵁涓婚敭鑾峰彇 - /// </summary> - /// <returns></returns> - [HttpPost("GetById")] - public ResponseResult GetById(int id) + catch (Exception ex) { - 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] MesInvBusiness2 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] MesInvBusiness2 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] MesInvBusiness2 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); - } + 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] MesInvBusiness2 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] MesInvBusiness2 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] MesInvBusiness2 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); + } + } +} \ No newline at end of file diff --git a/MESApplication/Controllers/Warehouse/MesInvItemMovesCDetailsController.cs b/MESApplication/Controllers/Warehouse/MesInvItemMovesCDetailsController.cs new file mode 100644 index 0000000..fb0be61 --- /dev/null +++ b/MESApplication/Controllers/Warehouse/MesInvItemMovesCDetailsController.cs @@ -0,0 +1,163 @@ +锘縰sing System.Dynamic; +using MES.Service.Modes; +using MES.Service.service.Warehouse; +using MES.Service.util; +using Microsoft.AspNetCore.Mvc; + +namespace MESApplication.Controllers.Warehouse; + +[ApiController] +[Route("api/[controller]")] +public class MesInvItemMovesCDetailsController : ControllerBase +{ + private readonly MesInvItemMovesCDetailsManager m = new(); + + + /***杩涘叆妯$増绠$悊鍙互淇敼妯$増***/ + + /// <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] MesInvItemMovesCDetails 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] MesInvItemMovesCDetails 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] MesInvItemMovesCDetails 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); + } + } +} \ No newline at end of file diff --git a/MESApplication/Controllers/Warehouse/MesInvItemMovesController.cs b/MESApplication/Controllers/Warehouse/MesInvItemMovesController.cs new file mode 100644 index 0000000..f93f0f5 --- /dev/null +++ b/MESApplication/Controllers/Warehouse/MesInvItemMovesController.cs @@ -0,0 +1,306 @@ +锘縰sing System.Dynamic; +using MES.Service.Dto.service; +using MES.Service.Modes; +using MES.Service.service.Warehouse; +using MES.Service.util; +using Microsoft.AspNetCore.Mvc; + +namespace MESApplication.Controllers.Warehouse; + +[ApiController] +[Route("api/[controller]")] +public class MesInvItemMovesController : ControllerBase +{ + private readonly MesInvItemMovesManager m = new(); + + //ScanInBarcode + [HttpPost("ScanInBarcode")] + public ResponseResult ScanInBarcode(WarehouseQuery query) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.ScanInBarcode(query); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + + [HttpPost("Audit")] + public ResponseResult Audit(WarehouseQuery query) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.Audit(query); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + + [HttpPost("SaveMessageCenter")] + public ResponseResult SaveMessageCenter(WarehouseQuery entity) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.SaveMessageCenter(entity); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + + //GetPage + [HttpPost("GetPage")] + public ResponseResult GetPage(WarehouseQuery query) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.GetPage(query); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + + //GetItems + [HttpPost("GetItems")] + public ResponseResult GetItems(WarehouseQuery query) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.GetItems(query); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + + //ScanMoveBarcode + [HttpPost("ScanMoveBarcode")] + public ResponseResult ScanMoveBarcode(WarehouseQuery query) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.ScanMoveBarcode(query); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + + // GetBillNo + [HttpPost("GetBillNo")] + public ResponseResult GetBillNo(WarehouseQuery query) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.GetBillNo(query); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + 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] MesInvItemMoves 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] MesInvItemMoves 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] MesInvItemMoves 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); + } + } +} \ No newline at end of file diff --git a/MESApplication/Controllers/Warehouse/OpeningReceiptController.cs b/MESApplication/Controllers/Warehouse/OpeningReceiptController.cs index 16b6884..cda99fa 100644 --- a/MESApplication/Controllers/Warehouse/OpeningReceiptController.cs +++ b/MESApplication/Controllers/Warehouse/OpeningReceiptController.cs @@ -31,4 +31,24 @@ return ResponseResult.ResponseError(ex); } } + + [HttpPost("GetForm")] + public ResponseResult GetForm(WarehouseQuery query) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.GetForm(query); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } } \ No newline at end of file diff --git a/MESApplication/Filter/ActionFilter.cs b/MESApplication/Filter/ActionFilter.cs new file mode 100644 index 0000000..222c03f --- /dev/null +++ b/MESApplication/Filter/ActionFilter.cs @@ -0,0 +1,160 @@ +锘縰sing Microsoft.AspNetCore.Mvc; +using Microsoft.AspNetCore.Mvc.Controllers; +using Microsoft.AspNetCore.Mvc.Filters; +using Newtonsoft.Json; +using System.Diagnostics; +using System.Text; + +namespace MESApplication +{ + /// <summary> + /// 鏂规硶杩囨护鍣� + /// </summary> + public class ActionFilter : IActionFilter + { + /// <summary> + /// 鐩戞帶鏃ュ織 + /// </summary> + public static ILogger LoggerMonitor { get; set; } + + /// <summary> + /// 閿欒鏃ュ織 + /// </summary> + public static ILogger LoggerError { get; set; } + + private Stopwatch _stopwatch; + + /// <summary> + /// 鍒涘缓璇锋眰鏃ュ織鏂囨湰 + /// </summary> + /// <param name="method"></param> + /// <param name="controllerName"></param> + /// <param name="actionName"></param> + /// <param name="actionArgs"></param> + /// <returns></returns> + private static string CreateRequestLogText(string method, string controllerName, string actionName, string requestHead, string requestBody) + { + StringBuilder sb = new StringBuilder(); + sb.Append($"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} 璇锋眰{method}/{controllerName}/{actionName}鎺ュ彛锛岃姹侶ead锛歿requestHead}\n"); + sb.Append($"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} 璇锋眰{method}/{controllerName}/{actionName}鎺ュ彛锛岃姹侭ody锛歿requestBody}\n"); + return sb.ToString(); + } + + /// <summary> + /// 鍒涘缓鍝嶅簲鏃ュ織鏂囨湰 + /// </summary> + /// <param name="method"></param> + /// <param name="controllerName"></param> + /// <param name="actionName"></param> + /// <param name="result"></param> + /// <returns></returns> + private static string CreateResponseLogText(string method, string controllerName, string actionName, object result) + { + StringBuilder sb = new StringBuilder(); + sb.Append($"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} 瀹屾垚璇锋眰{method}/{controllerName}/{actionName}鎺ュ彛锛岃繑鍥炵粨鏋滐細"); + if (result != null) + { + sb.Append($"{JsonConvert.SerializeObject(result)}"); + } + else + { + sb.Append($"鏃�"); + } + return sb.ToString(); + } + + + /// <summary> + /// 鏂规硶鎵ц鍓� + /// </summary> + /// <param name="context"></param> + /// <exception cref="NotImplementedException"></exception> + public async void OnActionExecuting(ActionExecutingContext context) + { + // ErrorLog.Write("=================================================================================================================================="); + _stopwatch = new Stopwatch(); + _stopwatch.Start(); + //throw new NotImplementedException(); + if (LoggerMonitor != null) + { + //璁板綍璇锋眰鍙傛暟鏃ュ織 + ControllerActionDescriptor desc = context.ActionDescriptor as ControllerActionDescriptor; + if (desc != null) + { + Dictionary<string, object> headers = new Dictionary<string, object>(); + var requestHeaders = context.HttpContext.Request.Headers; + + // 璁块棶璇锋眰涓殑 header 淇℃伅 + foreach (var header in requestHeaders) + { + headers.Add(header.Key, header.Value); + } + var requestHead = JsonConvert.SerializeObject(headers); + + Dictionary<string, object> bodys = new Dictionary<string, object>(); + var actionArguments = context.ActionArguments; + // 璁块棶璇锋眰涓殑鍙傛暟 + foreach (var argument in actionArguments) + { + //dic.Add(argument.Key, argument.Value); + var parameter = JsonConvert.DeserializeObject<Dictionary<string, object>>(argument.Value.ToString()); + foreach (var item in parameter) + { + bodys.Add(item.Key, item.Value); + } + } + var requestBody = JsonConvert.SerializeObject(bodys); + + var logText = CreateRequestLogText(context.HttpContext.Request.Method, desc.ControllerName, desc.ActionName, requestHead, requestBody); + //LoggerMonitor.LogDebug(logText); + //ErrorLog.Write(logText); + } + } + + + } + + public void OnActionExecuted(ActionExecutedContext context) + { + //throw new NotImplementedException(); + _stopwatch.Stop(); + long elaspsedMillisedconds = _stopwatch.ElapsedMilliseconds; + string msg = ""; + //string msg = $"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} 鎺ュ彛鎵ц鏃堕棿锛歿elaspsedMillisedconds}姣"; + //ErrorLog.Write(msg); + + if (context.Exception != null) + { + // 璁板綍寮傚父鏃ュ織 + if (LoggerError != null) + { + LoggerError.LogError(context.Exception, context.Exception.Message); + + ErrorLog.Write($@"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} 鎺ュ彛寮傚父锛歿JsonConvert.SerializeObject(context.Exception)}"); + ErrorLog.Write($@"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} 寮傚父鎻愮ず淇℃伅锛歿JsonConvert.SerializeObject(context.Exception.Message)}"); + ErrorLog.Write("=================================================================================================================================="); + } + } + + if (LoggerMonitor != null) + { + // 璁板綍璇锋眰缁撴灉鏃ュ織 + ControllerActionDescriptor desc = context.ActionDescriptor as ControllerActionDescriptor; + if (desc != null) + { + ObjectResult rst = context.Result as ObjectResult; + object rstValue = rst != null ? rst.Value : null; + var logText = CreateResponseLogText( + context.HttpContext.Request.Method, + desc.ControllerName, + desc.ActionName, + rstValue); + LoggerMonitor.LogDebug(logText); + ErrorLog.Write(logText); + } + } + // ErrorLog.Write(msg); + // ErrorLog.Write("=================================================================================================================================="); + } + } +} diff --git a/MESApplication/Filter/ErrorLog.cs b/MESApplication/Filter/ErrorLog.cs new file mode 100644 index 0000000..26fe4f6 --- /dev/null +++ b/MESApplication/Filter/ErrorLog.cs @@ -0,0 +1,70 @@ +锘縩amespace MESApplication +{ + public class ErrorLog + { + + private static string DirectoryPath = AppDomain.CurrentDomain.BaseDirectory; + + /// <summary> + /// 鍐欏叆鎿嶄綔鏃ュ織鍒版枃浠朵腑 + /// </summary> + /// <param name="moduleName">妯″潡鍚嶅瓧</param> + /// <param name="message">閿欒鏂囨湰淇℃伅</param> + /// <param name="ex">寮傚父</param> + public static void Write(string moduleName, string message, Exception ex) + { + //string directoryPath = $@"C:\鑷崇畝绉戞妧\MyDemoData\.NetCore鎺ュ彛杩囨护鍣ㄩ」鐩甛FilterText\FilterText\Logger\{DateTime.Now.ToString("yyyyMMdd")}"; // 鐩爣鐩綍璺緞 + string directoryPath = $@"{DirectoryPath}{"log"}"; // 鐩爣鐩綍璺緞 + + if (!Directory.Exists(directoryPath)) + { + // 濡傛灉鐩綍涓嶅瓨鍦紝鍒欐柊寤烘枃浠跺す + Directory.CreateDirectory(directoryPath); + } + + string filePath = directoryPath + $@"\{DateTime.Now.ToString("yyyyMMddHH")}.log"; // 鐩爣鏂囦欢璺緞 + + if (!File.Exists(filePath)) + { + // 濡傛灉鏂囦欢涓嶅瓨鍦紝鍒欏垱寤烘枃浠� + using (File.Create(filePath)) + { + //Console.WriteLine("鏂囦欢宸插垱寤�"); + } + } + LogToFile(filePath, message); + } + + /// <summary> + /// 鍐欏叆鎿嶄綔鏃ュ織鍒版枃浠朵腑 + /// </summary> + /// <param name="moduleName">妯″潡鍚嶅瓧</param> + /// <param name="ex">寮傚父</param> + public static void Write(string moduleName, Exception ex) + { + Write(moduleName, moduleName, ex); + } + + /// <summary> + /// 鍐欏叆杩囩▼鏁版嵁鎴栬鏄庡埌鏂囦欢涓紝浠ヤ究璺熻釜 + /// </summary> + /// <param name="moduleName">妯″潡鍚嶅瓧</param> + /// <param name="ex">寮傚父</param> + public static void Write(string message) + { + Write(String.Empty, message, null); + } + + /// <summary> + /// 鏂囨湰鍐欏叆 + /// </summary> + /// <param name="logMessage"></param> + private static void LogToFile(string logFilePath, string logMessage) + { + using (StreamWriter sw = File.AppendText(logFilePath)) + { + sw.WriteLine($"{logMessage}"); + } + } + } +} diff --git a/MESApplication/MESApplication.csproj b/MESApplication/MESApplication.csproj index 2bd7d9d..3ae7129 100644 --- a/MESApplication/MESApplication.csproj +++ b/MESApplication/MESApplication.csproj @@ -5,10 +5,11 @@ <Nullable>enable</Nullable> <ImplicitUsings>enable</ImplicitUsings> <InvariantGlobalization>true</InvariantGlobalization> + <GenerateDocumentationFile>True</GenerateDocumentationFile> </PropertyGroup> <ItemGroup> - <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="8.0.0"/> + <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="8.0.0" /> <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="8.0.1"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> @@ -17,12 +18,12 @@ <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> </PackageReference> - <PackageReference Include="Oracle.EntityFrameworkCore" Version="8.21.121"/> - <PackageReference Include="Swashbuckle.AspNetCore" Version="6.4.0"/> + <PackageReference Include="Oracle.EntityFrameworkCore" Version="8.21.121" /> + <PackageReference Include="Swashbuckle.AspNetCore" Version="6.4.0" /> </ItemGroup> <ItemGroup> - <ProjectReference Include="..\MES.Service\MES.Service.csproj"/> + <ProjectReference Include="..\MES.Service\MES.Service.csproj" /> </ItemGroup> </Project> diff --git a/MESApplication/Startup.cs b/MESApplication/Startup.cs index f506f0e..19d0a1d 100644 --- a/MESApplication/Startup.cs +++ b/MESApplication/Startup.cs @@ -4,6 +4,7 @@ using Newtonsoft.Json; using Newtonsoft.Json.Serialization; using Swashbuckle.AspNetCore.SwaggerUI; +using System.Reflection; namespace MESApplication; @@ -35,6 +36,9 @@ c.SwaggerDoc("v1", new OpenApiInfo { Title = "MESApplication.Api", Version = "v1" }); + var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml"; + var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile); + c.IncludeXmlComments(xmlPath, true); }); //閰嶇疆JSON.NET @@ -66,6 +70,14 @@ "OPTIONS") ); }); + + #region 鎺ュ彛琛屽姩杩囨护鍣� + services.AddControllers(options => { + options.Filters.Add(new ActionFilter()); + }); + var serviceProvider = services.BuildServiceProvider(); + ActionFilter.LoggerError = serviceProvider.GetRequiredService<ILogger<ActionFilter>>(); + #endregion } // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. @@ -92,5 +104,10 @@ app.UseAuthorization(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); + + ////////////////////////// + + /////////////////////////// + } } \ No newline at end of file diff --git a/MESApplication/bin/Debug/net8.0/MES.Service.dll b/MESApplication/bin/Debug/net8.0/MES.Service.dll index 0c9d6b5..987da2e 100644 --- a/MESApplication/bin/Debug/net8.0/MES.Service.dll +++ b/MESApplication/bin/Debug/net8.0/MES.Service.dll Binary files differ diff --git a/MESApplication/bin/Debug/net8.0/MES.Service.pdb b/MESApplication/bin/Debug/net8.0/MES.Service.pdb index c328566..ebaf275 100644 --- a/MESApplication/bin/Debug/net8.0/MES.Service.pdb +++ b/MESApplication/bin/Debug/net8.0/MES.Service.pdb Binary files differ diff --git a/MESApplication/bin/Debug/net8.0/MESApplication.dll b/MESApplication/bin/Debug/net8.0/MESApplication.dll index 69908ab..8ebd105 100644 --- a/MESApplication/bin/Debug/net8.0/MESApplication.dll +++ b/MESApplication/bin/Debug/net8.0/MESApplication.dll Binary files differ diff --git a/MESApplication/bin/Debug/net8.0/MESApplication.exe b/MESApplication/bin/Debug/net8.0/MESApplication.exe index 246654b..12ca63d 100644 --- a/MESApplication/bin/Debug/net8.0/MESApplication.exe +++ b/MESApplication/bin/Debug/net8.0/MESApplication.exe Binary files differ diff --git a/MESApplication/bin/Debug/net8.0/MESApplication.pdb b/MESApplication/bin/Debug/net8.0/MESApplication.pdb index 53edad3..a789e3c 100644 --- a/MESApplication/bin/Debug/net8.0/MESApplication.pdb +++ b/MESApplication/bin/Debug/net8.0/MESApplication.pdb Binary files differ -- Gitblit v1.9.3