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
}
}