/// <summary> /// 发布商品 /// taobao.item.add 添加一个商品 /// </summary> /// <param name="product">商品</param> /// <returns>商品编号</returns> public Item PublishGoods(Product product) { _log.LogInfo(Resource.Log_PublishGoodsing.StringFormat(product.Title)); var req = new ItemAddRequest(); Util.CopyModel(product, req); var tContext = InstanceLocator.Current.GetInstance <AuthorizedContext>(); ItemAddResponse response = _client.Execute(req, tContext.SessionKey); if (response.IsError) { var ex = new TopResponseException(response.ErrCode, response.ErrMsg, response.SubErrCode, response.SubErrMsg, response.TopForbiddenFields); _log.LogError(Resource.Log_PublishGoodsFailure, product.Title, ex); throw ex; } Item item = response.Item; _log.LogInfo(Resource.Log_PublishGoodsSuccess, product.Title, item.NumIid); return(item); }
public Item UpdateGoods(Product product) { var req = new ItemUpdateRequest(); Util.CopyModel(product, req); return(UpdateGoodsBase(req, product.NumIid, product.OuterId, product.Title)); }
//填充产品信息,将banggo的数据填充进相应的请求模型中 private void StuffProductInfo(Product bProduct) { _log.LogInfo(Resource.Log_StuffProductInfoing.StringFormat(bProduct.GoodsSn)); bProduct.OuterId = bProduct.GoodsSn; var watermark = SetTextAndIconWatermark(bProduct.ThumbUrl, true); bProduct.Image = new FileItem(bProduct.GoodsSn + ".jpg", ImageHelper.SetBitmapToBytes(watermark, ImageFormat.Jpeg)); //bProduct.Image = new FileItem(bProduct.GoodsSn + ".jpg", SysUtils.GetImgByte(bProduct.ThumbUrl)); /* //todo:截图功能没有实现 * foreach (var pic in bProduct.GoodsDetailPic) * { * try * { * PictureUploadRequest picRequest = new PictureUploadRequest(); * picRequest.Img = pic; * picRequest.PictureCategoryId = 0; * picRequest.ImageInputTitle = pic.GetFileName(); * * var picResult = PictureUpload(picRequest); * string imgTag = "<img src='{0}' alt='{1}'/>".StringFormat(picResult.PicturePath, picResult.Title); * bProduct.Desc += imgTag; * } * catch (Exception) * { * * } * }*/ //得到运费模版 string deliveryTemplateId = _delivery.GetDeliveryTemplateId(Resource.SysConfig_DeliveryTemplateName); if (deliveryTemplateId == null) { SetDeliveryFee(bProduct); } else { bProduct.PostageId = deliveryTemplateId.ToType <Int64>(); bProduct.ItemWeight = Resource.SysConfig_ItemWeight; } string itemProps = _catalog.GetItemProps(bProduct.Cid.ToString()); bProduct.Props = itemProps; //只先提取必填项 SetOptionalProps(bProduct); SetSkuInfo(bProduct); watermark.Dispose(); _log.LogInfo(Resource.Log_StuffProductInfoSuccess.StringFormat(bProduct.GoodsSn)); }
public void TestCopeMode() { Product product = new Product(); product.Desc = "asdf"; product.Num = 22; ItemAddRequest req = new ItemAddRequest(); Util.CopyModel(product, req); Console.WriteLine(req.Desc); Console.WriteLine(req.Num); }
//发布商品并上传图片 private Item PublishGoodsAndUploadPic(Product product) { StuffProductInfo(product); Item item = PublishGoods(product); foreach (ProductColor pColor in product.ColorList) { UploadItemPropimg(item.NumIid, pColor.MapProps, new Uri(pColor.ImgUrl)); Thread.Sleep(500); } return(item); }
/// <summary> /// 更新商品信息包括SKU信息,必须保证BSizeToTSize有值 /// </summary> public void UpdateGoodsInfo(Product product) { //1,填充必填项到props string itemProps = _catalog.GetItemProps(product.Cid.ToString()); product.Props = itemProps; //只先提取必填项 //2,SetSkuInfo SetSkuInfo(product); Thread.Sleep(200); UpdateGoods(product); }
//更新商品并上传相应的销售图片 private void UpdateGoodsAndUploadPic(Product product) { UpdateGoodsInfo(product); foreach (ProductColor pColor in product.ColorList) { if (product.NumIid != null) { UploadItemPropimg(product.NumIid.Value, pColor.MapProps, new Uri(pColor.ImgUrl)); } Thread.Sleep(500); } }
/// <summary> /// 发布商品 /// </summary> /// <param name="product">商品</param> /// <returns>商品编号</returns> public Item PublishGoods(Product product) { ItemAddRequest req = new ItemAddRequest(); Util.CopyModel(product, req); TopContext tContext = InstanceLocator.Current.GetInstance<TopContext>(); ItemAddResponse response = client.Execute(req, tContext.SessionKey); if (response.IsError) throw new TopResponseException(response.ErrCode,response.ErrMsg,response.SubErrCode,response.SubErrMsg,response.TopForbiddenFields); return response.Item; }
public void TestCopeMode() { Product product = new Product(); product.Desc = "asdf"; product.Num = 22; ItemAddRequest req = new ItemAddRequest(); Util.CopyModel(product, req); Console.WriteLine(req.Desc); Console.WriteLine(req.Num); }
//包括设置品牌、货号 private void SetOptionalProps(Product bProduct) { //取消在Props中增加品牌,因为在更新SKU没办法得到Brand /* var rm = new ResourceManager(typeof(Resource).FullName, * typeof(Resource).Assembly); * string brandProp = rm.GetString("SysConfig_{0}_BrandProp".StringFormat(bProduct.Brand)); * * if (!brandProp.IsNullOrEmpty()) * { * bProduct.Props += brandProp; * }*/ bProduct.InputPids = "{0},{1}".StringFormat(Resource.SysConfig_ProductCodeProp, "20000"); bProduct.InputStr = "{0},{1}".StringFormat(bProduct.GoodsSn, bProduct.Brand); }
//发布商品的主方法 private Item PublishGoodsMain(IRequest req, RequestModel requestModel) { try { Product product = req.GetGoodsInfo(requestModel); product.SetAddProperty(); if (product.ColorList.IsNullOrEmpty()) { return(null); } req.SetCidAndSellerCids(product); return(PublishGoodsAndUploadPic(product)); } catch (Exception e) { _log.LogError("发布该产品失败,邦购没有该产品:{0}", e, requestModel.GoodsSn); return(null); } }
public Item UpdateGoods(Product product) { var req = new ItemUpdateRequest(); Util.CopyModel(product, req); return UpdateGoodsBase(req, product.NumIid, product.OuterId, product.Title); }
private static void SetDeliveryFee(Product tProduct) { tProduct.PostFee = Resource.SysConfig_PostFee; tProduct.ExpressFee = Resource.SysConfig_ExpressFee; tProduct.EmsFee = Resource.SysConfig_EmsFee; }
//更新单条产品 private void UpdateGoodsInternalSingle(IRequest req, Item item, string goodsUrl, bool isModifyPrice = true) { try { if (goodsUrl.IsNullOrEmpty()) { // this.GoodsDelisting(item.NumIid); //不进行下架,如在获取产品时,网络问题等因素 this._log.LogInfo("GoodsSn:{0}->没有在邦购上获取URL不能进行进行操作".StringFormat(item.OuterId)); return; } var product = new Product { GoodsSn = item.OuterId, GoodsUrl = goodsUrl, Cid = item.Cid, NumIid = item.NumIid, OuterId = item.OuterId, //替换原来的产品标题 Title = item.Title.Replace( SysConst.OriginalTitle, SysConst.NewTitle) }; req.GetProductSku(product, new RequestModel { GoodsSn = item.OuterId, Referer = goodsUrl }); if (SysConst.IsModifyMainPic) { #region old /* old //todo 些处可以修改了,因为能获取到主图URL了 * Bitmap watermark = imageWatermark.CreateWatermark((Bitmap)imageWatermark.SetByteToImage(SysUtils.GetImgByte(item.PicUrl)), * (Bitmap) * imageWatermark.SetByteToImage( * SysUtils.GetImgByte(SysConst.ImgWatermark)), * ImageWatermark.WatermarkPosition.RightTop, * 3);*/ #endregion Bitmap watermark = SetTextAndIconWatermark(product.ThumbUrl, true); product.Image = new FileItem("aa.jpg", ImageHelper.SetBitmapToBytes(watermark, ImageFormat.Jpeg)); } #region 如果没有强制更新者 判断邦购数据是否以淘宝现在的库存数量一样,如果一样就取消更新 if (!SysConst.IsEnforceUpdate) { if (item.Num == product.ColorList.Sum(p => p.AvlNumForColor)) { this._log.LogInfo(Resource.Log_StockEqualNotUpdate.StringFormat(item.NumIid, item.OuterId)); return; } } #endregion this.DeleteAllSku(item); #region 如果是不修改价格(IsModifyPrice = false),则读取Item的price 填充到MySalePrice 中 if (!isModifyPrice) { foreach (var size in product.ColorList.SelectMany(color => color.SizeList)) { size.MySalePrice = item.Price.ToType <double>(); } } #endregion this.UpdateGoodsAndUploadPic(product); } catch (Exception ex) { _log.LogError(Resource.Log_UpdateGoodsFailure.StringFormat(item.NumIid, item.OuterId), ex); } }
//更新单条产品 private void UpdateGoodsInternalSingle(IRequest req,Item item, string goodsUrl, bool isModifyPrice = true) { try { if (goodsUrl.IsNullOrEmpty()) { // this.GoodsDelisting(item.NumIid); //不进行下架,如在获取产品时,网络问题等因素 this._log.LogInfo("GoodsSn:{0}->没有在邦购上获取URL不能进行进行操作".StringFormat(item.OuterId)); return; } var product = new Product { GoodsSn = item.OuterId, GoodsUrl = goodsUrl, Cid = item.Cid, NumIid = item.NumIid, OuterId = item.OuterId, //替换原来的产品标题 Title = item.Title.Replace( SysConst.OriginalTitle, SysConst.NewTitle) }; req.GetProductSku(product, new RequestModel { GoodsSn = item.OuterId, Referer = goodsUrl }); if (SysConst.IsModifyMainPic) { #region old /* old //todo 些处可以修改了,因为能获取到主图URL了 Bitmap watermark = imageWatermark.CreateWatermark((Bitmap)imageWatermark.SetByteToImage(SysUtils.GetImgByte(item.PicUrl)), (Bitmap) imageWatermark.SetByteToImage( SysUtils.GetImgByte(SysConst.ImgWatermark)), ImageWatermark.WatermarkPosition.RightTop, 3);*/ #endregion Bitmap watermark = SetTextAndIconWatermark(product.ThumbUrl, true); product.Image = new FileItem("aa.jpg", ImageHelper.SetBitmapToBytes(watermark, ImageFormat.Jpeg)); } #region 如果没有强制更新者 判断邦购数据是否以淘宝现在的库存数量一样,如果一样就取消更新 if (!SysConst.IsEnforceUpdate) { if (item.Num == product.ColorList.Sum(p => p.AvlNumForColor)) { this._log.LogInfo(Resource.Log_StockEqualNotUpdate.StringFormat(item.NumIid, item.OuterId)); return; } } #endregion this.DeleteAllSku(item); #region 如果是不修改价格(IsModifyPrice = false),则读取Item的price 填充到MySalePrice 中 if (!isModifyPrice) { foreach (var size in product.ColorList.SelectMany(color => color.SizeList)) { size.MySalePrice = item.Price.ToType<double>(); } } #endregion this.UpdateGoodsAndUploadPic(product); } catch (Exception ex) { _log.LogError(Resource.Log_UpdateGoodsFailure.StringFormat(item.NumIid, item.OuterId), ex); } }
//发布商品并上传图片 private Item PublishGoodsAndUploadPic(Product product) { StuffProductInfo(product); Item item = PublishGoods(product); foreach (ProductColor pColor in product.ColorList) { UploadItemPropimg(item.NumIid, pColor.MapProps, new Uri(pColor.ImgUrl)); Thread.Sleep(500); } return item; }
/// <summary> /// 发布商品 /// taobao.item.add 添加一个商品 /// </summary> /// <param name="product">商品</param> /// <returns>商品编号</returns> public Item PublishGoods(Product product) { _log.LogInfo(Resource.Log_PublishGoodsing.StringFormat(product.Title)); var req = new ItemAddRequest(); Util.CopyModel(product, req); var tContext = InstanceLocator.Current.GetInstance<AuthorizedContext>(); ItemAddResponse response = _client.Execute(req, tContext.SessionKey); if (response.IsError) { var ex = new TopResponseException(response.ErrCode, response.ErrMsg, response.SubErrCode, response.SubErrMsg, response.TopForbiddenFields); _log.LogError(Resource.Log_PublishGoodsFailure, product.Title, ex); throw ex; } Item item = response.Item; _log.LogInfo(Resource.Log_PublishGoodsSuccess, product.Title, item.NumIid); return item; }
//包括设置品牌、货号 private void SetOptionalProps(Product bProduct) { //取消在Props中增加品牌,因为在更新SKU没办法得到Brand /* var rm = new ResourceManager(typeof(Resource).FullName, typeof(Resource).Assembly); string brandProp = rm.GetString("SysConfig_{0}_BrandProp".StringFormat(bProduct.Brand)); if (!brandProp.IsNullOrEmpty()) { bProduct.Props += brandProp; }*/ bProduct.InputPids = "{0},{1}".StringFormat(Resource.SysConfig_ProductCodeProp, "20000"); bProduct.InputStr = "{0},{1}".StringFormat(bProduct.GoodsSn, bProduct.Brand); }
private void SetSkuInfo(Product bProduct) { #region var var sbSku = new StringBuilder(); var sbSkuToProps = new StringBuilder(); var lstSkuAlias = new List <string>(); var lstSkuQuantities = new List <string>(); var lstSkuPrices = new List <string>(); var sbSkuOuterIds = new StringBuilder(); int num = 0; //商品数量 #endregion List <string> propColors = _catalog.GetSaleProp(true, bProduct.Cid.ToString()); List <string> propSize = _catalog.GetSaleProp(false, bProduct.Cid.ToString()); int colorCount = bProduct.ColorList.Count; //清空现有的色码与淘宝的属性映射 _dicColorMap.Clear(); List <string> keys = bProduct.BSizeToTSize.Keys.ToList(); bProduct.BSizeToTSize.Clear(); for (int k = 0; k < keys.Count; k++) { bProduct.BSizeToTSize.Add(keys[k], propSize[k]); } for (int i = 0; i < colorCount; i++) { string pColor = propColors[i]; ProductColor bColor = bProduct.ColorList[i]; bColor.MapProps = pColor; _dicColorMap.Add(bColor.ColorCode, pColor); num += bColor.AvlNumForColor; sbSkuToProps.AppendFormat("{0}{1}", pColor, CommomConst.SEMI); lstSkuAlias.Add("{0}{1}{2}({3}色){4}".StringFormat(pColor, CommomConst.COLON, bColor.Title, bColor.ColorCode, CommomConst.SEMI)); //读取尺码 int sizeCount = bColor.SizeList.Count; for (int j = 0; j < sizeCount; j++) { #region 构造尺码 ProductSize bSize = bColor.SizeList[j]; string pSize; if (!bProduct.BSizeToTSize.TryGetValue(bSize.Alias, out pSize)) { continue; } sbSku.AppendFormat("{0}{1}", pColor, CommomConst.SEMI); sbSku.AppendFormat("{0}{1}", pSize, CommomConst.COMMA); if (sbSkuOuterIds.Length > 0) { sbSkuOuterIds.AppendFormat(",{0}", bProduct.GoodsSn); } else { sbSkuOuterIds.Append(bProduct.GoodsSn); } sbSkuToProps.AppendFormat("{0}{1}", pSize, CommomConst.SEMI); // 不用为每个尺码都加别名 if (lstSkuAlias.Find(a => a.Contains(pSize)) == null) { lstSkuAlias.Add("{0}{1}{2}({3}){4}".StringFormat(pSize, CommomConst.COLON, bSize.Alias, bSize.SizeCode, CommomConst.SEMI)); } lstSkuQuantities.Add(bSize.AvlNum.ToString(CultureInfo.InvariantCulture)); //num += bSize.AvlNum; 通过在颜色中去读取有效库存 if (bProduct.Price.IsNullOrEmpty()) { bProduct.Price = bSize.MySalePrice.ToString(CultureInfo.InvariantCulture); } lstSkuPrices.Add(bSize.MySalePrice.ToString(CultureInfo.InvariantCulture)); #endregion } } bProduct.Num = num; bProduct.Props += sbSkuToProps.ToString(); bProduct.PropertyAlias = lstSkuAlias.ToColumnString(""); bProduct.SkuProperties = sbSku.ToString().TrimEnd(','); bProduct.SkuQuantities = lstSkuQuantities.ToColumnString(); bProduct.SkuPrices = lstSkuPrices.ToColumnString(); bProduct.SkuOuterIds = sbSkuOuterIds.ToString(); }
private static void SetDeliveryFee(Product tProduct) { tProduct.PostFee = Resource.SysConfig_PostFee; tProduct.ExpressFee = Resource.SysConfig_ExpressFee; tProduct.EmsFee = Resource.SysConfig_EmsFee; }
/// <summary> /// 更新商品信息包括SKU信息,必须保证BSizeToTSize有值 /// </summary> public void UpdateGoodsInfo(Product product) { //1,填充必填项到props string itemProps = _catalog.GetItemProps(product.Cid.ToString()); product.Props = itemProps; //只先提取必填项 //2,SetSkuInfo SetSkuInfo(product); Thread.Sleep(200); UpdateGoods(product); }
//更新商品并上传相应的销售图片 private void UpdateGoodsAndUploadPic(Product product) { UpdateGoodsInfo(product); foreach (ProductColor pColor in product.ColorList) { if (product.NumIid != null) UploadItemPropimg(product.NumIid.Value, pColor.MapProps, new Uri(pColor.ImgUrl)); Thread.Sleep(500); } }
/// <summary> /// 得到可售商品Sku /// </summary> /// <param name="product">产品</param> /// <param name="requestModel">请求模型</param> public void GetProductSku(Product product, RequestModel requestModel) { BanggoProduct banggoProduct; bool isError = false; try//如果该对象以前是父类,那么此时就直接强制转换,如果不是都重新new一个子类,然后进行赋值 { banggoProduct = (BanggoProduct) product; } catch (Exception) { isError = true; banggoProduct = new BanggoProduct(); Util.CopyModel(product, banggoProduct); } var doc = GetProductSkuBase(banggoProduct, requestModel); banggoProduct.ColorList = GetProductColorByOnline(requestModel, doc); if (isError) //如果是new的一个新对象,那么,就要把在GetProductSkuBase,GetProductColorByOnline中获取到的值,赋给product对象 { Util.CopyModel(banggoProduct,product); } }
private void SetSkuInfo(Product bProduct) { #region var var sbSku = new StringBuilder(); var sbSkuToProps = new StringBuilder(); var lstSkuAlias = new List<string>(); var lstSkuQuantities = new List<string>(); var lstSkuPrices = new List<string>(); var sbSkuOuterIds = new StringBuilder(); int num = 0; //商品数量 #endregion List<string> propColors = _catalog.GetSaleProp(true, bProduct.Cid.ToString()); List<string> propSize = _catalog.GetSaleProp(false, bProduct.Cid.ToString()); int colorCount = bProduct.ColorList.Count; //清空现有的色码与淘宝的属性映射 _dicColorMap.Clear(); List<string> keys = bProduct.BSizeToTSize.Keys.ToList(); bProduct.BSizeToTSize.Clear(); for (int k = 0; k < keys.Count; k++) { bProduct.BSizeToTSize.Add(keys[k], propSize[k]); } for (int i = 0; i < colorCount; i++) { string pColor = propColors[i]; ProductColor bColor = bProduct.ColorList[i]; bColor.MapProps = pColor; _dicColorMap.Add(bColor.ColorCode, pColor); num += bColor.AvlNumForColor; sbSkuToProps.AppendFormat("{0}{1}", pColor, CommomConst.SEMI); lstSkuAlias.Add("{0}{1}{2}({3}色){4}".StringFormat(pColor, CommomConst.COLON, bColor.Title, bColor.ColorCode, CommomConst.SEMI)); //读取尺码 int sizeCount = bColor.SizeList.Count; for (int j = 0; j < sizeCount; j++) { #region 构造尺码 ProductSize bSize = bColor.SizeList[j]; string pSize; if (!bProduct.BSizeToTSize.TryGetValue(bSize.Alias, out pSize)) continue; sbSku.AppendFormat("{0}{1}", pColor, CommomConst.SEMI); sbSku.AppendFormat("{0}{1}", pSize, CommomConst.COMMA); if (sbSkuOuterIds.Length > 0) { sbSkuOuterIds.AppendFormat(",{0}", bProduct.GoodsSn); } else { sbSkuOuterIds.Append(bProduct.GoodsSn); } sbSkuToProps.AppendFormat("{0}{1}", pSize, CommomConst.SEMI); // 不用为每个尺码都加别名 if (lstSkuAlias.Find(a => a.Contains(pSize)) == null) lstSkuAlias.Add("{0}{1}{2}({3}){4}".StringFormat(pSize, CommomConst.COLON, bSize.Alias, bSize.SizeCode, CommomConst.SEMI)); lstSkuQuantities.Add(bSize.AvlNum.ToString(CultureInfo.InvariantCulture)); //num += bSize.AvlNum; 通过在颜色中去读取有效库存 if (bProduct.Price.IsNullOrEmpty()) bProduct.Price = bSize.MySalePrice.ToString(CultureInfo.InvariantCulture); lstSkuPrices.Add(bSize.MySalePrice.ToString(CultureInfo.InvariantCulture)); #endregion } } bProduct.Num = num; bProduct.Props += sbSkuToProps.ToString(); bProduct.PropertyAlias = lstSkuAlias.ToColumnString(""); bProduct.SkuProperties = sbSku.ToString().TrimEnd(','); bProduct.SkuQuantities = lstSkuQuantities.ToColumnString(); bProduct.SkuPrices = lstSkuPrices.ToColumnString(); bProduct.SkuOuterIds = sbSkuOuterIds.ToString(); }
//填充产品信息,将banggo的数据填充进相应的请求模型中 private void StuffProductInfo(Product bProduct) { _log.LogInfo(Resource.Log_StuffProductInfoing.StringFormat(bProduct.GoodsSn)); bProduct.OuterId = bProduct.GoodsSn; var watermark = SetTextAndIconWatermark(bProduct.ThumbUrl,true); bProduct.Image = new FileItem(bProduct.GoodsSn + ".jpg", ImageHelper.SetBitmapToBytes(watermark,ImageFormat.Jpeg)); //bProduct.Image = new FileItem(bProduct.GoodsSn + ".jpg", SysUtils.GetImgByte(bProduct.ThumbUrl)); /* //todo:截图功能没有实现 foreach (var pic in bProduct.GoodsDetailPic) { try { PictureUploadRequest picRequest = new PictureUploadRequest(); picRequest.Img = pic; picRequest.PictureCategoryId = 0; picRequest.ImageInputTitle = pic.GetFileName(); var picResult = PictureUpload(picRequest); string imgTag = "<img src='{0}' alt='{1}'/>".StringFormat(picResult.PicturePath, picResult.Title); bProduct.Desc += imgTag; } catch (Exception) { } }*/ //得到运费模版 string deliveryTemplateId = _delivery.GetDeliveryTemplateId(Resource.SysConfig_DeliveryTemplateName); if (deliveryTemplateId == null) { SetDeliveryFee(bProduct); } else { bProduct.PostageId = deliveryTemplateId.ToType<Int64>(); bProduct.ItemWeight = Resource.SysConfig_ItemWeight; } string itemProps = _catalog.GetItemProps(bProduct.Cid.ToString()); bProduct.Props = itemProps; //只先提取必填项 SetOptionalProps(bProduct); SetSkuInfo(bProduct); watermark.Dispose(); _log.LogInfo(Resource.Log_StuffProductInfoSuccess.StringFormat(bProduct.GoodsSn)); }
/// <summary> /// 设计在淘宝上的类目和设计店铺的类目 /// </summary> /// <param name="product"></param> public void SetCidAndSellerCids(Product product) { BanggoProduct bProduct = (BanggoProduct) product; bProduct.Cid = bProduct.ParentCatalog == "外套" ? _catalog.GetCid(bProduct.Category, bProduct.Catalog).ToType<Int64>() : _catalog.GetCid(bProduct.Category, bProduct.ParentCatalog).ToType<Int64>(); var tContext = InstanceLocator.Current.GetInstance<AuthorizedContext>(); bProduct.SellerCids = _shop.GetSellerCids(tContext.UserNick, "{0} - {1}".StringFormat(bProduct.Brand, bProduct.Category), bProduct.ParentCatalog); }
//填充产品信息,将banggo的数据填充进相应的请求模型中 private void StuffProductInfo(Product bProduct) { _log.LogInfo(Resource.Log_StuffProductInfoing.StringFormat(bProduct.GoodsSn)); bProduct.OuterId = bProduct.GoodsSn; // _banggoMgt.SetCidAndSellerCids(bProduct); var watermark = SetTextAndIconWatermark(bProduct.ThumbUrl,true); bProduct.Image = new FileItem(bProduct.GoodsSn + ".jpg", imageWatermark.SetBitmapToBytes(watermark,ImageFormat.Jpeg)); //bProduct.Image = new FileItem(bProduct.GoodsSn + ".jpg", SysUtils.GetImgByte(bProduct.ThumbUrl)); //得到运费模版 string deliveryTemplateId = _delivery.GetDeliveryTemplateId(Resource.SysConfig_DeliveryTemplateName); if (deliveryTemplateId == null) { SetDeliveryFee(bProduct); } else { bProduct.PostageId = deliveryTemplateId.ToType<Int64>(); bProduct.ItemWeight = Resource.SysConfig_ItemWeight; } string itemProps = _catalog.GetItemProps(bProduct.Cid.ToString()); bProduct.Props = itemProps; //只先提取必填项 SetOptionalProps(bProduct); SetSkuInfo(bProduct); watermark.Dispose(); _log.LogInfo(Resource.Log_StuffProductInfoSuccess.StringFormat(bProduct.GoodsSn)); }