From 41411519f05116167adb749a5f1b73ba96f5b5b1 Mon Sep 17 00:00:00 2001 From: wbc <2597324127@qq.com> Date: 星期五, 15 八月 2025 15:00:09 +0800 Subject: [PATCH] Merge branch 'master' of http://43.142.96.171:8080/r/~tjx/XB_MES_API --- StandardPda/MES.Service/service/QC/SJService.cs | 43 StandardPda/MESApplication/Controllers/Warehouse/womdaaController.cs | 115 + StandardPda/MES.Service/Modes/SalesOrderDetail.cs | 371 +++ StandardPda/MES.Service/service/BasicData/SalesDeliveryNoticeDetailManager.cs | 78 StandardPda/MESApplication/Controllers/BasicData/SalesOrderController.cs | 263 ++ StandardPda/MES.Service/Modes/SalesDeliveryNotice.cs | 324 +++ StandardPda/MES.Service/Modes/SalesReturnNotice.cs | 297 ++ StandardPda/MES.Service/Modes/SalesOrder.cs | 306 ++ StandardPda/MES.Service/Dto/webApi/ErpSalesOrdeDetailDto.cs | 108 + StandardPda/MES.Service/service/Warehouse/MesItemQtManager.cs | 8 StandardPda/MES.Service/Dto/webApi/ErpSalesDeliveryDetailDto.cs | 225 ++ StandardPda/MES.Service/Modes/SalesReturnNoticeDetail.cs | 236 + StandardPda/MES.Service/Dto/service/SJPageResult.cs | 24 StandardPda/MES.Service/Dto/webApi/ErpSalesReturnDto.cs | 128 + StandardPda/MES.Service/Dto/service/MesPalletBinding.cs | 50 StandardPda/MES.Service/DB/OracleSQLHelper.cs | 33 StandardPda/MES.Service/Dto/webApi/ErpSalesDelivery.cs | 10 StandardPda/MES.Service/Modes/QsItemIpiReq.cs | 220 +- StandardPda/MES.Service/Modes/SalesDeliveryNoticeDetail.cs | 382 ++++ StandardPda/MES.Service/Modes/MesItemQtDatall.cs | 3 StandardPda/MES.Service/Dto/webApi/ErpSalesReturnDetailDto.cs | 148 + StandardPda/MES.Service/service/BasicData/SalesDeliveryNoticeManager.cs | 306 +++ StandardPda/MESApplication/Controllers/QC/SJController.cs | 31 StandardPda/MES.Service/Dto/webApi/ErpSalesOrder.cs | 8 StandardPda/MES.Service/Dto/service/MesMiddleBox.cs | 43 StandardPda/MES.Service/Dto/webApi/ErpSalesOrderDto.cs | 78 StandardPda/MES.Service/Dto/webApi/ErpSalesDeliveryDto.cs | 153 + StandardPda/MESApplication/Controllers/QC/XJController.cs | 29 StandardPda/MES.Service/service/BasicData/SalesOrderManager.cs | 226 + StandardPda/MES.Service/Dto/service/AsnInfo.cs | 70 StandardPda/MES.Service/Dto/webApi/ErpSalesReturn.cs | 10 StandardPda/MES.Service/service/BasicData/SalesReturnNoticeManager.cs | 217 ++ StandardPda/MES.Service/service/Warehouse/WomdaaManager.cs | 433 ++++ StandardPda/MESApplication/Controllers/BasicData/SalesDeliveryNoticeController.cs | 276 ++ StandardPda/MES.Service/service/QC/XJService.cs | 55 StandardPda/MES.Service/Dto/service/MesItemQtList.cs | 12 StandardPda/MESApplication/Controllers/BasicData/SalesReturnNoticeController.cs | 272 ++ 37 files changed, 5,035 insertions(+), 556 deletions(-) diff --git a/StandardPda/MES.Service/DB/OracleSQLHelper.cs b/StandardPda/MES.Service/DB/OracleSQLHelper.cs index 9a36dba..fea808c 100644 --- a/StandardPda/MES.Service/DB/OracleSQLHelper.cs +++ b/StandardPda/MES.Service/DB/OracleSQLHelper.cs @@ -228,4 +228,37 @@ // } // return result; // } + // 鎵撳紑杩炴帴骞跺紑鍚簨鍔� + public (OracleConnection, OracleTransaction) BeginTransaction() + { + var connection = new OracleConnection(_connectionString); + connection.Open(); + var transaction = connection.BeginTransaction(); + return (connection, transaction); + } + + // 鍏抽棴杩炴帴锛堟彁浜ゆ垨鍥炴粴鍚庣敤锛� + public void CloseConnection(OracleConnection connection) + { + if (connection != null && connection.State != ConnectionState.Closed) + { + connection.Close(); + connection.Dispose(); + } + } + public object ExecuteScalarWithTransaction(OracleConnection conn, OracleTransaction tran, string sql, params OracleParameter[] parameters) + { + using (var cmd = conn.CreateCommand()) + { + cmd.Transaction = tran; + cmd.CommandText = sql; + if (parameters != null) + { + cmd.Parameters.AddRange(parameters); + } + return cmd.ExecuteScalar(); + } + } + + } \ No newline at end of file diff --git a/StandardPda/MES.Service/Dto/service/AsnInfo.cs b/StandardPda/MES.Service/Dto/service/AsnInfo.cs index f21dd93..f4947c0 100644 --- a/StandardPda/MES.Service/Dto/service/AsnInfo.cs +++ b/StandardPda/MES.Service/Dto/service/AsnInfo.cs @@ -19,6 +19,76 @@ /// </summary> public string snState { get; set; } + /// <summary> + /// 浜ф祴鐧婚檰鍙� + /// </summary> + public string loginId { get; set; } + /// <summary> + /// 澶辫触椤圭洰 + /// </summary> + public List<CcFailItems>? failItems { get; set; } + + + /// <summary> + /// 閰嶄欢缁戝畾 + /// </summary> + public List<AccessoryList>? accessoryList { get; set; } + } + /// <summary> + /// 浜ф祴SN澶辫触椤规槑缁嗚〃 + /// </summary> + public class CcFailItems + { + + /// <summary> + /// 涓嶈壇闂 + /// </summary> + public string? DefectIssue { get; set; } + + /// <summary> + /// 鍒濇鍘熷洜 + /// </summary> + public string? RootCause { get; set; } + + /// <summary> + /// 缁翠慨鏂规/鏂规硶 + /// </summary> + public string? RepairMethod { get; set; } + + /// <summary> + /// 涓嶈壇鐗╂枡澶勭悊 + /// </summary> + public string? MaterialHandling { get; set; } + + + } + + /// <summary> + /// 閰嶄欢鏄庣粏 + /// </summary> + public class AccessoryList + { + + /// <summary> + /// 缁戝畾鐘舵�侊紙(0:缁戝畾, 1:瑙g粦锛� + /// </summary> + public string? bindingState { get; set; } + + /// <summary> + /// 閰嶄欢SN鍙� + /// </summary> + public string? accessorySn { get; set; } + + /// <summary> + ///閰嶄欢涓枃鍚箟 + /// </summary> + public string? accessoryName { get; set; } + + + + + } + } diff --git a/StandardPda/MES.Service/Dto/service/MesItemQtList.cs b/StandardPda/MES.Service/Dto/service/MesItemQtList.cs index a6a4cf9..278ef10 100644 --- a/StandardPda/MES.Service/Dto/service/MesItemQtList.cs +++ b/StandardPda/MES.Service/Dto/service/MesItemQtList.cs @@ -2,15 +2,12 @@ { public class MesItemQtList { - /// <summary> - /// 宸ュ崟鍙� - /// </summary> - public string WorkOrderNumber { get; set; } + /// <summary> /// 鐗╂枡缂栧彿 /// </summary> - public string Itemld { get; set; } + public string ItemId { get; set; } /// <summary> /// 璁″垝鏁伴噺 @@ -93,5 +90,10 @@ /// 浜ф垚鍝佺紪鐮� /// </summary> public string FinishedProduct { get; set; } + + /// <summary> + /// 棰嗘枡鐢ㄩ�� + /// </summary> + public string PickingUsage { get; set; } } } diff --git a/StandardPda/MES.Service/Dto/service/MesMiddleBox.cs b/StandardPda/MES.Service/Dto/service/MesMiddleBox.cs new file mode 100644 index 0000000..0f00368 --- /dev/null +++ b/StandardPda/MES.Service/Dto/service/MesMiddleBox.cs @@ -0,0 +1,43 @@ +锘縩amespace MES.Service.Dto.service +{ + /// <summary> + /// 涓鐮佽〃 + /// </summary> + public class MesMiddleBox + { + + /// <summary> + /// 绫诲瀷锛堟搷浣滐細A缁戝畾锛孎瑙g粦锛� + /// </summary> + public string type { get; set; } + /// <summary> + /// 涓鐮� + /// </summary> + public string MediumBoxCode { get; set; } + + /// <summary> + /// 鐧诲綍鍙� + /// </summary> + public string LoginId { get; set; } + /// <summary> + /// sn鍒楄〃 + /// </summary> + public List<snList> SnList { get; set; } + + public class snList + { + /// <summary> + /// SN鍙� + /// </summary> + public string SnNo { get; set; } + + /// <summary> + /// 宸ュ崟鍗曞彿 + /// </summary> + public string TicketNo { get; set; } + } + + } + + +} diff --git a/StandardPda/MES.Service/Dto/service/MesPalletBinding.cs b/StandardPda/MES.Service/Dto/service/MesPalletBinding.cs new file mode 100644 index 0000000..a3facc5 --- /dev/null +++ b/StandardPda/MES.Service/Dto/service/MesPalletBinding.cs @@ -0,0 +1,50 @@ +锘縩amespace MES.Service.Dto.service +{ + /// <summary> + /// 鏍堟澘缁戝畾琛� + /// </summary> + public class MesPalletBinding + { + + /// <summary> + /// 鎿嶄綔锛欰缁戝畾锛孎瑙g粦 + /// </summary> + public string Type { get; set; } + /// <summary> + /// 鏍堟澘鐮� + /// </summary> + public string StackCode { get; set; } + + /// <summary> + /// 鐧诲綍鍙� + /// </summary> + public string LoginId { get; set; } + + /// <summary> + /// sn鍒楄〃 + /// </summary> + public List<snList1> SnList { get; set; } + public class snList1 + { + /// <summary> + /// SN鍙� + /// </summary> + public string SnNo { get; set; } + + /// <summary> + /// 宸ュ崟鍗曞彿 + /// </summary> + public string TicketNo { get; set; } + + /// <summary> + /// 涓鐮� + /// </summary> + public string? MediumBoxCode { get; set; } + } + + + } + + + +} diff --git a/StandardPda/MES.Service/Dto/service/SJPageResult.cs b/StandardPda/MES.Service/Dto/service/SJPageResult.cs index 0064430..3d59644 100644 --- a/StandardPda/MES.Service/Dto/service/SJPageResult.cs +++ b/StandardPda/MES.Service/Dto/service/SJPageResult.cs @@ -82,4 +82,28 @@ /// </summary> [SugarColumn(ColumnName = "DAA008")] public decimal? Daa008 { get; set; } + + /// <summary> + /// 鎻愪氦鐘舵�� + /// </summary> + [SugarColumn(ColumnName = "FSUBMIT")] + public decimal? FSubmit { get; set; } + + /// <summary> + /// 鎻愪氦浜� + /// </summary> + [SugarColumn(ColumnName = "FSUBMIT_BY")] + public string? FSubmitBy { get; set; } + + /// <summary> + /// 鎻愪氦鏃堕棿 + /// </summary> + [SugarColumn(ColumnName = "FSUBMIT_DATE")] + public DateTime? FSubmitDate { get; set; } + + /// <summary> + /// 宸ュ崟缂栧彿 + /// </summary> + [SugarColumn(ColumnName = "MOID_NUM")] + public string? MoidNum { get; set; } } \ No newline at end of file diff --git a/StandardPda/MES.Service/Dto/webApi/ErpSalesDelivery.cs b/StandardPda/MES.Service/Dto/webApi/ErpSalesDelivery.cs new file mode 100644 index 0000000..a6559c8 --- /dev/null +++ b/StandardPda/MES.Service/Dto/webApi/ErpSalesDelivery.cs @@ -0,0 +1,10 @@ +锘縰sing MES.Service.Modes; + +namespace MES.Service.Dto.webApi; + +public class ErpSalesDelivery +{ + public ErpSalesDeliveryDto OrderDto { get; set; } + + public List<ErpSalesDeliveryDetailDto> Items { get; set; } +} \ No newline at end of file diff --git a/StandardPda/MES.Service/Dto/webApi/ErpSalesDeliveryDetailDto.cs b/StandardPda/MES.Service/Dto/webApi/ErpSalesDeliveryDetailDto.cs new file mode 100644 index 0000000..5b8aae6 --- /dev/null +++ b/StandardPda/MES.Service/Dto/webApi/ErpSalesDeliveryDetailDto.cs @@ -0,0 +1,225 @@ +锘縩amespace MES.Service.Dto.webApi; + +public class ErpSalesDeliveryDetailDto +{ + /// <summary> + /// 鐗╂枡缂栫爜 + /// </summary> + public string? FMaterialId { get; set; } + + /// <summary> + /// 閿�鍞崟浣� + /// </summary> + public string? FUnitID { get; set; } + + /// <summary> + /// 閿�鍞暟閲� + /// </summary> + public string? FQty { get; set; } + + /// <summary> + /// 瑕佽揣鏃ユ湡 + /// </summary> + public string? FDeliveryDate { get; set; } + + /// <summary> + /// 婧愬崟鍗曞彿 + /// </summary> + public string? FSrcBillNo { get; set; } + + /// <summary> + /// ERPID + /// </summary> + public string? ErpID { get; set; } + + /// <summary> + /// ERP澶碔D + /// </summary> + public string? EHID { get; set; } + + /// <summary> + /// 瀹㈡埛鐗╂枡缂栫爜1 + /// </summary> + public string? FMapId { get; set; } + + /// <summary> + /// 瀹㈡埛鐗╂枡鍚嶇О + /// </summary> + public string? FMapName { get; set; } + + // /// <summary> + // /// 瀹㈡埛鐗╂枡瑙勬牸鍨嬪彿 + // /// </summary> + // public string? FMapSpec { get; set; } // 娉ㄩ噴鎺夌殑瀛楁 + + /// <summary> + /// 浜よ揣鍦扮偣 + /// </summary> + public string? FDeliveryLoc { get; set; } + + /// <summary> + /// 浜よ揣鍦板潃 + /// </summary> + public string? FDeliveryLAddress { get; set; } + + /// <summary> + /// 璁″垝鍑鸿揣鏃� + /// </summary> + public string? FPlanDeliveryDate { get; set; } + + /// <summary> + /// 璐т富缁勭粐 + /// </summary> + public string? FOwnerIdHead { get; set; } + + /// <summary> + /// 瀹㈡埛鏂欏彿2 + /// </summary> + public string? FMapId2 { get; set; } + + /// <summary> + /// 椤圭洰 + /// </summary> + public string? FProject { get; set; } + + /// <summary> + /// 瀛樺偍鍦扮偣 + /// </summary> + public string? FStorageLocation { get; set; } + + /// <summary> + /// 鍏嶈垂鍝佺被鍨� + /// </summary> + public string? FFreeItemType { get; set; } + + /// <summary> + /// 琛ㄤ綋澶囨敞 + /// </summary> + public string? FBodyNote { get; set; } + + /// <summary> + /// 搴撳瓨鍙敤閲� + /// </summary> + public decimal? FAvailableStock { get; set; } + + /// <summary> + /// 鏌ヨ搴撳瓨鏃堕棿 + /// </summary> + public string? FInventoryQueryTime { get; set; } + + /// <summary> + /// 琛岀姸鎬� + /// </summary> + public string? FLineStatus { get; set; } + + /// <summary> + /// 鏀惰揣鍦板潃鍏ㄧО + /// </summary> + public string? FReceiveAddressFull { get; set; } + + /// <summary> + /// 鏀惰揣鑱旂郴浜� + /// </summary> + public string? FReceiverContact { get; set; } + + /// <summary> + /// 鍙��鎹� + /// </summary> + public string? FReturnExchangeAllowed { get; set; } + + /// <summary> + /// 濮斿鍔犲伐浠舵暟閲� + /// </summary> + public decimal? FOutsourcedProcessQty { get; set; } + + /// <summary> + /// 鍙敤鏃ユ湡 + /// </summary> + public string? FAvailableDate { get; set; } + + /// <summary> + /// 鎵胯鏃ユ湡 + /// </summary> + public string? FCommitmentDate { get; set; } + + /// <summary> + /// 瀹㈡埛纭鍑鸿揣鏃� + /// </summary> + public string? FCustomerConfirmShipDate { get; set; } + + /// <summary> + /// 璁″垝缁勭粐 + /// </summary> + public string? FPlannedOrg { get; set; } + + /// <summary> + /// 渚涘簲鍟嗙洿杩� + /// </summary> + public string? FVendorDirectShip { get; set; } + + /// <summary> + /// 渚涘簲鏉ユ簮 + /// </summary> + public string? FSupplySource { get; set; } + + /// <summary> + /// 渚涘簲绫诲瀷 + /// </summary> + public string? FSupplyType { get; set; } + + /// <summary> + /// 渚涘簲缁勭粐 + /// </summary> + public string? FSupplyOrg { get; set; } + + /// <summary> + /// 渚涘簲鍟� + /// </summary> + public string? FSupplier { get; set; } + + /// <summary> + /// 鍑鸿揣鏂瑰紡 + /// </summary> + public string? FShippingMethod { get; set; } + + /// <summary> + /// MRP/DRP闇�姹� + /// </summary> + public string? FMRPDR { get; set; } + + /// <summary> + /// 闇�姹傚垎绫� + /// </summary> + public string? FDemandCategory { get; set; } + + /// <summary> + /// 搴撳瓨瑙勫垝 + /// </summary> + public string? FInventoryPlanning { get; set; } + + /// <summary> + /// 琛屽娉� + /// </summary> + public string? FLineRemark { get; set; } + + /// <summary> + /// 鏉ユ簮鍗曟嵁绫诲埆 + /// </summary> + public string? FSourceDocCategory { get; set; } + + /// <summary> + /// 鏉ユ簮鍗曞彿 + /// </summary> + public string? FSourceDocNo { get; set; } + + /// <summary> + /// 鏉ユ簮鍗曡鍙� + /// </summary> + public decimal? FSourceDocLineNo { get; set; } + + /// <summary> + /// 琛屽彿 + /// </summary> + public string? FLINE_NO { get; set; } + +} \ No newline at end of file diff --git a/StandardPda/MES.Service/Dto/webApi/ErpSalesDeliveryDto.cs b/StandardPda/MES.Service/Dto/webApi/ErpSalesDeliveryDto.cs new file mode 100644 index 0000000..29259bd --- /dev/null +++ b/StandardPda/MES.Service/Dto/webApi/ErpSalesDeliveryDto.cs @@ -0,0 +1,153 @@ +锘縩amespace MES.Service.Dto.webApi; + +public class ErpSalesDeliveryDto +{ + /// <summary> + /// 鎺ュ彛绫诲瀷 + /// </summary> + public string? Type { get; set; } + + /// <summary> + /// ERPID + /// </summary> + public string? ErpID { get; set; } + + /// <summary> + /// 鍗曟嵁缂栧彿 + /// </summary> + public string? FBillNo { get; set; } + + /// <summary> + /// 鍗曟嵁绫诲瀷 + /// </summary> + public string? FBillTypeID { get; set; } + + /// <summary> + /// 鍗曟嵁鐘舵�� + /// </summary> + public string? FDocumentStatus { get; set; } + + /// <summary> + /// 鍗曟嵁鏃ユ湡 + /// </summary> + public string? FDate { get; set; } + + /// <summary> + /// 闇�姹傚垎绫� + /// </summary> + public string? FBusinessType { get; set; } + + /// <summary> + /// 浜よ揣鏂瑰紡 + /// </summary> + public string? FHeadDeliveryWay { get; set; } + + /// <summary> + /// 浜よ揣鍦扮偣 + /// </summary> + public string? FHEADLOCID { get; set; } + + /// <summary> + /// 瀹㈡埛 + /// </summary> + public string? FCustId { get; set; } + + /// <summary> + /// 閿�鍞儴闂� + /// </summary> + public string? FSaleDeptId { get; set; } + + /// <summary> + /// 閿�鍞憳 + /// </summary> + public string? FSalerId { get; set; } + + /// <summary> + /// 澶囨敞 + /// </summary> + public string? FNote { get; set; } + + /// <summary> + /// 瀹℃牳浜� + /// </summary> + public string? FApproverId { get; set; } + + /// <summary> + /// 鍒涘缓鏃ユ湡 + /// </summary> + public string? FCreateDate { get; set; } + + /// <summary> + /// 瀹℃牳鏃ユ湡 + /// </summary> + public string? FApproveDate { get; set; } + + /// <summary> + /// 鐗堟湰鍙� + /// </summary> + public string? FVersionNo { get; set; } + + /// <summary> + /// 琛ㄥご澶囨敞 + /// </summary> + public string? FEntryNote { get; set; } + + /// <summary> + /// 鏀惰揣鏂瑰湴鍧� + /// </summary> + public string? FReceiveAddress { get; set; } + + /// <summary> + /// 鏀惰揣鑱旂郴浜� + /// </summary> + public string? FReceiverContactID { get; set; } + + /// <summary> + /// 鍙戣揣缁勭粐 + /// </summary> + public string? FDeliveryOrgID { get; set; } + + //----------------浠ヤ笅涓烘柊澧炲瓧娈�--------------------------------- + + /// <summary> + /// 鏉ユ簮绫诲埆 + /// </summary> + public string FSourceCategory { get; set; } + + /// <summary> + /// 鏉ユ簮鍗曟嵁 + /// </summary> + public string FSourceDocument { get; set; } + + /// <summary> + /// 浜ゆ湡 + /// </summary> + public string? FDeliveryDate { get; set; } + + /// <summary> + /// 椤圭洰 + /// </summary> + public string FProject { get; set; } + + /// <summary> + /// 瀹㈡埛閲囪喘璁㈠崟 + /// </summary> + public string FCustomerPo { get; set; } + + /// <summary> + /// 鍑鸿揣鍘熷垯 + /// </summary> + public string FShippingPolicy { get; set; } + + /// <summary> + /// 瑁呰繍娓� + /// </summary> + public string FShippingPort { get; set; } + + /// <summary> + /// 鐩殑娓� + /// </summary> + public string FDestinationPort { get; set; } + + +} \ No newline at end of file diff --git a/StandardPda/MES.Service/Dto/webApi/ErpSalesOrdeDetailDto.cs b/StandardPda/MES.Service/Dto/webApi/ErpSalesOrdeDetailDto.cs new file mode 100644 index 0000000..3e6a40e --- /dev/null +++ b/StandardPda/MES.Service/Dto/webApi/ErpSalesOrdeDetailDto.cs @@ -0,0 +1,108 @@ +锘縩amespace MES.Service.Dto.webApi +{ + /// <summary> + /// ERP 閿�鍞鍗曟槑缁嗕紶杈撳璞� + /// </summary> + public class ErpSalesOrderDetailDto + { + /// <summary> + /// 鐗╂枡缂栫爜 + /// </summary> + public string? FMaterialId { get; set; } + + /// <summary> + /// 閿�鍞暟閲� + /// </summary> + public string? FQty { get; set; } + + /// <summary> + /// 璁′环鍗曚綅 + /// </summary> + public string? FPriceUnitId { get; set; } + + /// <summary> + /// 瑕佽揣鏃ユ湡 + /// </summary> + public string? FDeliveryDate { get; set; } + + /// <summary> + /// 璐т富 + /// </summary> + public string? FOwnerId { get; set; } + + /// <summary> + /// 澶囨敞 + /// </summary> + public string? FEntryNote { get; set; } + + /// <summary> + /// 鎵瑰彿 + /// </summary> + public string? FLot { get; set; } + + /// <summary> + /// ERP ID + /// </summary> + public string? ErpID { get; set; } + + /// <summary> + /// ERP 澶� ID + /// </summary> + public string? EHID { get; set; } + + /// <summary> + /// 瀹㈡埛鐗╂枡缂栫爜 + /// </summary> + public string? FMapId { get; set; } + + /// <summary> + /// 琛屽彿 + /// </summary> + public string? FLineNo { get; set; } + + /// <summary> + /// 琛岀姸鎬� + /// </summary> + public string? FLineStatus { get; set; } + + /// <summary> + /// 鎵╁睍瀛楁 + /// </summary> + public string? FExtendField { get; set; } + + /// <summary> + /// 瀹㈡埛 + /// </summary> + public string? FCustomer { get; set; } + + /// <summary> + /// 鏀惰揣浣嶇疆 + /// </summary> + public string? FReceiveLocation { get; set; } + + /// <summary> + /// 渚涘簲缁勭粐 + /// </summary> + public string? FSupplyOrg { get; set; } + + /// <summary> + /// 閮ㄩ棬 + /// </summary> + public string? FDepartment { get; set; } + + /// <summary> + /// 涓氬姟鍛� + /// </summary> + public string? FSalesPerson { get; set; } + + /// <summary> + /// 椤圭洰 + /// </summary> + public string? FProject { get; set; } + + /// <summary> + /// 闇�姹傚垎绫� + /// </summary> + public string? FDemandCategory { get; set; } + } +} diff --git a/StandardPda/MES.Service/Dto/webApi/ErpSalesOrder.cs b/StandardPda/MES.Service/Dto/webApi/ErpSalesOrder.cs new file mode 100644 index 0000000..c9849e6 --- /dev/null +++ b/StandardPda/MES.Service/Dto/webApi/ErpSalesOrder.cs @@ -0,0 +1,8 @@ +锘縩amespace MES.Service.Dto.webApi; + +public class ErpSalesOrder +{ + public ErpSalesOrderDto OrderDto { get; set; } + + public List<ErpSalesOrderDetailDto> Items { get; set; } +} \ No newline at end of file diff --git a/StandardPda/MES.Service/Dto/webApi/ErpSalesOrderDto.cs b/StandardPda/MES.Service/Dto/webApi/ErpSalesOrderDto.cs new file mode 100644 index 0000000..044c427 --- /dev/null +++ b/StandardPda/MES.Service/Dto/webApi/ErpSalesOrderDto.cs @@ -0,0 +1,78 @@ +锘縩amespace MES.Service.Dto.webApi +{ + /// <summary> + /// ERP 閿�鍞鍗曚紶杈撳璞� + /// </summary> + public class ErpSalesOrderDto + { + /// <summary> + /// 绫诲瀷 + /// </summary> + public string? Type { get; set; } + + /// <summary> + /// ERP ID + /// </summary> + public string? ErpID { get; set; } + + /// <summary> + /// 鍗曟嵁缂栧彿 + /// </summary> + public string? FBillNo { get; set; } + + /// <summary> + /// 鍗曟嵁绫诲瀷 + /// </summary> + public string? FBillTypeID { get; set; } + + /// <summary> + /// 鍗曟嵁鐘舵�� + /// </summary> + public string? FDocumentStatus { get; set; } + + /// <summary> + /// 鍗曟嵁鏃ユ湡 + /// </summary> + public string? FDate { get; set; } + + /// <summary> + /// 瀹㈡埛 + /// </summary> + public string? FCustId { get; set; } + + /// <summary> + /// 閿�鍞儴闂� + /// </summary> + public string? FSaleDeptId { get; set; } + + /// <summary> + /// 澶囨敞 + /// </summary> + public string? FEntryNote { get; set; } + + /// <summary> + /// 涓氬姟鍛� + /// </summary> + public string? FSalesPerson { get; set; } + + /// <summary> + /// 椤圭洰 + /// </summary> + public string? FProject { get; set; } + + /// <summary> + /// 闇�姹傚垎绫� + /// </summary> + public string? FDemandCategory { get; set; } + + /// <summary> + /// 璧峰鏃ユ湡 + /// </summary> + public string? FStartDate { get; set; } + + /// <summary> + /// 鎴鏃ユ湡 + /// </summary> + public string? FEndDate { get; set; } + } +} diff --git a/StandardPda/MES.Service/Dto/webApi/ErpSalesReturn.cs b/StandardPda/MES.Service/Dto/webApi/ErpSalesReturn.cs new file mode 100644 index 0000000..9a03469 --- /dev/null +++ b/StandardPda/MES.Service/Dto/webApi/ErpSalesReturn.cs @@ -0,0 +1,10 @@ +锘縰sing MES.Service.Modes; + +namespace MES.Service.Dto.webApi; + +public class ErpSalesRerurn +{ + public ErpSalesReturnDto OrderDto { get; set; } + + public List<ErpSalesReturnDetailDto> Items { get; set; } +} \ No newline at end of file diff --git a/StandardPda/MES.Service/Dto/webApi/ErpSalesReturnDetailDto.cs b/StandardPda/MES.Service/Dto/webApi/ErpSalesReturnDetailDto.cs new file mode 100644 index 0000000..e7c66ca --- /dev/null +++ b/StandardPda/MES.Service/Dto/webApi/ErpSalesReturnDetailDto.cs @@ -0,0 +1,148 @@ +锘縩amespace MES.Service.Dto.webApi +{ + /// <summary> + /// ERP閿�鍞��璐ф槑缁咲TO + /// </summary> + public class ErpSalesReturnDetailDto + { + /// <summary> + /// 鐗╂枡缂栫爜 + /// </summary> + public string? FMaterialId { get; set; } + + /// <summary> + /// 閿�鍞暟閲� + /// </summary> + public string? FQty { get; set; } + + /// <summary> + /// 浠撳簱锛堝瓨鍌ㄥ湴鐐癸級 + /// </summary> + public string? FStockId { get; set; } + + /// <summary> + /// 鎵瑰彿 + /// </summary> + public string? FLot { get; set; } + + /// <summary> + /// 澶囨敞 + /// </summary> + public string? FEntryDescription { get; set; } + + /// <summary> + /// 璐т富 + /// </summary> + public string? FOwnerId { get; set; } + + /// <summary> + /// 婧愬崟绫诲瀷 + /// </summary> + public string? FSrcType { get; set; } + + /// <summary> + /// 婧愬崟缂栧彿 + /// </summary> + public string? FSrcBillNo { get; set; } + + /// <summary> + /// 璁㈠崟鍗曞彿 + /// </summary> + public string? FOrderNo { get; set; } + + /// <summary> + /// ERP ID + /// </summary> + public string? ErpID { get; set; } + + /// <summary> + /// ERP澶碔D + /// </summary> + public string? EHID { get; set; } + + /// <summary> + /// 琛屽彿 + /// </summary> + public int? FLineNumber { get; set; } + + /// <summary> + /// 琛岀姸鎬� + /// </summary> + public string FLineStatus { get; set; } + + /// <summary> + /// 閫�娆惧鎴� + /// </summary> + public string FRefundCustomer { get; set; } + + /// <summary> + /// 渚涘簲鍟� + /// </summary> + public string FSupplier { get; set; } + + /// <summary> + /// 鍏嶈垂鍝佺被鍨� + /// </summary> + public string FFreebieType { get; set; } + + /// <summary> + /// 鍏嶈垂鍝佸師鍥� + /// </summary> + public string FFreebieReason { get; set; } + + /// <summary> + /// 婧愬ご鍗曟嵁琛屽彿 + /// </summary> + public int? FSourceDocLineNo { get; set; } + + /// <summary> + /// 婧愬ご鍗曟嵁瀛愯鍙� + /// </summary> + public int? FSourceDocSubLineNo { get; set; } + + /// <summary> + /// 鏉ユ簮鍗曟嵁绫诲埆 + /// </summary> + public string FSourceDocType { get; set; } + + /// <summary> + /// 婧愬崟鎹鍙� + /// </summary> + public int? FOriginalDocLineNo { get; set; } + + /// <summary> + /// 琛ヨ揣缁勭粐 + /// </summary> + public string FReplenishOrg { get; set; } + + /// <summary> + /// 鏀惰揣缁勭粐 + /// </summary> + public string FReceivingOrg { get; set; } + + /// <summary> + /// 鍘熶笟鍔″憳 + /// </summary> + public string FOriginalSalesman { get; set; } + + /// <summary> + /// 鍘熼儴闂� + /// </summary> + public string FOriginalDept { get; set; } + + /// <summary> + /// 椤圭洰 + /// </summary> + public string FProject { get; set; } + + /// <summary> + /// 閫�璐у師鍥� + /// </summary> + public string FReturnReason { get; set; } + + /// <summary> + /// 閫�璐ц鏄� + /// </summary> + public string FReturnDescription { get; set; } + } +} diff --git a/StandardPda/MES.Service/Dto/webApi/ErpSalesReturnDto.cs b/StandardPda/MES.Service/Dto/webApi/ErpSalesReturnDto.cs new file mode 100644 index 0000000..bc3acca --- /dev/null +++ b/StandardPda/MES.Service/Dto/webApi/ErpSalesReturnDto.cs @@ -0,0 +1,128 @@ +锘縩amespace MES.Service.Dto.webApi +{ + /// <summary> + /// ERP閿�鍞��璐TO + /// </summary> + public class ErpSalesReturnDto + { + /// <summary> + /// 绫诲瀷 + /// </summary> + public string? Type { get; set; } + + /// <summary> + /// ERP ID + /// </summary> + public string? ErpID { get; set; } + + /// <summary> + /// 鍗曟嵁绫诲瀷 + /// </summary> + public string? FBillTypeID { get; set; } + + /// <summary> + /// 鍗曟嵁缂栧彿 + /// </summary> + public string? FBillNo { get; set; } + + /// <summary> + /// 鏃ユ湡 + /// </summary> + public string? FDate { get; set; } + + /// <summary> + /// 閫�璐у鎴� + /// </summary> + public string? FRetcustId { get; set; } + + /// <summary> + /// 閫�璐у師鍥� + /// </summary> + public string? FRetcustReason { get; set; } + + /// <summary> + /// 浜よ揣鍦扮偣 + /// </summary> + public string? FHeadLocId { get; set; } + + /// <summary> + /// 鏀惰揣鏂硅仈绯讳汉 + /// </summary> + public string? FReceiveCusContact { get; set; } + + /// <summary> + /// 鏀惰揣鏂瑰湴鍧� + /// </summary> + public string? FReceiveAddress { get; set; } + + /// <summary> + /// 鍒涘缓浜� + /// </summary> + public string? FCreatorId { get; set; } + + /// <summary> + /// 鍒涘缓鏃ユ湡 + /// </summary> + public string? FCreateDate { get; set; } + + /// <summary> + /// 瀹℃牳浜� + /// </summary> + public string? FApproverId { get; set; } + + /// <summary> + /// 瀹℃牳鏃ユ湡 + /// </summary> + public string? FApproveDate { get; set; } + + /// <summary> + /// 鍗曟嵁鐘舵�� + /// </summary> + public string? FDocumentStatus { get; set; } + + /// <summary> + /// 閫�鍥炵被鍨� + /// </summary> + public string ReturnType { get; set; } + + /// <summary> + /// 鎬绘暟閲� + /// </summary> + public decimal TotalQuantity { get; set; } + + /// <summary> + /// 鏉ユ簮鍗曟嵁绫诲埆 + /// </summary> + public string SourceDocumentCategory { get; set; } + + /// <summary> + /// 婧愬崟鎹� + /// </summary> + public string SourceDocument { get; set; } + + /// <summary> + /// 琛ヨ揣缁勭粐 + /// </summary> + public string ReplenishmentOrganization { get; set; } + + /// <summary> + /// 瀹㈡埛瑕佹眰鏃ユ湡 + /// </summary> + public DateTime CustomerRequestDate { get; set; } + + /// <summary> + /// 閫�璐т笟鍔″憳 + /// </summary> + public string ReturnSalesman { get; set; } + + /// <summary> + /// 閫�璐ч儴闂� + /// </summary> + public string ReturnDepartment { get; set; } + + /// <summary> + /// 閫�璐ц鏄� + /// </summary> + public string ReturnDescription { get; set; } + } +} diff --git a/StandardPda/MES.Service/Modes/MesItemQtDatall.cs b/StandardPda/MES.Service/Modes/MesItemQtDatall.cs index 2447ff3..a9e9f10 100644 --- a/StandardPda/MES.Service/Modes/MesItemQtDatall.cs +++ b/StandardPda/MES.Service/Modes/MesItemQtDatall.cs @@ -115,5 +115,8 @@ [SugarColumn(ColumnName = "FINISHED_PRODUCT")] [Description("浜ф垚鍝佺紪鐮�")] public string FinishedProduct { get; set; } + [SugarColumn(ColumnName = "PICKING_USAGE")] + [Description("棰嗘枡鐢ㄩ��")] + public string PickingUsage { get; set; } } } \ No newline at end of file diff --git a/StandardPda/MES.Service/Modes/QsItemIpiReq.cs b/StandardPda/MES.Service/Modes/QsItemIpiReq.cs index 0daac60..028b009 100644 --- a/StandardPda/MES.Service/Modes/QsItemIpiReq.cs +++ b/StandardPda/MES.Service/Modes/QsItemIpiReq.cs @@ -12,139 +12,147 @@ public class QsItemIpiReq { /// <summary> - /// 棣栨鍗曞彿 - /// </summary> - [Column("BILL_NO")] - [SugarColumn(ColumnName = "BILL_NO")] //鐢ㄤ簬SqlSugar - [StringLength(50, ErrorMessage = "棣栨鍗曞彿闀垮害涓嶈兘瓒呭嚭50")] - public string? BillNo { get; set; } - - /// <summary> - /// 澶囨敞 - /// </summary> - [Column("COMMENTS")] - [SugarColumn(ColumnName = "COMMENTS")] //鐢ㄤ簬SqlSugar - [StringLength(500, ErrorMessage = "澶囨敞闀垮害涓嶈兘瓒呭嚭500")] - public string? Comments { get; set; } - - /// <summary> - /// 瀹屾垚鏃堕棿 - /// </summary> - [Column("COMPLETE_TIME")] - [SugarColumn(ColumnName = "COMPLETE_TIME")] //鐢ㄤ簬SqlSugar - public DateTime? CompleteTime { get; set; } - - /// <summary> - /// 鍒涘缓鏃堕棿 - /// </summary> - [Column("CREATE_TIME")] - [SugarColumn(ColumnName = "CREATE_TIME")] //鐢ㄤ簬SqlSugar - public DateTime? CreateTime { get; set; } - - /// <summary> - /// 搴忓垪SEQ_QS_IPI - /// </summary> - [Column("ID")] + /// + ///</summary> [SugarColumn(IsPrimaryKey = true, OracleSequenceName = "SEQ_QS_IPI", ColumnName = "ID")] public decimal? Id { get; set; } /// <summary> - /// 0琛ㄧず涓嶅悎鏍�,1琛ㄧず鍚堟牸 - /// </summary> - [Column("IS_PASS")] - [SugarColumn(ColumnName = "IS_PASS")] //鐢ㄤ簬SqlSugar - public decimal? IsPass { get; set; } + /// + ///</summary> + [SugarColumn(ColumnName = "BILL_NO")] + public string BillNo { get; set; } /// <summary> - /// 浜у搧瑙勬牸 - /// </summary> - [Column("ITEM_MOD")] - [SugarColumn(ColumnName = "ITEM_MOD")] //鐢ㄤ簬SqlSugar - [StringLength(1000, ErrorMessage = "浜у搧瑙勬牸闀垮害涓嶈兘瓒呭嚭1000")] - public string? ItemMod { get; set; } + /// + ///</summary> + [SugarColumn(ColumnName = "ITEM_NO")] + public string ItemNo { get; set; } /// <summary> - /// 浜у搧鍚� - /// </summary> - [Column("ITEM_NAME")] - [SugarColumn(ColumnName = "ITEM_NAME")] //鐢ㄤ簬SqlSugar - [StringLength(200, ErrorMessage = "浜у搧鍚嶉暱搴︿笉鑳借秴鍑�200")] - public string? ItemName { get; set; } + /// + ///</summary> + [SugarColumn(ColumnName = "ITEM_NAME")] + public string ItemName { get; set; } /// <summary> - /// 浜у搧缂栧彿 - /// </summary> - [Column("ITEM_NO")] - [SugarColumn(ColumnName = "ITEM_NO")] //鐢ㄤ簬SqlSugar - [StringLength(50, ErrorMessage = "浜у搧缂栧彿闀垮害涓嶈兘瓒呭嚭50")] - public string? ItemNo { get; set; } + /// + ///</summary> + [SugarColumn(ColumnName = "ITEM_MOD")] + public string ItemMod { get; set; } /// <summary> - /// 浜х嚎 - /// </summary> - [Column("LINE")] - [SugarColumn(ColumnName = "LINE")] //鐢ㄤ簬SqlSugar - [StringLength(50, ErrorMessage = "浜х嚎闀垮害涓嶈兘瓒呭嚭50")] - public string? Line { get; set; } + /// + ///</summary> + [SugarColumn(ColumnName = "LINE")] + public string Line { get; set; } /// <summary> - /// 浜х嚎鍚� - /// </summary> - [Column("LINE_NAME")] - [SugarColumn(ColumnName = "LINE_NAME")] //鐢ㄤ簬SqlSugar - [StringLength(50, ErrorMessage = "浜х嚎鍚嶉暱搴︿笉鑳借秴鍑�50")] - public string? LineName { get; set; } + /// + ///</summary> + [SugarColumn(ColumnName = "LINE_NAME")] + public string LineName { get; set; } /// <summary> - /// 鎺掍骇鍗曞彿 - /// </summary> - [Column("PBAID")] - [SugarColumn(ColumnName = "PBAID")] //鐢ㄤ簬SqlSugar - public decimal? Pbaid { get; set; } + /// + ///</summary> + [SugarColumn(ColumnName = "WORKSHOP_CODE")] + public string WorkshopCode { get; set; } /// <summary> - /// 瀹℃牳鏃ユ湡 - /// </summary> - [Column("STATUS_DATE")] - [SugarColumn(ColumnName = "STATUS_DATE")] //鐢ㄤ簬SqlSugar + /// + ///</summary> + [SugarColumn(ColumnName = "WORKSHOP_NAME")] + public string WorkshopName { get; set; } + + /// <summary> + /// + ///</summary> + [SugarColumn(ColumnName = "STATUS_USER")] + public string StatusUser { get; set; } + + /// <summary> + /// + ///</summary> + [SugarColumn(ColumnName = "STATUS_DATE")] public DateTime? StatusDate { get; set; } /// <summary> - /// 瀹℃牳浜� - /// </summary> - [Column("STATUS_USER")] - [SugarColumn(ColumnName = "STATUS_USER")] //鐢ㄤ簬SqlSugar - [StringLength(50, ErrorMessage = "瀹℃牳浜洪暱搴︿笉鑳借秴鍑�50")] - public string? StatusUser { get; set; } + /// + ///</summary> + [SugarColumn(ColumnName = "COMMENTS")] + public string Comments { get; set; } /// <summary> - /// 杞﹂棿缂栫爜 - /// </summary> - [Column("WORKSHOP_CODE")] - [SugarColumn(ColumnName = "WORKSHOP_CODE")] //鐢ㄤ簬SqlSugar - [StringLength(50, ErrorMessage = "杞﹂棿缂栫爜闀垮害涓嶈兘瓒呭嚭50")] - public string? WorkshopCode { get; set; } + /// + ///</summary> + [SugarColumn(ColumnName = "IS_PASS")] + public short? IsPass { get; set; } /// <summary> - /// 杞﹂棿鍚� - /// </summary> - [Column("WORKSHOP_NAME")] - [SugarColumn(ColumnName = "WORKSHOP_NAME")] //鐢ㄤ簬SqlSugar - [StringLength(50, ErrorMessage = "杞﹂棿鍚嶉暱搴︿笉鑳借秴鍑�50")] - public string? WorkshopName { get; set; } - + /// + ///</summary> + [SugarColumn(ColumnName = "CREATE_TIME")] + public DateTime? CreateTime { get; set; } /// <summary> - /// 妯″叿鍙� - /// </summary> - [Column("MOID_NUM")] - [SugarColumn(ColumnName = "MOID_NUM")] //鐢ㄤ簬SqlSugar - [StringLength(50, ErrorMessage = "妯″叿鍙烽暱搴︿笉鑳借秴鍑�50")] - public string? MoidNum { get; set; } + /// + ///</summary> + [SugarColumn(ColumnName = "COMPLETE_TIME")] + public DateTime? CompleteTime { get; set; } - [Column("Remarks")] - [SugarColumn(ColumnName = "Remarks")] //鐢ㄤ簬SqlSugar - [StringLength(200, ErrorMessage = "澶囨敞涓嶈兘瓒呭嚭200")] - public string? Remarks { get; set; } + /// <summary> + /// + ///</summary> + [SugarColumn(ColumnName = "PBAID")] + public decimal? Pbaid { get; set; } + + /// <summary> + /// + ///</summary> + [SugarColumn(ColumnName = "MOID_NUM")] + public string MoidNum { get; set; } + + /// <summary> + /// + ///</summary> + [SugarColumn(ColumnName = "FSUBMIT_BY")] + public string FsubmitBy { get; set; } + + /// <summary> + /// + ///</summary> + [SugarColumn(ColumnName = "FSUBMIT_DATE")] + public DateTime? FsubmitDate { get; set; } + + /// <summary> + /// + ///</summary> + [SugarColumn(ColumnName = "FSUBMIT")] + public decimal? Fsubmit { get; set; } + + /// <summary> + /// + ///</summary> + [SugarColumn(ColumnName = "STATUS")] + public short? Status { get; set; } + + /// <summary> + /// + ///</summary> + [SugarColumn(ColumnName = "REMARKS")] + public string Remarks { get; set; } + + /// <summary> + /// 鐗╂枡ID + ///</summary> + [SugarColumn(ColumnName = "ITEM_ID")] + public decimal? ItemId { get; set; } + + /// <summary> + /// 鍒涘缓浜� + ///</summary> + [SugarColumn(ColumnName = "CREATE_BY")] + public string CreateBy { get; set; } } \ No newline at end of file diff --git a/StandardPda/MES.Service/Modes/SalesDeliveryNotice.cs b/StandardPda/MES.Service/Modes/SalesDeliveryNotice.cs new file mode 100644 index 0000000..65e2e46 --- /dev/null +++ b/StandardPda/MES.Service/Modes/SalesDeliveryNotice.cs @@ -0,0 +1,324 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using SqlSugar; +namespace MES.Service.Modes +{ + /// <summary> + /// 閿�鍞彂璐ч�氱煡鍗� + ///</summary> + [SugarTable("SALES_DELIVERY_NOTICE")] + public class SalesDeliveryNotice + { + /// <summary> + /// + ///</summary> + [SugarColumn(ColumnName="ID", OracleSequenceName = "SALES_DELIVERY_NOTICE_ID", IsPrimaryKey = true)] + public decimal? Id { get; set; } + /// <summary> + /// 鍗曟嵁绫诲瀷 + ///</summary> + [SugarColumn(ColumnName="BILL_TYPE" )] + public string BillType { get; set; } + /// <summary> + /// 鍗曟嵁缂栧彿 + ///</summary> + [SugarColumn(ColumnName="BILL_NO" )] + public string BillNo { get; set; } + /// <summary> + /// 鏃ユ湡 + ///</summary> + [SugarColumn(ColumnName="F_DATE" )] + public DateTime? FDate { get; set; } + /// <summary> + /// 缁撶畻甯佸埆 + ///</summary> + [SugarColumn(ColumnName="CURRENCY" )] + public string? Currency { get; set; } + /// <summary> + /// 閿�鍞粍缁� + ///</summary> + [SugarColumn(ColumnName="SALES_ORG" )] + public string? SalesOrg { get; set; } + /// <summary> + /// 閿�鍞儴闂� + ///</summary> + [SugarColumn(ColumnName="SALES_DEPT" )] + public string? SalesDept { get; set; } + /// <summary> + /// 瀹㈡埛璁㈠崟 + ///</summary> + [SugarColumn(ColumnName="CUSTOMER_ORDER_NO" )] + public string? CustomerOrderNo { get; set; } + /// <summary> + /// 瀹㈡埛 + ///</summary> + [SugarColumn(ColumnName="CUSTOMER" )] + public string? Customer { get; set; } + + /// <summary> + /// 浜よ揣鏂瑰紡 + ///</summary> + [SugarColumn(ColumnName="DELIVERY_METHOD" )] + public string? DeliveryMethod { get; set; } + /// <summary> + /// 浜よ揣鍦扮偣 + ///</summary> + [SugarColumn(ColumnName="DELIVERY_LOCATION" )] + public string? DeliveryLocation { get; set; } + /// <summary> + /// 鎵胯繍鍟� + ///</summary> + [SugarColumn(ColumnName="CARRIER" )] + public string? Carrier { get; set; } + /// <summary> + /// 杩愯緭鍗曞彿 + ///</summary> + [SugarColumn(ColumnName="TRANSPORT_NO" )] + public string? TransportNo { get; set; } + /// <summary> + /// 鍗曟嵁鐘舵�� + ///</summary> + [SugarColumn(ColumnName="BILL_NO_TYPE" )] + public string? BillNoType { get; set; } + /// <summary> + /// 鍙戣揣缁勭粐 + ///</summary> + [SugarColumn(ColumnName="DELIVERY_ORG" )] + public string? DeliveryOrg { get; set; } + /// <summary> + /// 鍙戣揣閮ㄩ棬 + ///</summary> + [SugarColumn(ColumnName="DELIVERY_DEPT" )] + public string? DeliveryDept { get; set; } + /// <summary> + /// 搴撳瓨缁� + ///</summary> + [SugarColumn(ColumnName="INVENTORY_GROUP" )] + public string? InventoryGroup { get; set; } + /// <summary> + /// 浠撶鍛� + ///</summary> + [SugarColumn(ColumnName="WAREHOUSE_MANAGER" )] + public string? WarehouseManager { get; set; } + /// <summary> + /// 閿�鍞粍 + ///</summary> + [SugarColumn(ColumnName="SALES_GROUP" )] + public string? SalesGroup { get; set; } + /// <summary> + /// 閿�鍞憳 + ///</summary> + [SugarColumn(ColumnName="SALES_PERSON" )] + public string? SalesPerson { get; set; } + /// <summary> + /// 鏀惰揣鏂� + ///</summary> + [SugarColumn(ColumnName="RECEIVER" )] + public string? Receiver { get; set; } + /// <summary> + /// 鏀惰揣鏂硅仈绯讳汉 + ///</summary> + [SugarColumn(ColumnName="RECEIVER_CONTACT" )] + public string? ReceiverContact { get; set; } + /// <summary> + /// 鏀惰揣鏂瑰湴鍧� + ///</summary> + [SugarColumn(ColumnName="RECEIVER_ADDRESS" )] + public string? ReceiverAddress { get; set; } + /// <summary> + /// 鏀惰揣鏂瑰鍚� + ///</summary> + [SugarColumn(ColumnName="RECEIVER_NAME" )] + public string? ReceiverName { get; set; } + /// <summary> + /// 鑱旂郴鐢佃瘽 + ///</summary> + [SugarColumn(ColumnName="LINK_PHONE" )] + public string? LinkPhone { get; set; } + /// <summary> + /// 缁撶畻鏂� + ///</summary> + [SugarColumn(ColumnName="SETTLE_PARTY" )] + public string? SettleParty { get; set; } + /// <summary> + /// 浠樻鏂� + ///</summary> + [SugarColumn(ColumnName="PAYER_PARTY" )] + public string? PayerParty { get; set; } + /// <summary> + /// 鍒涘缓浜� + ///</summary> + [SugarColumn(ColumnName="CREATED_BY" )] + public string? CreatedBy { get; set; } + /// <summary> + /// 鍒涘缓鏃堕棿 + ///</summary> + [SugarColumn(ColumnName="CREATED_DATE" )] + public DateTime? CreatedDate { get; set; } + /// <summary> + /// 淇敼浜� + ///</summary> + [SugarColumn(ColumnName="MODIFIED_BY" )] + public string? ModifiedBy { get; set; } + /// <summary> + /// 淇敼鏃堕棿 + ///</summary> + [SugarColumn(ColumnName="MODIFIED_DATE" )] + public DateTime? ModifiedDate { get; set; } + /// <summary> + /// 鍏抽棴浜� + ///</summary> + [SugarColumn(ColumnName="CLOSED_BY" )] + public string? ClosedBy { get; set; } + /// <summary> + /// 鍏抽棴鍘熷洜 + ///</summary> + [SugarColumn(ColumnName="CLOSE_REASON" )] + public string? CloseReason { get; set; } + /// <summary> + /// 鍏抽棴鏃ユ湡 + ///</summary> + [SugarColumn(ColumnName="CLOSE_DATE" )] + public DateTime? CloseDate { get; set; } + /// <summary> + /// 瀹℃牳浜� + ///</summary> + [SugarColumn(ColumnName="APPROVED_BY" )] + public string? ApprovedBy { get; set; } + /// <summary> + /// 瀹℃牳鏃ユ湡 + ///</summary> + [SugarColumn(ColumnName="APPROVED_DATE" )] + public DateTime? ApprovedDate { get; set; } + /// <summary> + /// 浣滃簾鐘舵�� + ///</summary> + [SugarColumn(ColumnName="CANCEL_STATUS" )] + public string? CancelStatus { get; set; } + /// <summary> + /// 浣滃簾浜� + ///</summary> + [SugarColumn(ColumnName="CANCELLED_BY" )] + public string? CancelledBy { get; set; } + /// <summary> + /// 浣滃簾鏃ユ湡 + ///</summary> + [SugarColumn(ColumnName="CANCEL_DATE" )] + public DateTime? CancelDate { get; set; } + /// <summary> + /// 鍏抽棴鐘舵�� + ///</summary> + [SugarColumn(ColumnName="CLOSE_STATUS" )] + public string? CloseStatus { get; set; } + /// <summary> + /// 鏄惁鎵嬪姩鍏抽棴 + ///</summary> + [SugarColumn(ColumnName="MANUAL_CLOSE_FLAG" )] + public string? ManualCloseFlag { get; set; } + /// <summary> + /// ERP澶碔D + ///</summary> + [SugarColumn(ColumnName="ERP_ID" )] + public string? ErpId { get; set; } + + /// <summary> + /// 鍗曟嵁鐘舵�� + ///</summary> + [SugarColumn(ColumnName = "BILL_STATUS")] + public string? BillStatus { get; set; } + + //-----------------鏂板瀛楁--------------------------------- + /// <summary> + /// 鏉ユ簮绫诲埆 + /// </summary> + [SugarColumn(ColumnName = "FSourceCategory", IsNullable = false)] + public string FSourceCategory { get; set; } + + /// <summary> + /// 鏉ユ簮鍗曟嵁 + /// </summary> + [SugarColumn(ColumnName = "FSourceDocument", IsNullable = false)] + public string FSourceDocument { get; set; } + + /// <summary> + /// 浜ゆ湡 + /// </summary> + [SugarColumn(ColumnName = "FDeliveryDate", IsNullable = true)] + public string? FDeliveryDate { get; set; } + + /// <summary> + /// 椤圭洰 + /// </summary> + [SugarColumn(ColumnName = "FProject", IsNullable = false)] + public string FProject { get; set; } + + /// <summary> + /// 瀹㈡埛閲囪喘璁㈠崟 + /// </summary> + [SugarColumn(ColumnName = "FCustomerPo", IsNullable = false)] + public string FCustomerPo { get; set; } + + /// <summary> + /// 鍑鸿揣鍘熷垯 + /// </summary> + [SugarColumn(ColumnName = "FShippingPolicy", IsNullable = false)] + public string FShippingPolicy { get; set; } + + /// <summary> + /// 瑁呰繍娓� + /// </summary> + [SugarColumn(ColumnName = "FShippingPort", IsNullable = false)] + public string FShippingPort { get; set; } + + /// <summary> + /// 鐩殑娓� + /// </summary> + [SugarColumn(ColumnName = "FDestinationPort", IsNullable = false)] + public string FDestinationPort { get; set; } + + /// <summary> + /// 鏀惰揣鑱旂郴浜� + /// </summary> + [SugarColumn(ColumnName = "FReceiverContactID", IsNullable = true)] + public string? FReceiverContactID { get; set; } + + /// <summary> + /// 琛ㄥご澶囨敞 + /// </summary> + [SugarColumn(ColumnName = "FEntryNote", IsNullable = true)] + public string? FEntryNote { get; set; } + + /// <summary> + /// 鐗堟湰鍙� + /// </summary> + [SugarColumn(ColumnName = "FVersionNo", IsNullable = true)] + public string? FVersionNo { get; set; } + + /// <summary> + /// 闇�姹傚垎绫� + /// </summary> + [SugarColumn(ColumnName = "FBusinessType", IsNullable = true)] + public string? FBusinessType { get; set; } + + /// <summary> + /// 浜よ揣鍦扮偣 + /// </summary> + [SugarColumn(ColumnName = "FHEADLOCID", IsNullable = true)] + public string? FHEADLOCID { get; set; } + + /// <summary> + /// 瀹㈡埛 + /// </summary> + [SugarColumn(ColumnName = "FCustId", IsNullable = true)] + public string? FCustId { get; set; } + + /// <summary> + /// 澶囨敞 + /// </summary> + [SugarColumn(ColumnName = "FNote", IsNullable = true)] + public string? FNote { get; set; } + + + } +} diff --git a/StandardPda/MES.Service/Modes/SalesDeliveryNoticeDetail.cs b/StandardPda/MES.Service/Modes/SalesDeliveryNoticeDetail.cs new file mode 100644 index 0000000..30799be --- /dev/null +++ b/StandardPda/MES.Service/Modes/SalesDeliveryNoticeDetail.cs @@ -0,0 +1,382 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using SqlSugar; +namespace MES.Service.Modes +{ + /// <summary> + /// 閿�鍞彂璐ч�氱煡鍗曟槑缁嗚〃 + ///</summary> + [SugarTable("SALES_DELIVERY_NOTICE_DETAIL")] + public class SalesDeliveryNoticeDetail + { + /// <summary> + /// + ///</summary> + [SugarColumn(ColumnName="ID", OracleSequenceName = "SEQ_DELIVERY_NOTICE_DETAIL", IsPrimaryKey = true)] + public decimal? Id { get; set; } + /// <summary> + /// 閿�鍞鍗曞彿 + ///</summary> + [SugarColumn(ColumnName="SALES_ORDER_ID" )] + public string SalesOrderId { get; set; } + /// <summary> + /// 鐗╂枡缂栫爜 + ///</summary> + [SugarColumn(ColumnName="MATERIAL_ID" )] + public string MaterialId { get; set; } + /// <summary> + /// 鐗╂枡鍚嶇О + ///</summary> + [SugarColumn(ColumnName="MATERIAL_NAME" )] + public string MaterialName { get; set; } + /// <summary> + /// 鐗╂枡瑙勬牸 + ///</summary> + [SugarColumn(ColumnName="MATERIAL_SPECIFICATION" )] + public string MaterialSpecification { get; set; } + /// <summary> + /// 閿�鍞崟浣� + ///</summary> + [SugarColumn(ColumnName="SALES_UNIT_ID" )] + public string SalesUnitId { get; set; } + /// <summary> + /// 閿�鍞暟閲� + ///</summary> + [SugarColumn(ColumnName="SALES_QUANTITY" )] + public decimal? SalesQuantity { get; set; } + /// <summary> + /// 鏄惁璧犲搧 + ///</summary> + [SugarColumn(ColumnName="IS_FREE" )] + public string IsFree { get; set; } + /// <summary> + /// 瑕佽揣鏃ユ湡 + ///</summary> + [SugarColumn(ColumnName="DELIVERY_DATE" )] + public DateTime? DeliveryDate { get; set; } + /// <summary> + /// 鍑鸿揣浠撳簱 + ///</summary> + [SugarColumn(ColumnName="WAREHOUSE" )] + public string Warehouse { get; set; } + /// <summary> + /// 璁″垝璺熻釜鍙� + ///</summary> + [SugarColumn(ColumnName="PLAN_TRACKING_NUMBER" )] + public string PlanTrackingNumber { get; set; } + /// <summary> + /// 鎵瑰彿 + ///</summary> + [SugarColumn(ColumnName="LOT_NUMBER" )] + public string LotNumber { get; set; } + /// <summary> + /// 婧愬崟缂栧彿 + ///</summary> + [SugarColumn(ColumnName="SRC_BILL_NO" )] + public string SrcBillNo { get; set; } + /// <summary> + /// 璁′环鏁伴噺 + ///</summary> + [SugarColumn(ColumnName="PRICE_QTY" )] + public decimal? PriceQty { get; set; } + /// <summary> + /// 璐т富 + ///</summary> + [SugarColumn(ColumnName="OWNER_ID" )] + public string OwnerId { get; set; } + /// <summary> + /// 搴撳瓨鍗曚綅 + ///</summary> + [SugarColumn(ColumnName="INVENTORY_UNIT" )] + public string InventoryUnit { get; set; } + /// <summary> + /// 搴撳瓨鏁伴噺 + ///</summary> + [SugarColumn(ColumnName="INVENTORY_QUANTITY" )] + public decimal? InventoryQuantity { get; set; } + /// <summary> + /// 鐗╂枡绫诲埆 + ///</summary> + [SugarColumn(ColumnName="MATERIAL_CATEGORY" )] + public string MaterialCategory { get; set; } + /// <summary> + /// 璁″垝鍙戣揣鏃ユ湡 + ///</summary> + [SugarColumn(ColumnName="PLAN_DELIVERY_DATE" )] + public DateTime? PlanDeliveryDate { get; set; } + /// <summary> + /// 瓒呭彂鎺у埗鍗曚綅 + ///</summary> + [SugarColumn(ColumnName="OUT_LMT_UNIT" )] + public string OutLmtUnit { get; set; } + /// <summary> + /// 鍑哄簱涓婇檺 + ///</summary> + [SugarColumn(ColumnName="OUT_MAX_QTY" )] + public decimal? OutMaxQty { get; set; } + /// <summary> + /// 鍑哄簱涓嬮檺 + ///</summary> + [SugarColumn(ColumnName="OUT_MIN_QTY" )] + public decimal? OutMinQty { get; set; } + /// <summary> + /// 浜よ揣鍦扮偣 + ///</summary> + [SugarColumn(ColumnName="DELIVERY_LOC" )] + public string DeliveryLoc { get; set; } + /// <summary> + /// 浜よ揣鍦板潃 + ///</summary> + [SugarColumn(ColumnName="DELIVERYL_ADDRESS" )] + public string DeliverylAddress { get; set; } + /// <summary> + /// 婧愬崟鍗曞彿 + ///</summary> + [SugarColumn(ColumnName="SOURCE_BILL_NO" )] + public string SourceBillNo { get; set; } + /// <summary> + /// 璁㈠崟鍗曞彿 + ///</summary> + [SugarColumn(ColumnName="ORDER_BILL_NO" )] + public string OrderBillNo { get; set; } + /// <summary> + /// 缁堟鐘舵�� + ///</summary> + [SugarColumn(ColumnName="TERMINATION_STATUS" )] + public string TerminationStatus { get; set; } + /// <summary> + /// 缁堟鏃ユ湡 + ///</summary> + [SugarColumn(ColumnName="TERMINATION_DATE" )] + public DateTime? TerminationDate { get; set; } + /// <summary> + /// 绱鍑哄簱鏁伴噺 + ///</summary> + [SugarColumn(ColumnName="SUM_OUT_QTY" )] + public decimal? SumOutQty { get; set; } + /// <summary> + /// 鏈嚭搴撴暟閲� + ///</summary> + [SugarColumn(ColumnName="REMAIN_OUT_QTY" )] + public decimal? RemainOutQty { get; set; } + /// <summary> + /// ERP琛孖D + ///</summary> + [SugarColumn(ColumnName="ERP_LINE_ID" )] + public string ErpLineId { get; set; } + /// <summary> + /// ERP澶碔D + ///</summary> + [SugarColumn(ColumnName="ERP_HEAD_ID" )] + public string ErpHeadId { get; set; } + /// <summary> + /// ERP澶碔D + ///</summary> + //[SugarColumn(ColumnName = "f_UNW_Base_GDY")] + //public string GDY { get; set; } + ///// <summary> + ///// 澶囨敞 + /////</summary> + //[SugarColumn(ColumnName = "FEntrynote")] + //public string NOTE { get; set; } + /// <summary> + /// 瑕佽揣鏃ユ湡 + /// </summary> + [SugarColumn(ColumnName = "FDELIVERYDATE", IsNullable = true)] + public string? FDeliveryDate { get; set; } + + /// <summary> + /// 瀹㈡埛鐗╂枡缂栫爜1 + /// </summary> + [SugarColumn(ColumnName = "FMAPID", IsNullable = true)] + public string? FMapId { get; set; } + + /// <summary> + /// 瀹㈡埛鐗╂枡鍚嶇О + /// </summary> + [SugarColumn(ColumnName = "FMAPNAME", IsNullable = true)] + public string? FMapName { get; set; } + + /// <summary> + /// 瀹㈡埛鏂欏彿2 + /// </summary> + [SugarColumn(ColumnName = "FMAPID2", IsNullable = true)] + public string? FMapId2 { get; set; } + + /// <summary> + /// 椤圭洰 + /// </summary> + [SugarColumn(ColumnName = "FPROJECT", IsNullable = true)] + public string? FProject { get; set; } + + /// <summary> + /// 瀛樺偍鍦扮偣 + /// </summary> + [SugarColumn(ColumnName = "FSTORAGELOCATION", IsNullable = true)] + public string? FStorageLocation { get; set; } + + /// <summary> + /// 鍏嶈垂鍝佺被鍨� + /// </summary> + [SugarColumn(ColumnName = "FFREEITEMTYPE", IsNullable = true)] + public string? FFreeItemType { get; set; } + + /// <summary> + /// 琛ㄤ綋澶囨敞 + /// </summary> + [SugarColumn(ColumnName = "FBODYNOTE", IsNullable = true)] + public string? FBodyNote { get; set; } + + /// <summary> + /// 搴撳瓨鍙敤閲� + /// </summary> + [SugarColumn(ColumnName = "FAVAILABLESTOCK", IsNullable = true)] + public decimal? FAvailableStock { get; set; } + + /// <summary> + /// 鏌ヨ搴撳瓨鏃堕棿 + /// </summary> + [SugarColumn(ColumnName = "FINVENTORYQUERYTIME", IsNullable = true)] + public string? FInventoryQueryTime { get; set; } + + /// <summary> + /// 琛岀姸鎬� + /// </summary> + [SugarColumn(ColumnName = "FLINESTATUS", IsNullable = true)] + public string? FLineStatus { get; set; } + + /// <summary> + /// 鏀惰揣鍦板潃鍏ㄧО + /// </summary> + [SugarColumn(ColumnName = "FRECEIVEADDRESSFULL", IsNullable = true)] + public string? FReceiveAddressFull { get; set; } + + /// <summary> + /// 鏀惰揣鑱旂郴浜� + /// </summary> + [SugarColumn(ColumnName = "FRECEIVERCONTACT", IsNullable = true)] + public string? FReceiverContact { get; set; } + + /// <summary> + /// 鍙��鎹� + /// </summary> + [SugarColumn(ColumnName = "FRETURNEXCHANGEALLOWED", IsNullable = true)] + public string? FReturnExchangeAllowed { get; set; } + + /// <summary> + /// 濮斿鍔犲伐浠舵暟閲� + /// </summary> + [SugarColumn(ColumnName = "FOUTSOURCEDPROCESSQTY", IsNullable = true)] + public decimal? FOutsourcedProcessQty { get; set; } + + /// <summary> + /// 鍙敤鏃ユ湡 + /// </summary> + [SugarColumn(ColumnName = "FAVAILABLEDATE", IsNullable = true)] + public string? FAvailableDate { get; set; } + + /// <summary> + /// 鎵胯鏃ユ湡 + /// </summary> + [SugarColumn(ColumnName = "FCOMMITMENTDATE", IsNullable = true)] + public string? FCommitmentDate { get; set; } + + /// <summary> + /// 瀹㈡埛纭鍑鸿揣鏃� + /// </summary> + [SugarColumn(ColumnName = "FCUSTOMERCONFIRMSHIPDATE", IsNullable = true)] + public string? FCustomerConfirmShipDate { get; set; } + + /// <summary> + /// 璁″垝缁勭粐 + /// </summary> + [SugarColumn(ColumnName = "FPLANNEDORG", IsNullable = true)] + public string? FPlannedOrg { get; set; } + + /// <summary> + /// 渚涘簲鍟嗙洿杩� + /// </summary> + [SugarColumn(ColumnName = "FVENDORDIRECTSHIP", IsNullable = true)] + public string? FVendorDirectShip { get; set; } + + /// <summary> + /// 渚涘簲鏉ユ簮 + /// </summary> + [SugarColumn(ColumnName = "FSUPPLYSOURCE", IsNullable = true)] + public string? FSupplySource { get; set; } + + /// <summary> + /// 渚涘簲绫诲瀷 + /// </summary> + [SugarColumn(ColumnName = "FSUPPLYTYPE", IsNullable = true)] + public string? FSupplyType { get; set; } + + /// <summary> + /// 渚涘簲缁勭粐 + /// </summary> + [SugarColumn(ColumnName = "FSUPPLYORG", IsNullable = true)] + public string? FSupplyOrg { get; set; } + + /// <summary> + /// 渚涘簲鍟� + /// </summary> + [SugarColumn(ColumnName = "FSUPPLIER", IsNullable = true)] + public string? FSupplier { get; set; } + + /// <summary> + /// 鍑鸿揣鏂瑰紡 + /// </summary> + [SugarColumn(ColumnName = "FSHIPPINGMETHOD", IsNullable = true)] + public string? FShippingMethod { get; set; } + + /// <summary> + /// MRP/DRP闇�姹� + /// </summary> + [SugarColumn(ColumnName = "FMRPDR", IsNullable = true)] + public string? FMRPDR { get; set; } + + /// <summary> + /// 闇�姹傚垎绫� + /// </summary> + [SugarColumn(ColumnName = "FDEMANDCATEGORY", IsNullable = true)] + public string? FDemandCategory { get; set; } + + /// <summary> + /// 搴撳瓨瑙勫垝 + /// </summary> + [SugarColumn(ColumnName = "FINVENTORYPLANNING", IsNullable = true)] + public string? FInventoryPlanning { get; set; } + + /// <summary> + /// 琛屽娉� + /// </summary> + [SugarColumn(ColumnName = "FLINEREMARK", IsNullable = true)] + public string? FLineRemark { get; set; } + + /// <summary> + /// 鏉ユ簮鍗曟嵁绫诲埆 + /// </summary> + [SugarColumn(ColumnName = "FSOURCEDOCCATEGORY", IsNullable = true)] + public string? FSourceDocCategory { get; set; } + + /// <summary> + /// 鏉ユ簮鍗曞彿 + /// </summary> + [SugarColumn(ColumnName = "FSOURCEDOCNO", IsNullable = true)] + public string? FSourceDocNo { get; set; } + + /// <summary> + /// 鏉ユ簮鍗曡鍙� + /// </summary> + [SugarColumn(ColumnName = "FSOURCEDOCLINENO", IsNullable = true)] + public decimal? FSourceDocLineNo { get; set; } + + /// <summary> + /// 琛屽彿 + /// </summary> + [SugarColumn(ColumnName = "FLINE_NO", IsNullable = true)] + public string? FLINE_NO { get; set; } + + } +} diff --git a/StandardPda/MES.Service/Modes/SalesOrder.cs b/StandardPda/MES.Service/Modes/SalesOrder.cs index 304b4ec..596d5d8 100644 --- a/StandardPda/MES.Service/Modes/SalesOrder.cs +++ b/StandardPda/MES.Service/Modes/SalesOrder.cs @@ -1,113 +1,235 @@ 锘縰sing SqlSugar; -namespace MES.Service.Modes; - -/// <summary> -/// 閿�鍞鍗曡〃 -/// </summary> -[SugarTable("SALES_ORDER")] -public class SalesOrder +namespace MES.Service.Modes { /// <summary> - /// SEQ_sales搴忓垪 + /// 閿�鍞鍗曡〃 /// </summary> - [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_sales", - IsPrimaryKey = true)] - public decimal Id { get; set; } + [SugarTable("SALES_ORDER")] + public class SalesOrder + { + /// <summary> + /// SEQ_sales搴忓垪 + /// </summary> + [SugarColumn(ColumnName = "ID", OracleSequenceName = "SALES_ORDER_ID", IsPrimaryKey = true)] + public decimal? Id { get; set; } - /// <summary> - /// 璁㈠崟鍗曞彿 - /// </summary> - [SugarColumn(ColumnName = "ORDER_ID")] - public string OrderId { get; set; } + /// <summary> + /// ERPID + /// </summary> + [SugarColumn(ColumnName = "ERP_ID")] + public decimal? ErpID { get; set; } - /// <summary> - /// 璁㈠崟鍗曞埆 - /// </summary> - [SugarColumn(ColumnName = "ORDER_TYPE")] - public string OrderType { get; set; } + /// <summary> + /// 鍗曟嵁缂栧彿 + /// </summary> + [SugarColumn(ColumnName = "BILL_NO")] + public string? BillNo { get; set; } - /// <summary> - /// 鍙楄鏃ユ湡 - /// </summary> - [SugarColumn(ColumnName = "ORDER_DATE")] - public DateTime? OrderDate { get; set; } + /// <summary> + /// 鍗曟嵁绫诲瀷 + /// </summary> + [SugarColumn(ColumnName = "BILL_TYPE_ID")] + public string? BillTypeId { get; set; } - /// <summary> - /// 鍗曟嵁鐗堟湰 - /// </summary> - [SugarColumn(ColumnName = "DOCUMENT_VERSION")] - public long? DocumentVersion { get; set; } + /// <summary> + /// 鍗曟嵁鐘舵�� + /// </summary> + [SugarColumn(ColumnName = "DOCUMENT_STATUS")] + public string? DocumentStatus { get; set; } - /// <summary> - /// 鍗曟嵁鏃ユ湡 - /// </summary> - [SugarColumn(ColumnName = "DOCUMENT_DATE")] - public DateTime? DocumentDate { get; set; } + /// <summary> + /// 鏃ユ湡 + /// </summary> + [SugarColumn(ColumnName = "F_DATE")] + public DateTime? FDate { get; set; } - /// <summary> - /// 宸ュ巶缂栧彿 - /// </summary> - [SugarColumn(ColumnName = "FACTORY_ID")] - public string FactoryId { get; set; } + /// <summary> + /// 涓氬姟绫诲瀷 + /// </summary> + [SugarColumn(ColumnName = "BUSINESS_TYPE")] + public string? BusinessType { get; set; } - /// <summary> - /// 宸ュ巶绠�绉� - /// </summary> - [SugarColumn(ColumnName = "FACTORY_NAME")] - public string FactoryName { get; set; } + /// <summary> + /// 浜よ揣鏂瑰紡 + /// </summary> + [SugarColumn(ColumnName = "HEAD_DELIVERY_WAY")] + public string? HeadDeliveryWay { get; set; } - /// <summary> - /// 瀹㈡埛缂栧彿 - /// </summary> - [SugarColumn(ColumnName = "CUSTOMER_ID")] - public string CustomerId { get; set; } + /// <summary> + /// 浜よ揣鍦扮偣 + /// </summary> + [SugarColumn(ColumnName = "HEAD_LOC_ID")] + public string? HeadLocId { get; set; } - /// <summary> - /// 瀹㈡埛绠�绉� - /// </summary> - [SugarColumn(ColumnName = "CUSTOMER_NAME")] - public string CustomerName { get; set; } + /// <summary> + /// 瀹㈡埛 + /// </summary> + [SugarColumn(ColumnName = "CUST_ID")] + public string? CustId { get; set; } - /// <summary> - /// 瀹㈡埛鍗曞彿 - /// </summary> - [SugarColumn(ColumnName = "CUSTOMER_ORDER_ID")] - public string CustomerOrderId { get; set; } + /// <summary> + /// 鍏抽棴鐘舵�� + /// </summary> + [SugarColumn(ColumnName = "CLOSE_STATUS")] + public string? CloseStatus { get; set; } - /// <summary> - /// 閮ㄩ棬缂栧彿 - /// </summary> - [SugarColumn(ColumnName = "DEPARTMENT_ID")] - public string DepartmentId { get; set; } + /// <summary> + /// 閿�鍞儴闂� + /// </summary> + [SugarColumn(ColumnName = "SALE_DEPT_ID")] + public string? SaleDeptId { get; set; } - /// <summary> - /// 鎬绘暟閲� - /// </summary> - [SugarColumn(ColumnName = "TOTAL_QUANTITY")] - public decimal? TotalQuantity { get; set; } + /// <summary> + /// 閿�鍞憳 + /// </summary> + [SugarColumn(ColumnName = "SALER_ID")] + public string? SalerId { get; set; } - /// <summary> - /// 澶囨敞 - /// </summary> - [SugarColumn(ColumnName = "REMARKS")] - public string Remarks { get; set; } + /// <summary> + /// 鍙樻洿鍘熷洜 + /// </summary> + [SugarColumn(ColumnName = "CHANGE_REASON")] + public string? ChangeReason { get; set; } - /// <summary> - /// erp瀹℃牳鏃ユ湡 - /// </summary> - [SugarColumn(ColumnName = "APPROVAL_DATE")] - public DateTime? ApprovalDate { get; set; } + /// <summary> + /// 缁撶畻鏂� + /// </summary> + [SugarColumn(ColumnName = "SETTLE_ID")] + public string? SettleId { get; set; } - /// <summary> - /// erp瀹℃牳鑰� - /// </summary> - [SugarColumn(ColumnName = "APPROVER")] - public string Approver { get; set; } + /// <summary> + /// 瀹℃牳浜� + /// </summary> + [SugarColumn(ColumnName = "APPROVER_ID")] + public string? ApproverId { get; set; } - /// <summary> - /// ERPID - /// </summary> - [SugarColumn(ColumnName = "ERP_ID")] - public string ErpId { get; set; } -} \ No newline at end of file + /// <summary> + /// 鏀惰揣浜哄鍚� + /// </summary> + [SugarColumn(ColumnName = "LINK_MAN")] + public string? LinkMan { get; set; } + + /// <summary> + /// 浠樻鏂� + /// </summary> + [SugarColumn(ColumnName = "CHARGE_ID")] + public string? ChargeId { get; set; } + + /// <summary> + /// 鑱旂郴鐢佃瘽 + /// </summary> + [SugarColumn(ColumnName = "LINK_PHONE")] + public string? LinkPhone { get; set; } + + /// <summary> + /// 鍒涘缓浜� + /// </summary> + [SugarColumn(ColumnName = "CREATOR_ID")] + public string? CreatorId { get; set; } + + /// <summary> + /// 鍒涘缓鏃ユ湡 + /// </summary> + [SugarColumn(ColumnName = "CREATE_DATE")] + public DateTime? CreateDate { get; set; } + + /// <summary> + /// 鏈�鍚庝慨鏀逛汉 + /// </summary> + [SugarColumn(ColumnName = "MODIFIER_ID")] + public string? ModifierId { get; set; } + + /// <summary> + /// 鏈�鍚庝慨鏀规棩鏈� + /// </summary> + [SugarColumn(ColumnName = "MODIFY_DATE")] + public DateTime? ModifyDate { get; set; } + + /// <summary> + /// 瀹℃牳鏃ユ湡 + /// </summary> + [SugarColumn(ColumnName = "APPROVE_DATE")] + public DateTime? ApproveDate { get; set; } + + /// <summary> + /// 鍏抽棴浜� + /// </summary> + [SugarColumn(ColumnName = "CLOSER_ID")] + public string? CloserId { get; set; } + + /// <summary> + /// 鍏抽棴鏃ユ湡 + /// </summary> + [SugarColumn(ColumnName = "CLOSE_DATE")] + public DateTime? CloseDate { get; set; } + + /// <summary> + /// 鍙樻洿鏃ユ湡 + /// </summary> + [SugarColumn(ColumnName = "CHANGE_DATE")] + public DateTime? ChangeDate { get; set; } + + /// <summary> + /// 浣滃簾鐘舵�� + /// </summary> + [SugarColumn(ColumnName = "CANCEL_STATUS")] + public string? CancelStatus { get; set; } + + /// <summary> + /// 浣滃簾浜� + /// </summary> + [SugarColumn(ColumnName = "CANCELLER_ID")] + public string? CancellerId { get; set; } + + /// <summary> + /// 鐗堟湰鍙� + /// </summary> + [SugarColumn(ColumnName = "VERSION_NO")] + public double? VersionNo { get; set; } + + /// <summary> + /// 鍙樻洿浜� + /// </summary> + [SugarColumn(ColumnName = "CHANGER_ID")] + public string? ChangerId { get; set; } + + /// <summary> + /// 澶囨敞 + /// </summary> + [SugarColumn(ColumnName = "ENTRY_NOTE")] + public string? EntryNote { get; set; } + + //--------------鏂板瀛楁--------------------------------- + + /// <summary> + /// 涓氬姟鍛� + /// </summary> + [SugarColumn(ColumnName = "FSALES_PERSON", IsNullable = true)] + public string? FSalesPerson { get; set; } + + /// <summary> + /// 椤圭洰 + /// </summary> + [SugarColumn(ColumnName = "FPROJECT", IsNullable = true)] + public string? FProject { get; set; } + + /// <summary> + /// 闇�姹傚垎绫� + /// </summary> + [SugarColumn(ColumnName = "FDEMANDCATEGORY", IsNullable = true)] + public string? FDemandCategory { get; set; } + + /// <summary> + /// 璧峰鏃ユ湡 + /// </summary> + [SugarColumn(ColumnName = "FSTART_DATE", IsNullable = true)] + public string? FStartDate { get; set; } + + /// <summary> + /// 鎴鏃ユ湡 + /// </summary> + [SugarColumn(ColumnName = "FEND_DATE", IsNullable = true)] + public string? FEndDate { get; set; } + } +} diff --git a/StandardPda/MES.Service/Modes/SalesOrderDetail.cs b/StandardPda/MES.Service/Modes/SalesOrderDetail.cs index 0dd800e..ab20294 100644 --- a/StandardPda/MES.Service/Modes/SalesOrderDetail.cs +++ b/StandardPda/MES.Service/Modes/SalesOrderDetail.cs @@ -11,103 +11,296 @@ /// <summary> /// SEQ_sales搴忓垪 /// </summary> - [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_sales", - IsPrimaryKey = true)] + [SugarColumn(ColumnName = "ID", OracleSequenceName = "SALES_ORDER_DETAIL_ID", IsPrimaryKey = true)] public decimal Id { get; set; } - - /// <summary> - /// 璁㈠崟鍗曞彿 - /// </summary> - [SugarColumn(ColumnName = "ORDER_ID")] - public string OrderId { get; set; } - - /// <summary> - /// 搴忓彿 - /// </summary> - [SugarColumn(ColumnName = "LINE_NUMBER")] - public long? LineNumber { get; set; } - - /// <summary> - /// 浜у搧缂栫爜 - /// </summary> - [SugarColumn(ColumnName = "PRODUCT_CODE")] - public string ProductCode { get; set; } - - /// <summary> - /// 浜у搧鍚嶇О - /// </summary> - [SugarColumn(ColumnName = "PRODUCT_NAME")] - public string ProductName { get; set; } - - /// <summary> - /// 浜у搧瑙勬牸 - /// </summary> - [SugarColumn(ColumnName = "PRODUCT_SPEC")] - public string ProductSpec { get; set; } - - /// <summary> - /// 棰勪氦璐ф棩鏈� - /// </summary> - [SugarColumn(ColumnName = "SCHEDULED_DELIVERY_DATE")] - public DateTime? ScheduledDeliveryDate { get; set; } - - /// <summary> - /// 璁㈠崟鏁伴噺 - /// </summary> - [SugarColumn(ColumnName = "ORDER_QUANTITY")] - public decimal? OrderQuantity { get; set; } - - /// <summary> - /// 鍗曚綅 - /// </summary> - [SugarColumn(ColumnName = "UNIT")] - public string Unit { get; set; } - - /// <summary> - /// 鍗曚环 - /// </summary> - [SugarColumn(ColumnName = "UNIT_PRICE")] - public decimal? UnitPrice { get; set; } - - /// <summary> - /// 閲戦 - /// </summary> - [SugarColumn(ColumnName = "AMOUNT")] - public decimal? Amount { get; set; } - - /// <summary> - /// 瀹㈡埛浜у搧缂栫爜 - /// </summary> - [SugarColumn(ColumnName = "CUSTOMER_PRODUCT_CODE")] - public string CustomerProductCode { get; set; } - - /// <summary> - /// 宸蹭氦璐ф暟 - /// </summary> - [SugarColumn(ColumnName = "DELIVERED_QUANTITY")] - public decimal? DeliveredQuantity { get; set; } - - /// <summary> - /// 缁撴潫 - /// </summary> - [SugarColumn(ColumnName = "IS_CLOSED")] - public string IsClosed { get; set; } - - /// <summary> - /// 澶囨敞 - /// </summary> - [SugarColumn(ColumnName = "REMARKS")] - public string Remarks { get; set; } /// <summary> /// ERPID /// </summary> [SugarColumn(ColumnName = "ERP_ID")] - public string ErpId { get; set; } + public decimal? ErpID { get; set; } /// <summary> /// ERP澶碔D /// </summary> - [SugarColumn(ColumnName = "ERP_HEAD_ID")] - public string ErpHeadId { get; set; } + [SugarColumn(ColumnName = "E_HID")] + public decimal? EHID { get; set; } + + /// <summary> + /// 鐗╂枡缂栫爜 + /// </summary> + [SugarColumn(ColumnName = "MATERIAL_ID")] + public string? MaterialId { get; set; } + + /// <summary> + /// 閿�鍞崟浣� + /// </summary> + [SugarColumn(ColumnName = "UNIT_ID")] + public string? UnitId { get; set; } + + /// <summary> + /// 閿�鍞暟閲� + /// </summary> + [SugarColumn(ColumnName = "QTY")] + public decimal? Qty { get; set; } + + /// <summary> + /// 璁′环鍗曚綅 + /// </summary> + [SugarColumn(ColumnName = "PRICE_UNIT_ID")] + public string? PriceUnitId { get; set; } + + /// <summary> + /// 璁′环鏁伴噺 + /// </summary> + [SugarColumn(ColumnName = "PRICE_UNIT_QTY")] + public decimal? PriceUnitQty { get; set; } + + /// <summary> + /// 瑕佽揣鏃ユ湡 + /// </summary> + [SugarColumn(ColumnName = "DELIVERY_DATE")] + public DateTime? DeliveryDate { get; set; } + + /// <summary> + /// 鏄惁璧犲搧 + /// </summary> + [SugarColumn(ColumnName = "IS_FREE")] + public decimal? IsFree { get; set; } + + /// <summary> + /// 璐т富绫诲瀷 + /// </summary> + [SugarColumn(ColumnName = "OWNER_TYPE_ID")] + public string? OwnerTypeId { get; set; } + + /// <summary> + /// 璐т富 + /// </summary> + [SugarColumn(ColumnName = "OWNER_ID")] + public string? OwnerId { get; set; } + + /// <summary> + /// 澶囨敞 + /// </summary> + [SugarColumn(ColumnName = "ENTRY_NOTE")] + public string? EntryNote { get; set; } + + /// <summary> + /// 璁″垝璺熻釜鍙� + /// </summary> + [SugarColumn(ColumnName = "MTO_NO")] + public string? MtoNo { get; set; } + + /// <summary> + /// 鎵瑰彿 + /// </summary> + [SugarColumn(ColumnName = "LOT")] + public string? Lot { get; set; } + + /// <summary> + /// 鍙戣揣涓婇檺 + /// </summary> + [SugarColumn(ColumnName = "DELIVERY_MAX_QTY")] + public decimal? DeliveryMaxQty { get; set; } + + /// <summary> + /// 鍙戣揣涓嬮檺 + /// </summary> + [SugarColumn(ColumnName = "DELIVERY_MIN_QTY")] + public decimal? DeliveryMinQty { get; set; } + + /// <summary> + /// 瓒呭彂鎺у埗鍗曚綅 + /// </summary> + [SugarColumn(ColumnName = "OUT_LMT_UNIT_ID")] + public string? OutLmtUnitId { get; set; } + + /// <summary> + /// 涓氬姟鍏抽棴 + /// </summary> + [SugarColumn(ColumnName = "MRP_CLOSE_STATUS")] + public string? MrpCloseStatus { get; set; } + + /// <summary> + /// 涓氬姟缁堟 + /// </summary> + [SugarColumn(ColumnName = "MRP_TERMINATE_STATUS")] + public string? MrpTerminateStatus { get; set; } + + /// <summary> + /// 缁堟鏃ユ湡 + /// </summary> + [SugarColumn(ColumnName = "TERMINATE_DATE")] + public DateTime? TerminateDate { get; set; } + + /// <summary> + /// 缁堟浜� + /// </summary> + [SugarColumn(ColumnName = "TERMINATER_ID")] + public string? TerminaterId { get; set; } + + /// <summary> + /// 婧愬崟绫诲瀷 + /// </summary> + [SugarColumn(ColumnName = "SRC_TYPE")] + public string? SrcType { get; set; } + + /// <summary> + /// 婧愬崟鍗曞彿 + /// </summary> + [SugarColumn(ColumnName = "SRC_BILL_NO")] + public string? SrcBillNo { get; set; } + + /// <summary> + /// 绱鍙戣揣閫氱煡鏁伴噺 + /// </summary> + [SugarColumn(ColumnName = "DELI_QTY")] + public decimal? DeliQty { get; set; } + + /// <summary> + /// 绱鍑哄簱鏁伴噺 + /// </summary> + [SugarColumn(ColumnName = "STOCK_OUT_QTY")] + public decimal? StockOutQty { get; set; } + + /// <summary> + /// 绱閫�璐ч�氱煡鏁伴噺锛堥攢鍞熀鏈級 + /// </summary> + [SugarColumn(ColumnName = "BASE_RET_NOTICE_QTY")] + public decimal? BaseRetNoticeQty { get; set; } + + /// <summary> + /// 绱閫�璐ф暟閲忥紙閿�鍞熀鏈級 + /// </summary> + [SugarColumn(ColumnName = "BASE_RETURN_QTY")] + public decimal? BaseReturnQty { get; set; } + + /// <summary> + /// 鍓╀綑鏈嚭鏁伴噺锛堥攢鍞熀鏈級 + /// </summary> + [SugarColumn(ColumnName = "BASE_REMAIN_OUT_QTY")] + public decimal? BaseRemainOutQty { get; set; } + + /// <summary> + /// 绱搴旀敹鏁伴噺锛堥攢鍞熀鏈級 + /// </summary> + [SugarColumn(ColumnName = "BASEARQTY")] + public decimal? BASEARQTY { get; set; } + + /// <summary> + /// 閿�鍞鍗曞彿 + /// </summary> + [SugarColumn(ColumnName = "SALES_ORDER")] + public string? SalesOrder { get; set; } + + /// <summary> + /// 瀹㈡埛璁㈠崟鍙� + /// </summary> + [SugarColumn(ColumnName = "CUST_ORDER")] + public string? CustOrder { get; set; } + + /// <summary> + /// 閿�鍞悎鍚岀紪鍙� + /// </summary> + [SugarColumn(ColumnName = "SALES_CONTRACT_NO")] + public string? SalesContractNo { get; set; } + + /// <summary> + /// 鎴愬搧鏂欏彿 + /// </summary> + [SugarColumn(ColumnName = "ITEM_NO")] + public string? ItemNo { get; set; } + + /// <summary> + /// 鎴愬搧鍚嶇О + /// </summary> + [SugarColumn(ColumnName = "ITEM_NAME")] + public string? ItemName { get; set; } + + /// <summary> + /// 瀹㈡埛 + /// </summary> + [SugarColumn(ColumnName = "CUST_ID")] + public string? CustId { get; set; } + + /// <summary> + /// 閲囪喘鍒拌揣鏃ユ湡 + /// </summary> + [SugarColumn(ColumnName = "ARRIVAL_DATE")] + + public DateTime? ArrivalDate { get; set; } + + /// <summary> + /// 瀹㈡埛鐗╂枡瑙勬牸鍨嬪彿 + /// </summary> + [SugarColumn(ColumnName = "ITEM_MODEL")] + public string? ItemModel { get; set; } + + /// <summary> + /// 璁㈠崟鏉ユ簮 + /// </summary> + [SugarColumn(ColumnName = "DDLY")] + public string? Ddly { get; set; } + + /// <summary> + /// 琛屽彿 + /// </summary> + [SugarColumn(ColumnName = "FLINE_NO", IsNullable = true)] + public string? FLineNo { get; set; } + + /// <summary> + /// 琛岀姸鎬� + /// </summary> + [SugarColumn(ColumnName = "FLINE_STATUS", IsNullable = true)] + public string? FLineStatus { get; set; } + + /// <summary> + /// 鎵╁睍瀛楁 + /// </summary> + [SugarColumn(ColumnName = "FEXTEND_FIELD", IsNullable = true)] + public string? FExtendField { get; set; } + + /// <summary> + /// 瀹㈡埛 + /// </summary> + [SugarColumn(ColumnName = "FCUSTOMER", IsNullable = true)] + public string? FCustomer { get; set; } + + /// <summary> + /// 鏀惰揣浣嶇疆 + /// </summary> + [SugarColumn(ColumnName = "FRECEIVE_LOCATION", IsNullable = true)] + public string? FReceiveLocation { get; set; } + + /// <summary> + /// 渚涘簲缁勭粐 + /// </summary> + [SugarColumn(ColumnName = "FSUPPLY_ORG", IsNullable = true)] + public string? FSupplyOrg { get; set; } + + /// <summary> + /// 閮ㄩ棬 + /// </summary> + [SugarColumn(ColumnName = "FDEPARTMENT", IsNullable = true)] + public string? FDepartment { get; set; } + + /// <summary> + /// 涓氬姟鍛� + /// </summary> + [SugarColumn(ColumnName = "FSALES_PERSON", IsNullable = true)] + public string? FSalesPerson { get; set; } + + /// <summary> + /// 椤圭洰 + /// </summary> + [SugarColumn(ColumnName = "FPROJECT", IsNullable = true)] + public string? FProject { get; set; } + + /// <summary> + /// 闇�姹傚垎绫� + /// </summary> + [SugarColumn(ColumnName = "FDEMAND_CATEGORY", IsNullable = true)] + public string? FDemandCategory { get; set; } + } \ No newline at end of file diff --git a/StandardPda/MES.Service/Modes/SalesReturnNotice.cs b/StandardPda/MES.Service/Modes/SalesReturnNotice.cs index f3c462d..db6c500 100644 --- a/StandardPda/MES.Service/Modes/SalesReturnNotice.cs +++ b/StandardPda/MES.Service/Modes/SalesReturnNotice.cs @@ -1,83 +1,240 @@ -锘縰sing SqlSugar; - -namespace MES.Service.Modes; - -/// <summary> -/// 閿�鍞��璐ч�氱煡鍗曡〃 -/// </summary> -[SugarTable("SALES_RETURN_NOTICE")] -public class SalesReturnNotice +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using SqlSugar; +namespace MES.Service.Modes { /// <summary> - /// SEQ_sales - /// </summary> - [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_sales", - IsPrimaryKey = true)] - public decimal Id { get; set; } + /// 閿�鍞��璐ч�氱煡鍗曡〃 + ///</summary> + [SugarTable("SALES_RETURN_NOTICE")] + public class SalesReturnNotice + { + /// <summary> + /// + ///</summary> + [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_SALES_RETURN_NOTICE", IsPrimaryKey = true)] + public decimal? Id { get; set; } + /// <summary> + /// 鍗曟嵁绫诲瀷 + ///</summary> + [SugarColumn(ColumnName = "BILL_TYPE")] + public string BillType { get; set; } + /// <summary> + /// 鍗曟嵁缂栧彿 + ///</summary> + [SugarColumn(ColumnName = "BILL_NO")] + public string BillNo { get; set; } + /// <summary> + /// 鏃ユ湡 + ///</summary> + [SugarColumn(ColumnName = "F_DATE")] + public DateTime? FDate { get; set; } + /// <summary> + /// 缁撶畻甯佸埆 + ///</summary> + [SugarColumn(ColumnName = "CURRENCY")] + public string Currency { get; set; } + /// <summary> + /// 閿�鍞儴闂� + ///</summary> + [SugarColumn(ColumnName = "SALES_DEPT")] + public string SalesDept { get; set; } + /// <summary> + /// 閫�璐у鎴� + ///</summary> + [SugarColumn(ColumnName = "RETURN_CUSTOMER")] + public string ReturnCustomer { get; set; } + /// <summary> + /// 閫�璐у師鍥� + ///</summary> + [SugarColumn(ColumnName = "RETURN_REASON")] + public string ReturnReason { get; set; } + /// <summary> + /// 浜よ揣鍦扮偣 + ///</summary> + [SugarColumn(ColumnName = "DELIVERY_LOCATION")] + public string DeliveryLocation { get; set; } + /// <summary> + /// 搴撳瓨閮ㄩ棬 + ///</summary> + [SugarColumn(ColumnName = "INVENTORY_DEPT")] + public string InventoryDept { get; set; } + /// <summary> + /// 搴撳瓨缁� + ///</summary> + [SugarColumn(ColumnName = "INVENTORY_GROUP")] + public string InventoryGroup { get; set; } + /// <summary> + /// 浠撶鍛� + ///</summary> + [SugarColumn(ColumnName = "WAREHOUSE_MANAGER")] + public string WarehouseManager { get; set; } + /// <summary> + /// 閿�鍞粍 + ///</summary> + [SugarColumn(ColumnName = "SALES_GROUP")] + public string SalesGroup { get; set; } + /// <summary> + /// 閿�鍞憳 + ///</summary> + [SugarColumn(ColumnName = "SALES_PERSON")] + public string SalesPerson { get; set; } + /// <summary> + /// 鏀惰揣鏂� + ///</summary> + [SugarColumn(ColumnName = "RECEIVER")] + public string Receiver { get; set; } + /// <summary> + /// 鏀惰揣鏂硅仈绯讳汉 + ///</summary> + [SugarColumn(ColumnName = "RECEIVER_CONTACT")] + public string ReceiverContact { get; set; } + /// <summary> + /// 鏀惰揣鏂瑰湴鍧� + ///</summary> + [SugarColumn(ColumnName = "RECEIVER_ADDRESS")] + public string ReceiverAddress { get; set; } + /// <summary> + /// 鏀惰揣鏂瑰鍚� + ///</summary> + [SugarColumn(ColumnName = "RECEIVER_NAME")] + public string ReceiverName { get; set; } + /// <summary> + /// 缁撶畻鏂� + ///</summary> + [SugarColumn(ColumnName = "SETTLE_PARTY")] + public string SettleParty { get; set; } + /// <summary> + /// 鍒涘缓浜� + ///</summary> + [SugarColumn(ColumnName = "CREATED_BY")] + public string CreatedBy { get; set; } + /// <summary> + /// 鍒涘缓鏃堕棿 + ///</summary> + [SugarColumn(ColumnName = "CREATED_DATE")] + public DateTime? CreatedDate { get; set; } + /// <summary> + /// 淇敼浜� + ///</summary> + [SugarColumn(ColumnName = "MODIFIED_BY")] + public string ModifiedBy { get; set; } + /// <summary> + /// 淇敼鏃堕棿 + ///</summary> + [SugarColumn(ColumnName = "MODIFIED_DATE")] + public DateTime? ModifiedDate { get; set; } + /// <summary> + /// 鍏抽棴浜� + ///</summary> + [SugarColumn(ColumnName = "CLOSED_BY")] + public string ClosedBy { get; set; } + /// <summary> + /// 鍏抽棴鍘熷洜 + ///</summary> + [SugarColumn(ColumnName = "CLOSE_REASON")] + public string CloseReason { get; set; } + /// <summary> + /// 鍏抽棴鏃ユ湡 + ///</summary> + [SugarColumn(ColumnName = "CLOSE_DATE")] + public DateTime? CloseDate { get; set; } + /// <summary> + /// 瀹℃牳浜� + ///</summary> + [SugarColumn(ColumnName = "APPROVED_BY")] + public string ApprovedBy { get; set; } + /// <summary> + /// 瀹℃牳鏃ユ湡 + ///</summary> + [SugarColumn(ColumnName = "APPROVED_DATE")] + public DateTime? ApprovedDate { get; set; } + /// <summary> + /// 浣滃簾鐘舵�� + ///</summary> + [SugarColumn(ColumnName = "CANCEL_STATUS")] + public string CancelStatus { get; set; } + /// <summary> + /// 浣滃簾浜� + ///</summary> + [SugarColumn(ColumnName = "CANCELLED_BY")] + public string CancelledBy { get; set; } + /// <summary> + /// 浣滃簾鏃ユ湡 + ///</summary> + [SugarColumn(ColumnName = "CANCEL_DATE")] + public DateTime? CancelDate { get; set; } + /// <summary> + /// 鍏抽棴鐘舵�� + ///</summary> + [SugarColumn(ColumnName = "CLOSE_STATUS")] + public string CloseStatus { get; set; } + /// <summary> + /// ERP澶碔D + ///</summary> + [SugarColumn(ColumnName = "ERP_ID")] + public string ErpId { get; set; } + /// <summary> + /// 鍗曟嵁鐘舵�� + ///</summary> + [SugarColumn(ColumnName = "BILL_STATUS")] + public string BillStatus { get; set; } - /// <summary> - /// 鍒跺崟浜� - /// </summary> - [SugarColumn(ColumnName = "CREATED_BY")] - public string CreatedBy { get; set; } + /// <summary> + /// 鑾峰彇鎴栬缃��鍥炵被鍨� + /// </summary> + [SugarColumn(ColumnName = "RETURN_TYPE")] + public string ReturnType { get; set; } - /// <summary> - /// 鍗曟嵁缂栧彿 - /// </summary> - [SugarColumn(ColumnName = "DOCUMENT_ID")] - public string DocumentId { get; set; } + /// <summary> + /// 鑾峰彇鎴栬缃�绘暟閲� + /// </summary> + [SugarColumn(ColumnName = "TOTAL_QUANTITY")] + public decimal TotalQuantity { get; set; } - /// <summary> - /// 瀹℃牳浜哄悕绉� - /// </summary> - [SugarColumn(ColumnName = "APPROVED_BY")] - public string ApprovedBy { get; set; } + /// <summary> + /// 鑾峰彇鎴栬缃潵婧愬崟鎹被鍒� + /// </summary> + [SugarColumn(ColumnName = "SOURCE_DOCUMENT_CATEGORY")] + public string SourceDocumentCategory { get; set; } - /// <summary> - /// 鍒跺崟/瀹℃牳鏃ユ湡 - /// </summary> - [SugarColumn(ColumnName = "CREATED_OR_APPROVED_DATE")] - public DateTime? CreatedOrApprovedDate { get; set; } + /// <summary> + /// 鑾峰彇鎴栬缃簮鍗曟嵁 + /// </summary> + [SugarColumn(ColumnName = "SOURCE_DOCUMENT")] + public string SourceDocument { get; set; } - /// <summary> - /// 閮ㄩ棬浠g爜 - /// </summary> - [SugarColumn(ColumnName = "DEPARTMENT_CODE")] - public string DepartmentCode { get; set; } + /// <summary> + /// 鑾峰彇鎴栬缃ˉ璐х粍缁� + /// </summary> + [SugarColumn(ColumnName = "REPLENISHMENT_ORGANIZATION")] + public string ReplenishmentOrganization { get; set; } - /// <summary> - /// 閮ㄩ棬鍚嶇О - /// </summary> - [SugarColumn(ColumnName = "DEPARTMENT_NAME")] - public string DepartmentName { get; set; } + /// <summary> + /// 鑾峰彇鎴栬缃鎴疯姹傛棩鏈� + /// </summary> + [SugarColumn(ColumnName = "CUSTOMER_REQUEST_DATE")] + public DateTime CustomerRequestDate { get; set; } - /// <summary> - /// 璐揣鍗曚綅浠g爜 - /// </summary> - [SugarColumn(ColumnName = "PURCHASER_CODE")] - public string PurchaserCode { get; set; } + /// <summary> + /// 鑾峰彇鎴栬缃��璐т笟鍔″憳 + /// </summary> + [SugarColumn(ColumnName = "RETURN_SALESMAN")] + public string ReturnSalesman { get; set; } - /// <summary> - /// 璐揣鍗曚綅鍚嶇О - /// </summary> - [SugarColumn(ColumnName = "PURCHASER_NAME")] - public string PurchaserName { get; set; } + /// <summary> + /// 鑾峰彇鎴栬缃��璐ч儴闂� + /// </summary> + [SugarColumn(ColumnName = "RETURN_DEPARTMENT")] + public string ReturnDepartment { get; set; } - /// <summary> - /// 涓氬姟鍛樹唬鐮� - /// </summary> - [SugarColumn(ColumnName = "SALESPERSON_CODE")] - public string SalespersonCode { get; set; } + /// <summary> + /// 鑾峰彇鎴栬缃��璐ц鏄� + /// </summary> + [SugarColumn(ColumnName = "RETURN_DESCRIPTION")] + public string ReturnDescription { get; set; } - /// <summary> - /// 涓氬姟鍛樺悕绉� - /// </summary> - [SugarColumn(ColumnName = "SALESPERSON_NAME")] - public string SalespersonName { get; set; } - /// <summary> - /// ERPID - /// </summary> - [SugarColumn(ColumnName = "ERP_ID")] - public string ErpId { get; set; } -} \ No newline at end of file + } +} diff --git a/StandardPda/MES.Service/Modes/SalesReturnNoticeDetail.cs b/StandardPda/MES.Service/Modes/SalesReturnNoticeDetail.cs index 3d64ef4..e6db49d 100644 --- a/StandardPda/MES.Service/Modes/SalesReturnNoticeDetail.cs +++ b/StandardPda/MES.Service/Modes/SalesReturnNoticeDetail.cs @@ -11,145 +11,225 @@ /// <summary> /// SEQ_sales /// </summary> - [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_sales", - IsPrimaryKey = true)] + [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_SALES_RETURN_NOTICE_DETAIL", IsPrimaryKey = true)] public decimal Id { get; set; } /// <summary> - /// 鍗曟嵁琛屽彿 + /// 鐗╂枡缂栫爜 /// </summary> - [SugarColumn(ColumnName = "LINE_NUMBER")] - public long? LineNumber { get; set; } + [SugarColumn(ColumnName = "MATERIAL_ID")] + public string MaterialId { get; set; } /// <summary> - /// 浜у搧浠g爜 + /// 閿�鍞崟浣� /// </summary> - [SugarColumn(ColumnName = "PRODUCT_CODE")] - public string ProductCode { get; set; } + [SugarColumn(ColumnName = "SALES_UNIT_ID")] + public string SalesUnitId { get; set; } /// <summary> - /// 浜у搧鍚嶇О + /// 閿�鍞暟閲� /// </summary> - [SugarColumn(ColumnName = "PRODUCT_NAME")] - public string ProductName { get; set; } + [SugarColumn(ColumnName = "SALES_QUANTITY")] + public decimal SalesQuantity { get; set; } /// <summary> - /// 浜у搧瑙勬牸 + /// 鏄惁璧犲搧 /// </summary> - [SugarColumn(ColumnName = "PRODUCT_SPEC")] - public string ProductSpec { get; set; } + [SugarColumn(ColumnName = "IS_FREE")] + public string IsFree { get; set; } /// <summary> - /// 閲戦 + /// 閫�璐ф棩鏈� /// </summary> - [SugarColumn(ColumnName = "AMOUNT")] - public decimal? Amount { get; set; } + [SugarColumn(ColumnName = "RETURN_DATE")] + public DateTime? ReturnDate { get; set; } /// <summary> - /// 鍗曚环 + /// 浠撳簱 /// </summary> - [SugarColumn(ColumnName = "UNIT_PRICE")] - public decimal? UnitPrice { get; set; } + [SugarColumn(ColumnName = "WAREHOUSE")] + public string Warehouse { get; set; } /// <summary> - /// 鏁伴噺 + /// 璁″垝璺熻釜鍙� /// </summary> - [SugarColumn(ColumnName = "QUANTITY")] - public decimal? Quantity { get; set; } - - /// <summary> - /// 鍑哄簱鏁伴噺 - /// </summary> - [SugarColumn(ColumnName = "OUT_QUANTITY")] - public decimal? OutQuantity { get; set; } + [SugarColumn(ColumnName = "PLAN_TRACKING_NUMBER")] + public string PlanTrackingNumber { get; set; } /// <summary> /// 鎵瑰彿 /// </summary> - [SugarColumn(ColumnName = "BATCH_NUMBER")] - public string BatchNumber { get; set; } - - /// <summary> - /// 閫�璐ф暟閲� - /// </summary> - [SugarColumn(ColumnName = "RETURN_QUANTITY")] - public decimal? ReturnQuantity { get; set; } - - /// <summary> - /// 鍙戣揣鏁伴噺 - /// </summary> - [SugarColumn(ColumnName = "DELIVERY_QUANTITY")] - public decimal? DeliveryQuantity { get; set; } + [SugarColumn(ColumnName = "LOT_NUMBER")] + public string LotNumber { get; set; } /// <summary> /// 澶囨敞 /// </summary> - [SugarColumn(ColumnName = "REMARKS")] - public string Remarks { get; set; } + [SugarColumn(ColumnName = "NOTE")] + public string Note { get; set; } /// <summary> - /// 閿�鍞鍗曞崟鍙� + /// 閫�璐х被鍨� /// </summary> - [SugarColumn(ColumnName = "SALES_ORDER_ID")] - public string SalesOrderId { get; set; } + [SugarColumn(ColumnName = "RETURN_TYPE")] + public string ReturnType { get; set; } /// <summary> - /// 閿�鍞鍗曞垎褰� + /// 搴撳瓨鍗曚綅 /// </summary> - [SugarColumn(ColumnName = "SALES_ORDER_ENTRY")] - public string SalesOrderEntry { get; set; } + [SugarColumn(ColumnName = "INVENTORY_UNIT")] + public string InventoryUnit { get; set; } /// <summary> - /// 閿�鍞鍗旾D + /// 搴撳瓨鏁伴噺 /// </summary> - [SugarColumn(ColumnName = "SALES_ORDER_DETAIL_ID")] - public string SalesOrderDetailId { get; set; } + [SugarColumn(ColumnName = "INVENTORY_QUANTITY")] + public decimal InventoryQuantity { get; set; } /// <summary> - /// 鍩烘湰鍗曚环 + /// 璐т富绫诲瀷 /// </summary> - [SugarColumn(ColumnName = "BASE_UNIT_PRICE")] - public decimal? BaseUnitPrice { get; set; } + [SugarColumn(ColumnName = "OWNER_TYPE_ID")] + public string OwnerTypeId { get; set; } /// <summary> - /// 鍩烘湰鍗曚綅鏁伴噺 + /// 璐т富 /// </summary> - [SugarColumn(ColumnName = "BASE_UNIT_QUANTITY")] - public decimal? BaseUnitQuantity { get; set; } + [SugarColumn(ColumnName = "OWNER_ID")] + public string OwnerId { get; set; } /// <summary> - /// 浠撳簱浠g爜 + /// 婧愬崟绫诲瀷 /// </summary> - [SugarColumn(ColumnName = "WAREHOUSE_CODE")] - public string WarehouseCode { get; set; } + [SugarColumn(ColumnName = "SOURCE_BILL_TYPE")] + public string SourceBillType { get; set; } /// <summary> - /// 浠撳簱鍚嶇О + /// 婧愬崟鍗曞彿 /// </summary> - [SugarColumn(ColumnName = "WAREHOUSE_NAME")] - public string WarehouseName { get; set; } + [SugarColumn(ColumnName = "SOURCE_BILL_NO")] + public string SourceBillNo { get; set; } /// <summary> - /// 鍩烘湰鍗曚綅鍑哄簱鏁伴噺 + /// 璁㈠崟鍗曞彿 /// </summary> - [SugarColumn(ColumnName = "BASE_UNIT_OUT_QUANTITY")] - public decimal? BaseUnitOutQuantity { get; set; } + [SugarColumn(ColumnName = "ORDER_BILL_NO")] + public string OrderBillNo { get; set; } /// <summary> - /// 鍗曚綅 + /// ERP琛孖D /// </summary> - [SugarColumn(ColumnName = "UNIT")] - public string Unit { get; set; } - - /// <summary> - /// ERPID - /// </summary> - [SugarColumn(ColumnName = "ERP_ID")] - public string ErpId { get; set; } + [SugarColumn(ColumnName = "ERP_LINE_ID")] + public string ErpLineId { get; set; } /// <summary> /// ERP澶碔D /// </summary> [SugarColumn(ColumnName = "ERP_HEAD_ID")] public string ErpHeadId { get; set; } + + /// <summary> + /// 琛屽彿 / Line number + /// </summary> + [SugarColumn(ColumnName = "LINE_NUMBER", SqlParameterDbType = System.Data.DbType.Int32)] + public int? FLineNumber { get; set; } + + /// <summary> + /// 琛岀姸鎬� / Line status (e.g. 'Active','Cancelled') + /// </summary> + [SugarColumn(ColumnName = "LINE_STATUS", Length = 50)] + public string FLineStatus { get; set; } + + /// <summary> + /// 閫�娆惧鎴风紪鍙� / Refund customer ID + /// </summary> + [SugarColumn(ColumnName = "REFUND_CUSTOMER", Length = 100)] + public string FRefundCustomer { get; set; } + + /// <summary> + /// 渚涘簲鍟嗙紪鐮� / Supplier code + /// </summary> + [SugarColumn(ColumnName = "SUPPLIER", Length = 100)] + public string FSupplier { get; set; } + + /// <summary> + /// 鍏嶈垂鍝佺被鍨� / Freebie type (Sample/Gift etc.) + /// </summary> + [SugarColumn(ColumnName = "FREEBIE_TYPE", Length = 50)] + public string FFreebieType { get; set; } + + /// <summary> + /// 鍏嶈垂鍝佸師鍥� / Freebie reason description + /// </summary> + [SugarColumn(ColumnName = "FREEBIE_REASON", Length = 200)] + public string FFreebieReason { get; set; } + + /// <summary> + /// 婧愬ご鍗曟嵁琛屽彿 / Source document line number + /// </summary> + [SugarColumn(ColumnName = "SOURCE_DOC_LINE_NO", SqlParameterDbType = System.Data.DbType.Int32)] + public int? FSourceDocLineNo { get; set; } + + /// <summary> + /// 婧愬ご鍗曟嵁瀛愯鍙� / Source document sub-line number + /// </summary> + [SugarColumn(ColumnName = "SOURCE_DOC_SUB_LINE_NO", SqlParameterDbType = System.Data.DbType.Int32)] + public int? FSourceDocSubLineNo { get; set; } + + /// <summary> + /// 鏉ユ簮鍗曟嵁绫诲瀷 / Source document type (PO/SO/Invoice etc.) + /// </summary> + [SugarColumn(ColumnName = "SOURCE_DOC_TYPE", Length = 50)] + public string FSourceDocType { get; set; } + + /// <summary> + /// 鍘熷鍗曟嵁琛屽彿 / Original document line number + /// </summary> + [SugarColumn(ColumnName = "ORIGINAL_DOC_LINE_NO", SqlParameterDbType = System.Data.DbType.Int32)] + public int? FOriginalDocLineNo { get; set; } + + /// <summary> + /// 琛ヨ揣缁勭粐浠g爜 / Replenishment organization code + /// </summary> + [SugarColumn(ColumnName = "REPLENISH_ORG", Length = 50)] + public string FReplenishOrg { get; set; } + + /// <summary> + /// 鏀惰揣缁勭粐浠g爜 / Receiving organization code + /// </summary> + [SugarColumn(ColumnName = "RECEIVING_ORG", Length = 50)] + public string FReceivingOrg { get; set; } + + /// <summary> + /// 鍘熶笟鍔″憳ID / Original salesman ID + /// </summary> + [SugarColumn(ColumnName = "ORIGINAL_SALESMAN", Length = 50)] + public string FOriginalSalesman { get; set; } + + /// <summary> + /// 鍘熼儴闂ㄤ唬鐮� / Original department code + /// </summary> + [SugarColumn(ColumnName = "ORIGINAL_DEPT", Length = 50)] + public string FOriginalDept { get; set; } + + /// <summary> + /// 椤圭洰缂栧彿 / Project number + /// </summary> + [SugarColumn(ColumnName = "PROJECT", Length = 100)] + public string FProject { get; set; } + + /// <summary> + /// 閫�璐у師鍥犲垎绫� / Return reason category + /// </summary> + [SugarColumn(ColumnName = "RETURN_REASON", Length = 200)] + public string FReturnReason { get; set; } + + /// <summary> + /// 閫�璐ц缁嗚鏄� / Detailed return description + /// <example>璐х墿鍦ㄨ繍杈撹繃绋嬩腑鍙戠敓鐮存崯</example> + /// </summary> + [SugarColumn(ColumnName = "RETURN_DESCRIPTION", Length = 4000)] + public string FReturnDescription { get; set; } + + } \ No newline at end of file diff --git a/StandardPda/MES.Service/service/BasicData/SalesDeliveryNoticeDetailManager.cs b/StandardPda/MES.Service/service/BasicData/SalesDeliveryNoticeDetailManager.cs new file mode 100644 index 0000000..d083dde --- /dev/null +++ b/StandardPda/MES.Service/service/BasicData/SalesDeliveryNoticeDetailManager.cs @@ -0,0 +1,78 @@ +锘縰sing SqlSugar; +using System; +using System.Collections.Generic; +using MES.Service.DB; +using MES.Service.Modes; + +namespace MES.Service.service +{ +public class SalesDeliveryNoticeDetailManager : Repository<SalesDeliveryNoticeDetail> +{ + + //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉� + + //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 SalesDeliveryNoticeDetailManager.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(), OrderByType.Asc);// 鍒嗛〉鏌ヨ鍔犳帓搴� + Console.Write(p.TotalCount);//杩斿洖鎬绘暟 + + List<IConditionalModel> conModels = new List<IConditionalModel>(); //缁勮鏉′欢鏌ヨ浣滀负鏉′欢瀹炵幇 鍒嗛〉鏌ヨ鍔犳帓搴� + conModels.Add(new ConditionalModel() { FieldName= typeof(SalesDeliveryNoticeDetail).GetProperties()[0].Name, ConditionalType = ConditionalType.Equal, FieldValue = "1" });//id=1 + var data7 = base.GetPageList(conModels, p, it => SqlFunc.GetRandom(), OrderByType.Asc); + + base.AsQueryable().Where(x => 1 == 1).ToList();//鏀寔浜嗚浆鎹㈡垚queryable,鎴戜滑鍙互鐢╭ueryable瀹炵幇澶嶆潅鍔熻兘 + + + + /*********鎻掑叆*********/ + var insertData = new SalesDeliveryNoticeDetail() { };//娴嬭瘯鍙傛暟 + var insertArray = new SalesDeliveryNoticeDetail[] { insertData }; + base.Insert(insertData);//鎻掑叆 + base.InsertRange(insertArray);//鎵归噺鎻掑叆 + var id = base.InsertReturnIdentity(insertData);//鎻掑叆杩斿洖鑷鍒� + base.AsInsertable(insertData).ExecuteCommand();//鎴戜滑鍙互杞垚 Insertable瀹炵幇澶嶆潅鎻掑叆 + + + + /*********鏇存柊*********/ + var updateData = new SalesDeliveryNoticeDetail() { };//娴嬭瘯鍙傛暟 + var updateArray = new SalesDeliveryNoticeDetail[] { updateData };//娴嬭瘯鍙傛暟 + base.Update(updateData);//鏍规嵁瀹炰綋鏇存柊 + base.UpdateRange(updateArray);//鎵归噺鏇存柊 + //base.Update(it => new SalesDeliveryNoticeDetail() { ClassName = "a", CreateTime = DateTime.Now }, it => it.id==1);// 鍙洿鏂癈lassName鍒楀拰CreateTime鍒楋紝鍏跺畠鍒椾笉鏇存柊锛屾潯浠秈d=1 + base.AsUpdateable(updateData).ExecuteCommand(); //杞垚Updateable鍙互瀹炵幇澶嶆潅鐨勬彃鍏� + + + + /*********鍒犻櫎*********/ + var deldata = new SalesDeliveryNoticeDetail() { };//娴嬭瘯鍙傛暟 + 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/StandardPda/MES.Service/service/BasicData/SalesDeliveryNoticeManager.cs b/StandardPda/MES.Service/service/BasicData/SalesDeliveryNoticeManager.cs new file mode 100644 index 0000000..34d57b6 --- /dev/null +++ b/StandardPda/MES.Service/service/BasicData/SalesDeliveryNoticeManager.cs @@ -0,0 +1,306 @@ +锘縰sing SqlSugar; +using System; +using System.Collections.Generic; +using MES.Service.DB; +using MES.Service.Modes; +using MES.Service.Dto.webApi; +using MES.Service.service.BasicData; +using System.Globalization; + +namespace MES.Service.service +{ + public class SalesDeliveryNoticeManager : Repository<SalesDeliveryNotice> + { + + //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉� + + private readonly SalesDeliveryNoticeDetailManager _SalesDeliveryDetailManager = + new(); + //ErpSalesRerurn + public bool Save(ErpSalesDelivery SalesDelivery) + { + var erpSalesDeliveryDto = SalesDelivery.OrderDto; + var mesSalesDelivery = ConvertErpToSalesDelivery(SalesDelivery.OrderDto); + var mesSalesDeliveryDatas = ConvertErpToSalesDeliveryDetail(SalesDelivery.Items); + + return UseTransaction(db => + { + switch (erpSalesDeliveryDto.Type) + { + // case "2": + // return InsertData(db, mesSalesReturn, mesSalesReturnDatas, + // rohInErpRohIn.FBILLTYPE) + // ? 1 + // : 0; + case "3": + return UpdateData(db, mesSalesDelivery, mesSalesDeliveryDatas) ? 1 : 0; + case "2": + case "4": + return SaveOrUpdateData(db, mesSalesDelivery, mesSalesDeliveryDatas, erpSalesDeliveryDto.Type) + ? 1 + : 0; + default: + throw new NotImplementedException( + $"type娌℃湁{erpSalesDeliveryDto.Type}杩欎釜绫诲瀷"); + } + }) > 0; + } + + private bool UpdateData(SqlSugarScope db, SalesDeliveryNotice mesSalesDelivery, + List<SalesDeliveryNoticeDetail> mesSalesDeliveryDatas) + { + var decimals = mesSalesDeliveryDatas.Select(s => s.Id).ToArray(); + var update = base.DeleteById(mesSalesDelivery.Id); + var insertOrUpdate = db + .Deleteable<SalesDeliveryNoticeDetail>().In(decimals) + .ExecuteCommand() > 0; + + if (update && insertOrUpdate) return true; + throw new NotImplementedException("鏇存柊澶辫触"); + } + + // 鎻掑叆鎴栨洿鏂版暟鎹殑鏂规硶 + private bool SaveOrUpdateData(SqlSugarScope db, SalesDeliveryNotice mesSalesDelivery, + List<SalesDeliveryNoticeDetail> mesSalesDeliveryDatas, string type) + { + if (mesSalesDelivery.Id != null) base.DeleteById(mesSalesDelivery.Id); + + if (mesSalesDeliveryDatas.Count > 0) + db.Deleteable<SalesDeliveryNoticeDetail>() + .Where(s => s.ErpHeadId == mesSalesDelivery.ErpId).ExecuteCommand(); + + var orUpdate = base.Insert(mesSalesDelivery); + //var baOrUpdate = _SalesDeliveryDetailManager.InsertRange(mesSalesDeliveryDatas); + foreach (var item in mesSalesDeliveryDatas) + { + _SalesDeliveryDetailManager.Insert(item); + } + + //if (orUpdate && baOrUpdate) return true; + return orUpdate; + + + throw new NotImplementedException("鎻掑叆鎴栨洿鏂板け璐�"); + } + + // 鎵归噺淇濆瓨璁板綍鐨勬柟娉� + public bool SaveList(List<ErpSalesDelivery> salesOrder) + { + var result = salesOrder.Select(Save).ToList(); + return result.All(b => b); + } + + private SalesDeliveryNotice ConvertErpToSalesDelivery( + ErpSalesDeliveryDto erpDto) + { + DateTime parsedDate; + + // 鏃堕棿鏍煎紡杞崲鍑芥暟锛孍RP鏃堕棿鏍煎紡涓� "yyyy-MM-dd HH:mm:ss" + DateTime? ParseDateTime(string dateStr) + { + if (DateTime.TryParseExact(dateStr, "yyyy-MM-dd HH:mm:ss", + CultureInfo.InvariantCulture, + DateTimeStyles.None, + out parsedDate)) + return parsedDate; + + return null; // 濡傛灉杞崲澶辫触锛岃繑鍥瀗ull + } + + var salesOrder = new SalesDeliveryNotice + { + BillNo = erpDto.FBillNo, + ErpId = erpDto.ErpID, + FDate = ParseDateTime(erpDto.FDate) ?? null, + BillType = erpDto.FBillTypeID, // 鍗曟嵁绫诲瀷 + //Currency = erpDto.FSettleCurrld, // 缁撶畻甯佸埆 + SalesDept = erpDto.FSaleDeptId, //閿�鍞儴闂� + //Customer = erpDto.FCustomerID, // 瀹㈡埛 + DeliveryMethod = erpDto.FHeadDeliveryWay, // 浜よ揣鏂瑰紡 + //DeliveryLocation = erpDto.FHeadLocId, // 浜よ揣鍦扮偣 + //Carrier = erpDto.FCarrierID, // 鎵胯繍鍟� + //TransportNo = erpDto.FCarriageNO, // 杩愯緭鍗曞彿 + //BillNoType = erpDto.FCarriageNO, // 鍗曟嵁鐘舵�� + //DeliveryDept = erpDto.FDeliveryDeptID, // 鍙戣揣閮ㄩ棬 + //InventoryGroup = erpDto.FStockerGroupId, // 搴撳瓨缁� + //WarehouseManager = erpDto.FStockerId, // 浠撶鍛� + //SalesGroup = erpDto.FSaleGroupId, // 閿�鍞粍 + SalesPerson = erpDto.FSalerId,//閿�鍞憳 + //Receiver = erpDto.FReceiveCusId, // 鏀惰揣鏂� + //ReceiverContact = erpDto.FReceiveCusContact, // 鏀惰揣鏂硅仈绯讳汉 + ReceiverAddress = erpDto.FReceiveAddress, // 鏀惰揣鏂瑰湴鍧� + //ReceiverName = erpDto.FLinkMan, // 鏀惰揣鏂瑰鍚� + //LinkPhone = erpDto.FLinkPhone,//鑱旂郴鐢佃瘽 + //SettleParty = erpDto.FSettleID, // 缁撶畻鏂� + //PayerParty = erpDto.FPayerID,//浠樻鏂� + //CreatedBy = erpDto.FCreatorId, // 鍒涘缓浜� + CreatedDate = ParseDateTime(erpDto.FCreateDate) ?? null, // 鍒涘缓鏃堕棿 + //ModifiedBy = erpDto.FModifierId, // 淇敼浜� + //ModifiedDate = ParseDateTime(erpDto.FModifyDate) ?? null, // 淇敼鏃堕棿 + //ClosedBy = erpDto.FCloserId, // 鍏抽棴浜� + //CloseReason = erpDto.FCloseReason, // 鍏抽棴鍘熷洜 + // CloseDate = ParseDateTime(erpDto.FCloseDate) ?? null, // 鍏抽棴鏃ユ湡 + ApprovedBy = erpDto.FApproverId, // 瀹℃牳浜� + ApprovedDate = ParseDateTime(erpDto.FApproveDate) ?? null, // 瀹℃牳鏃ユ湡 + //CancelStatus = erpDto.FCancelStatus, // 浣滃簾鐘舵�� + //CancelledBy = erpDto.FCancellerId, // 浣滃簾浜� + //CancelDate = ParseDateTime(erpDto.FCancelDate) ?? null, // 浣滃簾鏃ユ湡 + //CloseStatus = erpDto.FBillCloseStatus, // 鍏抽棴鐘舵�� + BillStatus = erpDto.FDocumentStatus, //鍗曟嵁鐘舵�� + DeliveryOrg = erpDto.FDeliveryOrgID, //鍙戣揣缁勭粐 + //SalesOrg = erpDto.FSaleOrgId //閿�鍞粍缁� + FSourceCategory = erpDto.FSourceCategory, + FSourceDocument = erpDto.FSourceDocument, + FDeliveryDate = erpDto.FDeliveryDate, + FProject = erpDto.FProject, + FCustomerPo = erpDto.FCustomerPo, + FShippingPolicy = erpDto.FShippingPolicy, + FShippingPort = erpDto.FShippingPort, + FDestinationPort = erpDto.FDestinationPort, + FReceiverContactID = erpDto.FReceiverContactID, + FEntryNote = erpDto.FEntryNote, + FVersionNo = erpDto.FVersionNo, + FBusinessType = erpDto.FBusinessType, + FHEADLOCID = erpDto.FHEADLOCID, + FCustId = erpDto.FCustId, + FNote = erpDto.FNote + }; + + var single = base.GetSingle(it => it.ErpId == erpDto.ErpID); + if (single != null) salesOrder.Id = single.Id; + + if (salesOrder.ErpId is null || salesOrder.ErpId=="") + { + throw new NotImplementedException( + $"琛ㄥごErpID涓嶈兘涓虹┖"); + } + return salesOrder; + } + + private List<SalesDeliveryNoticeDetail> ConvertErpToSalesDeliveryDetail( + List<ErpSalesDeliveryDetailDto> erpDtoList) + + { + var salesOrderSubList = + new List<SalesDeliveryNoticeDetail>(); + + DateTime parsedDate; + // 鏃堕棿鏍煎紡杞崲鍑芥暟锛孍RP鏃堕棿鏍煎紡涓� "yyyy-MM-dd HH:mm:ss" + DateTime? ParseDateTime(string dateStr) + { + if (DateTime.TryParseExact(dateStr, "yyyy-MM-dd HH:mm:ss", + CultureInfo.InvariantCulture, + DateTimeStyles.None, + out parsedDate)) + return parsedDate; + + return null; // 濡傛灉杞崲澶辫触锛岃繑鍥瀗ull + } + + + + foreach (var erpDto in erpDtoList) + { + var salesOrderSub = new SalesDeliveryNoticeDetail + { + ErpLineId = erpDto.ErpID,//ERP琛孖D + ErpHeadId = erpDto.EHID,//ERP澶碔D + MaterialId = erpDto.FMaterialId,//鐗╂枡缂栧彿 + //MaterialName = erpDto.FMaterialName,// 鐗╂枡鍚嶇О + //MaterialSpecification = erpDto.FMaterialModel,//瑙勬牸鍨嬪彿 + SalesUnitId = erpDto.FUnitID,//閿�鍞崟浣� + SalesQuantity = Convert.ToDecimal(erpDto.FQty),//閿�鍞暟閲� + //IsFree = erpDto.FIsFree,//鏄惁璧犲搧 + //DeliveryDate = ParseDateTime(erpDto.FDeliverydate),//瑕佽揣鏃ユ湡 + //Warehouse = erpDto.FStockId,//鍑鸿揣浠撳簱 + //PlanTrackingNumber = erpDto.FMtoNo,//璁″垝璺熻釜鍙� + //LotNumber = erpDto.FLot,//鎵瑰彿 + SrcBillNo = erpDto.FSrcBillNo,//婧愬崟缂栧彿 + //PriceQty = erpDto.FPriceUnitQty,//璁′环鏁伴噺 + OwnerId = erpDto.FOwnerIdHead,//璐т富 + //InventoryUnit = erpDto.FStockUnitID,//搴撳瓨鍗曚綅 + //InventoryQuantity = Convert.ToDecimal(erpDto.FStockQty),//搴撳瓨鏁伴噺 + //MaterialCategory = erpDto.FMaterialType,//鐗╂枡绫诲埆 + PlanDeliveryDate = ParseDateTime(erpDto.FPlanDeliveryDate),//璁″垝鍙戣揣鏃ユ湡 + //OutLmtUnit = erpDto.FOutLmtUnit,//瓒呭彂鎺у埗鍗曚綅 + //OutMaxQty = erpDto.FOutMaxQty,//鍑哄簱涓婇檺 + //OutMinQty = erpDto.FOutMinQty,//鍑哄簱涓嬮檺 + DeliveryLoc = erpDto.FDeliveryLoc,//浜よ揣鍦扮偣 + DeliverylAddress = erpDto.FDeliveryLAddress,//浜よ揣鍦板潃 + SourceBillNo = erpDto.FSrcBillNo,//鍘熷崟鍗曞彿 + //OrderBillNo = erpDto.FOrderNo,//璁㈠崟鍗曞彿 + //TerminationStatus = erpDto.FTerminationStatus,//缁堟鐘舵�� + //TerminationDate = ParseDateTime(erpDto.FTerminateDate),//涓氬姟缁堟鏃ユ湡 + //SumOutQty = erpDto.FSumOutQty,//绱鍑哄簱鏁伴噺 + //RemainOutQty = erpDto.FRemainOutQty,//鏈嚭搴撴暟閲� + //NOTE = erpDto.FEntrynote//澶囨敞 + FDeliveryDate = erpDto.FDeliveryDate, + FMapId = erpDto.FMapId, + FMapName = erpDto.FMapName, + FMapId2 = erpDto.FMapId2, + FProject = erpDto.FProject, + FStorageLocation = erpDto.FStorageLocation, + FFreeItemType = erpDto.FFreeItemType, + FBodyNote = erpDto.FBodyNote, + FAvailableStock = erpDto.FAvailableStock, + FInventoryQueryTime = erpDto.FInventoryQueryTime, + FLineStatus = erpDto.FLineStatus, + FReceiveAddressFull = erpDto.FReceiveAddressFull, + FReceiverContact = erpDto.FReceiverContact, + FReturnExchangeAllowed = erpDto.FReturnExchangeAllowed, + FOutsourcedProcessQty = erpDto.FOutsourcedProcessQty, + FAvailableDate = erpDto.FAvailableDate, + FCommitmentDate = erpDto.FCommitmentDate, + FCustomerConfirmShipDate = erpDto.FCustomerConfirmShipDate, + FPlannedOrg = erpDto.FPlannedOrg, + FVendorDirectShip = erpDto.FVendorDirectShip, + FSupplySource = erpDto.FSupplySource, + FSupplyType = erpDto.FSupplyType, + FSupplyOrg = erpDto.FSupplyOrg, + FSupplier = erpDto.FSupplier, + FShippingMethod = erpDto.FShippingMethod, + FMRPDR = erpDto.FMRPDR, + FDemandCategory = erpDto.FDemandCategory, + FInventoryPlanning = erpDto.FInventoryPlanning, + FLineRemark = erpDto.FLineRemark, + FSourceDocCategory = erpDto.FSourceDocCategory, + FSourceDocNo = erpDto.FSourceDocNo, + FSourceDocLineNo = erpDto.FSourceDocLineNo, + FLINE_NO = erpDto.FLINE_NO + + }; + if (salesOrderSub.ErpLineId is null || salesOrderSub.ErpLineId=="") + { + throw new NotImplementedException( + $"鏄庣粏琛孍rpID锛圗RP琛孖D锛変笉鑳戒负绌�"); + } + if (salesOrderSub.ErpHeadId is null || salesOrderSub.ErpHeadId == "") + { + throw new NotImplementedException( + $"鏄庣粏琛孍HID锛圗RP澶碔D锛変笉鑳戒负绌�"); + } + var single = _SalesDeliveryDetailManager.GetSingle(it => + it.ErpLineId == salesOrderSub.ErpLineId); + if (single != null) salesOrderSub.Id = single.Id; + var mesLinkU9 = Db.Queryable<MesLinkU9>() +.Where(x => x.U9Id == erpDto.FMaterialId + && x.OrgId == erpDto.FSupplyOrg + && x.TableType == "MES_ITEMS").First(); + + if (mesLinkU9 != null) salesOrderSub.MaterialId = mesLinkU9.MesId; + + + var mesLinkU92 = Db.Queryable<MesLinkU9>() + .Where(x => x.U9Id == erpDto.FProject + && x.OrgId == erpDto.FSupplyOrg + && x.TableType == "MES_PROJECT").First(); + + if (mesLinkU92 != null) salesOrderSub.FProject = mesLinkU92.MesId; + salesOrderSubList.Add(salesOrderSub); + } + + return salesOrderSubList; + } + + } +} \ No newline at end of file diff --git a/StandardPda/MES.Service/service/BasicData/SalesOrderManager.cs b/StandardPda/MES.Service/service/BasicData/SalesOrderManager.cs index 7017bb6..dfe1746 100644 --- a/StandardPda/MES.Service/service/BasicData/SalesOrderManager.cs +++ b/StandardPda/MES.Service/service/BasicData/SalesOrderManager.cs @@ -1,6 +1,10 @@ -锘縰sing MES.Service.DB; +锘縰sing AngleSharp.Dom; +using MES.Service.DB; +using MES.Service.Dto.webApi; using MES.Service.Modes; using SqlSugar; +using System.Data; +using System.Globalization; namespace MES.Service.service.BasicData; @@ -8,72 +12,166 @@ { //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉� - //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 SalesOrderManager.cs - - - #region 鏁欏鏂规硶 - - /// <summary> - /// 浠撳偍鏂规硶婊¤冻涓嶄簡澶嶆潅涓氬姟闇�姹傦紝涓氬姟浠g爜璇峰湪杩欓噷闈㈠畾涔夋柟娉� - /// </summary> - public void Study() + private readonly SalesOrderDetailManager _SalesOrderDetailManager = new(); + //ErpSalesOrder + public bool Save(ErpSalesOrder SalesOrder) { - /*********鏌ヨ*********/ + var erpSalesOrderDto = SalesOrder.OrderDto; + var mesSalesOrder = ConvertErpToSalesOrder(SalesOrder.OrderDto); + var mesSalesOrderDatas = ConvertErpToSalesOrderDetail(SalesOrder.Items); - 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 + return UseTransaction(db => { - FieldName = typeof(SalesOrder).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 SalesOrder(); //娴嬭瘯鍙傛暟 - var insertArray = new[] { insertData }; - base.Insert(insertData); //鎻掑叆 - base.InsertRange(insertArray); //鎵归噺鎻掑叆 - var id = base.InsertReturnIdentity(insertData); //鎻掑叆杩斿洖鑷鍒� - AsInsertable(insertData).ExecuteCommand(); //鎴戜滑鍙互杞垚 Insertable瀹炵幇澶嶆潅鎻掑叆 - - - /*********鏇存柊*********/ - var updateData = new SalesOrder(); //娴嬭瘯鍙傛暟 - var updateArray = new[] { updateData }; //娴嬭瘯鍙傛暟 - base.Update(updateData); //鏍规嵁瀹炰綋鏇存柊 - base.UpdateRange(updateArray); //鎵归噺鏇存柊 - //base.Update(it => new SalesOrder() { ClassName = "a", CreateTime = DateTime.Now }, it => it.id==1);// 鍙洿鏂癈lassName鍒楀拰CreateTime鍒楋紝鍏跺畠鍒椾笉鏇存柊锛屾潯浠秈d=1 - AsUpdateable(updateData).ExecuteCommand(); //杞垚Updateable鍙互瀹炵幇澶嶆潅鐨勬彃鍏� - - - /*********鍒犻櫎*********/ - var deldata = new SalesOrder(); //娴嬭瘯鍙傛暟 - base.Delete(deldata); //鏍规嵁瀹炰綋鍒犻櫎 - base.DeleteById(1); //鏍规嵁涓婚敭鍒犻櫎 - base.DeleteById(new[] { 1, 2 }); //鏍规嵁涓婚敭鏁扮粍鍒犻櫎 - base.Delete(it => 1 == 2); //鏍规嵁鏉′欢鍒犻櫎 - AsDeleteable().Where(it => 1 == 2) - .ExecuteCommand(); //杞垚Deleteable瀹炵幇澶嶆潅鐨勬搷浣� + switch (erpSalesOrderDto.Type) + { + case "3": + return DeleteData(db, mesSalesOrder, mesSalesOrderDatas) ? 1 : 0; + case "2": + case "4": + case "5": + return SaveOrUpdateData(db, mesSalesOrder, mesSalesOrderDatas, erpSalesOrderDto.Type) ? 1: 0; + default: + throw new NotImplementedException( $"type娌℃湁{erpSalesOrderDto.Type}杩欎釜绫诲瀷"); + } + }) > 0; } - #endregion + private bool DeleteData(SqlSugarScope db, SalesOrder mesSalesOrder,List<SalesOrderDetail> mesSalesOrderDatas) + { + var decimals = mesSalesOrderDatas.Select(s => s.Id).ToArray(); + var update = base.DeleteById(mesSalesOrder.Id); + var insertOrUpdate = db.Deleteable<SalesOrderDetail>().In(decimals).ExecuteCommand() > 0; + + if (update && insertOrUpdate) + { + return true; + } + throw new NotImplementedException("鏇存柊澶辫触"); + } + + // 鎻掑叆鎴栨洿鏂版暟鎹殑鏂规硶 + private bool SaveOrUpdateData(SqlSugarScope db, SalesOrder mesSalesOrder,List<SalesOrderDetail> mesSalesOrderDatas,string type) + { + if (mesSalesOrder.Id != null) + { + base.DeleteById(mesSalesOrder.Id); + } + + if (mesSalesOrderDatas.Count > 0) + { + db.Deleteable<SalesOrderDetail>().Where(s => s.EHID == mesSalesOrder.ErpID).ExecuteCommand(); + } + + var orUpdate = base.Insert(mesSalesOrder); + var baOrUpdate = _SalesOrderDetailManager.InsertRange(mesSalesOrderDatas); + if (orUpdate && baOrUpdate) + { + return true; + } + + throw new NotImplementedException("鎻掑叆鎴栨洿鏂板け璐�"); + } + + // 鎵归噺淇濆瓨璁板綍鐨勬柟娉� + public bool SaveList(List<ErpSalesOrder> salesOrder) + { + var result = salesOrder.Select(Save).ToList(); + return result.All(b => b); + } + + private SalesOrder ConvertErpToSalesOrder(ErpSalesOrderDto erpDto) + { + DateTime parsedDate; + + // 鏃堕棿鏍煎紡杞崲鍑芥暟锛孍RP鏃堕棿鏍煎紡涓� "yyyy-MM-dd HH:mm:ss" + DateTime? ParseDateTime(string dateStr) + { + if (DateTime.TryParseExact(dateStr, "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture, DateTimeStyles.None,out parsedDate)) + { + return parsedDate; + } + return null; // 濡傛灉杞崲澶辫触锛岃繑鍥瀗ull + } + + var salesOrder = new SalesOrder + { + BillNo = erpDto.FBillNo, + ErpID = Convert.ToDecimal(erpDto.ErpID), + FDate = ParseDateTime(erpDto.FDate) ?? null, + BillTypeId = erpDto.FBillTypeID, // 鍗曟嵁绫诲瀷 + DocumentStatus = erpDto.FDocumentStatus, // 鍗曟嵁鐘舵�� + CustId = erpDto.FCustId, // 瀹㈡埛 + SaleDeptId = erpDto.FSaleDeptId, // 閿�鍞儴闂� + EntryNote = erpDto.FEntryNote, // 澶囨敞 + FSalesPerson= erpDto.FSalesPerson, + FProject= erpDto.FProject, + FDemandCategory = erpDto.FDemandCategory, + FStartDate = erpDto.FStartDate, + FEndDate = erpDto.FEndDate + }; + + var single = base.GetSingle(it => it.ErpID == Convert.ToDecimal(erpDto.ErpID)); + if (single != null) + { + salesOrder.Id = single.Id; + } + + return salesOrder; + } + + private List<SalesOrderDetail> ConvertErpToSalesOrderDetail(List<ErpSalesOrderDetailDto> erpDtoList) + { + var salesOrderSubList = new List<SalesOrderDetail>(); + + foreach (var erpDto in erpDtoList) + { + var salesOrderSub = new SalesOrderDetail + { + ErpID = Convert.ToDecimal(erpDto.ErpID), + EHID = Convert.ToDecimal(erpDto.EHID), + MaterialId = erpDto.FMaterialId, + Qty = Convert.ToDecimal(erpDto.FQty), + PriceUnitId = erpDto.FPriceUnitId, + DeliveryDate = Convert.ToDateTime(erpDto.FDeliveryDate), + OwnerId = erpDto.FOwnerId, + EntryNote = erpDto.FEntryNote, + Lot = erpDto.FLot, + ItemNo = erpDto.FMapId, + FLineNo= erpDto.FLineNo, + FLineStatus = erpDto.FLineStatus, + FExtendField = erpDto.FExtendField, + FCustomer = erpDto.FCustomer, + FReceiveLocation= erpDto.FReceiveLocation, + FSupplyOrg= erpDto.FSupplyOrg, + FDepartment = erpDto.FDepartment, + FSalesPerson = erpDto.FSalesPerson, + FProject = erpDto.FProject, + FDemandCategory = erpDto.FDemandCategory + }; + + var single = _SalesOrderDetailManager.GetSingle(it =>it.ErpID == Convert.ToDecimal(salesOrderSub.ErpID)); + if (single != null) + { + salesOrderSub.Id = single.Id; + } + var mesLinkU9 = Db.Queryable<MesLinkU9>() + .Where(x => x.U9Id == erpDto.FMaterialId + && x.OrgId == erpDto.FSupplyOrg + && x.TableType == "MES_ITEMS").First(); + + if (mesLinkU9 != null) salesOrderSub.MaterialId = mesLinkU9.MesId; + + + var mesLinkU92 = Db.Queryable<MesLinkU9>() + .Where(x => x.U9Id == erpDto.FProject + && x.OrgId == erpDto.FSupplyOrg + && x.TableType == "MES_PROJECT").First(); + + if (mesLinkU92 != null) salesOrderSub.FProject = mesLinkU92.MesId; + + salesOrderSubList.Add(salesOrderSub); + } + + return salesOrderSubList; + } } \ No newline at end of file diff --git a/StandardPda/MES.Service/service/BasicData/SalesReturnNoticeManager.cs b/StandardPda/MES.Service/service/BasicData/SalesReturnNoticeManager.cs index 90ef3df..fb640be 100644 --- a/StandardPda/MES.Service/service/BasicData/SalesReturnNoticeManager.cs +++ b/StandardPda/MES.Service/service/BasicData/SalesReturnNoticeManager.cs @@ -1,5 +1,10 @@ 锘縰sing MES.Service.DB; +using System.Data; +using System.Globalization; +using MES.Service.Dto.webApi; using MES.Service.Modes; +using SqlSugar; +using DbType = System.Data.DbType; namespace MES.Service.service.BasicData; @@ -7,5 +12,215 @@ { //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉� - //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 SalesReturnNoticeManager.cs + private readonly SalesReturnNoticeDetailManager _SalesReturnDetailManager = + new(); + //ErpSalesRerurn + public bool Save(ErpSalesRerurn SalesReturn) + { + var erpSalesReturnDto = SalesReturn.OrderDto; + var mesSalesReturn = ConvertErpToSalesReturn(SalesReturn.OrderDto); + var mesSalesReturnDatas = ConvertErpToSalesReturnDetail(SalesReturn.Items); + + return UseTransaction(db => + { + switch (erpSalesReturnDto.Type) + { + // case "2": + // return InsertData(db, mesSalesReturn, mesSalesReturnDatas, + // rohInErpRohIn.FBILLTYPE) + // ? 1 + // : 0; + case "3": + return UpdateData(db, mesSalesReturn, mesSalesReturnDatas) ? 1 : 0; + case "2": + case "4": + return SaveOrUpdateData(db, mesSalesReturn, mesSalesReturnDatas, erpSalesReturnDto.Type) + ? 1 + : 0; + default: + throw new NotImplementedException( + $"type娌℃湁{erpSalesReturnDto.Type}杩欎釜绫诲瀷"); + } + }) > 0; + } + + private bool UpdateData(SqlSugarScope db, SalesReturnNotice mesSalesReturn, + List<SalesReturnNoticeDetail> mesSalesReturnDatas) + { + var decimals = mesSalesReturnDatas.Select(s => s.Id).ToArray(); + var update = base.DeleteById(mesSalesReturn.Id); + var insertOrUpdate = db + .Deleteable<SalesReturnNoticeDetail>().In(decimals) + .ExecuteCommand() > 0; + + if (update && insertOrUpdate) return true; + throw new NotImplementedException("鏇存柊澶辫触"); + } + + // 鎻掑叆鎴栨洿鏂版暟鎹殑鏂规硶 + private bool SaveOrUpdateData(SqlSugarScope db, SalesReturnNotice mesSalesReturn, + List<SalesReturnNoticeDetail> mesSalesReturnDatas, string type) + { + if (mesSalesReturn.Id != null) base.DeleteById(mesSalesReturn.Id); + + if (mesSalesReturnDatas.Count > 0) + db.Deleteable<SalesReturnNoticeDetail>() + .Where(s => s.ErpHeadId == mesSalesReturn.ErpId).ExecuteCommand(); + + var orUpdate = base.Insert(mesSalesReturn); + var baOrUpdate = _SalesReturnDetailManager.InsertRange(mesSalesReturnDatas); + if (orUpdate && baOrUpdate) return true; + + + throw new NotImplementedException("鎻掑叆鎴栨洿鏂板け璐�"); + } + + // 鎵归噺淇濆瓨璁板綍鐨勬柟娉� + public bool SaveList(List<ErpSalesRerurn> salesOrder) + { + var result = salesOrder.Select(Save).ToList(); + return result.All(b => b); + } + + private SalesReturnNotice ConvertErpToSalesReturn( + ErpSalesReturnDto erpDto) + { + DateTime parsedDate; + + // 鏃堕棿鏍煎紡杞崲鍑芥暟锛孍RP鏃堕棿鏍煎紡涓� "yyyy-MM-dd HH:mm:ss" + DateTime? ParseDateTime(string dateStr) + { + if (DateTime.TryParseExact(dateStr, "yyyy-MM-dd HH:mm:ss", + CultureInfo.InvariantCulture, + DateTimeStyles.None, + out parsedDate)) + return parsedDate; + + return null; // 濡傛灉杞崲澶辫触锛岃繑鍥瀗ull + } + + var salesOrder = new SalesReturnNotice + { + BillNo = erpDto.FBillNo, + ErpId = erpDto.ErpID, + FDate = ParseDateTime(erpDto.FDate) ?? null, + BillType = erpDto.FBillTypeID, // 鍗曟嵁绫诲瀷 + ReturnCustomer = erpDto.FRetcustId, // 閫�璐у鎴� + ReturnReason = erpDto.FRetcustReason, // 閫�璐у師鍥� + DeliveryLocation = erpDto.FHeadLocId, // 浜よ揣鍦扮偣 + ReceiverContact = erpDto.FReceiveCusContact, // 鏀惰揣鏂硅仈绯讳汉 + ReceiverAddress = erpDto.FReceiveAddress, // 鏀惰揣鏂瑰湴鍧� + CreatedBy = erpDto.FCreatorId, // 鍒涘缓浜� + CreatedDate = ParseDateTime(erpDto.FCreateDate) ?? null, // 鍒涘缓鏃堕棿 + ApprovedBy = erpDto.FApproverId, // 瀹℃牳浜� + ApprovedDate = ParseDateTime(erpDto.FApproveDate) ?? null, // 瀹℃牳鏃ユ湡 + BillStatus = erpDto.FDocumentStatus, //鍗曟嵁鐘舵�� + ReturnType= erpDto.ReturnType, // 閫�鍥炵被鍨� + TotalQuantity = erpDto.TotalQuantity, // 鎬绘暟閲� + SourceDocumentCategory = erpDto.SourceDocumentCategory, // 鏉ユ簮鍗曟嵁绫诲埆 + SourceDocument = erpDto.SourceDocument, // 婧愬崟鎹� + ReplenishmentOrganization= erpDto.ReplenishmentOrganization, // 琛ヨ揣缁勭粐 + CustomerRequestDate = erpDto.CustomerRequestDate, // 瀹㈡埛瑕佹眰鏃ユ湡 + ReturnSalesman= erpDto.ReturnSalesman, // 閫�璐ч攢鍞憳 + ReturnDescription = erpDto.ReturnDescription, // 閫�璐ц鏄� + ReturnDepartment = erpDto.ReturnDepartment // 閫�璐ч儴闂� + + }; + + var single = base.GetSingle(it => it.ErpId == erpDto.ErpID); + if (single != null) salesOrder.Id = single.Id; + + return salesOrder; + } + + private List<SalesReturnNoticeDetail> ConvertErpToSalesReturnDetail( + List<ErpSalesReturnDetailDto> erpDtoList) + + { + var salesOrderSubList = + new List<SalesReturnNoticeDetail>(); + + DateTime parsedDate; + // 鏃堕棿鏍煎紡杞崲鍑芥暟锛孍RP鏃堕棿鏍煎紡涓� "yyyy-MM-dd HH:mm:ss" + DateTime? ParseDateTime(string dateStr) + { + if (DateTime.TryParseExact(dateStr, "yyyy-MM-dd HH:mm:ss", + CultureInfo.InvariantCulture, + DateTimeStyles.None, + out parsedDate)) + return parsedDate; + + return null; // 濡傛灉杞崲澶辫触锛岃繑鍥瀗ull + } + + + + foreach (var erpDto in erpDtoList) + { + var salesOrderSub = new SalesReturnNoticeDetail + { + ErpLineId = erpDto.ErpID,//ERP琛孖D + ErpHeadId = erpDto.EHID,//ERP澶碔D + MaterialId = erpDto.FMaterialId,//鐗╂枡缂栧彿 + //SalesUnitId = erpDto.FUnitID,//閿�鍞崟浣� + SalesQuantity = Convert.ToDecimal(erpDto.FQty),//閿�鍞暟閲� + //IsFree = erpDto.FIsFree,//鏄惁璧犲搧 + //ReturnDate = ParseDateTime(erpDto.FDeliverydate),//閫�璐ф棩鏈� + Warehouse = erpDto.FStockId,//浠撳簱 + //PlanTrackingNumber = erpDto.FMtoNo,//璁″垝璺熻釜鍙� + LotNumber = erpDto.FLot,//鎵瑰彿 + Note = erpDto.FEntryDescription,//澶囨敞 + //ReturnType = erpDto.FRmType,//閫�璐х被鍨� + //InventoryUnit = erpDto.FStockUnitID,//搴撳瓨鍗曚綅 + //InventoryQuantity = Convert.ToDecimal(erpDto.FStockQty),//搴撳瓨鏁伴噺 + //OwnerTypeId = erpDto.FOwnerTypeID,//璐т富绫诲瀷 + OwnerId = erpDto.FOwnerId,//璐т富 + SourceBillType = erpDto.FSrcType, + SourceBillNo = erpDto.FSrcBillNo, + OrderBillNo = erpDto.FOrderNo, + FLineNumber= erpDto.FLineNumber, // 琛屽彿 + FLineStatus= erpDto.FLineStatus, // 琛岀姸鎬� + FRefundCustomer = erpDto.FRefundCustomer, // 閫�娆惧鎴� + FSupplier = erpDto.FSupplier, // 渚涘簲鍟� + FFreebieType = erpDto.FFreebieType, // 鍏嶈垂鍝佺被鍨� + FFreebieReason = erpDto.FFreebieReason, // 鍏嶈垂鍝佸師鍥� + FSourceDocLineNo = erpDto.FSourceDocLineNo, // 婧愬ご鍗曟嵁琛屽彿 + FSourceDocSubLineNo = erpDto.FSourceDocSubLineNo, // 婧愬ご鍗曟嵁瀛愯鍙� + FSourceDocType = erpDto.FSourceDocType,// 婧愬ご鍗曟嵁绫诲瀷 + FOriginalDocLineNo = erpDto.FOriginalDocLineNo,// 鍘熷鍗曟嵁琛屽彿 + FReplenishOrg = erpDto.FReplenishOrg,// 琛ヨ揣缁勭粐 + FReceivingOrg = erpDto.FReceivingOrg,// 鏀惰揣缁勭粐 + FOriginalSalesman = erpDto.FOriginalSalesman,// 鍘熷閿�鍞憳 + FOriginalDept = erpDto.FOriginalDept,// 鍘熷閮ㄩ棬 + FProject = erpDto.FProject, // 椤圭洰 + FReturnReason = erpDto.FReturnReason,// 閫�璐у師鍥� + FReturnDescription = erpDto.FReturnDescription,// 閫�璐ц鏄� + + }; + + var single = _SalesReturnDetailManager.GetSingle(it => + it.ErpLineId == salesOrderSub.ErpLineId); + if (single != null) salesOrderSub.Id = single.Id; + var mesLinkU9 = Db.Queryable<MesLinkU9>() +.Where(x => x.U9Id == erpDto.FMaterialId + && x.OrgId == erpDto.FReceivingOrg + && x.TableType == "MES_ITEMS").First(); + + if (mesLinkU9 != null) salesOrderSub.MaterialId = mesLinkU9.MesId; + + + var mesLinkU92 = Db.Queryable<MesLinkU9>() + .Where(x => x.U9Id == erpDto.FProject + && x.OrgId == erpDto.FReceivingOrg + && x.TableType == "MES_PROJECT").First(); + + if (mesLinkU92 != null) salesOrderSub.FProject = mesLinkU92.MesId; + + salesOrderSubList.Add(salesOrderSub); + } + + return salesOrderSubList; + } + + } \ No newline at end of file diff --git a/StandardPda/MES.Service/service/QC/SJService.cs b/StandardPda/MES.Service/service/QC/SJService.cs index fcc93ec..639ef64 100644 --- a/StandardPda/MES.Service/service/QC/SJService.cs +++ b/StandardPda/MES.Service/service/QC/SJService.cs @@ -34,14 +34,16 @@ } //鑾峰彇鎵�鏈夋暟鎹垎椤� - public List<SJPageResult> getPage(SJPageResult queryObj) + public (List<SJPageResult> item, int TotalCount) getPage(SJPageResult queryObj) { var db = SqlSugarHelper.GetInstance(); string[]? lineNo = null; - if (StringUtil.IsNotNullOrEmpty(queryObj.StatusUser)) - lineNo = _baseService.getUserLineNo(queryObj.StatusUser); + // if (StringUtil.IsNotNullOrEmpty(queryObj.StatusUser)) + // lineNo = _baseService.getUserLineNo(queryObj.StatusUser); + + var totalCount = 0; var data = db.Queryable<SJPageResult>() .WhereIF(lineNo != null && lineNo.Length > 0, @@ -49,18 +51,26 @@ .WhereIF(queryObj.Id != null, a => a.Id == queryObj.Id) .WhereIF(StringUtil.IsNotNullOrEmpty(queryObj.BillNo), a => a.BillNo == queryObj.BillNo) + // .WhereIF( + // StringUtil.IsNotNullOrEmpty(queryObj.Result) && + // "鏈畬鎴�".Equals(queryObj.Result), + // a => a.Result == queryObj.Result && (a.FSubmit == 0 || a.FSubmit == null)) .WhereIF( StringUtil.IsNotNullOrEmpty(queryObj.Result) && "鏈畬鎴�".Equals(queryObj.Result), - a => a.Result == queryObj.Result) + a => a.FSubmit == 0 || a.FSubmit == null) + // .WhereIF( + // StringUtil.IsNotNullOrEmpty(queryObj.Result) && + // !"鏈畬鎴�".Equals(queryObj.Result), + // a => a.Result != "鏈畬鎴�" && a.FSubmit == 1) .WhereIF( StringUtil.IsNotNullOrEmpty(queryObj.Result) && !"鏈畬鎴�".Equals(queryObj.Result), - a => a.Result != "鏈畬鎴�") + a => a.FSubmit == 1) .OrderBy(a => a.BillNo, OrderByType.Desc) - .ToPageList(queryObj.PageIndex, queryObj.Limit); + .ToPageList(queryObj.PageIndex, queryObj.Limit, ref totalCount); - return data; + return (data, totalCount); } @@ -222,7 +232,8 @@ item.Items = getQSItems(qsItemIpiReq.Id, null); var sjPageResult = new SJPageResult { Id = item.From.Id, Limit = 1, PageIndex = 1 }; - item.Result = getPage(sjPageResult)[0]; + var pageResult = getPage(sjPageResult); + item.Result = pageResult.item[0]; return item; } @@ -453,4 +464,20 @@ return withOracle; } + + public bool SJQaSubmit(LLJDto rkjDto) + { + var useTransactionWithOracle = + SqlSugarHelper.UseTransactionWithOracle(db => + { + return db.Updateable<QsItemIpiReq>() + .SetColumns(s => s.Fsubmit == 1) + .SetColumns(s => s.FsubmitBy == rkjDto.userNo) + .SetColumns(s => s.FsubmitDate == DateTime.Now) + .Where(s => s.Id == rkjDto.gid) + .ExecuteCommand(); + }); + + return useTransactionWithOracle > 0; + } } \ No newline at end of file diff --git a/StandardPda/MES.Service/service/QC/XJService.cs b/StandardPda/MES.Service/service/QC/XJService.cs index 1d78f60..c01fc0b 100644 --- a/StandardPda/MES.Service/service/QC/XJService.cs +++ b/StandardPda/MES.Service/service/QC/XJService.cs @@ -107,40 +107,43 @@ }).ToList(); } - public List<QsQaItemXj> getPage(XJPageResult queryObj) + public (List<QsQaItemXj> item, int TotalCount) getPage(XJPageResult queryObj) { var db = SqlSugarHelper.GetInstance(); var id = Convert.ToDecimal(queryObj.id); + var totalCount = 0; + string[]? lineNo = null; - if (StringUtil.IsNotNullOrEmpty(queryObj.createUser)) - lineNo = _baseService.getUserLineNo(queryObj.createUser); + // if (StringUtil.IsNotNullOrEmpty(queryObj.createUser)) + // lineNo = _baseService.getUserLineNo(queryObj.createUser); - return db - .Queryable<QsQaItemXj, Womdaa, MesLine, - MesItems>((s, a, c, b) => + var pageList = db + .Queryable<QsQaItemXj, Womdaa, + MesItems>((s, a, b) => new JoinQueryInfos( JoinType.Inner, s.BillNo == a.Daa001, - JoinType.Left, a.Daa015 == c.LineNo, JoinType.Left, s.ItemId == b.Id ) ) - .WhereIF(lineNo != null && lineNo.Length > 0, - (s, a, c, b) => lineNo.Contains(c.LineNo)) + .WhereIF( StringUtil.IsNotNullOrEmpty(queryObj.result) && "鏈畬鎴�".Equals(queryObj.result), - (s, a, c, b) => s.FcheckResu == null) + (s, a, b) => s.Fsubmit == null || s.Fsubmit == 0) + // .WhereIF( + // StringUtil.IsNotNullOrEmpty(queryObj.result) && + // !"鏈畬鎴�".Equals(queryObj.result), + // (s, a, b) => s.FcheckResu != null) .WhereIF( StringUtil.IsNotNullOrEmpty(queryObj.result) && !"鏈畬鎴�".Equals(queryObj.result), - (s, a, c, b) => s.FcheckResu != null) - .WhereIF(id > 0, (s, a, c, b) => s.Id == id) - .Select((s, a, c, b) => new QsQaItemXj + (s, a, b) => s.Fsubmit == 1) + .WhereIF(id > 0, (s, a, b) => s.Id == id) + .Select((s, a, b) => new QsQaItemXj { - Daa020 = c.LineNo, Id = s.Id, PlanQty = a.Daa008, CreateBy = s.CreateBy, @@ -152,11 +155,31 @@ ItemModel = b.ItemModel, FcheckBy = s.FcheckBy, FcheckResu = s.FcheckResu, - Remarks = s.Remarks + Remarks = s.Remarks, + Fsubmit = s.Fsubmit, + FcheckDate = s.FcheckDate, + FsubmitBy = s.FsubmitBy }).OrderBy(s => s.CreateDate, OrderByType.Desc) - .ToPageList(queryObj.PageIndex, queryObj.Limit); + .ToPageList(queryObj.PageIndex, queryObj.Limit, ref totalCount); + + return (pageList, totalCount); } + public bool XJQaSubmit(LLJDto rkjDto) + { + var useTransactionWithOracle = + SqlSugarHelper.UseTransactionWithOracle(db => + { + return db.Updateable<QsQaItemXj>() + .SetColumns(s => s.Fsubmit == 1) + .SetColumns(s => s.FsubmitBy == rkjDto.userNo) + .SetColumns(s => s.FsubmitDate == DateTime.Now) + .Where(s => s.Id == rkjDto.gid) + .ExecuteCommand(); + }); + + return useTransactionWithOracle > 0; + } public List<QsQaItemXj01> setJYItem(string itemNo) { diff --git a/StandardPda/MES.Service/service/Warehouse/MesItemQtManager.cs b/StandardPda/MES.Service/service/Warehouse/MesItemQtManager.cs index 2fefcf4..958c3ec 100644 --- a/StandardPda/MES.Service/service/Warehouse/MesItemQtManager.cs +++ b/StandardPda/MES.Service/service/Warehouse/MesItemQtManager.cs @@ -247,7 +247,7 @@ var itemIdLinkU9 = Db.Queryable<MesLinkU9>() .Where(s => s.TableType == "MES_ITEMS" - && s.U9Id == ItemQtRKList.Itemld).First(); + && s.U9Id == ItemQtRKList.ItemId).First(); if (itemIdLinkU9 == null) { @@ -260,7 +260,7 @@ if (mesItems == null) { - throw new NotImplementedException("[" + ItemQtRKList.Itemld + + throw new NotImplementedException("[" + ItemQtRKList.ItemId + "]鐗╂枡涓嶅瓨鍦紝璇峰悓姝ョ粰MES"); } var mesDepot = ""; @@ -346,7 +346,9 @@ ProductionOrder = ItemQtRKList.ProductionOrder, DailyPlan = ItemQtRKList.DailyPlan, ProductionActivity = ItemQtRKList.ProductionActivity, - FinishedProduct = ItemQtRKList.FinishedProduct + FinishedProduct = ItemQtRKList.FinishedProduct, + PickingUsage= ItemQtRKList.PickingUsage + }); } diff --git a/StandardPda/MES.Service/service/Warehouse/WomdaaManager.cs b/StandardPda/MES.Service/service/Warehouse/WomdaaManager.cs index 88d6769..7b4fa5f 100644 --- a/StandardPda/MES.Service/service/Warehouse/WomdaaManager.cs +++ b/StandardPda/MES.Service/service/Warehouse/WomdaaManager.cs @@ -2,12 +2,13 @@ using MES.Service.DB; using MES.Service.Dto.service; using MES.Service.Modes; +using MES.Service.service.BasicData; using System; using System.Collections.Generic; +using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; -using System.Data; namespace MES.Service.service.Warehouse { @@ -26,17 +27,24 @@ // join MES_LINE b on A.LINEID=b.ID // left join WOMDAA C on C.DAA015=B.LINE_NO // left join mes_items s on s.id = C.daa002 - // where LOGINID='" + id+ "' and DAA018='宸插紑宸�' order by DAA016 asc"; - + // where LOGINID='" + id + "' and DAA018='宸插紑宸�' order by DAA016 asc"; //鏀逛负鎸夌珯浣嶅彿鍙嶆煡浜х嚎锛屽啀閫氳繃浜х嚎鏌ュ嚭宸ュ崟淇℃伅 - var sql1 = @"select DAA001 tickeNo,s.ITEM_NO itemNo,s.ITEM_NAME itemName,s.ITEM_MODEL itemModel,DAA008 plannedNum from MESLINE_LIKE_CCLOGIN A - left join MESLINE_LIKE_CCLOGIN_WORKS A1 on A.id=a1.LOGINID - join MES_LINE b on A.LINEID=b.ID - left join WOMDAA C on C.DAA015=B.LINE_NO - left join mes_items s on s.id = C.daa002 - where WORKSNO='" + id + "' and DAA018='宸插紑宸�' order by DAA016 asc"; + //var sql1 = @"select DAA001 tickeNo,s.ITEM_NO itemNo,s.ITEM_NAME itemName,s.ITEM_MODEL itemModel,DAA008 plannedNum from MESLINE_LIKE_CCLOGIN A + // left join MESLINE_LIKE_CCLOGIN_WORKS A1 on A.id=a1.LOGINID + // join MES_LINE b on A.LINEID=b.ID + // left join WOMDAA C on C.DAA015=B.LINE_NO + // left join mes_items s on s.id = C.daa002 + // where WORKSNO='" + id + "' and DAA018='宸插紑宸�' order by DAA016 asc"; + + //鍙栫洿鎺ュ叧鑱旂嚎浣撶殑浜ф祴鐧诲綍鍙锋暟鎹紝鍘诲彇鑾峰彇宸ュ崟 + var sql1 = "select DAA001 tickeNo,s.ITEM_NO itemNo,s.ITEM_NAME itemName,s.ITEM_MODEL itemModel,DAA008 plannedNum from " + + "MESLINE_LIKE_CCLOGIN_WORKS A1" + + " join MES_LINE b on A1.LOGINID=b.ID" + + " left join WOMDAA C on C.DAA015=B.LINE_NO" + + " left join mes_items s on s.id = C.daa002" + + " where WORKSNO='" + id + "' and DAA018='宸插紑宸�' order by DAA016 asc"; return SQLHelper.ExecuteQuery(sql1); } @@ -46,19 +54,414 @@ /// </summary> /// <param name="id"></param> /// <returns></returns> + //public bool AddAsnInfo(AsnInfo asnInfo) + //{ + // OracleSQLHelper SQLHelper = new(); + // //璁板綍浜ф祴杩囩珯淇℃伅 + // var sql1 = @"INSERT INTO MES_SN_STATUS_DETAILS (ID,TICKET_NO,SN_NO,WORKSTATION_NO,SN_STATE,LOGIN_ID) VALUES (SEQ_MES_SN_STATUS_DETAILS_ID.NEXTVAL,'" + asnInfo.tickeNo+ "','"+ asnInfo.snNo+ "','"+ asnInfo.workstationNo+ "','"+ asnInfo.snState+ "','"+asnInfo.loginId+"')"; + // bool result = true; + // int i= SQLHelper.ExecuteNonQuery(sql1); + // //涓昏〃淇℃伅鎻掑叆鎴愬姛锛岀户缁彃鍏ラ」鐩� + // if (i > 0) { + // //鍒ゆ柇椤圭洰鏄惁涓虹┖锛屼负绌轰笉鎻掑叆 + // if (asnInfo.failItems.Count>0) + // { + // //鎻掑叆閫昏緫 + + // } + // else + // { + // result = true; + // } + + + // } else { result = false; } + + // return result; + //} public bool AddAsnInfo(AsnInfo asnInfo) { - OracleSQLHelper SQLHelper = new(); - //璁板綍浜ф祴杩囩珯淇℃伅 - var sql1 = @"INSERT INTO MES_SN_STATUS_DETAILS (ID,TICKET_NO,SN_NO,WORKSTATION_NO,SN_STATE) VALUES (SEQ_MES_SN_STATUS_DETAILS_ID.NEXTVAL,'"+ asnInfo.tickeNo+ "','"+ asnInfo.snNo+ "','"+ asnInfo.workstationNo+ "','"+ asnInfo.snState+ "')"; + var sqlHelper = new OracleSQLHelper(); bool result = true; - int i= SQLHelper.ExecuteNonQuery(sql1); - if (i > 0) {result = true;} else { result = false; } - + + var (connection, transaction) = sqlHelper.BeginTransaction(); + + try + { + // 1. 涓昏〃鎻掑叆 + var sql1 = $@" + INSERT INTO MES_SN_STATUS_DETAILS + (ID, TICKET_NO, SN_NO, WORKSTATION_NO, SN_STATE, LOGIN_ID) + VALUES (SEQ_MES_SN_STATUS_DETAILS_ID.NEXTVAL, + '{asnInfo.tickeNo}', + '{asnInfo.snNo}', + '{asnInfo.workstationNo}', + '{asnInfo.snState}', + '{asnInfo.loginId}')"; + int i = sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, sql1); + + // 2. 澶辫触椤规彃鍏� + if (i > 0 && asnInfo.failItems?.Count > 0) + { + foreach (var item in asnInfo.failItems) + { + var sql2 = $@" + INSERT INTO CC_FAIL_ITEMS + (ID, MID, DEFECT_ISSUE, ROOT_CAUSE, REPAIR_METHOD, MATERIAL_HANDLING, CREATE_DATE, CREATED_BY) + VALUES (SEQ_CC_FAIL_ITEMS.NEXTVAL, + SEQ_MES_SN_STATUS_DETAILS_ID.CURRVAL, + '{item.DefectIssue}', + '{item.RootCause}', + '{item.RepairMethod}', + '{item.MaterialHandling}', + SYSDATE, + '{asnInfo.loginId}')"; + sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, sql2); + } + } + + // 3. 閰嶄欢缁戝畾/瑙g粦 & 鏃ュ織璁板綍 + if (asnInfo.accessoryList?.Count > 0) + { + foreach (var accessory in asnInfo.accessoryList) + { + var now = "SYSDATE"; + var user = asnInfo.loginId; + var snNo = asnInfo.snNo; + var partSn = accessory.accessorySn; + var partName = accessory.accessoryName; + + if (accessory.bindingState == "0") + { + // ====== 鏍¢獙锛氬悓涓�涓厤浠禨N鏄惁宸茬粦瀹� ====== + var checkSql = $@" + SELECT COUNT(1) FROM MES_SN_PART_BINDING + WHERE PART_SN_NO = '{partSn}'"; + var exists = Convert.ToInt32(sqlHelper.ExecuteScalarWithTransaction(connection, transaction, checkSql)); + if (exists > 0) + { + throw new Exception($"閰嶄欢SN[{partSn}]宸茬粦瀹氾紝璇峰厛瑙g粦鍐嶇粦瀹氾紒"); + } + + // 缁戝畾 + var sqlBind = $@" + INSERT INTO MES_SN_PART_BINDING + (ID, SN_NO, PART_SN_NO, PART_NAME_CN, CREATE_DATE, CREATE_USER) + VALUES (SEQ_MES_SN_PART_BINDING.NEXTVAL, + '{snNo}', + '{partSn}', + '{partName}', + {now}, + '{user}')"; + sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, sqlBind); + + // 鏃ュ織 + var sqlLog = $@" + INSERT INTO MES_SN_PART_BINDING_LOG + (ID, SN_NO, PART_SN_NO, PART_NAME_CN, CREATE_DATE, CREATE_USER, OP_TYPE) + VALUES (SEQ_MES_SN_PART_BINDING_LOG.NEXTVAL, + '{snNo}', + '{partSn}', + '{partName}', + {now}, + '{user}', + 0)"; + sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, sqlLog); + } + else if (accessory.bindingState == "1") + { + // 瑙g粦 + var sqlUnbind = $@" + DELETE FROM MES_SN_PART_BINDING + WHERE SN_NO = '{snNo}' + AND PART_SN_NO = '{partSn}'"; + sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, sqlUnbind); + + // 鏃ュ織 + var sqlLog = $@" + INSERT INTO MES_SN_PART_BINDING_LOG + (ID, SN_NO, PART_SN_NO, PART_NAME_CN, CREATE_DATE, CREATE_USER, OP_TYPE) + VALUES (SEQ_MES_SN_PART_BINDING_LOG.NEXTVAL, + '{snNo}', + '{partSn}', + '{partName}', + {now}, + '{user}', + 1)"; + sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, sqlLog); + } + } + } + + transaction.Commit(); + } + catch (Exception) + { + transaction.Rollback(); + result = false; + throw; + } + finally + { + sqlHelper.CloseConnection(connection); + } + return result; } + /// <summary> + /// 璁剧疆涓鐮侊紙缁戝畾/瑙g粦 SN锛� + /// </summary> + /// <param name="mesMiddleBox">涓鐮佸強SN鏁版嵁</param> + /// <returns>杩斿洖鎵ц鐘舵��</returns> + public string[] SetMediumBoxCode(MesMiddleBox mesMiddleBox) + { + var sqlHelper = new OracleSQLHelper(); + string[] msg = new string[2]; + msg[0] = "true"; + + var (connection, transaction) = sqlHelper.BeginTransaction(); + + try + { + if (mesMiddleBox.type.ToUpper() == "A") // 缁戝畾 + { + if (mesMiddleBox.SnList.Count > 0) + { + string sql1 = $"select count(*) count from MES_MIDDLE_BOX where MEDIUMBOXCODE = '{mesMiddleBox.MediumBoxCode}'"; + DataTable data = sqlHelper.ExecuteQuery(sql1); + + if (data.Rows[0]["COUNT"].ToString() != "0") + { + msg[0] = "false"; + msg[1] = "璇ヤ腑绠辩爜宸茬粡缁戝畾SN鏁版嵁锛屽闇�鍐嶆缁戝畾璇峰厛瑙g粦锛佷腑绠辩爜锛�" + mesMiddleBox.MediumBoxCode; + transaction.Rollback(); + return msg; + } + + foreach (var item in mesMiddleBox.SnList) + { + string sqlInsert = $@" + INSERT INTO MES_MIDDLE_BOX ( + ID, MEDIUMBOXCODE, LOGIN_ID, SN_NO, TICKET_NO, CREATE_DATE, CREATED_BY + ) VALUES ( + SEQ_MES_MIDDLE_BOX_ID.NEXTVAL, + '{mesMiddleBox.MediumBoxCode}', + '{mesMiddleBox.LoginId}', + '{item.SnNo}', + '{item.TicketNo}', + SYSDATE, + '{mesMiddleBox.LoginId}' + )"; + + sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, sqlInsert); + + // 鏃ュ織璁板綍鎻掑叆锛氭搷浣滅被鍨� 0锛堢粦瀹氾級 + string logInsert = $@" + INSERT INTO MES_MIDDLE_BOX_LOG ( + ID, MEDIUMBOXCODE, LOGIN_ID, SN_NO, TICKET_NO, CREATE_DATE, CREATED_BY, OPERATION_TYPE + ) VALUES ( + MES_MIDDLE_BOX_LOG_ID.NEXTVAL, + '{mesMiddleBox.MediumBoxCode}', + '{mesMiddleBox.LoginId}', + '{item.SnNo}', + '{item.TicketNo}', + SYSDATE, + '{mesMiddleBox.LoginId}', + '0' + )"; + sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, logInsert); + } + } + else + { + msg[0] = "false"; + msg[1] = "SN鏄庣粏涓虹┖锛屾棤娉曠粦瀹氾紒"; + } + } + else if (mesMiddleBox.type.ToUpper() == "F") // 瑙g粦 + { + // 鏌ヨ瑕佽В缁戠殑璁板綍 + string sqlSelect = $@" + SELECT * FROM MES_MIDDLE_BOX WHERE MEDIUMBOXCODE = '{mesMiddleBox.MediumBoxCode}'"; + + DataTable dt = sqlHelper.ExecuteQuery(sqlSelect); + + foreach (DataRow row in dt.Rows) + { + // 鎻掑叆瑙g粦鏃ュ織锛氭搷浣滅被鍨� 1锛堣В缁戯級 + string logInsert = $@" + INSERT INTO MES_MIDDLE_BOX_LOG ( + ID, MEDIUMBOXCODE, LOGIN_ID, SN_NO, TICKET_NO, CREATE_DATE, CREATED_BY, OPERATION_TYPE + ) VALUES ( + MES_MIDDLE_BOX_LOG_ID.NEXTVAL, + '{row["MEDIUMBOXCODE"]}', + '{row["LOGIN_ID"]}', + '{row["SN_NO"]}', + '{row["TICKET_NO"]}', + SYSDATE, + '{mesMiddleBox.LoginId}', + '1' + )"; + sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, logInsert); + } + + // 鎵ц瑙g粦锛堝垹闄わ級 + string sqlDelete = $@"DELETE FROM MES_MIDDLE_BOX WHERE MEDIUMBOXCODE = '{mesMiddleBox.MediumBoxCode}'"; + sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, sqlDelete); + } + else + { + msg[0] = "false"; + msg[1] = "鏃犳晥鐨勬搷浣滅被鍨嬶紒"; + } + + transaction.Commit(); + } + catch (Exception ex) + { + transaction.Rollback(); + msg[0] = "false"; + msg[1] = ex.Message; + throw; // 寤鸿璁板綍鏃ュ織 + } + finally + { + sqlHelper.CloseConnection(connection); + } + + return msg; + } + + + + /// <summary> + /// 璁剧疆鏍堟澘鐮侊紙缁戝畾/瑙g粦 SN锛� + /// </summary> + /// <param name="mesPalletBinding">缁戝畾鍙傛暟</param> + /// <returns>杩斿洖缁戝畾缁撴灉</returns> + public string[] SetStackCode(MesPalletBinding mesPalletBinding) + { + var sqlHelper = new OracleSQLHelper(); + string[] msg = new string[2]; + msg[0] = "true"; + + var (connection, transaction) = sqlHelper.BeginTransaction(); + + try + { + // 缁戝畾 + if (mesPalletBinding.Type.ToUpper() == "A") + { + if (mesPalletBinding.SnList.Count > 0) + { + string sql1 = $"SELECT COUNT(*) COUNT FROM MES_PALLET_BINDING WHERE STACKCODE = '{mesPalletBinding.StackCode}'"; + DataTable data = sqlHelper.ExecuteQuery(sql1); + + if (data.Rows[0]["COUNT"].ToString() != "0") + { + msg[0] = "false"; + msg[1] = "璇ユ爤鏉跨爜宸茬粡缁戝畾SN鏁版嵁锛屽闇�鍐嶆缁戝畾璇峰厛瑙g粦锛佹爤鏉跨爜锛�" + mesPalletBinding.StackCode; + transaction.Rollback(); + return msg; + } + + foreach (var item in mesPalletBinding.SnList) + { + string sqlInsert = $@" + INSERT INTO MES_PALLET_BINDING ( + ID, STACKCODE, LOGIN_ID, SN_NO, TICKET_NO, MEDIUMBOXCODE, CREATE_DATE, CREATED_BY + ) VALUES ( + SEQ_MES_PALLET_BINDING_ID.NEXTVAL, + '{mesPalletBinding.StackCode}', + '{mesPalletBinding.LoginId}', + '{item.SnNo}', + '{item.TicketNo}', + '{item.MediumBoxCode}', + SYSDATE, + '{mesPalletBinding.LoginId}' + )"; + + sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, sqlInsert); + + // 鎻掑叆缁戝畾鏃ュ織锛堟搷浣滅被鍨� 0锛� + string logInsert = $@" + INSERT INTO MES_PALLET_BINDING_LOG ( + ID, STACKCODE, LOGIN_ID, SN_NO, TICKET_NO, MEDIUMBOXCODE, CREATE_DATE, CREATED_BY, OPERATION_TYPE + ) VALUES ( + MES_PALLET_BINDING_LOG_ID.NEXTVAL, + '{mesPalletBinding.StackCode}', + '{mesPalletBinding.LoginId}', + '{item.SnNo}', + '{item.TicketNo}', + '{item.MediumBoxCode}', + SYSDATE, + '{mesPalletBinding.LoginId}', + '0' + )"; + + sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, logInsert); + } + } + else + { + msg[0] = "false"; + msg[1] = "SN鏄庣粏涓虹┖锛岃纭锛�"; + } + } + // 瑙g粦 + else if (mesPalletBinding.Type.ToUpper() == "F") + { + // 鍏堟煡璇㈢粦瀹氱殑璁板綍 + string sqlSelect = $"SELECT * FROM MES_PALLET_BINDING WHERE STACKCODE = '{mesPalletBinding.StackCode}'"; + DataTable dt = sqlHelper.ExecuteQuery( sqlSelect); + + foreach (DataRow row in dt.Rows) + { + // 鎻掑叆瑙g粦鏃ュ織锛堟搷浣滅被鍨� 1锛� + string logInsert = $@" + INSERT INTO MES_PALLET_BINDING_LOG ( + ID, STACKCODE, LOGIN_ID, SN_NO, TICKET_NO, MEDIUMBOXCODE, CREATE_DATE, CREATED_BY, OPERATION_TYPE + ) VALUES ( + MES_PALLET_BINDING_LOG_ID.NEXTVAL, + '{row["STACKCODE"]}', + '{row["LOGIN_ID"]}', + '{row["SN_NO"]}', + '{row["TICKET_NO"]}', + '{row["MEDIUMBOXCODE"]}', + SYSDATE, + '{mesPalletBinding.LoginId}', + '1' + )"; + + sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, logInsert); + } + + // 鍒犻櫎缁戝畾璁板綍 + string sqlDelete = $"DELETE FROM MES_PALLET_BINDING WHERE STACKCODE = '{mesPalletBinding.StackCode}'"; + sqlHelper.ExecuteNonQueryWithTransaction(connection, transaction, sqlDelete); + } + + // 鎻愪氦浜嬪姟 + transaction.Commit(); + } + catch (Exception ex) + { + transaction.Rollback(); + msg[0] = "false"; + msg[1] = ex.Message; + throw; // 寤鸿璁板綍鏃ュ織 + } + finally + { + sqlHelper.CloseConnection(connection); + } + + return msg; + } + + } } diff --git a/StandardPda/MESApplication/Controllers/BasicData/SalesDeliveryNoticeController.cs b/StandardPda/MESApplication/Controllers/BasicData/SalesDeliveryNoticeController.cs new file mode 100644 index 0000000..44f7d43 --- /dev/null +++ b/StandardPda/MESApplication/Controllers/BasicData/SalesDeliveryNoticeController.cs @@ -0,0 +1,276 @@ +锘縰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; +using MES.Service.Modes; +using MES.Service.service; +using MES.Service.util; +using MES.Service.service.BasicData; +using MES.Service.Dto.webApi; +using Newtonsoft.Json; + +namespace MESApplication.Controllers +{ + [ApiController] + [Route("api/[controller]")] + public class SalesDeliveryNoticeController : ControllerBase + { + + + + private readonly MessageCenterManager _manager = new(); + + private SalesDeliveryNoticeManager m = new SalesDeliveryNoticeManager(); + + private readonly string METHOD = "POST"; + + private readonly string TableName = "SALES_DELIVERY_NOTICE"; + + private readonly string URL = "http://localhost:10054/api/SalesDeliveryNotice/"; + + + /// <summary> + /// 閿�鍞氦浠橀�氱煡锛圲9鏍囧噯閿�鍞級 + /// </summary> + /// <param name="salesOrder"></param> + /// <returns></returns> + [HttpPost("Save")] + public ResponseResult Save(ErpSalesDelivery salesOrder) + { + var entity = new MessageCenter(); + entity.TableName = TableName; + entity.Url = URL + "Save"; + entity.Method = METHOD; + entity.Route = salesOrder.OrderDto.FBillNo; + entity.Data = JsonConvert.SerializeObject(salesOrder); + entity.Status = 1; + entity.CreateBy = "PL017"; + try + { + dynamic resultInfos = new ExpandoObject(); + var save = m.Save(salesOrder); + + resultInfos.tbBillList = save; + + entity.Result = 0; + if (save) entity.Result = 1; + + entity.DealWith = 1; + _manager.save(entity); + + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + entity.Result = 0; + + entity.DealWith = 0; + + entity.ResultData = ex.Message; + + _manager.save(entity); + + return ResponseResult.ResponseError(ex); + } + } + + [HttpPost("SaveList")] + public ResponseResult SaveList(List<ErpSalesDelivery> units) + { + var entity = new MessageCenter(); + entity.TableName = TableName; + entity.Url = URL + "SaveList"; + entity.Method = METHOD; + entity.Data = JsonConvert.SerializeObject(units); + entity.Status = 1; + entity.CreateBy = "PL017"; + try + { + dynamic resultInfos = new ExpandoObject(); + var save = m.SaveList(units); + resultInfos.tbBillList = save; + + entity.Result = 0; + if (save) entity.Result = 1; + + entity.DealWith = 1; + _manager.save(entity); + + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + entity.Result = 0; + + entity.DealWith = 0; + + entity.ResultData = ex.Message; + + _manager.save(entity); + + return ResponseResult.ResponseError(ex); + } + } + + + /***杩涘叆妯$増绠$悊鍙互淇敼妯$増***/ + + /// <summary> + /// 鑾峰彇鎵�鏈� + /// </summary> + /// <returns></returns> + [HttpPost("GetList")] + public ResponseResult GetList() + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.GetList(); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + + + /// <summary> + /// 鏍规嵁涓婚敭鑾峰彇 + /// </summary> + /// <returns></returns> + [HttpPost("GetById")] + public ResponseResult GetById(int id) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.GetById(id); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + + /// <summary> + /// 鏍规嵁涓婚敭鍒犻櫎 + /// </summary> + /// <returns></returns> + [HttpPost("DeleteByIds")] + public ResponseResult DeleteByIds([FromBody] object[] ids) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.DeleteByIds(ids); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + + /// <summary> + /// 娣诲姞 + /// </summary> + /// <returns></returns> + [HttpPost("Insert")] + public ResponseResult Add([FromBody] SalesDeliveryNotice 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] SalesDeliveryNotice 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] SalesDeliveryNotice data) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.Update(data); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + } +} diff --git a/StandardPda/MESApplication/Controllers/BasicData/SalesOrderController.cs b/StandardPda/MESApplication/Controllers/BasicData/SalesOrderController.cs new file mode 100644 index 0000000..e7a88b7 --- /dev/null +++ b/StandardPda/MESApplication/Controllers/BasicData/SalesOrderController.cs @@ -0,0 +1,263 @@ +锘縰sing System.Dynamic; +using MES.Service.Dto.webApi; +using Newtonsoft.Json; +using MES.Service.Modes; +using MES.Service.service; +using MES.Service.service.BasicData; +using MES.Service.util; +using Microsoft.AspNetCore.Mvc; + +namespace MESApplication.Controllers.BasicData; + +[ApiController] +[Route("api/[controller]")] +public class SalesOrderController : ControllerBase +{ + private readonly MessageCenterManager _manager = new(); + + private readonly SalesOrderManager m = new(); + + private readonly string METHOD = "POST"; + + private readonly string TableName = "SALES_ORDER"; + + private readonly string URL = "http://localhost:10054/api/SalesOrder/"; + + /// <summary> + /// 閿�鍞鍗曪紙U9棰勬祴璁㈠崟锛� + /// </summary> + /// <param name="salesOrder"></param> + /// <returns></returns> + [HttpPost("Save")] + public ResponseResult Save(ErpSalesOrder salesOrder) + { + var entity = new MessageCenter(); + entity.TableName = TableName; + entity.Url = URL + "Save"; + entity.Method = METHOD; + entity.Route = salesOrder.OrderDto.FBillNo; + entity.Data = JsonConvert.SerializeObject(salesOrder); + entity.Status = 1; + entity.CreateBy = "PL017"; + try + { + dynamic resultInfos = new ExpandoObject(); + var save = m.Save(salesOrder); + + resultInfos.tbBillList = save; + + entity.Result = 0; + if (save) entity.Result = 1; + + entity.DealWith = 1; + _manager.save(entity); + + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + entity.Result = 0; + + entity.DealWith = 0; + + entity.ResultData = ex.Message; + + _manager.save(entity); + + return ResponseResult.ResponseError(ex); + } + } + + [HttpPost("SaveList")] + public ResponseResult SaveList(List<ErpSalesOrder> units) + { + var entity = new MessageCenter(); + entity.TableName = TableName; + entity.Url = URL + "SaveList"; + entity.Method = METHOD; + entity.Data = JsonConvert.SerializeObject(units); + entity.Status = 1; + entity.CreateBy = "PL017"; + try + { + dynamic resultInfos = new ExpandoObject(); + var save = m.SaveList(units); + resultInfos.tbBillList = save; + + entity.Result = 0; + if (save) entity.Result = 1; + + entity.DealWith = 1; + _manager.save(entity); + + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + entity.Result = 0; + + entity.DealWith = 0; + + entity.ResultData = ex.Message; + + _manager.save(entity); + + return ResponseResult.ResponseError(ex); + } + } + + /// <summary> + /// 鑾峰彇鎵�鏈� + /// </summary> + /// <returns></returns> + [HttpPost("GetList")] + public ResponseResult GetList() + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.GetList(); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + + + /// <summary> + /// 鏍规嵁涓婚敭鑾峰彇 + /// </summary> + /// <returns></returns> + [HttpPost("GetById")] + public ResponseResult GetById(int id) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.GetById(id); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + + /// <summary> + /// 鏍规嵁涓婚敭鍒犻櫎 + /// </summary> + /// <returns></returns> + [HttpPost("DeleteByIds")] + public ResponseResult DeleteByIds([FromBody] object[] ids) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.DeleteByIds(ids); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + + /// <summary> + /// 娣诲姞 + /// </summary> + /// <returns></returns> + [HttpPost("Insert")] + public ResponseResult Add([FromBody] SalesOrder 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] SalesOrder 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] SalesOrder 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/StandardPda/MESApplication/Controllers/BasicData/SalesReturnNoticeController.cs b/StandardPda/MESApplication/Controllers/BasicData/SalesReturnNoticeController.cs new file mode 100644 index 0000000..f3717be --- /dev/null +++ b/StandardPda/MESApplication/Controllers/BasicData/SalesReturnNoticeController.cs @@ -0,0 +1,272 @@ +锘縰sing System.Dynamic; +using MES.Service.Dto.webApi; +using MES.Service.Modes; +using MES.Service.service; +using MES.Service.service.BasicData; +using MES.Service.util; +using Microsoft.AspNetCore.Mvc; +using Newtonsoft.Json; + +namespace MESApplication.Controllers.BasicData; + +[ApiController] +[Route("api/[controller]")] +public class SalesReturnNoticeController : ControllerBase +{ + private readonly MessageCenterManager _manager = new(); + + private readonly SalesReturnNoticeManager m = new(); + + private readonly string METHOD = "POST"; + + private readonly string TableName = "SALES_RETURN_NOTICE"; + + private readonly string URL = "http://localhost:10054/api/SalesReturnNotice/"; + + + /// <summary> + /// 閫�璐ч�氱煡鍗� + /// </summary> + /// <param name="salesOrder"></param> + /// <returns></returns> + [HttpPost("Save")] + public ResponseResult Save(ErpSalesRerurn salesOrder) + { + var entity = new MessageCenter(); + entity.TableName = TableName; + entity.Url = URL + "Save"; + entity.Method = METHOD; + entity.Route = salesOrder.OrderDto.FBillNo; + entity.Data = JsonConvert.SerializeObject(salesOrder); + entity.Status = 1; + entity.CreateBy = "PL017"; + try + { + dynamic resultInfos = new ExpandoObject(); + var save = m.Save(salesOrder); + + resultInfos.tbBillList = save; + + entity.Result = 0; + if (save) entity.Result = 1; + + entity.DealWith = 1; + _manager.save(entity); + + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + entity.Result = 0; + + entity.DealWith = 0; + + entity.ResultData = ex.Message; + + _manager.save(entity); + + return ResponseResult.ResponseError(ex); + } + } + + [HttpPost("SaveList")] + public ResponseResult SaveList(List<ErpSalesRerurn> units) + { + var entity = new MessageCenter(); + entity.TableName = TableName; + entity.Url = URL + "SaveList"; + entity.Method = METHOD; + entity.Data = JsonConvert.SerializeObject(units); + entity.Status = 1; + entity.CreateBy = "PL017"; + try + { + dynamic resultInfos = new ExpandoObject(); + var save = m.SaveList(units); + resultInfos.tbBillList = save; + + entity.Result = 0; + if (save) entity.Result = 1; + + entity.DealWith = 1; + _manager.save(entity); + + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + entity.Result = 0; + + entity.DealWith = 0; + + entity.ResultData = ex.Message; + + _manager.save(entity); + + return ResponseResult.ResponseError(ex); + } + } + + + + + + + /***杩涘叆妯$増绠$悊鍙互淇敼妯$増***/ + + /// <summary> + /// 鑾峰彇鎵�鏈� + /// </summary> + /// <returns></returns> + [HttpPost("GetList")] + public ResponseResult GetList() + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.GetList(); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + + + /// <summary> + /// 鏍规嵁涓婚敭鑾峰彇 + /// </summary> + /// <returns></returns> + [HttpPost("GetById")] + public ResponseResult GetById(int id) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.GetById(id); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + + /// <summary> + /// 鏍规嵁涓婚敭鍒犻櫎 + /// </summary> + /// <returns></returns> + [HttpPost("DeleteByIds")] + public ResponseResult DeleteByIds([FromBody] object[] ids) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.DeleteByIds(ids); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + + /// <summary> + /// 娣诲姞 + /// </summary> + /// <returns></returns> + [HttpPost("Insert")] + public ResponseResult Add([FromBody] SalesReturnNotice 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] SalesReturnNotice 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] SalesReturnNotice 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/StandardPda/MESApplication/Controllers/QC/SJController.cs b/StandardPda/MESApplication/Controllers/QC/SJController.cs index 107d6b9..d970890 100644 --- a/StandardPda/MESApplication/Controllers/QC/SJController.cs +++ b/StandardPda/MESApplication/Controllers/QC/SJController.cs @@ -41,14 +41,14 @@ try { dynamic resultInfos = new ExpandoObject(); - var tbBillList = - new SJService().getPage(queryObj); - resultInfos.tbBillList = tbBillList; + var (item, totalCount) = new SJService().getPage(queryObj); + resultInfos.tbBillList = item; return new ResponseResult { status = 0, message = "OK", - data = resultInfos + data = resultInfos, + TotalCount = totalCount }; } catch (Exception ex) @@ -319,4 +319,27 @@ return ResponseResult.ResponseError(ex); } } + + //IqcQaSubmit + [HttpPost("SJQaSubmit")] + public ResponseResult SJQaSubmit(LLJDto rkjDto) + { + try + { + dynamic resultInfos = new ExpandoObject(); + var tbBillList = + new SJService().SJQaSubmit(rkjDto); + resultInfos.tbBillList = tbBillList; + 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/StandardPda/MESApplication/Controllers/QC/XJController.cs b/StandardPda/MESApplication/Controllers/QC/XJController.cs index ef25d6b..0ddd9d0 100644 --- a/StandardPda/MESApplication/Controllers/QC/XJController.cs +++ b/StandardPda/MESApplication/Controllers/QC/XJController.cs @@ -159,6 +159,28 @@ return ResponseResult.ResponseError(ex); } } + + [HttpPost("XJQaSubmit")] + public ResponseResult XJQaSubmit(LLJDto rkjDto) + { + try + { + dynamic resultInfos = new ExpandoObject(); + var tbBillList = + new XJService().XJQaSubmit(rkjDto); + resultInfos.tbBillList = tbBillList; + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } //setJYItem [HttpPost("setJYItem")] @@ -236,14 +258,15 @@ try { dynamic resultInfos = new ExpandoObject(); + var (item, totalCount) = new XJService().getPage(queryObj); var tbBillList = - new XJService().getPage(queryObj); - resultInfos.tbBillList = tbBillList; + resultInfos.tbBillList = item; return new ResponseResult { status = 0, message = "OK", - data = resultInfos + data = resultInfos, + TotalCount = totalCount }; } catch (Exception ex) diff --git a/StandardPda/MESApplication/Controllers/Warehouse/womdaaController.cs b/StandardPda/MESApplication/Controllers/Warehouse/womdaaController.cs index c0f541e..dfdcdd9 100644 --- a/StandardPda/MESApplication/Controllers/Warehouse/womdaaController.cs +++ b/StandardPda/MESApplication/Controllers/Warehouse/womdaaController.cs @@ -1,4 +1,5 @@ -锘縰sing MES.Service.Dto.service; +锘縰sing AngleSharp.Text; +using MES.Service.Dto.service; using MES.Service.Modes; using MES.Service.service; using MES.Service.service.Warehouse; @@ -18,7 +19,7 @@ private readonly WomdaaManager m = new(); private readonly MessageCenterManager _manager = new(); - + private readonly string METHOD = "POST"; private readonly string TableName = "womdaa"; @@ -111,6 +112,116 @@ } } + /// <summary> + ///璁剧疆涓鐮� + /// </summary> + /// <returns></returns> + [HttpPost("SetMediumBoxCode")] + public ResponseResult SetMediumBoxCode(MesMiddleBox MesMiddleBox) + { + var entity = new MessageCenter(); + entity.TableName = TableName; + entity.Url = URL + "SetMediumBoxCode"; + entity.Method = METHOD; + entity.Data = Newtonsoft.Json.JsonConvert.SerializeObject(MesMiddleBox); + entity.Status = 1; + entity.CreateBy = "PL017"; + try + { + dynamic resultInfos = new ExpandoObject(); + var result = m.SetMediumBoxCode(MesMiddleBox); + resultInfos.tbBillList = result; + + entity.Result = 0; + if (result[0].ToBoolean()) entity.Result = 1; + entity.DealWith = 1; + _manager.save(entity); + + if (result[0].ToBoolean()) + { + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + else { + return new ResponseResult + { + status = 1, + message = result[1], + data = resultInfos + }; + } + + } + catch (Exception ex) + { + entity.Result = 0; + entity.DealWith = 0; + entity.ResultData = ex.Message; + _manager.save(entity); + + return ResponseResult.ResponseError(ex); + } + } + + /// <summary> + ///璁剧疆鏍堟澘鐮� + /// </summary> + /// <returns></returns> + [HttpPost("SetStackCode")] + public ResponseResult SetStackCode(MesPalletBinding mesPalletBinding) + { + var entity = new MessageCenter(); + entity.TableName = TableName; + entity.Url = URL + "SetStackCode"; + entity.Method = METHOD; + entity.Data = Newtonsoft.Json.JsonConvert.SerializeObject(mesPalletBinding); + entity.Status = 1; + entity.CreateBy = "PL017"; + try + { + dynamic resultInfos = new ExpandoObject(); + var result = m.SetStackCode(mesPalletBinding); + resultInfos.tbBillList = result; + + entity.Result = 0; + if (result[0].ToBoolean()) entity.Result = 1; + entity.DealWith = 1; + _manager.save(entity); + + if (result[0].ToBoolean()) + { + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + else + { + return new ResponseResult + { + status = 1, + message = result[1], + data = resultInfos + }; + } + } + catch (Exception ex) + { + entity.Result = 0; + entity.DealWith = 0; + entity.ResultData = ex.Message; + _manager.save(entity); + + return ResponseResult.ResponseError(ex); + } + } + } } -- Gitblit v1.9.3