更新一大堆代码
This commit is contained in:
@@ -19,7 +19,7 @@ namespace MyCode.Project.Services.Implementation
|
||||
_yTKJTShopParameterRepository = yTKJTShopParameterRepository;
|
||||
}
|
||||
|
||||
DateTime startTime = DateTime.Parse("2025-09-01");
|
||||
DateTime startTime = DateTime.Parse("2025-08-01");
|
||||
/// <summary>
|
||||
/// 请求开放平台服务
|
||||
/// </summary>
|
||||
@@ -85,7 +85,7 @@ namespace MyCode.Project.Services.Implementation
|
||||
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);
|
||||
//requestBizData.TradeStatus = 1010;
|
||||
//requestBizData.TradeStatus = 1010;
|
||||
requestBizData.TradeType = 1;
|
||||
requestBizData.SourceTradeNos = "";
|
||||
requestBizData.ShopIds = null; // new long[] { 378761130654261100, 378761130654261100 };
|
||||
@@ -106,7 +106,7 @@ namespace MyCode.Project.Services.Implementation
|
||||
if (response.code == "200")
|
||||
{
|
||||
var orderjson = JsonHelper.ToJson(response.result);
|
||||
var list1 = JsonHelper.ToObject<TradeFullinfogetResp>(orderjson);
|
||||
var list1 = JsonHelper.ToObject<TradeFullinfogetResp<TradeFullinfogetData>>(orderjson);
|
||||
|
||||
|
||||
int pageIndex = 1;
|
||||
@@ -122,7 +122,7 @@ namespace MyCode.Project.Services.Implementation
|
||||
if (response.code == "200")
|
||||
{
|
||||
orderjson = JsonHelper.ToJson(response.result);
|
||||
list1 = JsonHelper.ToObject<TradeFullinfogetResp>(orderjson);
|
||||
list1 = JsonHelper.ToObject<TradeFullinfogetResp<TradeFullinfogetData>>(orderjson);
|
||||
|
||||
}
|
||||
}
|
||||
@@ -139,7 +139,131 @@ namespace MyCode.Project.Services.Implementation
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 退货查询
|
||||
/// <summary>
|
||||
/// 退货查询
|
||||
/// </summary>
|
||||
/// <param name="now">截止日期</param>
|
||||
/// <returns></returns>
|
||||
/// <exception cref="BaseException"></exception>
|
||||
public List<TradesItem> GetReturnChangeList(DateTime now)
|
||||
{
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,18 +1,14 @@
|
||||
using MyCode.Project.Domain.Message.Response.JackYun;
|
||||
using MyCode.Project.Domain.Message.Response.JackYun;
|
||||
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;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace MyCode.Project.Services.Implementation
|
||||
{
|
||||
@@ -24,6 +20,8 @@ namespace MyCode.Project.Services.Implementation
|
||||
private IPushKingDeeOrderRepository _pushKingDeeOrderRepository;
|
||||
private IPushKingDeeOrderItemRepository _pushKingDeeOrderItemRepository;
|
||||
private IYTKJTShopParameterRepository _yTKJTShopParameterRepository;
|
||||
private IReturnChangeGoodsDetailRepository _ReturnChangeGoodsDetailRepository;
|
||||
|
||||
private IWorkProcessService _workProcessService;
|
||||
|
||||
public JackYunTaskService(IJackOrdersRepository jackOrdersRepository
|
||||
@@ -31,6 +29,7 @@ namespace MyCode.Project.Services.Implementation
|
||||
, IPushKingDeeOrderRepository pushKingDeeOrderRepository
|
||||
, IPushKingDeeOrderItemRepository pushKingDeeOrderItemRepository
|
||||
, IYTKJTShopParameterRepository yTKJTShopParameterRepository
|
||||
, IReturnChangeGoodsDetailRepository returnChangeGoodsDetailRepository
|
||||
, IJackYunService jackYunService,
|
||||
IWorkProcessService workProcessService)
|
||||
{
|
||||
@@ -39,6 +38,7 @@ namespace MyCode.Project.Services.Implementation
|
||||
_pushKingDeeOrderItemRepository = pushKingDeeOrderItemRepository;
|
||||
_jackOrdersRepository = jackOrdersRepository;
|
||||
_jackOrdersItemRepository = jackOrdersItemRepository;
|
||||
_ReturnChangeGoodsDetailRepository = returnChangeGoodsDetailRepository;
|
||||
_jackYunService = jackYunService;
|
||||
_workProcessService = workProcessService;
|
||||
}
|
||||
@@ -125,7 +125,7 @@ namespace MyCode.Project.Services.Implementation
|
||||
list.ForEach(sheet =>
|
||||
{
|
||||
if (pushKingDeeOrders.Where(t => t.ShopId == sheet.ShopId && t.WarehouseId == sheet.WarehouseId
|
||||
&& t.ConsignTime.Value.ToString("yyyy-MM-dd")==sheet.ConsignTime).Count() > 0)
|
||||
&& t.ConsignTime.Value.ToString("yyyy-MM-dd")==sheet.ConsignTime && t.TradeType != 8).Count() > 0)
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -178,7 +178,146 @@ namespace MyCode.Project.Services.Implementation
|
||||
|
||||
return JsonHelper.ToJson(list);
|
||||
}
|
||||
#endregion
|
||||
#endregion
|
||||
|
||||
|
||||
#region TaskGetReturnChangeList(调度运行抓吉客云退货订单)
|
||||
/// <summary>
|
||||
/// 调度运行抓吉客云退货订单
|
||||
/// </summary>
|
||||
/// <param name="now"></param>
|
||||
public void TaskGetReturnChangeList(string now)
|
||||
{
|
||||
DateTime runTime = DateTime.Parse(now);
|
||||
var list = _jackYunService.GetReturnChangeList(runTime);
|
||||
SetReturnOrder(list);
|
||||
_workProcessService.Add<IJackYunTaskService>(this.MerchantId, "GetAndMergeJackReturnYunOrder", "合并吉客云退货订单到新表", now, 1);
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
#region SetReturnOrder(把吉客云退货订单存进本地数据库)
|
||||
/// <summary>
|
||||
/// 把吉客云退货订单存进本地数据库
|
||||
/// </summary>
|
||||
/// <param name="trades"></param>
|
||||
[TransactionCallHandler]
|
||||
public void SetReturnOrder(List<TradesItem> trades)
|
||||
{
|
||||
var ids = trades.Select(t => t.tradeId).Distinct().ToList();
|
||||
ids = _jackOrdersRepository.Queryable().Where(t => ids.Contains(t.TradeId)).Select(t => t.TradeId).Distinct().ToList();
|
||||
if (ids.Count > 0)
|
||||
trades = trades.Where(t => !ids.Contains(t.tradeId)).ToList();
|
||||
List<JackOrders> jackOrdersList = new List<JackOrders>();
|
||||
List<ReturnChangeGoodsDetail> ordersItemList = new List<ReturnChangeGoodsDetail>();
|
||||
var shopConfig = _yTKJTShopParameterRepository.Queryable().Where(t => t.FDOCUMENTSTATUS == "C").ToList();
|
||||
var shopCodeList = shopConfig.Select(t => t.FSHOPCODE).ToList();
|
||||
|
||||
|
||||
trades.ForEach(t =>
|
||||
{
|
||||
if (shopCodeList.Contains(t.shopCode))
|
||||
{
|
||||
JackOrders jackOrders = new JackOrders();
|
||||
jackOrders = AutoMapperHelper.AutoMappToSingle<JackOrders, TradesItem>(t);
|
||||
jackOrders.Id = Guid.NewGuid();
|
||||
jackOrders.Status = 0;
|
||||
jackOrders.UpdateTime = DateTime.Now;
|
||||
jackOrders.CreateTime = DateTime.Now;
|
||||
if (t.ReturnChangeGoodsDetail != null)
|
||||
{
|
||||
var items = AutoMapperHelper.AutoMappToList< ReturnChangeGoodsDetail, JkyReturnChangeGoodsDetail>(t.ReturnChangeGoodsDetail);
|
||||
items.ForEach(k =>
|
||||
{
|
||||
k.JackOrdersId = jackOrders.Id;
|
||||
});
|
||||
jackOrdersList.Add(jackOrders);
|
||||
ordersItemList.AddRange(items);
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
if (jackOrdersList.Count > 0)
|
||||
{
|
||||
_jackOrdersRepository.Add(jackOrdersList);
|
||||
_ReturnChangeGoodsDetailRepository.Add(ordersItemList);
|
||||
}
|
||||
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
#region GetAndMergeJackReturnYunOrder(合并吉客云退货订单到新表)
|
||||
/// <summary>
|
||||
/// 合并吉客云退货订单到新表
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[TransactionCallHandler]
|
||||
public string GetAndMergeJackReturnYunOrder(string now)
|
||||
{
|
||||
var list = _jackOrdersItemRepository.GetPushReturnOrder();
|
||||
List<string> mesg = new List<string>();
|
||||
|
||||
var shopParemList = _yTKJTShopParameterRepository.Queryable().Where(t => t.FDOCUMENTSTATUS == "C").ToList();
|
||||
List<PushKingDeeOrderItem> pushKingDeeOrderItems = new List<PushKingDeeOrderItem>();
|
||||
List<PushKingDeeOrder> pushKingDeeOrders = new List<PushKingDeeOrder>();
|
||||
list.ForEach(sheet =>
|
||||
{
|
||||
if (pushKingDeeOrders.Where(t => t.ShopId == sheet.ShopId && t.WarehouseId == sheet.WarehouseId
|
||||
&& t.ConsignTime.Value.ToString("yyyy-MM-dd") == sheet.ConsignTime && t.TradeType==8).Count() > 0)
|
||||
{
|
||||
return;
|
||||
}
|
||||
PushKingDeeOrder pushKingDeeOrder = new PushKingDeeOrder();
|
||||
pushKingDeeOrder = AutoMapperHelper.AutoMappToSingle<PushKingDeeOrder, PushOrderListResp>(sheet);
|
||||
pushKingDeeOrder.Id = Guid.NewGuid();
|
||||
pushKingDeeOrder.CreateTime = DateTime.Now;
|
||||
pushKingDeeOrder.UpdateTime = DateTime.Now;
|
||||
pushKingDeeOrders.Add(pushKingDeeOrder);
|
||||
|
||||
var tempList = list.Where(t => t.ShopId == sheet.ShopId && t.WarehouseId == sheet.WarehouseId && sheet.ConsignTime == t.ConsignTime).ToList();
|
||||
tempList.ForEach(item =>
|
||||
{
|
||||
PushKingDeeOrderItem pushKingDeeOrderItem = new PushKingDeeOrderItem();
|
||||
pushKingDeeOrderItem = AutoMapperHelper.AutoMappToSingle<PushKingDeeOrderItem, PushOrderListResp>(item);
|
||||
pushKingDeeOrderItem.PushKingDeeOrderId = pushKingDeeOrder.Id;
|
||||
pushKingDeeOrderItem.Id = Guid.NewGuid();
|
||||
pushKingDeeOrderItems.Add(pushKingDeeOrderItem);
|
||||
});
|
||||
//var shopParem = shopParemList.Where(h => h.FSHOPCODE == sheet.ShopId.Value.ToString()&& h.FWAREHOUSE.Value.ToString()==sheet.WarehouseId ).FirstOrDefault();
|
||||
//if (shopParem != null)
|
||||
//{
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
// mesg.Add($@"店铺{sheet.ShopName}没有配置店铺参数或者配置的仓库不是 {sheet.WarehouseCode}");
|
||||
//}
|
||||
});
|
||||
if (pushKingDeeOrders.Count > 0)
|
||||
{
|
||||
var oldList = _jackOrdersRepository.Queryable().Where(t => t.Status == 0).ToList();
|
||||
oldList.ForEach(t =>
|
||||
{
|
||||
if (pushKingDeeOrders.Count(h => h.ShopId == t.ShopId && t.WarehouseId == h.WarehouseId) > 0)
|
||||
{
|
||||
t.Status = 1;
|
||||
t.UpdateTime = DateTime.Now;
|
||||
}
|
||||
});
|
||||
oldList = oldList.Where(t => t.Status == 1).ToList();
|
||||
_jackOrdersRepository.Update(oldList);
|
||||
_pushKingDeeOrderRepository.Add(pushKingDeeOrders);
|
||||
_pushKingDeeOrderItemRepository.Add(pushKingDeeOrderItems);
|
||||
}
|
||||
pushKingDeeOrders.ForEach(t =>
|
||||
{
|
||||
_workProcessService.Add<IOrderPushService>(this.MerchantId, "PushOrderToKingDee", "推送退货订单到云星空或者WMS", t.Id, 1);
|
||||
Thread.Sleep(300);
|
||||
});
|
||||
|
||||
return JsonHelper.ToJson(list);
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
||||
@@ -143,8 +143,8 @@ namespace MyCode.Project.Services.Implementation
|
||||
CustomerId = param.FCANGKUHUOZHU, // 货主ID
|
||||
Sku = n.Barcode,
|
||||
Barcode = n.Barcode,
|
||||
OrderQty = n.SellCount,
|
||||
OrderPrice = Math.Round(n.DivideSellTotal / n.SellCount, 10),
|
||||
OrderQty =Math.Abs( n.SellCount),
|
||||
OrderPrice = Math.Abs( Math.Round(n.DivideSellTotal /(n.SellCount), 10)),
|
||||
ItemId = n.GoodsNo, // 商品
|
||||
LocationId = param.FWAREHOUSECODE,
|
||||
CreateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
|
||||
|
||||
@@ -44,6 +44,7 @@ namespace MyCode.Project.Services.Implementation
|
||||
DateTime now = DateTime.Now.Date;
|
||||
_workProcessService.Add<IWMSService>(this.MerchantId, "GetList", "抓取WMS订单到本地数据库", now.AddDays(-3).ToString("yyyy-MM-dd"), 1);
|
||||
_workProcessService.Add<IJackYunTaskService>(this.MerchantId, "TaskGetJackYunOrder", "调度运行抓吉客云销售订单", now.ToString("yyyy-MM-dd"), 1);
|
||||
_workProcessService.Add<IJackYunTaskService>(this.MerchantId, "TaskGetReturnChangeList", "调度运行抓吉客云退货订单", now.ToString("yyyy-MM-dd"), 1);
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
Reference in New Issue
Block a user