Exemplo n.º 1
0
 public List<OrderInfo> statusNotify(MainForm mainForm)
 {
     OrderInfoDao dao = new OrderInfoDao();
     List<OrderInfo> orderInfoList = dao.statusNotify();
     if (orderInfoList != null && orderInfoList.Count > 0)
     {
         foreach (OrderInfo orderInfo in orderInfoList)
         {
             try
             {
                 StringBuilder sb = new StringBuilder();
                 sb.Append("venderId=").Append(orderInfo.vender_id).Append("&orderId=").Append(orderInfo.order_id).Append("&venderOrderId=").Append(orderInfo.vender_order_no).Append("&orderStatus=").Append(orderInfo.order_status);
                 String sign = Share.MD5(sb.ToString() + "&key=" + Config.md5Key).ToLower();
                 log.Debug("statusNotify start:" + Config.notifyUrl + sb.ToString() + "&sign=" + sign);
                 View.write("回调通知:" + Config.notifyUrl + "?" + sb.ToString() + "&sign=" + sign);
                 String result = Share.getPageInterFace(Config.notifyUrl, sb.ToString() + "&sign=" + sign);
                 log.Debug("statusNotify result:" + result);
                 View.write("回调结果:" + result);
                 if ("success".Equals(result))
                 {
                     orderInfo.notify_status = "8";
                 }
                 else
                 {
                     if (orderInfo.notify_count >= 4)
                     {
                         orderInfo.notify_status = "4";
                     }
                 }
                
             }
             catch(Exception ex)
             {
                 if (orderInfo.notify_count >= 4)
                 {
                     orderInfo.notify_status = "4";
                 }
             }
             int updateCount = dao.updateNotify(orderInfo);
             log.Debug("回调更新结果:" + updateCount);
         }
     }
     return orderInfoList;
 }