diff --git a/Reportapi/MyCode.Project.Domain/Message/Request/JackYun/BusiOrderGoodsDocInRequest.cs b/Reportapi/MyCode.Project.Domain/Message/Request/JackYun/BusiOrderGoodsDocInRequest.cs
index 530a57d..b3da9d5 100644
--- a/Reportapi/MyCode.Project.Domain/Message/Request/JackYun/BusiOrderGoodsDocInRequest.cs
+++ b/Reportapi/MyCode.Project.Domain/Message/Request/JackYun/BusiOrderGoodsDocInRequest.cs
@@ -13,6 +13,8 @@ namespace MyCode.Project.Domain.Message.Request.JackYun
///
public class BusiOrderGoodsDocInRequest: BaseRequestBizData
{
+ public string contextId { get; set; }
+
///
/// 需要查询的字段列表,多个字段用逗号分隔
/// 例如:"goodsNo,goodsName,skuName"
diff --git a/Reportapi/MyCode.Project.Infrastructure/JackYun/BusiOrderGoodsDocInResponse.cs b/Reportapi/MyCode.Project.Domain/Message/Response/JackYun/BusiOrderGoodsDocInResponse.cs
similarity index 96%
rename from Reportapi/MyCode.Project.Infrastructure/JackYun/BusiOrderGoodsDocInResponse.cs
rename to Reportapi/MyCode.Project.Domain/Message/Response/JackYun/BusiOrderGoodsDocInResponse.cs
index d9d64bf..b61c18c 100644
--- a/Reportapi/MyCode.Project.Infrastructure/JackYun/BusiOrderGoodsDocInResponse.cs
+++ b/Reportapi/MyCode.Project.Domain/Message/Response/JackYun/BusiOrderGoodsDocInResponse.cs
@@ -4,7 +4,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
-namespace MyCode.Project.Infrastructure.JackYun
+namespace MyCode.Project.Domain.Message.Response.JackYun
{
/////
///// 入库查询(规格模式)返回参数
@@ -257,12 +257,22 @@ namespace MyCode.Project.Infrastructure.JackYun
///
/// 出入库日期(表头数据)
///
- public DateTime? inOutDate { get; set; }
+ public long? inOutDate { get; set; }
+
+ ///
+ /// 出入库日期(表头数据)
+ ///
+ public DateTime? inOutDate2 { get; set; }
///
/// 系统出入库日期(表头数据)
///
- public DateTime? gmtCreate { get; set; }
+ public long? gmtCreate { get; set; }
+
+ ///
+ /// 系统出入库日期(表头数据)
+ ///
+ public DateTime? gmtCreate2 { get; set; }
///
/// 入库类型(表头数据)(100-期初库存101-采购入库102-调拨入库103-盘盈入库104-其他入库105-销售退货106-完工入库107-组装拆卸入库108-翻新入库109-报废入库110-残次品入库111-成本调整112-即采即入113-退料入库114-调拨退回115-维修返厂返还116-资产入库117-借用入库118-归还入库119-生产委外入库120-生产其他入库122-调拨退货入库123- 生产余料入库131-成本调价入库132-结算补差133-成本补差)
@@ -503,7 +513,11 @@ namespace MyCode.Project.Infrastructure.JackYun
/// 物流单号(表头数据)
///
public string logisticNo { get; set; }
-
+ ///
+ /// 货品明细id
+ ///
+ public long RecId { get; set; }
+
}
diff --git a/Reportapi/MyCode.Project.Infrastructure/JackYun/StorageGoodsDocOutV2Response.cs b/Reportapi/MyCode.Project.Domain/Message/Response/JackYun/StorageGoodsDocOutV2Response.cs
similarity index 98%
rename from Reportapi/MyCode.Project.Infrastructure/JackYun/StorageGoodsDocOutV2Response.cs
rename to Reportapi/MyCode.Project.Domain/Message/Response/JackYun/StorageGoodsDocOutV2Response.cs
index 160714e..342b099 100644
--- a/Reportapi/MyCode.Project.Infrastructure/JackYun/StorageGoodsDocOutV2Response.cs
+++ b/Reportapi/MyCode.Project.Domain/Message/Response/JackYun/StorageGoodsDocOutV2Response.cs
@@ -4,7 +4,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
-namespace MyCode.Project.Infrastructure.JackYun
+namespace MyCode.Project.Domain.Message.Response.JackYun
{
@@ -654,4 +654,14 @@ namespace MyCode.Project.Infrastructure.JackYun
public string DetailField10 { get; set; }
}
+ public class ErpStorageGoodsDocOutV2ResponseBizData2
+ {
+ public List Data { get; set; }
+
+ ///
+ /// 上下文编号
+ ///
+ public string contextId { get; set; }
+ }
+
}
\ No newline at end of file
diff --git a/Reportapi/MyCode.Project.Domain/Model/BusiOrderGoodsDocIn.cs b/Reportapi/MyCode.Project.Domain/Model/BusiOrderGoodsDocIn.cs
index aa29467..c9577c5 100644
--- a/Reportapi/MyCode.Project.Domain/Model/BusiOrderGoodsDocIn.cs
+++ b/Reportapi/MyCode.Project.Domain/Model/BusiOrderGoodsDocIn.cs
@@ -35,14 +35,28 @@ namespace MyCode.Project.Domain.Model
/// Default:
/// Nullable:True
///
- public DateTime? InOutDate {get;set;}
+ public long? InOutDate {get;set;}
///
/// Desc:系统出入库日期
/// Default:
/// Nullable:True
///
- public DateTime? GmtCreate {get;set;}
+ public long? GmtCreate {get;set;}
+
+ ///
+ /// Desc:出入库日期
+ /// Default:
+ /// Nullable:True
+ ///
+ public DateTime? InOutDate2 {get;set;}
+
+ ///
+ /// Desc:系统出入库日期
+ /// Default:
+ /// Nullable:True
+ ///
+ public DateTime? GmtCreate2 {get;set;}
///
/// Desc:入库类型
@@ -366,5 +380,19 @@ namespace MyCode.Project.Domain.Model
///
public DateTime? UpdateTime {get;set;}
+ ///
+ /// Desc:货品明细id
+ /// Default:
+ /// Nullable:True
+ ///
+ public long? RecId {get;set;}
+
+ ///
+ /// Desc:0=未处理 1=已合并 2=已推送
+ /// Default:0
+ /// Nullable:True
+ ///
+ public int? Status {get;set;}
+
}
}
diff --git a/Reportapi/MyCode.Project.Domain/MyCode.Project.Domain.csproj b/Reportapi/MyCode.Project.Domain/MyCode.Project.Domain.csproj
index fbdd757..540ecc6 100644
--- a/Reportapi/MyCode.Project.Domain/MyCode.Project.Domain.csproj
+++ b/Reportapi/MyCode.Project.Domain/MyCode.Project.Domain.csproj
@@ -80,8 +80,10 @@
+
+
diff --git a/Reportapi/MyCode.Project.Infrastructure/JackYun/BaseRequestBizData.cs b/Reportapi/MyCode.Project.Infrastructure/JackYun/BaseRequestBizData.cs
index f266ca0..6d354aa 100644
--- a/Reportapi/MyCode.Project.Infrastructure/JackYun/BaseRequestBizData.cs
+++ b/Reportapi/MyCode.Project.Infrastructure/JackYun/BaseRequestBizData.cs
@@ -2,5 +2,6 @@
{
public class BaseRequestBizData
{
+
}
}
\ No newline at end of file
diff --git a/Reportapi/MyCode.Project.Infrastructure/MyCode.Project.Infrastructure.csproj b/Reportapi/MyCode.Project.Infrastructure/MyCode.Project.Infrastructure.csproj
index 91c9ce4..62a3de6 100644
--- a/Reportapi/MyCode.Project.Infrastructure/MyCode.Project.Infrastructure.csproj
+++ b/Reportapi/MyCode.Project.Infrastructure/MyCode.Project.Infrastructure.csproj
@@ -265,11 +265,9 @@
-
-
diff --git a/Reportapi/MyCode.Project.Services/IServices/IJackYunService.cs b/Reportapi/MyCode.Project.Services/IServices/IJackYunService.cs
index 7bfdd6a..c8bea67 100644
--- a/Reportapi/MyCode.Project.Services/IServices/IJackYunService.cs
+++ b/Reportapi/MyCode.Project.Services/IServices/IJackYunService.cs
@@ -1,6 +1,7 @@
using MyCode.Project.Infrastructure.JackYun;
using System.Collections.Generic;
using System;
+using MyCode.Project.Domain.Message.Response.JackYun;
namespace MyCode.Project.Services
{
@@ -38,5 +39,13 @@ namespace MyCode.Project.Services
///
///
List GetPurchaseInboundData(DateTime now);
+
+ ///
+ /// 获取吉客云采购出库单
+ ///
+ /// 截止日期
+ ///
+ ///
+ List GetStorageGoodsDocOutV2(DateTime now);
}
}
diff --git a/Reportapi/MyCode.Project.Services/IServices/IJackYunTaskService.cs b/Reportapi/MyCode.Project.Services/IServices/IJackYunTaskService.cs
index 47b0005..9015338 100644
--- a/Reportapi/MyCode.Project.Services/IServices/IJackYunTaskService.cs
+++ b/Reportapi/MyCode.Project.Services/IServices/IJackYunTaskService.cs
@@ -45,5 +45,14 @@ namespace MyCode.Project.Services
///
///
void GetPurchaseInboundData(string now);
+
+ ///
+ /// 调度运行吉客云采购出库单
+ ///
+ ///
+ void GetStorageGoodsDocOutV2(string now);
+
+
+
}
}
diff --git a/Reportapi/MyCode.Project.Services/Implementation/JackYunService.cs b/Reportapi/MyCode.Project.Services/Implementation/JackYunService.cs
index 30bc41d..77980c4 100644
--- a/Reportapi/MyCode.Project.Services/Implementation/JackYunService.cs
+++ b/Reportapi/MyCode.Project.Services/Implementation/JackYunService.cs
@@ -1,4 +1,5 @@
using MyCode.Project.Domain.Message.Request.JackYun;
+using MyCode.Project.Domain.Message.Response.JackYun;
using MyCode.Project.Domain.Repositories;
using MyCode.Project.Infrastructure.Common;
using MyCode.Project.Infrastructure.Enumeration;
@@ -291,8 +292,8 @@ namespace MyCode.Project.Services.Implementation
}
//101-采购入库
requestBizData.Inouttypes = "101";
- requestBizData.InOutDateStart = value;
- requestBizData.InOutDateEnd = value1;
+ requestBizData.InOutDateStart = new DateTimeOffset(DateTime.Parse(value)).ToUnixTimeMilliseconds().ToString() ;
+ requestBizData.InOutDateEnd = new DateTimeOffset(DateTime.Parse(value1)).ToUnixTimeMilliseconds().ToString();
requestBizData.PageSize = 200;
requestBizData.PageIndex = 0;
@@ -318,9 +319,93 @@ namespace MyCode.Project.Services.Implementation
var list1 = JsonHelper.ToObject(orderjson);
+ int pageIndex = 1;
+ string TotalResults = list1.contextId;
+ while (list1.Data.Count>0)
+ {
+ trades.AddRange(list1.Data);
+ requestBizData.PageIndex = pageIndex;
+ requestBizData.contextId = TotalResults;
+ pageIndex++;
+ Thread.Sleep(100);
+ response = Call(EnumAttribute.GetAttribute(ApiEnum.STORAGEGOODSDOCINCOUNTS).Value, "1.0", requestBizData);
+ if (response.code == "200")
+ {
+ orderjson = JsonHelper.ToJson(response.result);
+ list1 = JsonHelper.ToObject(orderjson);
+ TotalResults = list1.contextId;
+ }
+ else
+ {
+ TotalResults = "";
+ }
+ }
+ }
+ else
+ {
+ string msg = response.msg;
+ throw new BaseException(msg);
+ }
+ });
+ //var shocodes = shopConfigs.Select(t => t.FPURCHASINGWAREHOUSECODE).ToList();
+ //trades = trades.Where(t => shocodes.Contains(t.warehouseCode)).ToList();
+ return trades;
+ }
+ #endregion
+
+
+ #region 获取吉客云采购出库单
+ ///
+ /// 获取吉客云采购出库单
+ ///
+ /// 截止日期
+ ///
+ ///
+ public List GetStorageGoodsDocOutV2(DateTime now)
+ {
+ var shopConfigs = _yTKJTShopParameterRepository.Queryable().Where(t => t.FDOCUMENTSTATUS == "C" && t.FPURCHASERECEIVING == "1").ToList();
+
+ StorageGoodsDocOutV2Request requestBizData = new StorageGoodsDocOutV2Request();
+ //string value = "2025-06-15 00:00:00";// DateTime.Now.Date.AddDays(-5).ToString("yyyy-MM-dd HH:mm:ss") ;
+ //string value1 = "2025-06-20 00:00:00";//DateTime.Now.Date.ToString("yyyy-MM-dd HH:mm:ss");
+ string value = now.Date.AddDays(-7).ToString("yyyy-MM-dd");
+ string value1 = now.Date.ToString("yyyy-MM-dd");
+ if (now.Date.AddDays(-7) < startTime)
+ {
+ value = startTime.ToString("yyyy-MM-dd");
+ }
+ //205采购退货
+ requestBizData.Inouttype = 205;
+ requestBizData.StartDate = value;
+ requestBizData.EndDate = value1;
+
+ 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";
+
+
+ List TradeTypeList = new List();
+ TradeTypeList.Add(1005);
+ List reslut = new List();
+ List trades = new List();
+ TradeTypeList.ForEach(ty =>
+ {
+
+ string lggl = JsonHelper.ToJson(requestBizData);
+ LogHelper.Info(lggl);
+ JackyunResponse response = Call(EnumAttribute.GetAttribute(ApiEnum.ERPSTORAGEGOODSDOCOUTV2).Value, "1.0", requestBizData);
+ string ll = JsonHelper.ToJson(response);
+ LogHelper.Info(ll);
+
+ if (response.code == "200")
+ {
+ var orderjson = JsonHelper.ToJson(response.result);
+ var list1 = JsonHelper.ToObject(orderjson);
+
+
int pageIndex = 1;
string TotalResults = list1.contextId;
- while (!string.IsNullOrWhiteSpace(TotalResults))
+ while (list1.Data.Count>0)
{
//list1.data.returnChangeList.ForEach(h => h.TradeType = ty);
@@ -328,10 +413,11 @@ namespace MyCode.Project.Services.Implementation
requestBizData.PageIndex = pageIndex;
pageIndex++;
Thread.Sleep(100);
- response = Call(EnumAttribute.GetAttribute(ApiEnum.STORAGEGOODSDOCINCOUNTS).Value, "1.0", requestBizData);
+ response = Call(EnumAttribute.GetAttribute(ApiEnum.ERPSTORAGEGOODSDOCOUTV2).Value, "1.0", requestBizData);
if (response.code == "200")
{
- orderjson = JsonHelper.ToJson(response.result);
+ orderjson = JsonHelper.ToJson(response.result);
+ list1 = JsonHelper.ToObject(orderjson);
}
}
@@ -384,7 +470,7 @@ namespace MyCode.Project.Services.Implementation
//return reslut;
- return new List();
+ return new List();
}
#endregion
}
diff --git a/Reportapi/MyCode.Project.Services/Implementation/JackYunTaskService.cs b/Reportapi/MyCode.Project.Services/Implementation/JackYunTaskService.cs
index f725958..bdb3874 100644
--- a/Reportapi/MyCode.Project.Services/Implementation/JackYunTaskService.cs
+++ b/Reportapi/MyCode.Project.Services/Implementation/JackYunTaskService.cs
@@ -3,6 +3,7 @@ using MyCode.Project.Domain.Model;
using MyCode.Project.Domain.Repositories;
using MyCode.Project.Infrastructure.Common;
using MyCode.Project.Infrastructure.JackYun;
+using MyCode.Project.Repositories;
using MyCode.Project.Repositories.Common;
using MyCode.Project.Services.IServices;
using System;
@@ -21,6 +22,7 @@ namespace MyCode.Project.Services.Implementation
private IPushKingDeeOrderItemRepository _pushKingDeeOrderItemRepository;
private IYTKJTShopParameterRepository _yTKJTShopParameterRepository;
private IReturnChangeGoodsDetailRepository _ReturnChangeGoodsDetailRepository;
+ private IBusiOrderGoodsDocInRepository _busiOrderGoodsDocInRepository;
private IWorkProcessService _workProcessService;
@@ -30,6 +32,7 @@ namespace MyCode.Project.Services.Implementation
, IPushKingDeeOrderItemRepository pushKingDeeOrderItemRepository
, IYTKJTShopParameterRepository yTKJTShopParameterRepository
, IReturnChangeGoodsDetailRepository returnChangeGoodsDetailRepository
+ , IBusiOrderGoodsDocInRepository busiOrderGoodsDocInRepository
, IJackYunService jackYunService,
IWorkProcessService workProcessService)
{
@@ -39,6 +42,8 @@ namespace MyCode.Project.Services.Implementation
_jackOrdersRepository = jackOrdersRepository;
_jackOrdersItemRepository = jackOrdersItemRepository;
_ReturnChangeGoodsDetailRepository = returnChangeGoodsDetailRepository;
+ _busiOrderGoodsDocInRepository = busiOrderGoodsDocInRepository;
+
_jackYunService = jackYunService;
_workProcessService = workProcessService;
}
@@ -329,11 +334,63 @@ namespace MyCode.Project.Services.Implementation
{
DateTime runTime = DateTime.Parse(now);
var list = _jackYunService.GetPurchaseInboundData(runTime);
- //SetReturnOrder(list);
+ SetPurchaseInboundData(list);
+ //_workProcessService.Add(this.MerchantId, "GetAndMergeJackReturnYunOrder", "合并吉客云退货订单到新表", now, 1);
+ }
+ #endregion
+
+ #region SetPurchaseInboundData(把吉客云采购订单存进本地数据库)
+ ///
+ /// 把吉客云采购订单存进本地数据库
+ ///
+ ///
+ [TransactionCallHandler]
+ public void SetPurchaseInboundData(List trades)
+ {
+ var ids = trades.Select(t => t.RecId).Distinct().ToList();
+ ids = _busiOrderGoodsDocInRepository.Queryable().Where(t =>t.RecId!=null && ids.Contains(t.RecId.Value)).Select(t => t.RecId.Value).ToList();
+ trades = trades.Where(t => !ids.Contains(t.RecId)).ToList();
+ List addList = new List();
+ addList = AutoMapperHelper.AutoMappToList(trades);
+ addList.ForEach(item =>
+ {
+
+ item.ID = Guid.NewGuid();
+ DateTime startTime = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
+ item.InOutDate2 = startTime.AddMilliseconds(item.InOutDate.Value).ToLocalTime();
+ item.GmtCreate2 = startTime.AddMilliseconds(item.GmtCreate.Value).ToLocalTime();
+ item.Status = 0;
+ item.CreateTime = DateTime.Now;
+ item.CreateUserName = "";
+
+
+ });
+
+ if (addList.Count > 0)
+ {
+ _busiOrderGoodsDocInRepository.Add(addList);
+
+ }
+
+ }
+ #endregion
+
+
+ #region GetStorageGoodsDocOutV2(调度运行吉客云采购出库单)
+ ///
+ /// 调度运行吉客云采购出库单
+ ///
+ ///
+ public void GetStorageGoodsDocOutV2(string now)
+ {
+ DateTime runTime = DateTime.Parse(now);
+ var list = _jackYunService.GetStorageGoodsDocOutV2(runTime);
+ //SetPurchaseInboundData(list);
//_workProcessService.Add(this.MerchantId, "GetAndMergeJackReturnYunOrder", "合并吉客云退货订单到新表", now, 1);
}
#endregion
+
}
}
diff --git a/Reportapi/MyCode.Project.WebApi/Controllers/TestController.cs b/Reportapi/MyCode.Project.WebApi/Controllers/TestController.cs
index 8a84207..c102c22 100644
--- a/Reportapi/MyCode.Project.WebApi/Controllers/TestController.cs
+++ b/Reportapi/MyCode.Project.WebApi/Controllers/TestController.cs
@@ -259,7 +259,18 @@ namespace MyCode.Project.WebApi.Controllers
}
#endregion
+ #region 调度运行吉客云采购出库单
+ ///
+ /// 调度运行吉客云采购出库单
+ ///
+ [HttpGet]
+ [AllowAnonymous]
+ public void GetStorageGoodsDocOutV2(string now)
+ {
+ _jackYunTaskService.GetStorageGoodsDocOutV2(now);
+ }
+ #endregion
}
}