Browse Source

1

AddValidOverTime
shanji 2 years ago
parent
commit
31a0ff2636
  1. 75
      BBWY.Server.Business/PurchaseOrderV2/BatchPurchase/BatchPurchaseBusiness.cs
  2. 3
      BBWY.Server.Model/Db/PurchaseOrder/PurchaseOrderSku.cs
  3. 6
      BBWY.Server.Model/Db/PurchaseOrder/PurchaseOrderV2.cs
  4. 2
      BBWY.Server.Model/Dto/Request/PurchaseOrderV2/BatchPurchase2/BatchPurchaseCargoParamRequestV2.cs
  5. 9
      BBWY.Server.Model/Dto/Request/PurchaseOrderV2/BatchPurchase2/BatchPurchaseCreateOrderRequestV2.cs
  6. 11
      BBWY.Server.Model/Enums.cs

75
BBWY.Server.Business/PurchaseOrderV2/BatchPurchase/BatchPurchaseBusiness.cs

@ -559,13 +559,20 @@ namespace BBWY.Server.Business
throw new BusinessException("缺少收货人信息"); throw new BusinessException("缺少收货人信息");
if (request.PurchaseAccountList == null || request.PurchaseAccountList.Count() == 0) if (request.PurchaseAccountList == null || request.PurchaseAccountList.Count() == 0)
throw new BusinessException("缺少采购账号"); throw new BusinessException("缺少采购账号");
if (request.IntoStoreType == Enums.IntoStoreType.)
{
if (request.CargoParamGroupList.Any(c => c.CargoParamList.Any(x => x.StockType == null)))
{
throw new BusinessException("缺少落仓信息");
}
}
var shop = freeSqlMultiDBManager.MDSfsql.Select<Shops>().Where(s => s.ShopId == request.ShopId.ToString()).ToOne(); var shop = freeSqlMultiDBManager.MDSfsql.Select<Shops>().Where(s => s.ShopId == request.ShopId.ToString()).ToOne();
if (shop == null) if (shop == null)
throw new BusinessException("无效的店铺Id"); throw new BusinessException("无效的店铺Id");
var successSkuIdList = new List<string>(); var successSkuIdList = new List<string>();
var failSkuList = new List<BatchCreareOrderFailDetail>(); var failSkuList = new List<BatchCreareOrderFailDetail>();
var qikuPackSkuConfigRequestList = new List<object>(); var qikuTaskList = new List<object>();
var extJArray = JsonConvert.DeserializeObject<JArray>(request.Extensions); var extJArray = JsonConvert.DeserializeObject<JArray>(request.Extensions);
@ -634,7 +641,6 @@ namespace BBWY.Server.Business
TradeMode = tradeMode, TradeMode = tradeMode,
Extensions = cardId, Extensions = cardId,
AutoPay = request.AutoPay, AutoPay = request.AutoPay,
}); });
var purchaseOrderSimpleInfo = platformSDKBusinessList.FirstOrDefault(p => p.Platform == purchaseGroup.PurchasePlatform).GetOrderSimpleInfo(new GetOrderInfoRequest() var purchaseOrderSimpleInfo = platformSDKBusinessList.FirstOrDefault(p => p.Platform == purchaseGroup.PurchasePlatform).GetOrderSimpleInfo(new GetOrderInfoRequest()
@ -649,9 +655,9 @@ namespace BBWY.Server.Business
List<long> updatePurchaseTimeSchemeIdList = purchaseGroup.CargoParamList.Select(p => p.BelongSchemeId).Distinct().ToList(); List<long> updatePurchaseTimeSchemeIdList = purchaseGroup.CargoParamList.Select(p => p.BelongSchemeId).Distinct().ToList();
List<PurchaseOrderSku> insertPurchaseOrderSkuList = new List<PurchaseOrderSku>(); List<PurchaseOrderSku> insertPurchaseOrderSkuList = new List<PurchaseOrderSku>();
List<object> skuPackConfigList = null; List<object> purchaseTaskModels = null;
if (purchaseGroup.PurchasePlatform == Enums.Platform.) if (purchaseGroup.PurchasePlatform == Enums.Platform.)
skuPackConfigList = new List<object>(); purchaseTaskModels = new List<object>();
foreach (var belongSkuGroup in belongSkuGroups) foreach (var belongSkuGroup in belongSkuGroups)
{ {
@ -680,32 +686,20 @@ namespace BBWY.Server.Business
PurchaseAmount = currentOrderSkuProductAmount + currentOrderSkuFreightAmount, PurchaseAmount = currentOrderSkuProductAmount + currentOrderSkuFreightAmount,
ProductAmount = currentOrderSkuProductAmount, ProductAmount = currentOrderSkuProductAmount,
PurchaseFreight = currentOrderSkuFreightAmount, PurchaseFreight = currentOrderSkuFreightAmount,
CreateTime = DateTime.Now CreateTime = DateTime.Now,
StockType = request.IntoStoreType == Enums.IntoStoreType. ? firstProductParam.StockType : null
}; };
insertPurchaseOrderSkuList.Add(purchaseOrderSku); insertPurchaseOrderSkuList.Add(purchaseOrderSku);
if (purchaseGroup.PurchasePlatform == Enums.Platform.) if (purchaseGroup.PurchasePlatform == Enums.Platform. && request.IntoStoreType == Enums.IntoStoreType.)
{ {
var skuPackConfig = request.PackSkuConfigList?.FirstOrDefault(s => s.SkuId == firstProductParam.BelongSkuId); purchaseTaskModels.Add(new
if (skuPackConfig != null)
{ {
skuId = firstProductParam.BelongSkuId,
skuPackConfigList.Add(new skuCount = firstProductParam.BelongQuantity,
{ positionType = GetQiKuWareType(firstProductParam.StockType.Value)
skuId = firstProductParam.BelongSkuId, });
skuCount = skuPackConfig.PurchaseCount,
markMessage = skuPackConfig.RemarkMessage,
wareHourses = skuPackConfig.PackSkuSplitConfigList.Select(x => new
{
wareId = x.IsJST ? "qiyuejushuitan" : x.Store.Id,
wareName = x.IsJST ? "齐越聚水潭" : x.Store.Name,
count = x.PackCount,
wareType = x.IsJST ? 3 : GetQiKuWareType(x.Store.Type)
})
});
}
} }
} }
@ -732,7 +726,8 @@ namespace BBWY.Server.Business
Remark = purchaseGroup.Remark, Remark = purchaseGroup.Remark,
CreateTime = DateTime.Now, CreateTime = DateTime.Now,
PurchaseMethod = Enums.PurchaseMethod.线, PurchaseMethod = Enums.PurchaseMethod.线,
PurchaseOrderMode = request.PurchaseOrderMode PurchaseOrderMode = request.PurchaseOrderMode,
IntoStoreType = request.IntoStoreType
}; };
if (createOrderResponse.IsPay) if (createOrderResponse.IsPay)
purchaseOrderV2.PayTime = DateTime.Now; purchaseOrderV2.PayTime = DateTime.Now;
@ -746,17 +741,20 @@ namespace BBWY.Server.Business
}); });
successSkuIdList.AddRange(belongSkuGroups.Select(g => g.Key)); successSkuIdList.AddRange(belongSkuGroups.Select(g => g.Key));
if (purchaseGroup.PurchasePlatform == Enums.Platform.) if (purchaseGroup.PurchasePlatform == Enums.Platform. && request.IntoStoreType == Enums.IntoStoreType.)
{ {
qikuPackSkuConfigRequestList.Add(new qikuTaskList.Add(new
{ {
orderId = purchaseOrderV2.Id, orderId = purchaseOrderV2.Id,
orderSn = purchaseOrderV2.OrderSn,
//shopId = request.ShopId.ToString(), //shopId = request.ShopId.ToString(),
shopId = purchaseGroup.PurchaserId, //拳探店铺Id(商家Id) shopId = purchaseGroup.PurchaserId, //拳探店铺Id(商家Id)
originShopId = request.ShopId.ToString(),
originShopName = request.ShopName, originShopName = request.ShopName,
userName = purchaseAccount.AccountName, userId = "", //待定
//userName = purchaseAccount.AccountName,
platform = Enums.Platform., platform = Enums.Platform.,
purchaseTaskModels = skuPackConfigList purchaseTaskModels
}); });
} }
} }
@ -771,17 +769,17 @@ namespace BBWY.Server.Business
} }
} }
if (qikuPackSkuConfigRequestList.Count() > 0) if (qikuTaskList.Count() > 0)
{ {
Task.Factory.StartNew(() => Task.Factory.StartNew(() =>
{ {
foreach (var qikuPackSkuConfigRequest in qikuPackSkuConfigRequestList) foreach (var qikuTask in qikuTaskList)
{ {
try try
{ {
var qikuResponse = restApiService.SendRequest("http://qiku.qiyue666.com/", var qikuResponse = restApiService.SendRequest("http://qiku.qiyue666.com/",
"api/PackPurchaseTask/BatchPublicPurchaseTask", "api/PackPurchaseTask/BatchPublicPurchaseTaskV2",
qikuPackSkuConfigRequest, qikuTask,
null, null,
HttpMethod.Post); HttpMethod.Post);
if (qikuResponse.StatusCode != System.Net.HttpStatusCode.OK) if (qikuResponse.StatusCode != System.Net.HttpStatusCode.OK)
@ -789,7 +787,7 @@ namespace BBWY.Server.Business
} }
catch (Exception ex) catch (Exception ex)
{ {
nLogManager.GetLogger($"发布打包任务-{request.ShopName}").Error(ex, JsonConvert.SerializeObject(qikuPackSkuConfigRequest)); nLogManager.GetLogger($"发布齐库采购单任务-{request.ShopName}").Error(ex, JsonConvert.SerializeObject(qikuTask));
} }
} }
}); });
@ -805,11 +803,13 @@ namespace BBWY.Server.Business
private int GetQiKuWareType(Enums.StockType stockType) private int GetQiKuWareType(Enums.StockType stockType)
{ {
if (stockType == Enums.StockType.) if (stockType == Enums.StockType.)
return 0; return 2;
if (stockType == Enums.StockType.) if (stockType == Enums.StockType.)
return 1; return 1;
if (stockType == Enums.StockType.) if (stockType == Enums.StockType.)
return 2; return 0;
if (stockType == Enums.StockType.)
return 3;
return 0; return 0;
} }
@ -888,7 +888,8 @@ namespace BBWY.Server.Business
PurchaseOrderMode = po.PurchaseOrderMode, PurchaseOrderMode = po.PurchaseOrderMode,
ExpressName = po.ExpressName, ExpressName = po.ExpressName,
WaybillNo = po.WaybillNo, WaybillNo = po.WaybillNo,
PackState = po.PackState PackState = po.PackState,
IntoStoreType = po.IntoStoreType
}); });
var purchaseOrderIdList = purchaseOrderList.Select(p => p.Id).ToList(); var purchaseOrderIdList = purchaseOrderList.Select(p => p.Id).ToList();

3
BBWY.Server.Model/Db/PurchaseOrder/PurchaseOrderSku.cs

@ -117,6 +117,9 @@ namespace BBWY.Server.Model.Db
public string SkuTitle { get; set; } public string SkuTitle { get; set; }
[Column(MapType = typeof(int?))]
public Enums.StockType? StockType { get; set; }
} }
} }

6
BBWY.Server.Model/Db/PurchaseOrder/PurchaseOrderV2.cs

@ -214,6 +214,12 @@ namespace BBWY.Server.Model.Db
/// </summary> /// </summary>
[Column(MapType = typeof(int))] [Column(MapType = typeof(int))]
public Enums.PackState PackState { get; set; } public Enums.PackState PackState { get; set; }
/// <summary>
/// 入仓类型 (发回齐越 = 0, 厂商代发入仓 = 1)
/// </summary>
[Column(MapType = typeof(int?))]
public Enums.IntoStoreType? IntoStoreType { get; set; }
} }
} }

2
BBWY.Server.Model/Dto/Request/PurchaseOrderV2/BatchPurchase2/BatchPurchaseCargoParamRequestV2.cs

@ -61,6 +61,8 @@ namespace BBWY.Server.Model.Dto
/// 采购方案Id /// 采购方案Id
/// </summary> /// </summary>
public long BelongSchemeId { get; set; } public long BelongSchemeId { get; set; }
public Enums.StockType? StockType { get; set; }
#endregion #endregion
} }

9
BBWY.Server.Model/Dto/Request/PurchaseOrderV2/BatchPurchase2/BatchPurchaseCreateOrderRequestV2.cs

@ -21,8 +21,13 @@ namespace BBWY.Server.Model.Dto
public string AutoPay { get; set; } = "fail"; public string AutoPay { get; set; } = "fail";
/// <summary> /// <summary>
/// 打包设置 /// 入仓类型
/// </summary> /// </summary>
public IList<PackSkuConfigRequest> PackSkuConfigList { get; set; } public Enums.IntoStoreType? IntoStoreType { get; set; }
///// <summary>
///// 打包设置
///// </summary>
//public IList<PackSkuConfigRequest> PackSkuConfigList { get; set; }
} }
} }

11
BBWY.Server.Model/Enums.cs

@ -208,11 +208,11 @@
} }
/// <summary> /// <summary>
/// 京东仓库类型 商家仓 = 1, 京仓 = 2, 云仓 = 3 /// 仓库类型(如业务不需要则为null) 商家仓 = 1, 京仓 = 2, 云仓 = 3, 聚水潭=4
/// </summary> /// </summary>
public enum StockType public enum StockType
{ {
= 1, = 2, = 3 = 1, = 2, = 3, = 4
} }
/// <summary> /// <summary>
@ -381,5 +381,12 @@
= 1 = 1
} }
/// <summary>
/// 入仓类型 (发回齐越 = 0, 厂商代发入仓 = 1)
/// </summary>
public enum IntoStoreType
{
= 0, = 1
}
} }
} }

Loading…
Cancel
Save