protected override void LoadPage(string themecode, int siteid, string languagecode, string pcode) { if (CurrentUser.id == 0) { Response.Redirect(URL("P_Login", "" + HttpUtility.UrlEncode(RequestTool.GetRequestUrlNonDomain()) + "," + GetUrlToken(RequestTool.GetRequestUrlNonDomain()) + "")); } LoadTheme(themecode, siteid, languagecode, pcode); CurrentPage = B_Lebi_Theme_Page.GetModel("Code='P_UserOrderDetails'"); id = Rint("id"); order = B_Lebi_Order.GetModel("User_id = " + CurrentUser.id + " and id = " + id + ""); if (order == null) { PageError(); } if (order.User_id != CurrentUser.id) { PageError(); } if (order.Type_id_OrderType == 212) { Response.Redirect(URL("P_UserReturnDetails", id)); } path = "<a href=\"" + URL("P_Index", "") + "\" class=\"home\" title=\"" + Tag("首页") + "\"><span>" + Tag("首页") + "</span></a><em class=\"home\">»</em><a href=\"" + URL("P_UserCenter", "") + "\"><span>" + Tag("会员中心") + "</span></a><em>»</em><a href=\"" + URL("P_UserOrders", "") + "\"><span>" + Tag("我的订单") + "</span></a><em>»</em><a href=\"" + URL("P_UserOrderDetails", id) + "\"><span>" + Tag("订单") + ":" + order.Code + "</span></a>"; CurrentPage = B_Lebi_Theme_Page.GetModel("Code='P_UserOrderDetails'"); id = Rint_Para("0"); comments = B_Lebi_Comment.GetList("TableName='Order' and Keyid=" + order.id, "id desc"); transport_orders = B_Lebi_Transport_Order.GetList("Order_id=" + order.id, "id desc"); bills = B_Lebi_Bill.GetList("Order_id=" + order.id, "id desc"); order_products = B_Lebi_Order_Product.GetList("Order_id=" + order.id, "id desc"); pay = B_Lebi_Pay.GetModel(order.Pay_id); if (pay == null) { pay = new Lebi_Pay(); } }
/// <summary> /// 订单自动收货确认+自动完结 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void orderReceived(object sender, System.Timers.ElapsedEventArgs e) { string days = conf.OrderReceivedDays; int Days = 0; int.TryParse(days, out Days); if (Days > 0) { List <Lebi_Transport_Order> torders = B_Lebi_Transport_Order.GetList("Time_Add<'" + System.DateTime.Now.AddDays(0 - Days) + "' and Type_id_TransportOrderStatus=220", ""); foreach (Lebi_Transport_Order torder in torders) { torder.Type_id_TransportOrderStatus = 223; torder.Time_Received = System.DateTime.Now; B_Lebi_Transport_Order.Update(torder); EX_Area.UpdateShouHuoCount(torder); Log.Add("自动确认收货", "Order", torder.Order_id.ToString()); } } days = conf.OrderCompleteDays; Days = 0; int.TryParse(days, out Days); if (Days > 0) { List <Lebi_Order> orders = B_Lebi_Order.GetList("Time_Received<'" + System.DateTime.Now.AddDays(0 - Days) + "' and IsReceived_All=1 and IsCompleted=0", ""); foreach (Lebi_Order order in orders) { Order.Order_Completed(order); Log.Add("自动确认完成", "Order", order.id.ToString()); } } }
/// <summary> /// 收货确认后,更新订单产品的收货数量 /// </summary> /// <param name="torder"></param> public static void UpdateShouHuoCount(Lebi_Transport_Order torder) { if (torder.Type_id_TransportOrderStatus != 223) { return; } Lebi_Order order = B_Lebi_Order.GetModel(torder.Order_id); if (order == null) { return; } List <Lebi_Order_Product> ops = B_Lebi_Order_Product.GetList("Order_id=" + torder.Order_id + "", ""); List <Lebi_Transport_Order> torders = B_Lebi_Transport_Order.GetList("Order_id=" + torder.Order_id + " and Type_id_TransportOrderStatus=223", ""); //bool shouhuoall = true; foreach (Lebi_Order_Product op in ops) { //op.Count_Received = 0; foreach (Lebi_Transport_Order to in torders) { foreach (TransportProduct p in GetTransportProduct(to)) { if (p.Product_id == op.Product_id) { op.Count_Received = op.Count_Received + p.Count; if (op.Count_Shipped < op.Count_Received) { op.Count_Received = op.Count_Shipped; } break; } } } //if (op.Count_Received < op.Count_Shipped) // shouhuoall = false; B_Lebi_Order_Product.Update(op);//更新收货数量 } order.IsReceived = 1; order.IsReceived_All = 1; ops = B_Lebi_Order_Product.GetList("Order_id=" + torder.Order_id + "", ""); foreach (Lebi_Order_Product op in ops) { if (op.Count_Received < op.Count_Shipped) { order.IsReceived_All = 0; } } order.Time_Received = System.DateTime.Now; B_Lebi_Order.Update(order); if (order.IsReceived_All == 1)//全部收货完成 { Order.Received(order); } }
/// <summary> /// 返回快递100物流数据 /// </summary> /// <param name="to"></param> /// <returns></returns> public static KuaiDi100 GetKuaiDi100(Lebi_Transport_Order torder) { string json; KuaiDi100 log = new KuaiDi100(); BaseConfig conf = ShopCache.GetBaseConfig(); JavaScriptSerializer jss = new JavaScriptSerializer(); if (torder.Type_id_TransportOrderStatus == 223) { json = torder.Log; log = jss.Deserialize <KuaiDi100>(json); } else { try { string url = "http://www.kuaidi100.com/api?id=" + conf.KuaiDi100 + "&com=" + torder.Transport_Code + "&nu=" + torder.Code + "&show=0&muti=1"; json = HtmlEngine.CetHtml(url); log = jss.Deserialize <KuaiDi100>(json); switch (log.state) { case "1": torder.Type_id_TransportOrderStatus = 221; break; case "2": torder.Type_id_TransportOrderStatus = 222; break; case "3": torder.Type_id_TransportOrderStatus = 223; try { torder.Time_Received = Convert.ToDateTime(log.data.FirstOrDefault().time); } catch { torder.Time_Received = System.DateTime.Now; } break; case "4": torder.Type_id_TransportOrderStatus = 224; break; //default: // //torder.Type_id_TransportOrderStatus = 220; // break; } if (log.message != "ok") { //没有成功获取到json数据 url = "http://www.kuaidi100.com/applyurl?key=" + conf.KuaiDi100 + "&com=" + torder.Transport_Code + "&nu=" + torder.Code; string html = HtmlEngine.CetHtml(url); //html = HtmlEngine.CetHtml(html); torder.HtmlLog = html; } torder.Log = json; B_Lebi_Transport_Order.Update(torder); UpdateShouHuoCount(torder); } catch (Exception) { log = new KuaiDi100(); } } if (log == null) { log = new KuaiDi100(); } if (log.data == null) { log.data = new List <KuaiDi100.KuaiDi100data>(); } return(log); }