protected void Page_Load(object sender, System.EventArgs e) { if (Globals.RequestQueryStr("type") == "saveorders") { this.type = "saveorders"; } string text = Globals.RequestFormStr("posttype"); this.orderIds = Globals.RequestQueryStr("OrderId").Trim(new char[] { ',' }); if (string.IsNullOrEmpty(this.ReUrl)) { this.ReUrl = "manageorder.aspx"; } string a; if ((a = text) != null) { if (a == "saveorders") { string text2 = Globals.RequestFormStr("data"); base.Response.ContentType = "application/json"; string s = "{\"type\":\"0\",\"tips\":\"指定物流失败!\"}"; JArray jArray = (JArray)JsonConvert.DeserializeObject(text2); string text3 = string.Empty; if (jArray != null) { if (jArray.Count > 1) { text3 = "批量"; } bool flag = true; using (System.Collections.Generic.IEnumerator <JToken> enumerator = jArray.GetEnumerator()) { while (enumerator.MoveNext()) { JObject jObject = (JObject)enumerator.Current; if (!this.CheckOrderCompany(jObject["orderid"].ToString(), jObject["companycode"].ToString(), jObject["compname"].ToString(), jObject["shipordernumber"].ToString())) { flag = false; } } } if (flag) { using (System.Collections.Generic.IEnumerator <JToken> enumerator2 = jArray.GetEnumerator()) { while (enumerator2.MoveNext()) { JObject jObject2 = (JObject)enumerator2.Current; OrderHelper.UpdateOrderCompany(jObject2["orderid"].ToString(), jObject2["companycode"].ToString(), jObject2["compname"].ToString(), jObject2["shipordernumber"].ToString()); } } s = "{\"type\":\"1\",\"tips\":\"" + text3 + "指定物流成功!\"}"; } else { s = "{\"type\":\"0\",\"tips\":\"" + text3 + "指定物流失败,请检测数据的正确性!\"}"; } } base.Response.Write(s); base.Response.End(); return; } if (a == "saveoneorders") { string text2 = Globals.RequestFormStr("data"); base.Response.ContentType = "application/json"; string s = "{\"type\":\"0\",\"tips\":\"指定物流失败!\"}"; JArray jArray = (JArray)JsonConvert.DeserializeObject(text2); string text3 = string.Empty; if (jArray != null) { bool flag2 = true; string shipNumber = "1111111111"; using (System.Collections.Generic.IEnumerator <JToken> enumerator3 = jArray.GetEnumerator()) { while (enumerator3.MoveNext()) { JObject jObject3 = (JObject)enumerator3.Current; if (!this.CheckOrderCompany(jObject3["orderid"].ToString(), jObject3["companycode"].ToString(), jObject3["compname"].ToString(), shipNumber)) { flag2 = false; } } } if (flag2) { using (System.Collections.Generic.IEnumerator <JToken> enumerator4 = jArray.GetEnumerator()) { while (enumerator4.MoveNext()) { JObject jObject4 = (JObject)enumerator4.Current; OrderHelper.UpdateOrderCompany(jObject4["orderid"].ToString(), jObject4["companycode"].ToString(), jObject4["compname"].ToString(), ""); } } s = "{\"type\":\"1\",\"tips\":\"" + text3 + "指定物流成功!\"}"; } else { s = "{\"type\":\"0\",\"tips\":\"" + text3 + "指定物流失败,请检测数据的正确性!\"}"; } } base.Response.Write(s); base.Response.End(); return; } if (a == "sendorders") { string text2 = Globals.RequestFormStr("data"); base.Response.ContentType = "application/json"; string s = "{\"type\":\"0\",\"tips\":\"发货失败!\"}"; JArray jArray = (JArray)JsonConvert.DeserializeObject(text2); string text3 = string.Empty; if (jArray != null) { if (jArray.Count > 1) { text3 = "批量"; } bool flag3 = true; using (System.Collections.Generic.IEnumerator <JToken> enumerator5 = jArray.GetEnumerator()) { while (enumerator5.MoveNext()) { JObject jObject5 = (JObject)enumerator5.Current; if (!this.CheckOrderCompany(jObject5["orderid"].ToString(), jObject5["companycode"].ToString(), jObject5["compname"].ToString(), jObject5["shipordernumber"].ToString())) { flag3 = false; } } } if (flag3) { int num = 0; using (System.Collections.Generic.IEnumerator <JToken> enumerator6 = jArray.GetEnumerator()) { while (enumerator6.MoveNext()) { JObject jObject6 = (JObject)enumerator6.Current; OrderInfo orderInfo = OrderHelper.GetOrderInfo(jObject6["orderid"].ToString()); if ((orderInfo.GroupBuyId <= 0 || orderInfo.GroupBuyStatus == GroupBuyStatus.Success) && ((orderInfo.OrderStatus == OrderStatus.WaitBuyerPay && orderInfo.Gateway == "hishop.plugins.payment.podrequest") || orderInfo.OrderStatus == OrderStatus.BuyerAlreadyPaid) && !string.IsNullOrEmpty(jObject6["shipordernumber"].ToString().Trim()) && jObject6["shipordernumber"].ToString().Trim().Length <= 30) { orderInfo.ExpressCompanyAbb = jObject6["companycode"].ToString(); orderInfo.ExpressCompanyName = jObject6["compname"].ToString(); orderInfo.ShipOrderNumber = jObject6["shipordernumber"].ToString(); if (OrderHelper.SendGoods(orderInfo)) { Express.SubscribeExpress100(jObject6["companycode"].ToString(), jObject6["shipordernumber"].ToString()); SendNoteInfo sendNoteInfo = new SendNoteInfo(); sendNoteInfo.NoteId = Globals.GetGenerateId() + num; sendNoteInfo.OrderId = jObject6["orderid"].ToString(); sendNoteInfo.Operator = ManagerHelper.GetCurrentManager().UserName; sendNoteInfo.Remark = "后台" + sendNoteInfo.Operator + "发货成功"; OrderHelper.SaveSendNote(sendNoteInfo); if (!string.IsNullOrEmpty(orderInfo.GatewayOrderId) && orderInfo.GatewayOrderId.Trim().Length > 0) { if (orderInfo.Gateway == "hishop.plugins.payment.ws_wappay.wswappayrequest") { PaymentModeInfo paymentMode = SalesHelper.GetPaymentMode(orderInfo.PaymentTypeId); if (paymentMode != null) { PaymentRequest paymentRequest = PaymentRequest.CreateInstance(paymentMode.Gateway, HiCryptographer.Decrypt(paymentMode.Settings), orderInfo.OrderId, orderInfo.GetTotal(), "订单发货", "订单号-" + orderInfo.OrderId, orderInfo.EmailAddress, orderInfo.OrderDate, Globals.FullPath(Globals.GetSiteUrls().Home), Globals.FullPath(Globals.GetSiteUrls().UrlData.FormatUrl("PaymentReturn_url", new object[] { paymentMode.Gateway })), Globals.FullPath(Globals.GetSiteUrls().UrlData.FormatUrl("PaymentNotify_url", new object[] { paymentMode.Gateway })), ""); paymentRequest.SendGoods(orderInfo.GatewayOrderId, orderInfo.RealModeName, orderInfo.ShipOrderNumber, "EXPRESS"); } } if (orderInfo.Gateway == "hishop.plugins.payment.weixinrequest") { SiteSettings masterSettings = SettingsManager.GetMasterSettings(false); PayClient payClient; if (masterSettings.EnableSP) { payClient = new PayClient(masterSettings.Main_AppId, masterSettings.WeixinAppSecret, masterSettings.Main_Mch_ID, masterSettings.Main_PayKey, true, masterSettings.WeixinAppId, masterSettings.WeixinPartnerID); } else { payClient = new PayClient(masterSettings.WeixinAppId, masterSettings.WeixinAppSecret, masterSettings.WeixinPartnerID, masterSettings.WeixinPartnerKey, false, "", ""); } payClient.DeliverNotify(new DeliverInfo { TransId = orderInfo.GatewayOrderId, OutTradeNo = orderInfo.OrderId, OpenId = MemberHelper.GetMember(orderInfo.UserId).OpenId }); } } orderInfo.OnDeliver(); num++; } } } } if (num == 0) { s = "{\"type\":\"0\",\"tips\":\"" + text3 + "发货失败!\"}"; } else { s = string.Concat(new object[] { "{\"type\":\"1\",\"tips\":\"", text3, "发货成功!发货数量", num, "个\"}" }); } } else { s = "{\"type\":\"0\",\"tips\":\"" + text3 + "发货失败,请检测数据的正确性!\"}"; } } base.Response.Write(s); base.Response.End(); return; } if (a == "getcompany") { base.Response.ContentType = "application/json"; string text2 = "[{\"type\":\"0\",\"data\":[]}]"; System.Collections.Generic.IList <ExpressCompanyInfo> allExpress = ExpressHelper.GetAllExpress(); int num2 = 0; System.Text.StringBuilder stringBuilder = new System.Text.StringBuilder(); foreach (ExpressCompanyInfo current in allExpress) { if (num2 == 0) { stringBuilder.Append(string.Concat(new string[] { "{\"code\":\"", SendOrderGoods.String2Json(current.Kuaidi100Code), "\",\"name\":\"", SendOrderGoods.String2Json(current.Name), "\"}" })); } else { stringBuilder.Append(string.Concat(new string[] { ",{\"code\":\"", SendOrderGoods.String2Json(current.Kuaidi100Code), "\",\"name\":\"", SendOrderGoods.String2Json(current.Name), "\"}" })); } num2++; } if (!string.IsNullOrEmpty(stringBuilder.ToString())) { text2 = "[{\"type\":\"1\",\"data\":[" + stringBuilder.ToString() + "]}]"; } base.Response.Write(text2); base.Response.End(); return; } } if (string.IsNullOrEmpty(this.orderIds)) { base.GotoResourceNotFound(); return; } string[] array = this.orderIds.Split(new char[] { ',' }); bool flag4 = true; string[] array2 = array; for (int i = 0; i < array2.Length; i++) { string lstr = array2[i]; if (!Globals.IsOrdersID(lstr)) { flag4 = false; break; } } if (flag4) { System.Data.DataSet ordersByOrderIDList = OrderHelper.GetOrdersByOrderIDList(this.orderIds); this.rptItemList.DataSource = ordersByOrderIDList; this.rptItemList.DataBind(); this.litOrdersCount.Text = ordersByOrderIDList.Tables[0].Rows.Count.ToString(); return; } base.Response.Write("非法参数请求!"); base.Response.End(); }
public string SendLogistic(string tid, string company_name, string out_sid) { OrderInfo orderInfo = OrderHelper.GetOrderInfo(tid); if (orderInfo == null || string.IsNullOrEmpty(orderInfo.OrderId)) { return(OpenApiErrorMessage.ShowErrorMsg(OpenApiErrorCode.Trade_not_Exists, "tid")); } if (orderInfo.GroupBuyId > 0 && orderInfo.GroupBuyStatus != GroupBuyStatus.Success) { return(OpenApiErrorMessage.ShowErrorMsg(OpenApiErrorCode.Trade_Status_Send, "group order")); } if (!orderInfo.CheckAction(OrderActions.SELLER_SEND_GOODS)) { return(OpenApiErrorMessage.ShowErrorMsg(OpenApiErrorCode.Trade_Status_Send, "orderstatue")); } if (string.IsNullOrEmpty(out_sid)) { return(OpenApiErrorMessage.ShowErrorMsg(OpenApiErrorCode.Missing_Required_Arguments, "out_sid")); } ExpressCompanyInfo expressCompanyInfo = ExpressHelper.FindNode(company_name); if (expressCompanyInfo == null) { return(OpenApiErrorMessage.ShowErrorMsg(OpenApiErrorCode.Company_not_Exists, "company_name")); } orderInfo.ExpressCompanyAbb = expressCompanyInfo.Kuaidi100Code; orderInfo.ExpressCompanyName = expressCompanyInfo.Name; orderInfo.ShipOrderNumber = out_sid; if (!OrderHelper.SendGoods(orderInfo)) { return(OpenApiErrorMessage.ShowErrorMsg(OpenApiErrorCode.Trade_Status_Send, "send good")); } Express.SubscribeExpress100(orderInfo.ExpressCompanyAbb, out_sid); OrderHelper.SaveSendNote(new SendNoteInfo { NoteId = Globals.GetGenerateId(), OrderId = orderInfo.OrderId, Operator = orderInfo.UserId.ToString(), Remark = "接口发货成功" }); if (!string.IsNullOrEmpty(orderInfo.GatewayOrderId) && orderInfo.GatewayOrderId.Trim().Length > 0) { if (orderInfo.Gateway == "hishop.plugins.payment.ws_wappay.wswappayrequest") { PaymentModeInfo paymentMode = SalesHelper.GetPaymentMode(orderInfo.PaymentTypeId); if (paymentMode != null) { PaymentRequest paymentRequest = PaymentRequest.CreateInstance(paymentMode.Gateway, HiCryptographer.Decrypt(paymentMode.Settings), orderInfo.OrderId, orderInfo.GetTotal(), "订单发货", "订单号-" + orderInfo.OrderId, orderInfo.EmailAddress, orderInfo.OrderDate, Globals.FullPath(Globals.GetSiteUrls().Home), Globals.FullPath(Globals.GetSiteUrls().UrlData.FormatUrl("PaymentReturn_url", new object[] { paymentMode.Gateway })), Globals.FullPath(Globals.GetSiteUrls().UrlData.FormatUrl("PaymentNotify_url", new object[] { paymentMode.Gateway })), ""); paymentRequest.SendGoods(orderInfo.GatewayOrderId, orderInfo.RealModeName, orderInfo.ShipOrderNumber, "EXPRESS"); } } if (orderInfo.Gateway == "hishop.plugins.payment.weixinrequest") { SiteSettings masterSettings = SettingsManager.GetMasterSettings(false); PayClient payClient; if (masterSettings.EnableSP) { payClient = new PayClient(masterSettings.Main_AppId, masterSettings.WeixinAppSecret, masterSettings.Main_Mch_ID, masterSettings.Main_PayKey, true, masterSettings.WeixinAppId, masterSettings.WeixinPartnerID); } else { payClient = new PayClient(masterSettings.WeixinAppId, masterSettings.WeixinAppSecret, masterSettings.WeixinPartnerID, masterSettings.WeixinPartnerKey, false, "", ""); } payClient.DeliverNotify(new DeliverInfo { TransId = orderInfo.GatewayOrderId, OutTradeNo = orderInfo.OrderId, OpenId = MemberHelper.GetMember(orderInfo.UserId).OpenId }); } } orderInfo.OnDeliver(); string format = "{{\"logistics_send_response\":{{\"shipping\":{{\"is_success\":{0}}}}}}}"; return(string.Format(format, "true")); }
protected void Page_Load(object sender, EventArgs e) { string str2; string str3; JArray array; string str4; if (Globals.RequestQueryStr("type") == "saveorders") { this.type = "saveorders"; } string str = Globals.RequestFormStr("posttype"); this.orderIds = Globals.RequestQueryStr("OrderId").Trim(new char[] { ',' }); if (string.IsNullOrEmpty(this.ReUrl)) { this.ReUrl = "manageorder.aspx"; } switch (str) { case "saveorders": str2 = Globals.RequestFormStr("data"); base.Response.ContentType = "application/json"; str3 = "{\"type\":\"0\",\"tips\":\"指定物流失败!\"}"; array = (JArray)JsonConvert.DeserializeObject(str2); str4 = string.Empty; if (array != null) { if (array.Count > 1) { str4 = "批量"; } bool flag = true; foreach (JObject obj2 in array) { if (!this.CheckOrderCompany(obj2["orderid"].ToString(), obj2["companycode"].ToString(), obj2["compname"].ToString(), obj2["shipordernumber"].ToString())) { flag = false; } } if (flag) { foreach (JObject obj3 in array) { OrderHelper.UpdateOrderCompany(obj3["orderid"].ToString(), obj3["companycode"].ToString(), obj3["compname"].ToString(), obj3["shipordernumber"].ToString()); } str3 = "{\"type\":\"1\",\"tips\":\"" + str4 + "指定物流成功!\"}"; } else { str3 = "{\"type\":\"0\",\"tips\":\"" + str4 + "指定物流失败,请检测数据的正确性!\"}"; } } base.Response.Write(str3); base.Response.End(); return; case "saveoneorders": str2 = Globals.RequestFormStr("data"); base.Response.ContentType = "application/json"; str3 = "{\"type\":\"0\",\"tips\":\"指定物流失败!\"}"; array = (JArray)JsonConvert.DeserializeObject(str2); str4 = string.Empty; if (array != null) { bool flag2 = true; string shipNumber = "1111111111"; foreach (JObject obj4 in array) { if (!this.CheckOrderCompany(obj4["orderid"].ToString(), obj4["companycode"].ToString(), obj4["compname"].ToString(), shipNumber)) { flag2 = false; } } if (flag2) { foreach (JObject obj5 in array) { OrderHelper.UpdateOrderCompany(obj5["orderid"].ToString(), obj5["companycode"].ToString(), obj5["compname"].ToString(), ""); } str3 = "{\"type\":\"1\",\"tips\":\"" + str4 + "指定物流成功!\"}"; } else { str3 = "{\"type\":\"0\",\"tips\":\"" + str4 + "指定物流失败,请检测数据的正确性!\"}"; } } base.Response.Write(str3); base.Response.End(); return; case "sendorders": str2 = Globals.RequestFormStr("data"); base.Response.ContentType = "application/json"; str3 = "{\"type\":\"0\",\"tips\":\"发货失败!\"}"; array = (JArray)JsonConvert.DeserializeObject(str2); str4 = string.Empty; if (array != null) { if (array.Count > 1) { str4 = "批量"; } bool flag3 = true; foreach (JObject obj6 in array) { if (!this.CheckOrderCompany(obj6["orderid"].ToString(), obj6["companycode"].ToString(), obj6["compname"].ToString(), obj6["shipordernumber"].ToString())) { flag3 = false; } } if (flag3) { int num = 0; foreach (JObject obj7 in array) { OrderInfo orderInfo = OrderHelper.GetOrderInfo(obj7["orderid"].ToString()); if ((((orderInfo.GroupBuyId <= 0) || (orderInfo.GroupBuyStatus == GroupBuyStatus.Success)) && (((orderInfo.OrderStatus == OrderStatus.WaitBuyerPay) && (orderInfo.Gateway == "hishop.plugins.payment.podrequest")) || (orderInfo.OrderStatus == OrderStatus.BuyerAlreadyPaid))) && (!string.IsNullOrEmpty(obj7["shipordernumber"].ToString().Trim()) && (obj7["shipordernumber"].ToString().Trim().Length <= 30))) { orderInfo.ExpressCompanyAbb = obj7["companycode"].ToString(); orderInfo.ExpressCompanyName = obj7["compname"].ToString(); orderInfo.ShipOrderNumber = obj7["shipordernumber"].ToString(); if (OrderHelper.SendGoods(orderInfo)) { SendNoteInfo info2 = new SendNoteInfo(); Express.SubscribeExpress100(obj7["companycode"].ToString(), obj7["shipordernumber"].ToString()); info2 = new SendNoteInfo { NoteId = Globals.GetGenerateId() + num, OrderId = obj7["orderid"].ToString(), Operator = ManagerHelper.GetCurrentManager().UserName, Remark = "后台" + info2.Operator + "发货成功" }; OrderHelper.SaveSendNote(info2); if (!string.IsNullOrEmpty(orderInfo.GatewayOrderId) && (orderInfo.GatewayOrderId.Trim().Length > 0)) { if (orderInfo.Gateway == "hishop.plugins.payment.ws_wappay.wswappayrequest") { PaymentModeInfo paymentMode = SalesHelper.GetPaymentMode(orderInfo.PaymentTypeId); if (paymentMode != null) { PaymentRequest.CreateInstance(paymentMode.Gateway, HiCryptographer.Decrypt(paymentMode.Settings), orderInfo.OrderId, orderInfo.GetTotal(), "订单发货", "订单号-" + orderInfo.OrderId, orderInfo.EmailAddress, orderInfo.OrderDate, Globals.FullPath(Globals.GetSiteUrls().Home), Globals.FullPath(Globals.GetSiteUrls().UrlData.FormatUrl("PaymentReturn_url", new object[] { paymentMode.Gateway })), Globals.FullPath(Globals.GetSiteUrls().UrlData.FormatUrl("PaymentNotify_url", new object[] { paymentMode.Gateway })), "").SendGoods(orderInfo.GatewayOrderId, orderInfo.RealModeName, orderInfo.ShipOrderNumber, "EXPRESS"); } } if (orderInfo.Gateway == "hishop.plugins.payment.weixinrequest") { PayClient client; SiteSettings masterSettings = SettingsManager.GetMasterSettings(false); if (masterSettings.EnableSP) { client = new PayClient(masterSettings.Main_AppId, masterSettings.WeixinAppSecret, masterSettings.Main_Mch_ID, masterSettings.Main_PayKey, true, masterSettings.WeixinAppId, masterSettings.WeixinPartnerID); } else { client = new PayClient(masterSettings.WeixinAppId, masterSettings.WeixinAppSecret, masterSettings.WeixinPartnerID, masterSettings.WeixinPartnerKey, false, "", ""); } DeliverInfo deliver = new DeliverInfo { TransId = orderInfo.GatewayOrderId, OutTradeNo = orderInfo.OrderId, OpenId = MemberHelper.GetMember(orderInfo.UserId).OpenId }; client.DeliverNotify(deliver); } } orderInfo.OnDeliver(); num++; } } } if (num == 0) { str3 = "{\"type\":\"0\",\"tips\":\"" + str4 + "发货失败!\"}"; } else { str3 = "{\"type\":\"1\",\"tips\":\"" + num + "个订单发货成功!\"}"; } } else { str3 = "{\"type\":\"0\",\"tips\":\"" + str4 + "发货失败,请检测数据的正确性!\"}"; } } base.Response.Write(str3); base.Response.End(); return; case "getcompany": { base.Response.ContentType = "application/json"; str2 = "[{\"type\":\"0\",\"data\":[]}]"; IList <ExpressCompanyInfo> allExpress = ExpressHelper.GetAllExpress(); int num2 = 0; StringBuilder builder = new StringBuilder(); foreach (ExpressCompanyInfo info5 in allExpress) { if (num2 == 0) { builder.Append("{\"code\":\"" + String2Json(info5.Kuaidi100Code) + "\",\"name\":\"" + String2Json(info5.Name) + "\"}"); } else { builder.Append(",{\"code\":\"" + String2Json(info5.Kuaidi100Code) + "\",\"name\":\"" + String2Json(info5.Name) + "\"}"); } num2++; } if (!string.IsNullOrEmpty(builder.ToString())) { str2 = "[{\"type\":\"1\",\"data\":[" + builder.ToString() + "]}]"; } base.Response.Write(str2); base.Response.End(); return; } case "updateExpress": { str2 = Globals.RequestFormStr("data"); base.Response.ContentType = "application/json"; str3 = "{\"type\":\"0\",\"tips\":\"修改失败!\"}"; array = (JArray)JsonConvert.DeserializeObject(str2); bool flag4 = true; foreach (JObject obj8 in array) { if (!this.CheckOrderCompany(obj8["orderid"].ToString(), obj8["companycode"].ToString(), obj8["compname"].ToString(), obj8["shipordernumber"].ToString())) { flag4 = false; } } if (flag4) { bool flag5 = false; foreach (JObject obj9 in array) { OrderInfo order = OrderHelper.GetOrderInfo(obj9["orderid"].ToString()); order.ExpressCompanyAbb = obj9["companycode"].ToString(); order.ExpressCompanyName = obj9["compname"].ToString(); order.ShipOrderNumber = obj9["shipordernumber"].ToString(); flag5 = OrderHelper.UpdateOrder(order); if (flag5) { Express.SubscribeExpress100(obj9["companycode"].ToString(), obj9["shipordernumber"].ToString()); } } if (flag5) { str3 = "{\"type\":\"1\",\"tips\":\"修改成功!\"}"; } } else { str3 = "{\"type\":\"0\",\"tips\":\"数据验证失败!\"}"; } base.Response.Write(str3); base.Response.End(); return; } } if (string.IsNullOrEmpty(this.orderIds)) { base.GotoResourceNotFound(); } else { string[] strArray = this.orderIds.Split(new char[] { ',' }); bool flag6 = true; foreach (string str6 in strArray) { if (!Globals.IsOrdersID(str6)) { flag6 = false; break; } } if (flag6) { DataSet ordersByOrderIDList = OrderHelper.GetOrdersByOrderIDList(this.orderIds); this.rptItemList.DataSource = ordersByOrderIDList; this.rptItemList.DataBind(); this.litOrdersCount.Text = ordersByOrderIDList.Tables[0].Rows.Count.ToString(); } else { base.Response.Write("非法参数请求!"); base.Response.End(); } } }