Browse Source

更新上架逻辑

AddValidOverTime
彭聪 2 years ago
parent
commit
8ae8398e13
  1. 4
      BBWY.JDSDK/Request/SkuWriteUpdateSkusRequest.cs
  2. 120
      BBWY.Server.Business/PlatformSDK/JDBusiness.cs

4
BBWY.JDSDK/Request/SkuWriteUpdateSkusRequest.cs

@ -43,6 +43,8 @@ namespace Jd.Api.Request
public List<SkuWriteUpdateSkusItemSaleAttrs> multiCateProps { get; set; }
public int? promiseId { get; set; }
public string saleAttrTemplateId { get; set; }
}
public class SkuWriteUpdateSkusItemSaleAttrs
@ -57,5 +59,7 @@ namespace Jd.Api.Request
public List<string> attrValueAlias { get; set; }
public int index { get; set; }
public List<int?> attrValuesSeqNo { get; set; }
}
}

120
BBWY.Server.Business/PlatformSDK/JDBusiness.cs

@ -999,7 +999,7 @@ namespace BBWY.Server.Business
for (var i = 0; i < request.GiftTemplateSkuList.Count(); i++)
{
var giftSku = request.GiftTemplateSkuList[i];
var colorProperty = colorSaleAttrs[takeColorIndex];
var colorPropertyValue = colorSaleAttrs[takeColorIndex];
var p = new SkuWriteUpdateSkusItem()
{
@ -1012,14 +1012,26 @@ namespace BBWY.Server.Business
outerId = $"{request.OuterId}{(i + 1).ToString().PadLeft(3, '0')}",
saleAttrs = new List<SkuWriteUpdateSkusItemSaleAttrs>()
{
//new SkuWriteUpdateSkusItemSaleAttrs()
//{
// type = "com.jd.pop.ware.ic.api.domain.Prop",
// attrId = colorProperty.Value<string>("attId"),
// attrValues = new List<string>() { colorProperty.Value<string>("id") },
// index = takeColorIndex,
// attrValuesSeqNo = new List<int?>(){ takeColorIndex }
//}
new SkuWriteUpdateSkusItemSaleAttrs()
{
type = "com.jd.pop.ware.ic.api.domain.Prop",
attrId = colorProperty.Value<string>("attId"),
attrValues = new List<string>() { colorProperty.Value<string>("id") },
index = takeColorIndex
}
}
attrId = colorPropertyValue.Value<string>("attId"),
//attrValues = new List<string>() { colorPropertyValue.Value<string>("id") },
attrValueAlias = new List<string>(){ giftSku.Title }, // colorPropertyValue.Value<string>("name")
index = takeColorIndex,
attrValuesSeqNo = new List<int?>(){ takeColorIndex }
}
},
saleAttrTemplateId = "POP_MODEL"
//promiseId = 30603710 //固定时效模板Id 48小时发货
};
@ -1036,26 +1048,26 @@ namespace BBWY.Server.Business
}
}
//修改标题参数
updateSkuTitleParamList.Add(new WareWriteUpdateWareSaleAttrvalueAliasRequestItem()
{
attrId = p.saleAttrs[0].attrId,
attrValues = p.saleAttrs[0].attrValues,
attrValueAlias = new List<string>() { giftSku.Title }
});
//修改商品细节图参数
var imgUrlBuilder = new StringBuilder();
var imgIndexBuilder = new StringBuilder();
imgUrlBuilder.Append($"{giftSku.Logo.Substring(giftSku.Logo.IndexOf("jfs"))},");
imgIndexBuilder.Append("1,");
imageWriteUpdateRequestList.Add(new ImageWriteUpdateRequest()
{
wareId = wareId,
colorId = colorProperty.Value<string>("id"),
imgUrl = imgUrlBuilder.ToString().Trim(','),
imgIndex = imgIndexBuilder.ToString().Trim(',')
});
////修改标题参数
//updateSkuTitleParamList.Add(new WareWriteUpdateWareSaleAttrvalueAliasRequestItem()
//{
// attrId = p.saleAttrs[0].attrId,
// attrValues = p.saleAttrs[0].attrValues,
// attrValueAlias = new List<string>() { giftSku.Title }
//});
////修改商品细节图参数
//var imgUrlBuilder = new StringBuilder();
//var imgIndexBuilder = new StringBuilder();
//imgUrlBuilder.Append($"{giftSku.Logo.Substring(giftSku.Logo.IndexOf("jfs"))},");
//imgIndexBuilder.Append("1,");
//imageWriteUpdateRequestList.Add(new ImageWriteUpdateRequest()
//{
// wareId = wareId,
// colorId = colorProperty.Value<string>("id"),
// imgUrl = imgUrlBuilder.ToString().Trim(','),
// imgIndex = imgIndexBuilder.ToString().Trim(',')
//});
takeColorIndex--;
skusParamList.Add(p);
@ -1126,27 +1138,55 @@ namespace BBWY.Server.Business
}
}
var newSkuList = res.Json["jingdong_sku_write_updateSkus_responce"]["skuList"].ToList().Select(x => x.Value<string>("skuId")).ToList();
giftSkuIdList.AddRange(newSkuList);
}
#endregion
var newSkuIdList = res.Json["jingdong_sku_write_updateSkus_responce"]["skuList"].ToList().Select(x => x.Value<string>("skuId")).ToList();
giftSkuIdList.AddRange(newSkuIdList);
#region sku改名
var newSkuList = res.Json["jingdong_sku_write_updateSkus_responce"]["skuList"].ToList();
var imgIndex = 1;
StringBuilder colorBuilder = new StringBuilder();
StringBuilder imgUrlBuilder = new StringBuilder();
StringBuilder imgIndexBuilder = new StringBuilder();
foreach (var skuJToken in newSkuList)
{
stepText = "sku改名";
var req = new WareWriteUpdateWareSaleAttrvalueAliasRequest()
var skuTitle = skuJToken["saleAttrs"][0]["attrValueAlias"][0].ToString();
var colorId = skuJToken["saleAttrs"][0]["attrValues"][0].ToString();
var currentImgIndex = imgIndex;
imgIndex++;
var giftSku = request.GiftTemplateSkuList.FirstOrDefault(x => x.Title == skuTitle);
var imgUrl = giftSku.Logo.Substring(giftSku.Logo.IndexOf("jfs"));
colorBuilder.Append($"{colorId},");
imgUrlBuilder.Append($"{imgUrl},");
imgIndexBuilder.Append($"{currentImgIndex},");
}
imageWriteUpdateRequestList.Add(new ImageWriteUpdateRequest()
{
wareId = wareId,
props = updateSkuTitleParamList
};
var res = jdClient.Execute(req, request.AppToken, DateTime.Now.ToLocalTime());
if (res.Json == null)
res.Json = JObject.Parse(res.Body);
if (res.IsError)
throw new BusinessException($"sku改名失败-{(string.IsNullOrEmpty(res.ErrorMsg) ? res.ErrMsg : res.ErrorMsg)}");
colorId = colorBuilder.ToString().TrimEnd(','),
imgUrl = imgUrlBuilder.ToString().TrimEnd(','),
imgIndex = imgIndexBuilder.ToString().TrimEnd(',')
});
}
#endregion
//#region sku改名
//{
// stepText = "sku改名";
// var req = new WareWriteUpdateWareSaleAttrvalueAliasRequest()
// {
// wareId = wareId,
// props = updateSkuTitleParamList
// };
// var res = jdClient.Execute(req, request.AppToken, DateTime.Now.ToLocalTime());
// if (res.Json == null)
// res.Json = JObject.Parse(res.Body);
// if (res.IsError)
// throw new BusinessException($"sku改名失败-{(string.IsNullOrEmpty(res.ErrorMsg) ? res.ErrMsg : res.ErrorMsg)}");
//}
//#endregion
#region sku修改细节图
stepText = "sku修改细节图";
foreach (var imageWriteUpdateRequest in imageWriteUpdateRequestList)

Loading…
Cancel
Save