Ejemplo n.º 1
0
 /// <summary>
 /// 添加京东物流信息
 /// </summary>
 private void AddJdwuliu(JdOrderItem jdOrderitem)
 {
     try
     {
         //查询京东物流的订单信息
         var jdwuliu = JdHelper.orderTrack(jdOrderitem.JdOrderId);
         if (jdwuliu != null)
         {
             JArray objson = JArray.Parse(jdwuliu);
             LogHelper.Info(string.Format("OTMSJobobj京东信息:{0}", objson.ToString()));
             StringBuilder sb = new StringBuilder();
             sb.Append("insert into JdExpressTrace (Id,ExpRouteId,AcceptTime,AcceptStation,Remark) values");
             foreach (var _item in objson)
             {
                 sb.Append("(");
                 sb.Append("'" + Guid.NewGuid() + "','" + jdOrderitem.Id + "','" + DateTime.Parse(_item["msgTime"].ToString()) + "','" + _item["content"].ToString().Trim() + "',''");
                 sb.Append("),");
             }
             sb.Remove(sb.Length - 1, 1);
             JdExpressTrace.ObjectSet().Context.ExecuteStoreCommand(sb.ToString());
         }
     }
     catch (Exception ex)
     {
         LogHelper.Info(string.Format("OTMSJob添加京东物流异常信息:{0}", ex));
     }
 }
Ejemplo n.º 2
0
        /// <summary>
        /// 删除京东物流信息
        /// </summary>
        private ResultDTO DeleteJdwuliu(List <JdExpressTrace> jdExpresstrace)
        {
            ResultDTO dto = null;

            try
            {
                Guid   ExpRouteId = jdExpresstrace.FirstOrDefault().ExpRouteId;
                string sql        = " delete from JdExpressTrace where ExpRouteId='" + ExpRouteId + "'";
                JdExpressTrace.ObjectSet().Context.ExecuteStoreCommand(sql);
                dto = new ResultDTO()
                {
                    ResultCode = 0, Message = "删除成功", isSuccess = true
                };
            }
            catch (Exception ex)
            {
                LogHelper.Info(string.Format("OTMSJob删除京东物流异常信息:{0}", ex));
                dto = new ResultDTO()
                {
                    ResultCode = 1, Message = ex.Message, isSuccess = false
                };
            }
            return(dto);
        }
Ejemplo n.º 3
0
 /// <summary>
 ///  获取京东物流跟踪信息
 /// </summary>
 public void GetOrderExpressForJdJobExt()
 {
     try
     {
         //为了避免接口重复调用我只同步30天内的数据
         DateTime startTime   = DateTime.Now.AddDays(-30);
         DateTime endTime     = DateTime.Now.AddDays(1);
         var      jdOrderitem = JdOrderItem.ObjectSet().Where(p => p.SubTime > startTime && p.SubTime < endTime && p.State != 1).GroupBy(p => p.JdOrderId).Select(p => p.FirstOrDefault()).ToList();
         if (jdOrderitem.Any())
         {
             foreach (var _item in jdOrderitem)
             {
                 //查询京东物流信息是否存在
                 var jdExpresstrace = JdExpressTrace.ObjectSet().Where(p => p.ExpRouteId == _item.Id).ToList();
                 if (jdExpresstrace.Count() == 0)
                 {
                     //添加京东物流信息
                     AddJdwuliu(_item);
                 }
                 else
                 {
                     //先删除在增加
                     var result = DeleteJdwuliu(jdExpresstrace);
                     if (result.isSuccess == true)
                     {
                         AddJdwuliu(_item);
                     }
                 }
             }
         }
     }
     catch (Exception ex)
     {
         LogHelper.Error(string.Format("GetOrderExpressForJdJobExt错误信息:{0}", ex.Message), ex);
     }
 }