public ItemGetResponse ItemGet([FromBody] ItemGetRequest req)
        {
            var rep = new ItemGetResponse();

            rep.Data = DefaultStorage.ItemGet(req.Id, req.IncludeSkus);

            return(rep);
        }
Exemple #2
0
        /// <summary>
        /// 淘宝在线获取宝贝信息
        /// </summary>
        public static string GetItemOnline(long item_id)
        {
            ItemGetRequest req = new ItemGetRequest();

            req.Fields = "detail_url,num_iid,title,nick,props_name,price,cid,seller_cids,pic_url,num,location";
            req.NumIid = item_id;
            ItemGetResponse response = client.Execute(req);

            return(response.Body);
        }
Exemple #3
0
        /// <summary>
        /// 根据商品ID获取单个商品信息
        /// </summary>
        /// <param name="sessionKey"></param>
        /// <param name="GoodsId"></param>
        /// <returns></returns>
        internal IList <Item> Getitem(string sessionKey, string GoodsId)
        {
            ITopClient     client = new DefaultTopClient(StaticSystemConfig.soft.ApiURL, StaticSystemConfig.soft.AppKey, StaticSystemConfig.soft.AppSecret, "json");
            ItemGetRequest req    = new ItemGetRequest();

            req.Fields = "approve_status,num_iid,title,nick,type,desc,skus,cid,pic_url,num,props,valid_thru, list_time,price,has_discount,has_invoice,has_warranty,has_showcase, modified,delist_time,postage_id,seller_cids,outer_id";
            req.NumIid = long.Parse(GoodsId);
            ItemGetResponse response = client.Execute(req, sessionKey);

            return(ChangeTypeForItem(response.Body));
        }
Exemple #4
0
        /// <summary>
        ///     得到单个商品信息
        ///     taobao.item.get
        /// </summary>
        /// <param name="req"></param>
        /// <returns>商品详情</returns>
        public Item GetGoods(ItemGetRequest req)
        {
            req.ThrowIfNull(Resource.ExceptionTemplate_MethedParameterIsNullorEmpty.StringFormat(new StackTrace()));

            var tContext = InstanceLocator.Current.GetInstance <AuthorizedContext>();

            ItemGetResponse 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);
        }
Exemple #5
0
        /// <summary>
        /// 淘宝在线获取宝贝信息,格式化输出
        /// </summary>
        public static string GetItemOnline(string itemIdOrUrl)
        {
            long item_id = 0;

            Int64.TryParse(itemIdOrUrl, out item_id);
            if (item_id == 0)
            {
                item_id = Strings.GetItemId(itemIdOrUrl.ToLower());
            }
            ItemGetRequest req = new ItemGetRequest();

            req.Fields = "detail_url,num_iid,title,nick,props_name,price,cid,seller_cids,pic_url,num,location";
            req.NumIid = item_id;
            ItemGetResponse response = client.Execute(req);
            string          strBody  = response.Body;

            try
            {
                JsonSerializer s          = new JsonSerializer();
                JsonReader     reader     = new JsonReader(new StringReader(strBody));
                Object         jsonObject = s.Deserialize(reader);
                if (jsonObject != null)
                {
                    StringWriter sWriter = new StringWriter();
                    Newtonsoft.Json.JsonWriter writer = new Newtonsoft.Json.JsonWriter(sWriter);
                    writer.Formatting  = Formatting.Indented;
                    writer.Indentation = 4;
                    writer.IndentChar  = ' ';
                    s.Serialize(writer, jsonObject);
                    return(sWriter.ToString());
                }
                else
                {
                    return("无法解析");
                }
            }
            catch (Exception ex)
            {
                return(string.Format("无法解析:{0}", ex.Message));
            }
        }
Exemple #6
0
        private void CaiJiTaoBao()
        {
            TaoBaoService   taobaoService = new TaoBaoService();
            TaoBaoUtils     taoBaoUtils   = new TaoBaoUtils();
            ItemGetResponse itemResponse  = taobaoService.GetItemGetMobileResponseByOnlinekeyNew("566940414408", 0);
            var             item          = itemResponse.Item;
            List <string[]> _outputList   = new List <string[]>();

            _outputList.Add(new string[] { "version 1.00" });
            _outputList.Add(ConfigHelper.TaoBaoHeaderFieldRow);
            _outputList.Add(ConfigHelper.TaoBaoHeaderRow);
            ProductItem productItem = new ProductItem();

            productItem.SysId           = 1;//代表淘宝
            productItem.Name            = item.Title;
            productItem.ProductSortKeys = DataConvert.ToString(item.Cid);
            productItem.SortKey         = productItem.ProductSortKeys;
            productItem.ActualNewOrOld  = taoBaoUtils.GetItzemStuffStatus(item.StuffStatus);
            productItem.Province        = item.Location.State;
            productItem.City            = item.Location.City;
            if (item.Type != "fixed")
            {
                if (item.Type == "auction")
                {
                    productItem.SellType     = "a";
                    productItem.SellTypeName = "拍卖";
                }
            }
            else
            {
                productItem.SellType     = "b";
                productItem.SellTypeName = "一口价";
            }

            productItem.Price     = DataConvert.ToDecimal(item.Price);
            productItem.PriceRise = DataConvert.ToDecimal(item.Increment);
            productItem.Nums      = DataConvert.ToInt(item.Num);
            productItem.validDate = DataConvert.ToString(item.ValidThru);
            // productItem.ShipWay = (item.FreightPayer == "seller" ? "1" : "2");

            /**
             * productItem.ActualShipSlow = actualShipSlow;
             *  productItem.ActualShipFast = actualShipFast;
             *  productItem.ActualShipEMS = actualShipEMS;
             *  productItem.ActualShipTpl = actualShipTpl;
             *  productItem.ShipWay = text4;
             * */
            taoBaoUtils.HandleShipWay(productItem);
            productItem.IsTicket         = (item.HasInvoice ? "1" : "0");
            productItem.IsRepair         = (item.HasWarranty ? "1" : "0");
            productItem.OnSell           = item.ApproveStatus == "onsale" ? "1" : "2";
            productItem.IsRmd            = DataConvert.ToString(item.HasShowcase);
            productItem.ActualOnSellDate = DataConvert.ToDateTime(item.ListTime).ToString("yyyy-MM-dd HH:mm:ss").Replace("/", "-");
            productItem.Content          = item.Desc;
            Dictionary <string, SellProInfo> dictParam = new Dictionary <string, SellProInfo>();
            string empty        = string.Empty;
            int    sortId       = DataHelper.GetSysSort(productItem.ProductSortKeys).Id;
            var    propertyList = taoBaoUtils.SetspPropertyList(item, sortId, out dictParam, out empty);

            foreach (Sp_property prop_item in propertyList)
            {
                prop_item.SysProperty = DataHelper.GetPropertyById(prop_item.Propertyid);
            }
            //里面给productItem.PropertyValue,productItem.UserInputPropIDs,productItem.UserInputPropValues,productItem.Features赋值了
            taoBaoUtils.HandleProperty(productItem, propertyList);


            productItem.Discount = DataConvert.ToString(item.HasDiscount);
            //productItem.Photo
            string skuBarcode = string.Empty;
            IList <Sp_sellProperty> SpSellPropertyList;

            productItem.SellProperty = taoBaoUtils.HandleSellProperty(productItem.Id, out skuBarcode, productItem, propertyList, SpSellPropertyList);
            productItem.SkuBarcode   = skuBarcode;

            productItem.Code = taoBaoUtils.GetCode(item.PropsName, item.OuterId);
            //productItem.CustomProperty
            productItem.OnlineKey    = DataConvert.ToString(item.NumIid);
            productItem.SszgUserName = "";
            productItem.FoodParame   = taoBaoUtils.GetFoodParame(item);
            productItem.SubStock     = DataConvert.ToString(item.SubStock);
            if (!string.IsNullOrEmpty(item.ItemSize))
            {
                if (item.ItemSize.StartsWith("bulk:"))
                {
                    productItem.ItemSize = item.ItemSize;
                }
                else
                {
                    productItem.ItemSize = "bulk:" + item.ItemSize;
                }
            }

            productItem.ItemWeight   = item.ItemWeight;
            productItem.Wirelessdesc = item.WirelessDesc;
            productItem.Barcode      = item.Barcode;
            bool IsSnatchSellPoint = false;

            if (IsSnatchSellPoint)
            {
                string empty2    = Utils.SendWebRequest(productItem.DetailUrl);
                string sellPoint = taoBaoUtils.GetItemSellPoint(empty2);
                if (!string.IsNullOrEmpty(sellPoint))
                {
                    sellPoint             = sellPoint.Trim();
                    productItem.SellPoint = ((sellPoint.Length > 150) ? sellPoint.Substring(0, 150) : sellPoint);
                }
            }


            //productItem.SkuBarcode
            //productItem.CpvMemo
            productItem.InputCustomCpv = "";


            productItem.OperateTypes = taoBaoUtils.GetOperateTypes(item.DetailUrl);


            _outputList.Add(taoBaoUtils.TaobaoPrepareCSVData(productItem));
            taoBaoUtils.WriteDicToFile(@"F:\jar\113.csv", _outputList);
        }