11
This commit is contained in:
parent
f42519dd61
commit
316e78f4f2
@ -315,7 +315,7 @@ namespace MyCode.Project.Infrastructure.JackYun
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 退货货品信息
|
/// 退货货品信息
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public List<ReturnChangeGoodsDetail> ReturnChangeGoodsDetail { get; set; }
|
public List<JkyReturnChangeGoodsDetail> ReturnChangeGoodsDetail { get; set; }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -364,7 +364,7 @@ namespace MyCode.Project.Infrastructure.JackYun
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 货品信息
|
/// 货品信息
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class ReturnChangeGoodsDetail
|
public class JkyReturnChangeGoodsDetail
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 售后订单id
|
/// 售后订单id
|
||||||
|
|||||||
@ -200,7 +200,7 @@ namespace MyCode.Project.Infrastructure.JackYun
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 退货货品信息
|
/// 退货货品信息
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public List<ReturnChangeGoodsDetail> ReturnChangeGoodsDetail { get; set; }
|
public List<JkyReturnChangeGoodsDetail> ReturnChangeGoodsDetail { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 系统编码
|
/// 系统编码
|
||||||
|
|||||||
@ -35,7 +35,7 @@ namespace MyCode.Project.Repositories
|
|||||||
FROM [JackOrders] a WITH (NOLOCK)
|
FROM [JackOrders] a WITH (NOLOCK)
|
||||||
LEFT JOIN [dbo].[JackOrdersItem] b WITH (NOLOCK)
|
LEFT JOIN [dbo].[JackOrdersItem] b WITH (NOLOCK)
|
||||||
ON a.id = b.JackOrdersId
|
ON a.id = b.JackOrdersId
|
||||||
WHERE a.status = 0
|
WHERE a.status = 0 and TradeType in (1,7)
|
||||||
GROUP BY [shopCode],[shopName], [shopId], [warehouseName], [warehouseCode], [status], CONVERT(NVARCHAR(30),[consignTime],23) ,[goodsNo], [goodsId], [barcode] ,[warehouseId], [TradeType],Unit";
|
GROUP BY [shopCode],[shopName], [shopId], [warehouseName], [warehouseCode], [status], CONVERT(NVARCHAR(30),[consignTime],23) ,[goodsNo], [goodsId], [barcode] ,[warehouseId], [TradeType],Unit";
|
||||||
var list = this.SelectList<PushOrderListResp>(sql);
|
var list = this.SelectList<PushOrderListResp>(sql);
|
||||||
return list;
|
return list;
|
||||||
@ -43,5 +43,31 @@ GROUP BY [shopCode],[shopName], [shopId], [warehouseName], [warehouseCode], [s
|
|||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
|
#region GetPushOrder(获取合并后的吉客云订单)
|
||||||
|
/// <summary>
|
||||||
|
/// 获取合并后的吉客云订单
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
public List<PushOrderListResp> GetPushReturnOrder()
|
||||||
|
{
|
||||||
|
string sql = $@"
|
||||||
|
SELECT [shopCode], [shopName], [shopId], [warehouseName], [warehouseCode],
|
||||||
|
[status], CONVERT(NVARCHAR(30),[consignTime],23) [consignTime],
|
||||||
|
[goodsNo], [goodsId],SUM([sellTotal]*-1) [sellTotal],
|
||||||
|
SUM([sellCount]*-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
|
||||||
|
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<PushOrderListResp>(sql);
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
#endregion
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1,4 +1,5 @@
|
|||||||
using MyCode.Project.Domain.Message.Response.Common;
|
using MyCode.Project.Domain.Message.Response.Common;
|
||||||
|
using MyCode.Project.Infrastructure.JackYun;
|
||||||
using MyCode.Project.Repositories.Common;
|
using MyCode.Project.Repositories.Common;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
|
||||||
@ -24,5 +25,12 @@ namespace MyCode.Project.Services
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="now"></param>
|
/// <param name="now"></param>
|
||||||
void TaskGetReturnChangeList(string now);
|
void TaskGetReturnChangeList(string now);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 把吉客云退货订单存进本地数据库
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="trades"></param>
|
||||||
|
|
||||||
|
void SetReturnOrder(List<TradesItem> trades);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -250,7 +250,7 @@ namespace MyCode.Project.Services.Implementation
|
|||||||
warehouseCode = rc.WarehouseCode,
|
warehouseCode = rc.WarehouseCode,
|
||||||
logisticName = rc.LogisticName,
|
logisticName = rc.LogisticName,
|
||||||
shopId = rc.ShopId.ToString(),
|
shopId = rc.ShopId.ToString(),
|
||||||
TradeType = 8, // 假设这是售后发货类型
|
TradeType = 8, // 假设这是售后退货类型
|
||||||
consignTime = !string.IsNullOrWhiteSpace(rc.ConsignTime) ? (DateTime?)DateTime.Parse(rc.ConsignTime) : null,
|
consignTime = !string.IsNullOrWhiteSpace(rc.ConsignTime) ? (DateTime?)DateTime.Parse(rc.ConsignTime) : null,
|
||||||
payTime = null, // 可根据需要设置
|
payTime = null, // 可根据需要设置
|
||||||
tradeStatus = int.Parse(rc.TradeAfterStatus), // 注意类型转换
|
tradeStatus = int.Parse(rc.TradeAfterStatus), // 注意类型转换
|
||||||
|
|||||||
@ -1,18 +1,14 @@
|
|||||||
using MyCode.Project.Domain.Message.Response.JackYun;
|
using MyCode.Project.Domain.Message.Response.JackYun;
|
||||||
using MyCode.Project.Domain.Message.Response.JackYun;
|
|
||||||
using MyCode.Project.Domain.Model;
|
using MyCode.Project.Domain.Model;
|
||||||
using MyCode.Project.Domain.Repositories;
|
using MyCode.Project.Domain.Repositories;
|
||||||
using MyCode.Project.Infrastructure.Common;
|
using MyCode.Project.Infrastructure.Common;
|
||||||
using MyCode.Project.Infrastructure.JackYun;
|
using MyCode.Project.Infrastructure.JackYun;
|
||||||
using MyCode.Project.Repositories;
|
|
||||||
using MyCode.Project.Repositories.Common;
|
using MyCode.Project.Repositories.Common;
|
||||||
using MyCode.Project.Services.IServices;
|
using MyCode.Project.Services.IServices;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
using System.Threading.Tasks;
|
|
||||||
|
|
||||||
namespace MyCode.Project.Services.Implementation
|
namespace MyCode.Project.Services.Implementation
|
||||||
{
|
{
|
||||||
@ -24,6 +20,8 @@ namespace MyCode.Project.Services.Implementation
|
|||||||
private IPushKingDeeOrderRepository _pushKingDeeOrderRepository;
|
private IPushKingDeeOrderRepository _pushKingDeeOrderRepository;
|
||||||
private IPushKingDeeOrderItemRepository _pushKingDeeOrderItemRepository;
|
private IPushKingDeeOrderItemRepository _pushKingDeeOrderItemRepository;
|
||||||
private IYTKJTShopParameterRepository _yTKJTShopParameterRepository;
|
private IYTKJTShopParameterRepository _yTKJTShopParameterRepository;
|
||||||
|
private IReturnChangeGoodsDetailRepository _ReturnChangeGoodsDetailRepository;
|
||||||
|
|
||||||
private IWorkProcessService _workProcessService;
|
private IWorkProcessService _workProcessService;
|
||||||
|
|
||||||
public JackYunTaskService(IJackOrdersRepository jackOrdersRepository
|
public JackYunTaskService(IJackOrdersRepository jackOrdersRepository
|
||||||
@ -31,6 +29,7 @@ namespace MyCode.Project.Services.Implementation
|
|||||||
, IPushKingDeeOrderRepository pushKingDeeOrderRepository
|
, IPushKingDeeOrderRepository pushKingDeeOrderRepository
|
||||||
, IPushKingDeeOrderItemRepository pushKingDeeOrderItemRepository
|
, IPushKingDeeOrderItemRepository pushKingDeeOrderItemRepository
|
||||||
, IYTKJTShopParameterRepository yTKJTShopParameterRepository
|
, IYTKJTShopParameterRepository yTKJTShopParameterRepository
|
||||||
|
, IReturnChangeGoodsDetailRepository returnChangeGoodsDetailRepository
|
||||||
, IJackYunService jackYunService,
|
, IJackYunService jackYunService,
|
||||||
IWorkProcessService workProcessService)
|
IWorkProcessService workProcessService)
|
||||||
{
|
{
|
||||||
@ -39,6 +38,7 @@ namespace MyCode.Project.Services.Implementation
|
|||||||
_pushKingDeeOrderItemRepository = pushKingDeeOrderItemRepository;
|
_pushKingDeeOrderItemRepository = pushKingDeeOrderItemRepository;
|
||||||
_jackOrdersRepository = jackOrdersRepository;
|
_jackOrdersRepository = jackOrdersRepository;
|
||||||
_jackOrdersItemRepository = jackOrdersItemRepository;
|
_jackOrdersItemRepository = jackOrdersItemRepository;
|
||||||
|
_ReturnChangeGoodsDetailRepository = returnChangeGoodsDetailRepository;
|
||||||
_jackYunService = jackYunService;
|
_jackYunService = jackYunService;
|
||||||
_workProcessService = workProcessService;
|
_workProcessService = workProcessService;
|
||||||
}
|
}
|
||||||
@ -190,9 +190,61 @@ namespace MyCode.Project.Services.Implementation
|
|||||||
{
|
{
|
||||||
DateTime runTime = DateTime.Parse(now);
|
DateTime runTime = DateTime.Parse(now);
|
||||||
var list = _jackYunService.GetReturnChangeList(runTime);
|
var list = _jackYunService.GetReturnChangeList(runTime);
|
||||||
SetOrder(list);
|
SetReturnOrder(list);
|
||||||
//_workProcessService.Add<IJackYunTaskService>(this.MerchantId, "GetAndMergeJackYunOrder", "合并吉客云订单到新表", now, 1);
|
//_workProcessService.Add<IJackYunTaskService>(this.MerchantId, "GetAndMergeJackYunOrder", "合并吉客云订单到新表", now, 1);
|
||||||
}
|
}
|
||||||
#endregion
|
#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
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user