From 99ab5b79d00655055936cc5454a74539c82fa02c Mon Sep 17 00:00:00 2001 From: yuyubo <1870149533@qq.com> Date: Tue, 29 Apr 2025 10:51:23 +0800 Subject: [PATCH] 11 --- .../IServices/IPurchaseOrderService.cs | 2 +- .../InvoiceOrder/InvoiceOrderService.cs | 2 +- .../PurchaseOrder/PurchaseOrderService.cs | 4 ++- .../Controllers/PurchaseOrderController.cs | 33 +++++++++++++++++++ 4 files changed, 38 insertions(+), 3 deletions(-) diff --git a/MyCode.Project.Services/IServices/IPurchaseOrderService.cs b/MyCode.Project.Services/IServices/IPurchaseOrderService.cs index 41f734c..fb5521a 100644 --- a/MyCode.Project.Services/IServices/IPurchaseOrderService.cs +++ b/MyCode.Project.Services/IServices/IPurchaseOrderService.cs @@ -75,7 +75,7 @@ namespace MyCode.Project.Services string BatchAddInvoiceOrder(AddOrder act, LoginInfo loginInfo); - void AddOrderFromKingDee(); + void AddOrderFromKingDee(string SupplierId = ""); /// /// 修改供应商的承诺时间 diff --git a/MyCode.Project.Services/Implementation/InvoiceOrder/InvoiceOrderService.cs b/MyCode.Project.Services/Implementation/InvoiceOrder/InvoiceOrderService.cs index 5ee62f5..56df38f 100644 --- a/MyCode.Project.Services/Implementation/InvoiceOrder/InvoiceOrderService.cs +++ b/MyCode.Project.Services/Implementation/InvoiceOrder/InvoiceOrderService.cs @@ -94,7 +94,7 @@ namespace MyCode.Project.Services.Implementation { var result = _kingDeeService.Delete("PUR_ReceiveBill", billDelete); //LogHelper.Info(result); - _invoiceOrderItemRepository.Delete(t => t.Id == act.Id); + _invoiceOrderItemRepository.Delete(t => t.InvoiceOrderId == orderHead.Id); _invoiceOrderRepository.Delete(t=>t.Id== orderHead.Id); var purchaseItem = _purchaseOrderItemRepository.Queryable().Where(t => OrderItemIds.Contains(t.Id)).ToList(); diff --git a/MyCode.Project.Services/Implementation/PurchaseOrder/PurchaseOrderService.cs b/MyCode.Project.Services/Implementation/PurchaseOrder/PurchaseOrderService.cs index ccbd3d5..b7dab2c 100644 --- a/MyCode.Project.Services/Implementation/PurchaseOrder/PurchaseOrderService.cs +++ b/MyCode.Project.Services/Implementation/PurchaseOrder/PurchaseOrderService.cs @@ -468,9 +468,11 @@ namespace MyCode.Project.Services.Implementation /// 抓取金蝶的采购订单 /// - public void AddOrderFromKingDee() + public void AddOrderFromKingDee(string SupplierId="") { var userList = _sysLoginRepository.Queryable().Where(t => t.Status == 1 && t.IsDeleted == false && t.SystemType == 0 && t.SupplierId != "").ToList(); + if (SupplierId != "") + userList = userList.Where(t => t.SupplierId == SupplierId).ToList(); userList.ForEach(t => { var maxDate = _purchaseOrderRepository.Queryable().Where(h => h.SupplierId == t.SupplierId).Max(h => h.FModifyDate); diff --git a/MyCode.Project.WebApi/Areas/Admin/Controllers/PurchaseOrderController.cs b/MyCode.Project.WebApi/Areas/Admin/Controllers/PurchaseOrderController.cs index 9d5783d..487870c 100644 --- a/MyCode.Project.WebApi/Areas/Admin/Controllers/PurchaseOrderController.cs +++ b/MyCode.Project.WebApi/Areas/Admin/Controllers/PurchaseOrderController.cs @@ -3,6 +3,7 @@ using MyCode.Project.Domain.Message.Common; using MyCode.Project.Domain.Message.Request.PurchaseOrder; using MyCode.Project.Domain.Message.Request.User; using MyCode.Project.Domain.Message.Response.PurchaseOrder; +using MyCode.Project.Infrastructure.Cache; using MyCode.Project.Infrastructure.Common; using MyCode.Project.Infrastructure.Exceptions; using MyCode.Project.Infrastructure.Extensions; @@ -19,6 +20,7 @@ namespace MyCode.Project.WebApi.Areas.Admin.Controllers public class PurchaseOrderController : BaseAdminController { private IPurchaseOrderService _purchaseOrderService; + /// /// @@ -104,5 +106,36 @@ namespace MyCode.Project.WebApi.Areas.Admin.Controllers return _purchaseOrderService.BatchAddInvoiceOrder(act, this.CurrentLogin); } #endregion + + #region AddOrderFromKingDee + /// + /// 抓取金蝶采购订单 + /// + /// + [HttpGet] + public void AddOrderFromKingDee() + { + + if (this.CurrentLogin.RoleType == 0) + { + SystemCache systemCache = new SystemCache(); + string key = "AddOrderFromKingDee" + this.CurrentLogin.SupplierId; + var kk = systemCache.Exists(key); + if (!kk) + { + systemCache.Set(key, 1, new System.TimeSpan(0, 5, 0)); + _purchaseOrderService.AddOrderFromKingDee(this.CurrentLogin.SupplierId); + } + else + { + throw new BaseException("每获取一次数据需要间隔5分钟"); + } + } + else + { + throw new BaseException("管理员只能查看数据"); + } + } + #endregion } }