MES.Service/Dto/webApi/ErpSalesReturn.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MES.Service/Dto/webApi/ErpSalesReturnDetailDto.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MES.Service/Dto/webApi/ErpSalesReturnDto.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MES.Service/Modes/Organize.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MES.Service/Modes/SalesReturnNotice.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MES.Service/Modes/SalesReturnNoticeDetail.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MES.Service/service/BasicData/SalesReturnNoticeDetailManager.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MES.Service/service/BasicData/SalesReturnNoticeManager.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MESApplication/Controllers/BasicData/SalesReturnNoticeController.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
MESApplication/Controllers/BasicData/SalesReturnNoticeDetailController.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
MES.Service/Dto/webApi/ErpSalesReturn.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,10 @@ using MES.Service.Modes; namespace MES.Service.Dto.webApi; public class ErpSalesRerurn { public ErpSalesReturnDto OrderDto { get; set; } public List<ErpSalesReturnDetailDto> Items { get; set; } } MES.Service/Dto/webApi/ErpSalesReturnDetailDto.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,26 @@ namespace MES.Service.Dto.webApi; public class ErpSalesReturnDetailDto { public string? Type { get; set; } public string? FMaterialId { get; set; } // ç©æç¼ç public string? FUnitID { get; set; } // éå®åä½ public string? FQty { get; set; } // é宿°é public string? FIsFree { get; set; } // æ¯å¦èµ å public string? FDeliverydate { get; set; } // éè´§æ¥æ public string? FStockId { get; set; } // ä»åº public string? FMtoNo { get; set; } // 计åè·è¸ªå· public string? FLot { get; set; } // æ¹å· public string? FEntryDescription { get; set; } // 夿³¨ public string? FRmType { get; set; } // éè´§ç±»å public string? FStockUnitID { get; set; } // åºååä½ public decimal? FStockQty { get; set; } // åºåæ°é public string? FOwnerTypeID { get; set; } // 货主类å public string? FOwnerId { get; set; } // 货主 public string? FSrcType { get; set; } // æºåç±»å public string? FSrcBillNo { get; set; } // æºåç¼å· public string? FOrderNo { get; set; } // 订ååå· public string? ErpID { get; set; } // ERPID public string? EHID { get; set; } // ERP头ID } MES.Service/Dto/webApi/ErpSalesReturnDto.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,39 @@ namespace MES.Service.Dto.webApi; public class ErpSalesReturnDto { public string? Type { get; set; } public string? ErpID { get; set; } // ERPID public string? FBillTypeID { get; set; } // åæ®ç±»å public string? FBillNo { get; set; } // åæ®ç¼å· public string? FDate { get; set; } // æ¥æ public string? FSettleCurrld { get; set; } // ç»ç®å¸å« public string? FSaleDeptId { get; set; } // éå®é¨é¨ public string? FRetcustId { get; set; } // éè´§å®¢æ· public string? FRetcustReason { get; set; } // éè´§åå public string? FHeadLocId { get; set; } // 交货å°ç¹ public string? FRetDeptId { get; set; } // åºåé¨é¨ public string? FStockerGroupId { get; set; } // åºåç» public string? FStockerId { get; set; } // ä»ç®¡å public string? FSaleGroupId { get; set; } // éå®ç» public string? FSalesManId { get; set; } // éå®å public string? FReceiveCusId { get; set; } // æ¶è´§æ¹ public string? FReceiveCusContact { get; set; } // æ¶è´§æ¹è系人 public string? FReceiveAddress { get; set; } // æ¶è´§æ¹å°å public string? FLinkMan { get; set; } // æ¶è´§æ¹å§å public string? FSettleCusId { get; set; } // ç»ç®æ¹ public string? FCreatorId { get; set; } // å建人 public string? FCreateDate { get; set; } // åå»ºæ¥æ public string? FModifierId { get; set; } // æåä¿®æ¹äºº public string? FModifyDate { get; set; } // æåä¿®æ¹æ¥æ public string? FCloserId { get; set; } // å ³é人 public string? FCloseReason { get; set; } // å ³éåå public string? FCloseDate { get; set; } // å ³éæ¥æ public string? FApproverId { get; set; } // å®¡æ ¸äºº public string? FApproveDate { get; set; } // å®¡æ ¸æ¥æ public string? FCancelStatus { get; set; } // ä½åºç¶æ public string? FCancellerId { get; set; } // ä½åºäºº public string? FCancelDate { get; set; } // ä½åºæ¥æ public string? FBillCloseStatus { get; set; } // å ³éç¶æ public string? FDocumentStatus { get; set; } // åæ®ç¶æ } MES.Service/Modes/Organize.cs
@@ -9,7 +9,7 @@ { /// <summary> /// </summary> [SugarColumn(ColumnName = "ID")] [SugarColumn(ColumnName = "ID" ,IsPrimaryKey = true)] public decimal Id { get; set; } /// <summary> MES.Service/Modes/SalesReturnNotice.cs
@@ -1,7 +1,9 @@ using SqlSugar; namespace MES.Service.Modes; using System; using System.Collections.Generic; using System.Linq; using SqlSugar; namespace MES.Service.Modes { /// <summary> /// éå®éè´§éç¥å表 /// </summary> @@ -9,75 +11,174 @@ public class SalesReturnNotice { /// <summary> /// SEQ_sales /// /// </summary> [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_sales", IsPrimaryKey = true)] public decimal Id { get; set; } [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_sales", IsPrimaryKey = true)] public decimal? Id { get; set; } /// <summary> /// å¶å人 /// åæ®ç±»å /// </summary> [SugarColumn(ColumnName = "CREATED_BY")] public string CreatedBy { get; set; } [SugarColumn(ColumnName = "BILL_TYPE")] public string BillType { get; set; } /// <summary> /// åæ®ç¼å· /// </summary> [SugarColumn(ColumnName = "DOCUMENT_ID")] public string DocumentId { get; set; } [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 = "CREATED_OR_APPROVED_DATE")] public DateTime? CreatedOrApprovedDate { get; set; } [SugarColumn(ColumnName = "APPROVED_DATE")] public DateTime? ApprovedDate { get; set; } /// <summary> /// é¨é¨ä»£ç /// ä½åºç¶æ /// </summary> [SugarColumn(ColumnName = "DEPARTMENT_CODE")] public string DepartmentCode { get; set; } [SugarColumn(ColumnName = "CANCEL_STATUS")] public string CancelStatus { get; set; } /// <summary> /// é¨é¨åç§° /// ä½åºäºº /// </summary> [SugarColumn(ColumnName = "DEPARTMENT_NAME")] public string DepartmentName { get; set; } [SugarColumn(ColumnName = "CANCELLED_BY")] public string CancelledBy { get; set; } /// <summary> /// è´è´§åä½ä»£ç /// ä½åºæ¥æ /// </summary> [SugarColumn(ColumnName = "PURCHASER_CODE")] public string PurchaserCode { get; set; } [SugarColumn(ColumnName = "CANCEL_DATE")] public DateTime? CancelDate { get; set; } /// <summary> /// è´è´§åä½åç§° /// å ³éç¶æ /// </summary> [SugarColumn(ColumnName = "PURCHASER_NAME")] public string PurchaserName { get; set; } [SugarColumn(ColumnName = "CLOSE_STATUS")] public string CloseStatus { get; set; } /// <summary> /// ä¸å¡å代ç /// </summary> [SugarColumn(ColumnName = "SALESPERSON_CODE")] public string SalespersonCode { get; set; } /// <summary> /// ä¸å¡ååç§° /// </summary> [SugarColumn(ColumnName = "SALESPERSON_NAME")] public string SalespersonName { get; set; } /// <summary> /// ERPID /// ERP头ID /// </summary> [SugarColumn(ColumnName = "ERP_ID")] public string ErpId { get; set; } /// <summary> /// åæ®ç¶æ ///</summary> [SugarColumn(ColumnName = "BILL_STATUS")] public string BillStatus { get; set; } } } MES.Service/Modes/SalesReturnNoticeDetail.cs
@@ -11,145 +11,121 @@ /// <summary> /// SEQ_sales /// </summary> [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_sales", IsPrimaryKey = true)] [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_sales", 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> /// 产å代ç /// éå®åä½ /// </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> /// éå®è®¢åID /// åºåæ°é /// </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> /// ä»åºä»£ç /// æºåç±»å /// </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è¡ID /// </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头ID /// </summary> [SugarColumn(ColumnName = "ERP_HEAD_ID")] public string ErpHeadId { get; set; } } MES.Service/service/BasicData/SalesReturnNoticeDetailManager.cs
@@ -5,7 +5,7 @@ namespace MES.Service.service.BasicData; public class SalesReturnNoticeDetailManager : Repository<SalesReturnNoticeDetail> SalesReturnDetailManager : Repository<SalesReturnNoticeDetail> { //å½å类已ç»ç»§æ¿äº Repository å¢ãå ãæ¥ãæ¹çæ¹æ³ MES.Service/service/BasicData/SalesReturnNoticeManager.cs
@@ -1,6 +1,10 @@ using 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; @@ -8,71 +12,194 @@ { //å½å类已ç»ç»§æ¿äº Repository å¢ãå ãæ¥ãæ¹çæ¹æ³ //è¿éé¢åç代ç ä¸ä¼ç»è¦ç,妿è¦éæ°çæè¯·å é¤ SalesReturnNoticeManager.cs #region æå¦æ¹æ³ /// <summary> /// ä»å¨æ¹æ³æ»¡è¶³ä¸äºå¤æä¸å¡éæ±ï¼ä¸å¡ä»£ç 请å¨è¿éé¢å®ä¹æ¹æ³ /// </summary> public void Study() private readonly SalesReturnDetailManager _SalesReturnDetailManager = new(); //ErpSalesRerurn public bool Save(ErpSalesRerurn SalesReturn) { /*********æ¥è¯¢*********/ var erpSalesReturnDto = SalesReturn.OrderDto; var mesSalesReturn = ConvertErpToSalesReturn(SalesReturn.OrderDto); var mesSalesReturnDatas = ConvertErpToSalesReturnDetail(SalesReturn.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(SalesReturnNotice).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,æä»¬å¯ä»¥ç¨queryableå®ç°å¤æåè½ /*********æå ¥*********/ var insertData = new SalesReturnNotice(); //æµè¯åæ° var insertArray = new[] { insertData }; base.Insert(insertData); //æå ¥ base.InsertRange(insertArray); //æ¹éæå ¥ var id = base.InsertReturnIdentity(insertData); //æå ¥è¿åèªå¢å AsInsertable(insertData).ExecuteCommand(); //æä»¬å¯ä»¥è½¬æ Insertableå®ç°å¤ææå ¥ /*********æ´æ°*********/ var updateData = new SalesReturnNotice(); //æµè¯åæ° var updateArray = new[] { updateData }; //æµè¯åæ° base.Update(updateData); //æ ¹æ®å®ä½æ´æ° base.UpdateRange(updateArray); //æ¹éæ´æ° //base.Update(it => new SalesReturnNotice() { ClassName = "a", CreateTime = DateTime.Now }, it => it.id==1);// åªæ´æ°ClassNameååCreateTimeåï¼å ¶å®å䏿´æ°ï¼æ¡ä»¶id=1 AsUpdateable(updateData).ExecuteCommand(); //转æUpdateableå¯ä»¥å®ç°å¤æçæå ¥ /*********å é¤*********/ var deldata = new SalesReturnNotice(); //æµè¯åæ° base.Delete(deldata); //æ ¹æ®å®ä½å é¤ base.DeleteById(1); //æ ¹æ®ä¸»é®å é¤ base.DeleteById(new[] { 1, 2 }); //æ ¹æ®ä¸»é®æ°ç»å é¤ base.Delete(it => 1 == 2); //æ ¹æ®æ¡ä»¶å é¤ AsDeleteable().Where(it => 1 == 2) .ExecuteCommand(); //转æDeleteableå®ç°å¤æçæä½ 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; } #endregion 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; // æ¶é´æ ¼å¼è½¬æ¢å½æ°ï¼ERPæ¶é´æ ¼å¼ä¸º "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; // å¦æè½¬æ¢å¤±è´¥ï¼è¿ånull } var salesOrder = new SalesReturnNotice { BillNo = erpDto.FBillNo, ErpId = erpDto.ErpID, FDate = ParseDateTime(erpDto.FDate) ?? null, BillType = erpDto.FBillTypeID, // åæ®ç±»å Currency = erpDto.FSettleCurrld, // ç»ç®å¸å« SalesDept = erpDto.FSaleDeptId, //éå®é¨é¨ ReturnCustomer = erpDto.FRetcustId, // éè´§å®¢æ· ReturnReason = erpDto.FRetcustReason, // éè´§åå DeliveryLocation = erpDto.FHeadLocId, // 交货å°ç¹ InventoryDept = erpDto.FRetDeptId, // åºåé¨é¨ InventoryGroup = erpDto.FStockerGroupId, // åºåç» WarehouseManager = erpDto.FStockerId, // ä»ç®¡å SalesGroup = erpDto.FSaleGroupId, // éå®ç» SalesPerson = erpDto.FSalesManId,//éå®å Receiver = erpDto.FReceiveCusId, // æ¶è´§æ¹ ReceiverContact = erpDto.FReceiveCusContact, // æ¶è´§æ¹è系人 ReceiverAddress = erpDto.FReceiveAddress, // æ¶è´§æ¹å°å ReceiverName = erpDto.FLinkMan, // æ¶è´§æ¹å§å SettleParty = erpDto.FSettleCusId, // ç»ç®æ¹ 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 //åæ®ç¶æ }; 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; // æ¶é´æ ¼å¼è½¬æ¢å½æ°ï¼ERPæ¶é´æ ¼å¼ä¸º "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; // å¦æè½¬æ¢å¤±è´¥ï¼è¿ånull } foreach (var erpDto in erpDtoList) { var salesOrderSub = new SalesReturnNoticeDetail { ErpLineId = erpDto.ErpID,//ERPè¡ID ErpHeadId = erpDto.EHID,//ERP头ID 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 }; var single = _SalesReturnDetailManager.GetSingle(it => it.ErpLineId == salesOrderSub.ErpLineId); if (single != null) salesOrderSub.Id = single.Id; salesOrderSubList.Add(salesOrderSub); } return salesOrderSubList; } } MESApplication/Controllers/BasicData/SalesReturnNoticeController.cs
@@ -1,8 +1,11 @@ using 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; @@ -10,8 +13,110 @@ [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/"; // [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); } } /***è¿å ¥æ¨¡ç管çå¯ä»¥ä¿®æ¹æ¨¡ç***/ MESApplication/Controllers/BasicData/SalesReturnNoticeDetailController.cs
@@ -8,9 +8,9 @@ [ApiController] [Route("api/[controller]")] public class SalesReturnNoticeDetailController : ControllerBase public class SalesReturnDetailController : ControllerBase { private readonly SalesReturnNoticeDetailManager m = new(); private readonly SalesReturnDetailManager m = new(); /***è¿å ¥æ¨¡ç管çå¯ä»¥ä¿®æ¹æ¨¡ç***/