2025-07-04 10:47:18 +08:00
|
|
|
|
using MyCode.Project.Domain.Message.Request.JackYun;
|
2025-11-05 18:19:40 +08:00
|
|
|
|
using MyCode.Project.Domain.Message.Response.JackYun;
|
2025-07-21 13:59:04 +08:00
|
|
|
|
using MyCode.Project.Domain.Repositories;
|
2025-07-04 10:47:18 +08:00
|
|
|
|
using MyCode.Project.Infrastructure.Common;
|
2025-07-07 09:35:11 +08:00
|
|
|
|
using MyCode.Project.Infrastructure.Enumeration;
|
2025-07-07 20:02:36 +08:00
|
|
|
|
using MyCode.Project.Infrastructure.Exceptions;
|
2025-07-04 09:50:02 +08:00
|
|
|
|
using MyCode.Project.Infrastructure.JackYun;
|
|
|
|
|
|
using System;
|
2025-07-07 13:54:21 +08:00
|
|
|
|
using System.Collections.Generic;
|
2025-11-04 11:11:40 +08:00
|
|
|
|
using System.Diagnostics;
|
2025-07-21 13:59:04 +08:00
|
|
|
|
using System.Linq;
|
2025-07-08 20:10:02 +08:00
|
|
|
|
using System.Threading;
|
2025-07-04 09:50:02 +08:00
|
|
|
|
|
|
|
|
|
|
namespace MyCode.Project.Services.Implementation
|
|
|
|
|
|
{
|
2025-07-23 13:50:12 +08:00
|
|
|
|
public class JackYunService : ServiceBase, IJackYunService
|
2025-07-04 09:50:02 +08:00
|
|
|
|
{
|
2025-07-21 13:59:04 +08:00
|
|
|
|
private IYTKJTShopParameterRepository _yTKJTShopParameterRepository;
|
|
|
|
|
|
public JackYunService(IYTKJTShopParameterRepository yTKJTShopParameterRepository)
|
|
|
|
|
|
{
|
|
|
|
|
|
_yTKJTShopParameterRepository = yTKJTShopParameterRepository;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-10-21 11:27:52 +08:00
|
|
|
|
DateTime startTime = DateTime.Parse("2025-08-01");
|
2025-07-04 09:50:02 +08:00
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 请求开放平台服务
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="method">开放接口方法名</param>
|
|
|
|
|
|
/// <param name="version">开放接口版本号(null表示默认)</param>
|
|
|
|
|
|
/// <param name="bizData">请求业务数据</param>
|
|
|
|
|
|
/// <returns>OpenResponse返回对象</returns>
|
|
|
|
|
|
public JackyunResponse Call(string method, string version, BaseRequestBizData bizData)
|
|
|
|
|
|
{
|
|
|
|
|
|
//接口返回值
|
|
|
|
|
|
JackyunResponse response = null;
|
|
|
|
|
|
//返回值字符串
|
|
|
|
|
|
string strResponse = null;
|
|
|
|
|
|
try
|
|
|
|
|
|
{
|
|
|
|
|
|
//请求吉客云开放接口。
|
|
|
|
|
|
strResponse = JackyunOpenHttpUtils.Post(method, version, bizData);
|
|
|
|
|
|
}
|
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
|
{
|
|
|
|
|
|
response = new JackyunResponse();
|
|
|
|
|
|
response.onFail(ex.Message, "CLIENT_EXCEPTION");
|
|
|
|
|
|
return response;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return JsonHelper.ToObject<JackyunResponse>(strResponse);
|
2025-07-23 13:50:12 +08:00
|
|
|
|
}
|
2025-07-07 20:02:36 +08:00
|
|
|
|
|
|
|
|
|
|
#region 订单查询
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 订单查询
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="now">截止日期</param>
|
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
|
/// <exception cref="BaseException"></exception>
|
2025-07-23 13:50:12 +08:00
|
|
|
|
public List<TradesItem> testTradeFullInfoGet(DateTime now)
|
2025-07-07 13:54:21 +08:00
|
|
|
|
{
|
2025-07-28 17:28:21 +08:00
|
|
|
|
|
2025-07-07 20:02:36 +08:00
|
|
|
|
int total = 1;
|
2025-07-21 13:59:04 +08:00
|
|
|
|
var shopConfigs = _yTKJTShopParameterRepository.Queryable().Where(t => t.FDOCUMENTSTATUS == "C").ToList();
|
|
|
|
|
|
|
2025-07-07 20:02:36 +08:00
|
|
|
|
OrderTradeFullInfoGetRequestBizData requestBizData = new OrderTradeFullInfoGetRequestBizData();
|
|
|
|
|
|
//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");
|
2025-07-22 15:14:10 +08:00
|
|
|
|
string value = now.Date.AddDays(-7).ToString("yyyy-MM-dd");
|
2025-07-07 20:02:36 +08:00
|
|
|
|
string value1 = now.Date.ToString("yyyy-MM-dd");
|
2025-07-28 17:28:21 +08:00
|
|
|
|
if (now.Date.AddDays(-7) < startTime)
|
|
|
|
|
|
{
|
|
|
|
|
|
value = startTime.ToString("yyyy-MM-dd");
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-07-07 20:02:36 +08:00
|
|
|
|
requestBizData.StartModified = "";// DateTime.ParseExact(value, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None);
|
|
|
|
|
|
|
|
|
|
|
|
requestBizData.EndModified = ""; //DateTime.ParseExact(value1, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None);
|
|
|
|
|
|
requestBizData.TradeNo = "";
|
|
|
|
|
|
requestBizData.HasTotal = total;
|
|
|
|
|
|
requestBizData.PageSize = 200;
|
|
|
|
|
|
requestBizData.PageIndex = 0;
|
2025-08-11 17:32:59 +08:00
|
|
|
|
requestBizData.Fields = "TradeType,tradeStatus,consignTime,payTime,goodsDetail.barcode,tradeNo,orderNo,shopName,companyName,warehouseName,logisticName,mainPostid,goodsDetail.goodsNo,flagNames,columnExt,sourceAfterNo,goodsDetail.outerId,pickUpCode,expense.expenseFee,expense.expenseItemName,billDate,goodsPlatDiscountFee,goodsDetail.shareOrderDiscountFee,goodsDetail.shareFavourableAfterFee,goodsDetail.shareOrderPlatDiscountFee,customizeGoodsColumn9,goodsDetail.goodsId,goodsDetail.sellCount,goodsDetail.needProcessCount,goodsDetail.baseUnitSellCount,goodsDetail.assessmentCost,goodsDetail.compassSourceContentTypem,sourceTradeNo,shopId,warehouseId,scrollId,goodsDetail.unit";
|
2025-07-23 13:50:12 +08:00
|
|
|
|
requestBizData.StartCreated = "";// DateTime.ParseExact(value, "yyyy -MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None);
|
2025-07-07 20:02:36 +08:00
|
|
|
|
requestBizData.EndCreated = "";// DateTime.ParseExact(value1, "yyyy -MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None);
|
|
|
|
|
|
requestBizData.StartAuditTime = "";// DateTime.ParseExact(value, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None);
|
|
|
|
|
|
requestBizData.EndAuditTime = "";// DateTime.ParseExact(value1, "yyyy -MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None);
|
|
|
|
|
|
requestBizData.StartConsignTime = value;// value;// DateTime.ParseExact(value, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None);
|
|
|
|
|
|
requestBizData.EndConsignTime = value1;// value1;// DateTime.ParseExact(value1, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None);
|
2025-10-21 11:27:52 +08:00
|
|
|
|
//requestBizData.TradeStatus = 1010;
|
2025-07-10 15:31:54 +08:00
|
|
|
|
requestBizData.TradeType = 1;
|
2025-07-07 20:02:36 +08:00
|
|
|
|
requestBizData.SourceTradeNos = "";
|
2025-08-11 13:30:29 +08:00
|
|
|
|
requestBizData.ShopIds = null; // new long[] { 378761130654261100, 378761130654261100 };
|
2025-07-10 15:31:54 +08:00
|
|
|
|
List<int> TradeTypeList = new List<int>();
|
|
|
|
|
|
TradeTypeList.Add(1);
|
|
|
|
|
|
TradeTypeList.Add(7);
|
|
|
|
|
|
TradeTypeList.Add(8);
|
2025-07-07 20:02:36 +08:00
|
|
|
|
List<TradesItem> trades = new List<TradesItem>();
|
2025-07-10 15:31:54 +08:00
|
|
|
|
TradeTypeList.ForEach(ty =>
|
2025-07-07 20:02:36 +08:00
|
|
|
|
{
|
2025-07-10 15:31:54 +08:00
|
|
|
|
requestBizData.TradeType = ty;
|
|
|
|
|
|
string lggl = JsonHelper.ToJson(requestBizData);
|
|
|
|
|
|
LogHelper.Info(lggl);
|
|
|
|
|
|
JackyunResponse response = Call(EnumAttribute.GetAttribute(ApiEnum.TRADEFULLINFOGET).Value, "1.0", requestBizData);
|
|
|
|
|
|
string ll = JsonHelper.ToJson(response);
|
|
|
|
|
|
LogHelper.Info(ll);
|
2025-07-23 13:50:12 +08:00
|
|
|
|
|
2025-07-07 20:02:36 +08:00
|
|
|
|
if (response.code == "200")
|
|
|
|
|
|
{
|
2025-07-10 15:31:54 +08:00
|
|
|
|
var orderjson = JsonHelper.ToJson(response.result);
|
2025-10-21 11:27:52 +08:00
|
|
|
|
var list1 = JsonHelper.ToObject<TradeFullinfogetResp<TradeFullinfogetData>>(orderjson);
|
2025-08-11 13:30:29 +08:00
|
|
|
|
|
|
|
|
|
|
|
2025-07-10 15:31:54 +08:00
|
|
|
|
int pageIndex = 1;
|
|
|
|
|
|
while (list1.data.trades != null && list1.data.trades.Count > 0)
|
|
|
|
|
|
{
|
|
|
|
|
|
list1.data.trades.ForEach(h => h.TradeType = ty);
|
|
|
|
|
|
|
|
|
|
|
|
trades.AddRange(list1.data.trades);
|
|
|
|
|
|
requestBizData.PageIndex = pageIndex;
|
|
|
|
|
|
pageIndex++;
|
|
|
|
|
|
Thread.Sleep(100);
|
|
|
|
|
|
response = Call(EnumAttribute.GetAttribute(ApiEnum.TRADEFULLINFOGET).Value, "1.0", requestBizData);
|
|
|
|
|
|
if (response.code == "200")
|
|
|
|
|
|
{
|
|
|
|
|
|
orderjson = JsonHelper.ToJson(response.result);
|
2025-10-21 11:27:52 +08:00
|
|
|
|
list1 = JsonHelper.ToObject<TradeFullinfogetResp<TradeFullinfogetData>>(orderjson);
|
2025-08-11 13:30:29 +08:00
|
|
|
|
|
2025-07-10 15:31:54 +08:00
|
|
|
|
}
|
|
|
|
|
|
}
|
2025-07-07 20:02:36 +08:00
|
|
|
|
}
|
2025-07-10 15:31:54 +08:00
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
string msg = response.msg;
|
|
|
|
|
|
throw new BaseException(msg);
|
|
|
|
|
|
}
|
|
|
|
|
|
});
|
2025-08-11 13:30:29 +08:00
|
|
|
|
var shocodes = shopConfigs.Select(t => t.FSHOPCODE).ToList();
|
|
|
|
|
|
trades = trades.Where(t => shocodes.Contains(t.shopCode)).ToList();
|
2025-07-07 20:02:36 +08:00
|
|
|
|
return trades;
|
2025-07-07 13:54:21 +08:00
|
|
|
|
}
|
2025-07-07 20:02:36 +08:00
|
|
|
|
#endregion
|
2025-07-14 20:39:36 +08:00
|
|
|
|
|
2025-10-21 11:27:52 +08:00
|
|
|
|
#region 退货查询
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 退货查询
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="now">截止日期</param>
|
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
|
/// <exception cref="BaseException"></exception>
|
|
|
|
|
|
public List<TradesItem> GetReturnChangeList(DateTime now)
|
|
|
|
|
|
{
|
2025-07-23 13:50:12 +08:00
|
|
|
|
|
2025-10-21 11:27:52 +08:00
|
|
|
|
int total = 1;
|
|
|
|
|
|
var shopConfigs = _yTKJTShopParameterRepository.Queryable().Where(t => t.FDOCUMENTSTATUS == "C").ToList();
|
|
|
|
|
|
|
|
|
|
|
|
ReturnChangeGetRequestBizData requestBizData = new ReturnChangeGetRequestBizData();
|
|
|
|
|
|
//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");
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
requestBizData.StartModified = "";// DateTime.ParseExact(value, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None);
|
|
|
|
|
|
requestBizData.StartDeliveryDate = value;
|
|
|
|
|
|
requestBizData.EndDeliveryDate = value1;
|
|
|
|
|
|
requestBizData.EndModified = ""; //DateTime.ParseExact(value1, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None);
|
|
|
|
|
|
requestBizData.TradeNo = "";
|
|
|
|
|
|
requestBizData.HasTotal = total;
|
|
|
|
|
|
requestBizData.PageSize = 200;
|
|
|
|
|
|
requestBizData.PageIndex = 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
requestBizData.StartModified = null;// DateTime.ParseExact(value, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None);
|
|
|
|
|
|
//requestBizData.TradeStatus = 1010;
|
|
|
|
|
|
|
|
|
|
|
|
requestBizData.ShopIds = null; // new long[] { 378761130654261100, 378761130654261100 };
|
|
|
|
|
|
List<int> TradeTypeList = new List<int>();
|
|
|
|
|
|
TradeTypeList.Add(1005);
|
|
|
|
|
|
List<TradesItem> reslut = new List<TradesItem>();
|
|
|
|
|
|
List<ReturnChangeListResp> trades = new List<ReturnChangeListResp>();
|
|
|
|
|
|
TradeTypeList.ForEach(ty =>
|
|
|
|
|
|
{
|
|
|
|
|
|
requestBizData.ProcessStatusList = "";
|
|
|
|
|
|
string lggl = JsonHelper.ToJson(requestBizData);
|
|
|
|
|
|
LogHelper.Info(lggl);
|
|
|
|
|
|
JackyunResponse response = Call(EnumAttribute.GetAttribute(ApiEnum.RETURNCHANGE).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<TradeFullinfogetResp<ReturnChangeData>>(orderjson);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int pageIndex = 1;
|
|
|
|
|
|
int TotalResults = list1.data.TotalResults;
|
|
|
|
|
|
while (requestBizData.PageIndex* requestBizData.PageSize< TotalResults)
|
|
|
|
|
|
{
|
|
|
|
|
|
//list1.data.returnChangeList.ForEach(h => h.TradeType = ty);
|
|
|
|
|
|
|
|
|
|
|
|
trades.AddRange(list1.data.returnChangeList);
|
|
|
|
|
|
requestBizData.PageIndex = pageIndex;
|
|
|
|
|
|
pageIndex++;
|
|
|
|
|
|
Thread.Sleep(100);
|
|
|
|
|
|
response = Call(EnumAttribute.GetAttribute(ApiEnum.RETURNCHANGE).Value, "1.0", requestBizData);
|
|
|
|
|
|
if (response.code == "200")
|
|
|
|
|
|
{
|
|
|
|
|
|
orderjson = JsonHelper.ToJson(response.result);
|
|
|
|
|
|
list1 = JsonHelper.ToObject<TradeFullinfogetResp<ReturnChangeData>>(orderjson);
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
string msg = response.msg;
|
|
|
|
|
|
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();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return reslut;
|
|
|
|
|
|
}
|
|
|
|
|
|
#endregion
|
2025-11-04 11:11:40 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#region 获取吉客云采购入库
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 获取吉客云采购入库
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="now">截止日期</param>
|
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
|
/// <exception cref="BaseException"></exception>
|
|
|
|
|
|
public List<BusiOrderGoodsDocInResponse> GetPurchaseInboundData(DateTime now)
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
int total = 1;
|
|
|
|
|
|
var shopConfigs = _yTKJTShopParameterRepository.Queryable().Where(t => t.FDOCUMENTSTATUS == "C" && t.FPURCHASERECEIVING == "1").ToList();
|
|
|
|
|
|
|
|
|
|
|
|
BusiOrderGoodsDocInRequest requestBizData = new BusiOrderGoodsDocInRequest();
|
|
|
|
|
|
//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");
|
|
|
|
|
|
}
|
|
|
|
|
|
//101-采购入库
|
|
|
|
|
|
requestBizData.Inouttypes = "101";
|
2025-11-05 18:19:40 +08:00
|
|
|
|
requestBizData.InOutDateStart = new DateTimeOffset(DateTime.Parse(value)).ToUnixTimeMilliseconds().ToString() ;
|
|
|
|
|
|
requestBizData.InOutDateEnd = new DateTimeOffset(DateTime.Parse(value1)).ToUnixTimeMilliseconds().ToString();
|
2025-11-04 11:11:40 +08:00
|
|
|
|
|
|
|
|
|
|
requestBizData.PageSize = 200;
|
|
|
|
|
|
requestBizData.PageIndex = 0;
|
|
|
|
|
|
requestBizData.Cols = "goodsdocNo,inOutDate,gmtCreate,inouttypeName,warehouseName,billNo,sourceBillNo,deliveryNo,currencyCode,currencyCodeName,currencyRate,createUserName,companyName,vendCustomerName,goodsdocRemark,receiveGoodsRemark,callbackStatus,applyCompanyName,applyDepartName,applyUserName,goodsNo,goodsName,skuName,skuBarcode,unitName,quantity,baceCurrencyCostPrice,baceCurrencyCostAmount,baceCurrencyNoTaxPrice,baceCurrencyNoTaxAmount,baceCurrencyWithTaxPrice,baceCurrencyWithTaxAmount,baceCurrencyTaxAmount,taxRate,transNoTaxPrice,transNoTaxAmount,transHasTaxPrice,transHasTaxAmount,transTaxAmount,isCertified,goodsDetailRemark,batchNo,serialNo,vendCode,warehouseCode,channelCode,serialSourceId,outBillNo,trackInOutNo,logisticName,logisticNo";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<int> TradeTypeList = new List<int>();
|
|
|
|
|
|
TradeTypeList.Add(1005);
|
|
|
|
|
|
List<BusiOrderGoodsDocInResponse> reslut = new List<BusiOrderGoodsDocInResponse>();
|
|
|
|
|
|
List<BusiOrderGoodsDocInResponse> trades = new List<BusiOrderGoodsDocInResponse>();
|
|
|
|
|
|
TradeTypeList.ForEach(ty =>
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
string lggl = JsonHelper.ToJson(requestBizData);
|
|
|
|
|
|
LogHelper.Info(lggl);
|
|
|
|
|
|
JackyunResponse response = Call(EnumAttribute.GetAttribute(ApiEnum.STORAGEGOODSDOCINCOUNTS).Value, "1.0", requestBizData);
|
|
|
|
|
|
string ll = JsonHelper.ToJson(response);
|
|
|
|
|
|
LogHelper.Info(ll);
|
|
|
|
|
|
|
|
|
|
|
|
if (response.code == "200")
|
|
|
|
|
|
{
|
|
|
|
|
|
var orderjson = JsonHelper.ToJson(response.result);
|
2025-11-04 11:36:19 +08:00
|
|
|
|
var list1 = JsonHelper.ToObject<BusiOrderGoodsDocInResponse2>(orderjson);
|
|
|
|
|
|
|
|
|
|
|
|
|
2025-11-05 18:19:40 +08:00
|
|
|
|
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<BusiOrderGoodsDocInResponse2>(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 获取吉客云采购出库单
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 获取吉客云采购出库单
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="now">截止日期</param>
|
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
|
/// <exception cref="BaseException"></exception>
|
|
|
|
|
|
public List<ErpStorageGoodsDocOutV2ResponseBizData> 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<int> TradeTypeList = new List<int>();
|
|
|
|
|
|
TradeTypeList.Add(1005);
|
|
|
|
|
|
List<ErpStorageGoodsDocOutV2ResponseBizData> reslut = new List<ErpStorageGoodsDocOutV2ResponseBizData>();
|
|
|
|
|
|
List<ErpStorageGoodsDocOutV2ResponseBizData> trades = new List<ErpStorageGoodsDocOutV2ResponseBizData>();
|
|
|
|
|
|
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<ErpStorageGoodsDocOutV2ResponseBizData2>(orderjson);
|
|
|
|
|
|
|
|
|
|
|
|
|
2025-11-04 11:36:19 +08:00
|
|
|
|
int pageIndex = 1;
|
|
|
|
|
|
string TotalResults = list1.contextId;
|
2025-11-05 18:19:40 +08:00
|
|
|
|
while (list1.Data.Count>0)
|
2025-11-04 11:36:19 +08:00
|
|
|
|
{
|
|
|
|
|
|
//list1.data.returnChangeList.ForEach(h => h.TradeType = ty);
|
|
|
|
|
|
|
|
|
|
|
|
trades.AddRange(list1.Data);
|
|
|
|
|
|
requestBizData.PageIndex = pageIndex;
|
|
|
|
|
|
pageIndex++;
|
|
|
|
|
|
Thread.Sleep(100);
|
2025-11-05 18:19:40 +08:00
|
|
|
|
response = Call(EnumAttribute.GetAttribute(ApiEnum.ERPSTORAGEGOODSDOCOUTV2).Value, "1.0", requestBizData);
|
2025-11-04 11:36:19 +08:00
|
|
|
|
if (response.code == "200")
|
|
|
|
|
|
{
|
2025-11-05 18:19:40 +08:00
|
|
|
|
orderjson = JsonHelper.ToJson(response.result);
|
|
|
|
|
|
list1 = JsonHelper.ToObject<ErpStorageGoodsDocOutV2ResponseBizData2>(orderjson);
|
2025-11-04 11:36:19 +08:00
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2025-11-04 11:11:40 +08:00
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
string msg = response.msg;
|
|
|
|
|
|
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();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//return reslut;
|
|
|
|
|
|
|
2025-11-05 18:19:40 +08:00
|
|
|
|
return new List<ErpStorageGoodsDocOutV2ResponseBizData>();
|
2025-11-04 11:11:40 +08:00
|
|
|
|
}
|
|
|
|
|
|
#endregion
|
2025-07-04 09:50:02 +08:00
|
|
|
|
}
|
2025-07-07 13:54:21 +08:00
|
|
|
|
|
2025-07-23 13:50:12 +08:00
|
|
|
|
|
2025-07-04 09:50:02 +08:00
|
|
|
|
}
|