From ce9868a6552d9fabe6fac91bf6b41d961018eb6b Mon Sep 17 00:00:00 2001
From: yuyubo <1870149533@qq.com>
Date: Thu, 6 Nov 2025 18:12:17 +0800
Subject: [PATCH 1/3] 123
---
.../JackYun/BusiOrderGoodsDocInSummary.cs | 94 +----------
.../JackYun/StorageGoodsDocOutV2Response.cs | 2 +-
.../Model/StorageGoodsDocOutHead.cs | 7 +
.../Model/YTKJTShopParameter.cs | 16 ++
.../IBusiOrderGoodsDocInRepository.cs | 10 +-
.../BusiOrderGoodsDocInRepository.cs | 147 +++++++++++-------
.../IServices/IJackYunService.cs | 2 +-
.../IServices/IJackYunTaskService.cs | 7 +-
.../Implementation/JackYunService.cs | 69 +++-----
.../Implementation/JackYunTaskService.cs | 122 ++++++++++++++-
.../Controllers/TestController.cs | 14 ++
Reportapi/MyCode.Project.WebApi/Web.config | 4 +-
12 files changed, 291 insertions(+), 203 deletions(-)
diff --git a/Reportapi/MyCode.Project.Domain/Message/Response/JackYun/BusiOrderGoodsDocInSummary.cs b/Reportapi/MyCode.Project.Domain/Message/Response/JackYun/BusiOrderGoodsDocInSummary.cs
index 1f6e0e8..66158b8 100644
--- a/Reportapi/MyCode.Project.Domain/Message/Response/JackYun/BusiOrderGoodsDocInSummary.cs
+++ b/Reportapi/MyCode.Project.Domain/Message/Response/JackYun/BusiOrderGoodsDocInSummary.cs
@@ -1,4 +1,5 @@
-using System;
+using MyCode.Project.Domain.Model;
+using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
@@ -6,97 +7,10 @@ using System.Threading.Tasks;
namespace MyCode.Project.Domain.Message.Response.JackYun
{
- public class BusiOrderGoodsDocInSummary
+ public class BusiOrderGoodsDocInSummary: PushKingDeeGoodsDocIn
{
- ///
- /// 出入库日期
- ///
- public DateTime InOutDate2 { get; set; }
+
- ///
- /// 仓库编码
- ///
- public string WarehouseCode { get; set; }
-
- ///
- /// 仓库名称
- ///
- public string WarehouseName { get; set; }
-
- ///
- /// 商品编码
- ///
- public string GoodsNo { get; set; }
-
- ///
- /// 商品名称
- ///
- public string GoodsName { get; set; }
-
- ///
- /// 规格
- ///
- public string SkuName { get; set; }
-
- ///
- /// 单位
- ///
- public string UnitName { get; set; }
-
- ///
- /// 条码
- ///
- public string SkuBarcode { get; set; }
-
- ///
- /// 总数量
- ///
- public decimal Quantity { get; set; }
-
- ///
- /// 总入库金额
- ///
- public decimal BaceCurrencyCostAmount { get; set; }
-
- ///
- /// 总本币无税金额
- ///
- public decimal BaceCurrencyNoTaxAmount { get; set; }
-
- ///
- /// 总本币含税金额
- ///
- public decimal BaceCurrencyWithTaxAmount { get; set; }
-
- ///
- /// 总本币税额
- ///
- public decimal BaceCurrencyTaxAmount { get; set; }
-
- ///
- /// 总原币无税金额
- ///
- public decimal TransNoTaxAmount { get; set; }
-
- ///
- /// 总原币含税金额
- ///
- public decimal TransHasTaxAmount { get; set; }
-
- ///
- /// 总原币税额
- ///
- public decimal TransTaxAmount { get; set; }
-
- ///
- /// 入库单数
- ///
- public int OrderCount { get; set; }
-
- ///
- /// 明细行数
- ///
- public int DetailCount { get; set; }
}
}
\ No newline at end of file
diff --git a/Reportapi/MyCode.Project.Domain/Message/Response/JackYun/StorageGoodsDocOutV2Response.cs b/Reportapi/MyCode.Project.Domain/Message/Response/JackYun/StorageGoodsDocOutV2Response.cs
index 342b099..961a00a 100644
--- a/Reportapi/MyCode.Project.Domain/Message/Response/JackYun/StorageGoodsDocOutV2Response.cs
+++ b/Reportapi/MyCode.Project.Domain/Message/Response/JackYun/StorageGoodsDocOutV2Response.cs
@@ -31,7 +31,7 @@ namespace MyCode.Project.Domain.Message.Response.JackYun
///
/// 出库时间
///
- public string InOutDate { get; set; }
+ public DateTime InOutDate { get; set; }
///
/// 创建时间
diff --git a/Reportapi/MyCode.Project.Domain/Model/StorageGoodsDocOutHead.cs b/Reportapi/MyCode.Project.Domain/Model/StorageGoodsDocOutHead.cs
index f77cb5c..fa596be 100644
--- a/Reportapi/MyCode.Project.Domain/Model/StorageGoodsDocOutHead.cs
+++ b/Reportapi/MyCode.Project.Domain/Model/StorageGoodsDocOutHead.cs
@@ -541,5 +541,12 @@ namespace MyCode.Project.Domain.Model
[SugarColumn(IsPrimaryKey=true)]
public Guid Id {get;set;}
+ ///
+ /// Desc:0=未处理 1=已合并 2=已推送
+ /// Default:0
+ /// Nullable:True
+ ///
+ public int? Status {get;set;}
+
}
}
diff --git a/Reportapi/MyCode.Project.Domain/Model/YTKJTShopParameter.cs b/Reportapi/MyCode.Project.Domain/Model/YTKJTShopParameter.cs
index a9efdf4..2ce34fe 100644
--- a/Reportapi/MyCode.Project.Domain/Model/YTKJTShopParameter.cs
+++ b/Reportapi/MyCode.Project.Domain/Model/YTKJTShopParameter.cs
@@ -245,5 +245,21 @@ namespace MyCode.Project.Domain.Model
[SugarColumn(ColumnName="F_PURCHASINGWAREHOUSECODE")]
public string FPURCHASINGWAREHOUSECODE {get;set;}
+ ///
+ /// Desc:采购组织
+ /// Default:
+ /// Nullable:True
+ ///
+ [SugarColumn(ColumnName="F_PURCHASEORGID")]
+ public int? FPURCHASEORGID {get;set;}
+
+ ///
+ /// Desc:开始抓采购入库单开始时间
+ /// Default:
+ /// Nullable:True
+ ///
+ [SugarColumn(ColumnName="F_PURCHASE_DATE")]
+ public DateTime? FPURCHASEDATE {get;set;}
+
}
}
diff --git a/Reportapi/MyCode.Project.Domain/Repositories/IBusiOrderGoodsDocInRepository.cs b/Reportapi/MyCode.Project.Domain/Repositories/IBusiOrderGoodsDocInRepository.cs
index 2e97746..81f6da7 100644
--- a/Reportapi/MyCode.Project.Domain/Repositories/IBusiOrderGoodsDocInRepository.cs
+++ b/Reportapi/MyCode.Project.Domain/Repositories/IBusiOrderGoodsDocInRepository.cs
@@ -8,11 +8,17 @@ using MyCode.Project.Domain;
using MyCode.Project.Domain.Model;
using MyCode.Project.Infrastructure.Common;
using MyCode.Project.Domain.Message;
+using MyCode.Project.Domain.Message.Response.JackYun;
namespace MyCode.Project.Domain.Repositories
{
public interface IBusiOrderGoodsDocInRepository : IRepository
{
-
- }
+ ///
+ /// 获取合并后的吉客云采购入库单订单
+ ///
+ ///
+ List GetPushGoodsDocInOrder();
+
+ }
}
diff --git a/Reportapi/MyCode.Project.Repositories/BusiOrderGoodsDocInRepository.cs b/Reportapi/MyCode.Project.Repositories/BusiOrderGoodsDocInRepository.cs
index aa1a4c4..92a3e4b 100644
--- a/Reportapi/MyCode.Project.Repositories/BusiOrderGoodsDocInRepository.cs
+++ b/Reportapi/MyCode.Project.Repositories/BusiOrderGoodsDocInRepository.cs
@@ -19,68 +19,107 @@ namespace MyCode.Project.Repositories
{ }
-// SELECT
-// -- 分组字段
-// CONVERT(date, InOutDate2) AS 出入库日期,
-// WarehouseCode AS 仓库编码,
-// WarehouseName AS 仓库名称,
-// GoodsNo AS 商品编码,
-// GoodsName AS 商品名称,
-// SkuName AS 规格,
-// UnitName AS 单位,
-
-// -- 合计数据
-// SUM(Quantity) AS 总数量,
-// SUM(BaceCurrencyCostAmount) AS 总入库金额,
-// SUM(BaceCurrencyNoTaxAmount) AS 总本币无税金额,
-// SUM(BaceCurrencyWithTaxAmount) AS 总本币含税金额,
-// SUM(BaceCurrencyTaxAmount) AS 总本币税额,
-// SUM(TransNoTaxAmount) AS 总原币无税金额,
-// SUM(TransHasTaxAmount) AS 总原币含税金额,
-// SUM(TransTaxAmount) AS 总原币税额,
-
-// -- 计数统计
-// COUNT(DISTINCT GoodsdocNo) AS 入库单数,
-// COUNT(*) AS 明细行数
+ // SELECT
+ // -- 分组字段
+ // CONVERT(date, InOutDate2) AS 出入库日期,
+ // WarehouseCode AS 仓库编码,
+ // WarehouseName AS 仓库名称,
+ // GoodsNo AS 商品编码,
+ // GoodsName AS 商品名称,
+ // SkuName AS 规格,
+ // UnitName AS 单位,
+
+ // -- 合计数据
+ // SUM(Quantity) AS 总数量,
+ // SUM(BaceCurrencyCostAmount) AS 总入库金额,
+ // SUM(BaceCurrencyNoTaxAmount) AS 总本币无税金额,
+ // SUM(BaceCurrencyWithTaxAmount) AS 总本币含税金额,
+ // SUM(BaceCurrencyTaxAmount) AS 总本币税额,
+ // SUM(TransNoTaxAmount) AS 总原币无税金额,
+ // SUM(TransHasTaxAmount) AS 总原币含税金额,
+ // SUM(TransTaxAmount) AS 总原币税额,
+
+ // -- 计数统计
+ // COUNT(DISTINCT GoodsdocNo) AS 入库单数,
+ // COUNT(*) AS 明细行数
-//FROM[dbo].[BusiOrderGoodsDocIn]
-// WHERE Status IN(0) -- 根据业务需求调整状态筛选
-// GROUP BY
-// CONVERT(date, InOutDate2),
-// WarehouseCode,
-// WarehouseName,
-// GoodsNo,
-// GoodsName,
-// SkuName,
-// UnitName
-//ORDER BY
-// CONVERT(date, InOutDate2) DESC,
-// WarehouseCode,
-// GoodsNo;
+ //FROM[dbo].[BusiOrderGoodsDocIn]
+ // WHERE Status IN(0) -- 根据业务需求调整状态筛选
+ // GROUP BY
+ // CONVERT(date, InOutDate2),
+ // WarehouseCode,
+ // WarehouseName,
+ // GoodsNo,
+ // GoodsName,
+ // SkuName,
+ // UnitName
+ //ORDER BY
+ // CONVERT(date, InOutDate2) DESC,
+ // WarehouseCode,
+ // GoodsNo;
- #region GetPushOrder(获取合并后的吉客云订单)
+ #region GetPushGoodsDocInOrder(获取合并后的吉客云采购入库单订单)
///
- /// 获取合并后的吉客云订单
+ /// 获取合并后的吉客云采购入库单订单
///
///
- public List GetPushReturnOrder()
+ public List GetPushGoodsDocInOrder()
{
string sql = $@"
- SELECT [shopCode], [shopName], [shopId], [warehouseName], [warehouseCode],
- [status], CONVERT(NVARCHAR(30),[consignTime],23) [consignTime],
- [goodsNo], [goodsId],SUM([sellTotal]*-1) [sellTotal],
- SUM([returnCount]*-1) [sellCount], SUM([ShareShouldReturnFee]*-1) AS [divideSellTotal],
- [barcode], [TradeType] ,[warehouseId],Unit
-FROM [JackOrders] a WITH (NOLOCK)
- LEFT JOIN [dbo].[ReturnChangeGoodsDetail] b WITH (NOLOCK)
- ON a.id = b.JackOrdersId
-WHERE a.status = 0 and [TradeType]=8 and returnCount <> 0
-GROUP BY [shopCode],[shopName], [shopId], [warehouseName], [warehouseCode], [status], CONVERT(NVARCHAR(30),[consignTime],23) ,[goodsNo],
-[goodsId], [barcode] ,[warehouseId], [TradeType],Unit
-ORDER BY [shopCode],[consignTime] desc,[TradeType]
-";
- var list = this.SelectList(sql);
+SELECT
+ -- 分组字段
+ CONVERT(date, InOutDate2) AS InOutDate2,
+ WarehouseCode AS WarehouseCode,
+ WarehouseName AS WarehouseName,
+ GoodsNo AS GoodsNo,
+ GoodsName AS GoodsName,
+ SkuName AS SkuName,
+ UnitName AS UnitName,
+ SkuBarcode AS SkuBarcode,
+ [CurrencyCode]
+ ,[CurrencyCodeName]
+ ,[CurrencyRate]
+ ,[CreateUserName]
+ ,[CompanyName],VendCustomerName,VendCode ,[ApplyCompanyName],
+ [TaxRate]
+ ,[TransNoTaxPrice]
+ ,[TransHasTaxPrice],
+ -- 合计数据
+ SUM(Quantity) AS Quantity ,-- 总数量,
+ SUM(BaceCurrencyCostAmount) AS BaceCurrencyCostAmount,--总入库金额,
+ SUM(BaceCurrencyNoTaxAmount) AS BaceCurrencyNoTaxAmount,--总本币无税金额,
+ SUM(BaceCurrencyWithTaxAmount) AS BaceCurrencyWithTaxAmount,--总本币含税金额,
+ SUM(BaceCurrencyTaxAmount) AS BaceCurrencyTaxAmount,-- 总本币税额,
+ SUM(TransNoTaxAmount) AS TransNoTaxAmount,--总原币无税金额,
+ SUM(TransHasTaxAmount) AS TransHasTaxAmount,--总原币含税金额,
+ SUM(TransTaxAmount) AS TransTaxAmount,--总原币税额,
+
+ -- 计数统计
+ COUNT(DISTINCT GoodsdocNo) AS 入库单数,
+ COUNT(*) AS 明细行数
+
+FROM [dbo].[BusiOrderGoodsDocIn]
+WHERE Status IN (0) -- 根据业务需求调整状态筛选
+GROUP BY
+ CONVERT(DATE, InOutDate2),
+ WarehouseCode,
+ WarehouseName,
+ GoodsNo,
+ GoodsName,
+ SkuName,
+ UnitName,SkuBarcode ,[CurrencyCode]
+ ,[CurrencyCodeName]
+ ,[CurrencyRate]
+ ,[CreateUserName]
+ ,[CompanyName],CompanyName,VendCustomerName,VendCode ,[ApplyCompanyName], [TaxRate]
+ ,[TransNoTaxPrice]
+ ,[TransHasTaxPrice]
+ORDER BY
+ CONVERT(date, InOutDate2) DESC,
+ WarehouseCode,
+ GoodsNo;";
+ var list = this.SelectList(sql);
return list;
}
#endregion
diff --git a/Reportapi/MyCode.Project.Services/IServices/IJackYunService.cs b/Reportapi/MyCode.Project.Services/IServices/IJackYunService.cs
index c8bea67..ba55e36 100644
--- a/Reportapi/MyCode.Project.Services/IServices/IJackYunService.cs
+++ b/Reportapi/MyCode.Project.Services/IServices/IJackYunService.cs
@@ -41,7 +41,7 @@ namespace MyCode.Project.Services
List GetPurchaseInboundData(DateTime now);
///
- /// 获取吉客云采购出库单
+ /// 获取吉客云采购退货出库单
///
/// 截止日期
///
diff --git a/Reportapi/MyCode.Project.Services/IServices/IJackYunTaskService.cs b/Reportapi/MyCode.Project.Services/IServices/IJackYunTaskService.cs
index 9015338..cda2327 100644
--- a/Reportapi/MyCode.Project.Services/IServices/IJackYunTaskService.cs
+++ b/Reportapi/MyCode.Project.Services/IServices/IJackYunTaskService.cs
@@ -52,7 +52,12 @@ namespace MyCode.Project.Services
///
void GetStorageGoodsDocOutV2(string now);
-
+ ///
+ /// 合并吉客云采购订单到新表
+ ///
+ ///
+
+ string GetAndMergePushGoodsDocInOrder(string now);
}
}
diff --git a/Reportapi/MyCode.Project.Services/Implementation/JackYunService.cs b/Reportapi/MyCode.Project.Services/Implementation/JackYunService.cs
index 594bae1..0f9884b 100644
--- a/Reportapi/MyCode.Project.Services/Implementation/JackYunService.cs
+++ b/Reportapi/MyCode.Project.Services/Implementation/JackYunService.cs
@@ -277,8 +277,6 @@ namespace MyCode.Project.Services.Implementation
///
public List GetPurchaseInboundData(DateTime now)
{
-
- int total = 1;
var shopConfigs = _yTKJTShopParameterRepository.Queryable().Where(t => t.FDOCUMENTSTATUS == "C" && t.FPURCHASERECEIVING == "1").ToList();
BusiOrderGoodsDocInRequest requestBizData = new BusiOrderGoodsDocInRequest();
@@ -347,16 +345,22 @@ namespace MyCode.Project.Services.Implementation
throw new BaseException(msg);
}
});
- //var shocodes = shopConfigs.Select(t => t.FPURCHASINGWAREHOUSECODE).ToList();
- //trades = trades.Where(t => shocodes.Contains(t.warehouseCode)).ToList();
+ var warehouseCodes = shopConfigs.Select(t => t.FPURCHASINGWAREHOUSECODE).Distinct().ToList();
+ var guolv = shopConfigs.Select(t => new { t.FPURCHASINGWAREHOUSECODE, t.FPURCHASEDATE }).ToList();
+ trades = trades.Where(t => warehouseCodes.Contains(t.warehouseCode)).ToList();
+ foreach (var item in guolv)
+ {
+ trades.RemoveAll(t => item.FPURCHASINGWAREHOUSECODE == t.warehouseCode && item.FPURCHASEDATE > t.inOutDate2);
+ }
+
return trades;
}
#endregion
- #region 获取吉客云采购出库单
+ #region 获取吉客云采购退货出库单
///
- /// 获取吉客云采购出库单
+ /// 获取吉客云采购退货出库单
///
/// 截止日期
///
@@ -381,7 +385,9 @@ namespace MyCode.Project.Services.Implementation
requestBizData.PageSize = 200;
requestBizData.PageIndex = 0;
- requestBizData.SelelctFields = "*"; //"RecId,GoodsdocNo,BillNo,InOutDate,GmtCreate,Inouttype,InouttypeName,VendCustomerName,CurrencyCode,CurrencyRate,UserName,WarehouseCode,WarehouseName,Comment,Memo,LogisticName,LogisticNo,CompanyId,CompanyName,LogisticType,LogisticCode,InOutReason,SourceBillNo,ChannelId,ChannelCode,ChannelName,RedStatus,Field1,Field2,Field3,Field4,Field5,FinanceBillStatus,VendCustomerId,ApplyDepartId,ApplyDepartName,OutBillNo,LogisticList,GmtModified,DepartCode,ApplyCompanyName,ApplyCompanyCode,ApplyCompanyId,ApplyUserId,ApplyUserName,CompanyCode,GoodsDocDetailList,SendCompanyName,Send,SendTel,SendPhone,SendEmail,SendCountryName,SendProvinceName,SendCityName,SendTownName,SendStreetName,SendAddress,ReceiveCompanyName,Receive,ReceiveTel,ReceivePhone,ReceiveEmail,ReceiveCountryName,ReceiveProvinceName,ReceiveCityName,ReceiveTownName,ReceiveStreetName,ReceiveAddress";
+ requestBizData.SelelctFields = "recId,goodsdocNo,billNo,inOutDate,gmtCreate,inouttype,inouttypeName,vendCustomerName,currencyCode,currencyRate,userName,warehouseCode,warehouseName,comment,memo,logisticName,logisticNo,companyId,companyName,logisticType,logisticCode,inOutReason,sourceBillNo,channelId,channelCode,channelName,redStatus,field1,field2,field3,field4,field5,financeBillStatus,vendCustomerId,applyDepartId,applyDepartName,outBillNo,logisticList,gmtModified,departCode,applyCompanyName,applyCompanyCode,applyCompanyId,applyUserId,applyUserName,companyCode,goodsDocDetailList,sendCompanyName,send,sendTel,sendPhone,sendEmail,sendCountryName,sendProvinceName,sendCityName,sendTownName,sendStreetName,sendAddress,receiveCompanyName,receive,receiveTel,receivePhone,receiveEmail,receiveCountryName,receiveProvinceName,receiveCityName,receiveTownName,receiveStreetName,receiveAddress" +
+ ",goodsDocDetailList.recId,goodsDocDetailList.goodsId,goodsDocDetailList.goodsNo,goodsDocDetailList.goodsName,goodsDocDetailList.skuId,goodsDocDetailList.skuName,goodsDocDetailList.skuBarcode,goodsDocDetailList.unitName,goodsDocDetailList.cuPrice,goodsDocDetailList.cuValue,goodsDocDetailList.caseNumber,goodsDocDetailList.rowRemark,goodsDocDetailList.assistUnit,goodsDocDetailList.estCost,goodsDocDetailList.estTax,goodsDocDetailList.estPrice,goodsDocDetailList.estPriceNoTax,goodsDocDetailList.estCostNoTax,goodsDocDetailList.taxRate,goodsDocDetailList.batchNo,goodsDocDetailList.serialNo,goodsDocDetailList.productionDate,goodsDocDetailList.expirationDate,goodsDocDetailList.shelfLife,goodsDocDetailList.shelfLiftUnit,goodsDocDetailList.sourceDetailId,goodsDocDetailList.transNoTaxPrice,goodsDocDetailList.transNoTaxAmount,goodsDocDetailList.transHasTaxPrice,goodsDocDetailList.transHasTaxAmount" +
+ ",goodsDocDetailList.transTaxAmount,goodsDocDetailList.detailField1,goodsDocDetailList.detailField2,goodsDocDetailList.detailField3,goodsDocDetailList.detailField4,goodsDocDetailList.detailField5,goodsDocDetailList.isCertified,goodsDocDetailList.registrationNumber,goodsDocDetailList.approvalDate,goodsDocDetailList.productionDepart,goodsDocDetailList.batchNumber,goodsDocDetailList.quantity,goodsDocDetailList.cateId,goodsDocDetailList.cateName,goodsDocDetailList.volume,goodsDocDetailList.skuWeight";
List TradeTypeList = new List();
@@ -395,7 +401,7 @@ namespace MyCode.Project.Services.Implementation
LogHelper.Info(lggl);
JackyunResponse response = Call(EnumAttribute.GetAttribute(ApiEnum.ERPSTORAGEGOODSDOCOUTV2).Value, "1.0", requestBizData);
string ll = JsonHelper.ToJson(response);
- LogHelper.Info(ll);
+ LogHelper.Info("采购退货单: "+ll);
if (response.code == "200")
{
@@ -429,46 +435,15 @@ namespace MyCode.Project.Services.Implementation
throw new BaseException(msg);
}
});
- //var shocodes = shopConfigs.Select(t => t.FSHOPCODE).ToList();
- //trades = trades.Where(t => shocodes.Contains(t.ShopCode)).ToList();
- ////reslut = trades.Select(t => new TradesItem { tradeId = t.TradeId, couponFee = 0, realFee = 0, shopCode = t.ShopCode ,orderNo=t.ReturnChangeNo, tradeNo =t.TradeNo
- ////,isDelete=0, mainPostid=t.MainPostid,
- //// companyName=t.CompanyName,
- //// flagNames=t.FlagNames,
- //// shopName=t.ShopName,
- //// warehouseName=t.WarehouseName
- ////}).ToList();
-
-
-
- //reslut = trades.Select(rc => new TradesItem
- //{
- // tradeId = rc.TradeAfterId.ToString(),
- // couponFee = 0,
- // realFee = 0,
- // shopCode = rc.ShopCode,
- // orderNo = rc.ReturnChangeNo,
- // tradeNo = rc.TradeNo,
- // isDelete = 0,
- // mainPostid = rc.MainPostid,
- // companyName = rc.CompanyName,
- // flagNames = rc.FlagNames,
- // shopName = rc.ShopName,
- // warehouseName = rc.WarehouseName,
- // warehouseCode = rc.WarehouseCode,
- // logisticName = rc.LogisticName,
- // shopId = rc.ShopId.ToString(),
- // TradeType = 8, // 假设这是售后退货类型
- // consignTime = !string.IsNullOrWhiteSpace(rc.DeliveryTime) ? (DateTime?)DateTime.Parse(rc.DeliveryTime) : null,
- // payTime = null, // 可根据需要设置
- // tradeStatus = int.Parse(rc.TradeAfterStatus), // 注意类型转换
- // warehouseId = rc.WarehouseId.ToString(),
- // shopTypeCode = "",
- // apiType = -114, // 默认值
- // ReturnChangeGoodsDetail = rc.ReturnChangeGoodsDetail
- //}).ToList();
-
+ var warehouseCodes = shopConfigs.Select(t => t.FPURCHASINGWAREHOUSECODE).Distinct().ToList();
+ var guolv = shopConfigs.Select(t => new { t.FPURCHASINGWAREHOUSECODE, t.FPURCHASEDATE }).ToList();
+ trades = trades.Where(t => warehouseCodes.Contains(t.WarehouseCode)).ToList();
+ foreach (var item in guolv)
+ {
+ trades.RemoveAll(t => item.FPURCHASINGWAREHOUSECODE == t.WarehouseCode && item.FPURCHASEDATE > t.InOutDate);
+ }
+
return trades;
diff --git a/Reportapi/MyCode.Project.Services/Implementation/JackYunTaskService.cs b/Reportapi/MyCode.Project.Services/Implementation/JackYunTaskService.cs
index bdb3874..51e84a0 100644
--- a/Reportapi/MyCode.Project.Services/Implementation/JackYunTaskService.cs
+++ b/Reportapi/MyCode.Project.Services/Implementation/JackYunTaskService.cs
@@ -23,6 +23,9 @@ namespace MyCode.Project.Services.Implementation
private IYTKJTShopParameterRepository _yTKJTShopParameterRepository;
private IReturnChangeGoodsDetailRepository _ReturnChangeGoodsDetailRepository;
private IBusiOrderGoodsDocInRepository _busiOrderGoodsDocInRepository;
+ private IPushKingDeeGoodsDocInRepository _PushKingDeeGoodsDocInRepository;
+ private IStorageGoodsDocOutHeadRepository _storageGoodsDocOutHeadRepository;
+ private IStorageGoodsDocOutDetailRepository _storageGoodsDocOutDetailRepository;
private IWorkProcessService _workProcessService;
@@ -33,6 +36,9 @@ namespace MyCode.Project.Services.Implementation
, IYTKJTShopParameterRepository yTKJTShopParameterRepository
, IReturnChangeGoodsDetailRepository returnChangeGoodsDetailRepository
, IBusiOrderGoodsDocInRepository busiOrderGoodsDocInRepository
+ , IPushKingDeeGoodsDocInRepository pushKingDeeGoodsDocInRepository
+ , IStorageGoodsDocOutDetailRepository storageGoodsDocOutDetailRepository
+ , IStorageGoodsDocOutHeadRepository storageGoodsDocOutHeadRepository
, IJackYunService jackYunService,
IWorkProcessService workProcessService)
{
@@ -43,7 +49,9 @@ namespace MyCode.Project.Services.Implementation
_jackOrdersItemRepository = jackOrdersItemRepository;
_ReturnChangeGoodsDetailRepository = returnChangeGoodsDetailRepository;
_busiOrderGoodsDocInRepository = busiOrderGoodsDocInRepository;
-
+ _PushKingDeeGoodsDocInRepository = pushKingDeeGoodsDocInRepository;
+ _storageGoodsDocOutHeadRepository = storageGoodsDocOutHeadRepository;
+ _storageGoodsDocOutDetailRepository = storageGoodsDocOutDetailRepository;
_jackYunService = jackYunService;
_workProcessService = workProcessService;
}
@@ -335,7 +343,7 @@ namespace MyCode.Project.Services.Implementation
DateTime runTime = DateTime.Parse(now);
var list = _jackYunService.GetPurchaseInboundData(runTime);
SetPurchaseInboundData(list);
- //_workProcessService.Add(this.MerchantId, "GetAndMergeJackReturnYunOrder", "合并吉客云退货订单到新表", now, 1);
+ //_workProcessService.Add(this.MerchantId, "GetAndMergePushGoodsDocInOrder", "合并吉客云采购订单到新表", now, 1);
}
#endregion
@@ -376,20 +384,124 @@ namespace MyCode.Project.Services.Implementation
#endregion
- #region GetStorageGoodsDocOutV2(调度运行吉客云采购出库单)
+ #region GetStorageGoodsDocOutV2(调度运行吉客云采购退货出库单)
///
- /// 调度运行吉客云采购出库单
+ /// 调度运行吉客云采购退货出库单
///
///
public void GetStorageGoodsDocOutV2(string now)
{
DateTime runTime = DateTime.Parse(now);
var list = _jackYunService.GetStorageGoodsDocOutV2(runTime);
- //SetPurchaseInboundData(list);
+ SetStorageGoodsDocOutV2Order(list);
//_workProcessService.Add(this.MerchantId, "GetAndMergeJackReturnYunOrder", "合并吉客云退货订单到新表", now, 1);
}
#endregion
+ #region GetAndMergeJackGoodsDocInOrder(合并吉客云采购订单到新表)
+ ///
+ /// 合并吉客云采购订单到新表
+ ///
+ ///
+ [TransactionCallHandler]
+ public string GetAndMergePushGoodsDocInOrder(string now)
+ {
+ var list = _busiOrderGoodsDocInRepository.GetPushGoodsDocInOrder();
+ List mesg = new List();
+
+ //var shopParemList = _yTKJTShopParameterRepository.Queryable().Where(t => t.FDOCUMENTSTATUS == "C" && t.FPURCHASERECEIVING=="1").ToList();
+ List pushKingDeeOrders = new List();
+ //var warehouseCodes = shopParemList.Select(t => t.FPURCHASINGWAREHOUSECODE).Distinct().ToList();
+ //list = list.Where(t => warehouseCodes.Contains(t.WarehouseCode)).ToList();
+ list.ForEach(sheet =>
+ {
+
+ PushKingDeeGoodsDocIn pushKingDeeOrder = new PushKingDeeGoodsDocIn();
+ pushKingDeeOrder = AutoMapperHelper.AutoMappToSingle(sheet);
+ pushKingDeeOrder.ID = Guid.NewGuid();
+ pushKingDeeOrder.CreateTime = DateTime.Now;
+ pushKingDeeOrder.UpdateTime = DateTime.Now;
+ pushKingDeeOrder.Status = 0;
+ pushKingDeeOrders.Add(pushKingDeeOrder);
+
+ });
+ if (pushKingDeeOrders.Count > 0)
+ {
+ var oldList = _busiOrderGoodsDocInRepository.Queryable().Where(t => t.Status == 0).ToList();
+ oldList.ForEach(t =>
+ {
+ if (pushKingDeeOrders.Count(h => h.WarehouseCode == t.WarehouseCode && t.InOutDate2.Value.ToString("yyyy-MM-dd") == h.InOutDate2.Value.ToString("yyyy-MM-dd")) > 0)
+ {
+ t.Status = 1;
+ t.UpdateTime = DateTime.Now;
+ }
+ });
+ oldList = oldList.Where(t => t.Status == 1).ToList();
+ _busiOrderGoodsDocInRepository.Update(oldList);
+ _PushKingDeeGoodsDocInRepository.Add(pushKingDeeOrders);
+
+ }
+ //pushKingDeeOrders.ForEach(t =>
+ //{
+ // _workProcessService.Add(this.MerchantId, "PushOrderToKingDee", "推送退货订单到云星空或者WMS", t.Id, 1);
+ // Thread.Sleep(300);
+ //});
+
+ return JsonHelper.ToJson(list);
+ }
+ #endregion
+
+ #region SetReturnOrder(把吉客云退货订单存进本地数据库)
+ ///
+ ///
+ [TransactionCallHandler]
+ public void SetStorageGoodsDocOutV2Order(List trades)
+ {
+ var ids = trades.Select(t => t.RecId).Distinct().ToList();
+ ids = _storageGoodsDocOutHeadRepository.Queryable().Where(t => ids.Contains(t.RecId)).Select(t => t.RecId).Distinct().ToList();
+ if (ids.Count > 0)
+ trades = trades.Where(t => !ids.Contains(t.RecId)).ToList();
+ List jackOrdersList = new List();
+ List ordersItemList = new List();
+ var shopConfig = _yTKJTShopParameterRepository.Queryable().Where(t => t.FDOCUMENTSTATUS == "C").ToList();
+ var shopCodeList = shopConfig.Select(t => t.FSHOPCODE).ToList();
+
+
+ trades.ForEach(t =>
+ {
+
+ StorageGoodsDocOutHead jackOrders = new StorageGoodsDocOutHead();
+ jackOrders = AutoMapperHelper.AutoMappToSingle(t);
+ jackOrders.Id = Guid.NewGuid();
+ jackOrders.Status = 0;
+ jackOrders.UpdateTime = DateTime.Now;
+ jackOrders.CreateTime = DateTime.Now;
+ if (t.GoodsDocDetailList != null)
+ {
+ var items = AutoMapperHelper.AutoMappToList(t.GoodsDocDetailList);
+ items.ForEach(k =>
+ {
+ k.HeadId = jackOrders.Id;
+ k.CreateTime = DateTime.Now;
+ k.UpdateTime = DateTime.Now;
+ });
+ jackOrdersList.Add(jackOrders);
+ ordersItemList.AddRange(items);
+ }
+
+
+ });
+
+ if (jackOrdersList.Count > 0)
+ {
+ _storageGoodsDocOutHeadRepository.Add(jackOrdersList);
+ _storageGoodsDocOutDetailRepository.Add(ordersItemList);
+ }
+
+ }
+ #endregion
}
diff --git a/Reportapi/MyCode.Project.WebApi/Controllers/TestController.cs b/Reportapi/MyCode.Project.WebApi/Controllers/TestController.cs
index c102c22..cf266ce 100644
--- a/Reportapi/MyCode.Project.WebApi/Controllers/TestController.cs
+++ b/Reportapi/MyCode.Project.WebApi/Controllers/TestController.cs
@@ -271,6 +271,20 @@ namespace MyCode.Project.WebApi.Controllers
_jackYunTaskService.GetStorageGoodsDocOutV2(now);
}
#endregion
+
+
+ #region 合并吉客云采购订单到新表
+ ///
+ /// 合并吉客云采购订单到新表
+ ///
+ [HttpGet]
+ [AllowAnonymous]
+ public string GetAndMergePushGoodsDocInOrder(string now)
+ {
+ return _jackYunTaskService.GetAndMergePushGoodsDocInOrder(now);
+ }
+ #endregion
+
}
}
diff --git a/Reportapi/MyCode.Project.WebApi/Web.config b/Reportapi/MyCode.Project.WebApi/Web.config
index 1462a6e..87d7b74 100644
--- a/Reportapi/MyCode.Project.WebApi/Web.config
+++ b/Reportapi/MyCode.Project.WebApi/Web.config
@@ -22,9 +22,9 @@
-
+
-
+
From 1dfaf1b8cfaeb958b9e3bf4817b057aa15838123 Mon Sep 17 00:00:00 2001
From: yuyubo <1870149533@qq.com>
Date: Thu, 6 Nov 2025 18:14:26 +0800
Subject: [PATCH 2/3] 12
---
Reportapi/MyCode.Project.WebApi/Web.config | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Reportapi/MyCode.Project.WebApi/Web.config b/Reportapi/MyCode.Project.WebApi/Web.config
index 87d7b74..1462a6e 100644
--- a/Reportapi/MyCode.Project.WebApi/Web.config
+++ b/Reportapi/MyCode.Project.WebApi/Web.config
@@ -22,9 +22,9 @@
-
+
-
+
From bce409ee1458c6c11000e76b05b9b80177b0e940 Mon Sep 17 00:00:00 2001
From: yuyubo <1870149533@qq.com>
Date: Fri, 7 Nov 2025 16:19:15 +0800
Subject: [PATCH 3/3] 1
---
.../MyCode.Project.Services/Implementation/JackYunService.cs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Reportapi/MyCode.Project.Services/Implementation/JackYunService.cs b/Reportapi/MyCode.Project.Services/Implementation/JackYunService.cs
index 0f9884b..959f362 100644
--- a/Reportapi/MyCode.Project.Services/Implementation/JackYunService.cs
+++ b/Reportapi/MyCode.Project.Services/Implementation/JackYunService.cs
@@ -21,7 +21,7 @@ namespace MyCode.Project.Services.Implementation
_yTKJTShopParameterRepository = yTKJTShopParameterRepository;
}
- DateTime startTime = DateTime.Parse("2025-08-01");
+ DateTime startTime = DateTime.Parse("2025-10-01");
///
/// 请求开放平台服务
///