예제 #1
0
        public void ProcessRequest(HttpContext context)
        {
            string bill   = context.Request.Params["bill"].ToString();
            string result = KdApiSearch.getOrderTracesByJson(bill);

            // JsonConvert.DeserializeObject(result);
            context.Response.ContentType = "text/plain";
            var a = JsonConvert.DeserializeObject(result);

            context.Response.Write(JsonConvert.DeserializeObject(result));
        }
예제 #2
0
        /// <summary>
        /// 获取快递信息
        /// </summary>
        /// <param name="code">快递信息单号信息(227865099041|STO)</param>
        /// <returns></returns>
        public ActionResult GetKDContent(string code)
        {
            InternationalQuiryResult com = new InternationalQuiryResult();

            try
            {
                code = code.Replace("<br/>", ",");
                StringBuilder kdContent     = new StringBuilder();
                List <string> returnStrList = new List <string>();
                string[]      mails         = code.Split(',');
                foreach (string item in mails)
                {
                    if (!string.IsNullOrEmpty(item))
                    {
                        string[] kd = item.Split('|');
                        if (kd.Length == 2)//如果只有一个物流单号的
                        {
                            string      requestData = "{'OrderCode':'','ShipperCode':'" + kd[1] + "','LogisticCode':'" + kd[0] + "'}";
                            string      returnStr   = KdApiSearch.getOrderTracesByJson(requestData);               //返回的快递信息数据
                            ExpressMode em          = JsonHelper.DeserializeJsonToObject <ExpressMode>(returnStr); //反序列化json数据
                            returnStrList.Add(returnStr);
                        }
                    }
                }
                if (returnStrList.Count > 0)
                {
                    kdContent.Append("[");
                    for (int i = 0; i < returnStrList.Count; i++)
                    {
                        if (i == 0)
                        {
                            kdContent.Append(returnStrList[i]);
                        }
                        else
                        {
                            kdContent.Append("," + returnStrList[i]);
                        }
                    }
                    kdContent.Append("]");
                }
                com.DataResult = kdContent.ToString();
                com.success    = true;
                return(Json(com));
            }
            catch (Exception ex)
            {
                com.Msg     = "参数错误!" + ex.Message;
                com.success = false;
                return(null);
            }
        }
예제 #3
0
        public void GetLsDt()
        {
            LogisticBLL           OptLogistic = new LogisticBLL();
            ProductReceiveAddress objPRA      = null;
            string ExpressCode = string.Empty;

            try
            {
                objPRA = OptLogistic.getProductReceiveAddressByOrderId(orderId.ToString());

                listLsDt = OptLogistic.getListLogisticDetailbyOrderId(orderId.ToString());

                ExpressCode = OptLogistic.getExpressCodeByExpress(objPRA.Express);

                if (string.IsNullOrEmpty(objPRA.Express) || string.IsNullOrEmpty(objPRA.ExpressNumber) || string.IsNullOrEmpty(ExpressCode))
                {
                    return;
                }

                List <BusinessDll.Trace> LSTrace = null;
                if (listLsDt != null)
                {
                    foreach (var li in listLsDt)
                    {
                        if (!string.IsNullOrWhiteSpace(li.Express))
                        {
                            Express = li.Express;
                        }
                        if (!string.IsNullOrWhiteSpace(li.ExpressNumber))
                        {
                            ExpressNumber = li.ExpressNumber;
                        }
                    }

                    LSTrace = new KdApiSearch().getOrderTracesByJson(ExpressCode, objPRA.ExpressNumber);
                    if (LSTrace != null && LSTrace.Count > 0)
                    {
                        LogisticDetail objLsDt = null;
                        foreach (Trace item in LSTrace)
                        {
                            objLsDt             = new LogisticDetail();
                            objLsDt.Description = item.AcceptStation;
                            objLsDt.CreateDate  = item.AcceptTime;
                            listLsDt.Insert(0, objLsDt);
                        }
                    }
                    else
                    {
                        LogisticDetail objLsDt = new LogisticDetail();
                        objLsDt.Description = "如有疑问请至物流公司官网查询详情!";
                        objLsDt.CreateDate  = DateTime.Now;
                        listLsDt.Insert(0, objLsDt);
                    }
                }
            }
            catch (Exception ex)
            {
                NetLog.WriteTraceLogHandler("获取物流信息失败_GetLsDt()", ex.Message + "|" + ex.StackTrace);
                LogisticDetail objLsDt = new LogisticDetail();
                objLsDt.Description = "领取成功,获取不到更多的物流信息!";
                objLsDt.CreateDate  = DateTime.Now;
                if (listLsDt == null)
                {
                    listLsDt = new List <LogisticDetail>();
                }
                listLsDt.Insert(0, objLsDt);
            }
        }