Exemplo n.º 1
0
        static JdUnion_BaseClass()
        {
            string txt = JdUnion_GlbObject.getJsonText("system.config.keys");

            string[] keys = txt.Split(';');
            if (keys.Length < 2)
            {
                throw new Exception("请设置好系统配置文件。");
            }
            _app_key    = keys[0];
            _app_secret = keys[1];
            if (keys.Length > 2)
            {
                _access_token = keys[2];
            }
            if (keys.Length > 3)
            {
                _siteId = keys[3];
            }
            Inited = true;
        }
Exemplo n.º 2
0
        public static Dictionary <string, JdGoodSummayInfoItemClass> QueryWeb(string keyWord, int defaultReturnCnt = 10)
        {
            //AccessWebServerClass awc = new AccessWebServerClass();
            Dictionary <string, JdGoodSummayInfoItemClass> ret = new Dictionary <string, JdGoodSummayInfoItemClass>();

            try
            {
                string url = "https://union.jd.com/api/goods/search";

                string strJson = JdUnion_GlbObject.getJsonText("jd.union.search.model");
                if (string.IsNullOrEmpty(strJson))
                {
                    return(ret);
                }
                string strPostData = strJson.Replace("{0}", keyWord);
                string retJson     = AccessWebServerClass.PostData(url, strPostData, Encoding.UTF8);
                JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
                searchReturnData     returnResult         = javaScriptSerializer.Deserialize <searchReturnData>(retJson);
                if (returnResult.code != 200)
                {
                    return(ret);
                }
                List <string> noMatchedList = new List <string>();
                for (int i = 0; i < returnResult.data.unionGoods.Count; i++)
                {
                    string id = returnResult.data.unionGoods[i][0].skuId;
                    JdGoodSummayInfoItemClass ji = new JdGoodSummayInfoItemClass();
                    if (AllcommissionGoods == null)
                    {
                        AllcommissionGoods = new Dictionary <string, JdGoodSummayInfoItemClass>();
                    }
                    if (AllcommissionGoods.ContainsKey(id))
                    {
                        ji = AllcommissionGoods[id];
                        ret.Add(id, ji);
                    }
                    else
                    {
                        if (noMatchedList.Count < defaultReturnCnt)
                        {
                            noMatchedList.Add(id);
                        }
                    }
                }
                List <JdGoodSummayInfoItemClass> res = null;
                if (LoadPromotionGoodsinfo != null)
                {
                    res = LoadPromotionGoodsinfo(noMatchedList);
                }
                else
                {
                    res = getInfoBySukIds(noMatchedList);
                }
                res.ForEach(a =>
                {
                    if (!ret.ContainsKey(a.skuId))
                    {
                        ret.Add(a.skuId, a);
                    }
                });
                return(ret);
            }
            catch (Exception ce)
            {
            }
            return(ret);
        }