protected void open_again_Click(object sender, EventArgs e) { var position = string.Empty; var proidList = context.Query <Cell>().Where(o => o.part == 0 && o.mac.Equals(cabinet.mac)).Select(o => o.product_id.HasValue ? o.product_id.Value : 0).ToList(); LogHelper.WriteLogs(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "needOpenAgain:" + JsonConvert.SerializeObject(proidList)); if (proidList.Count == 0) { proidList = new List <int> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; } for (int i = 0; i < proidList.Count; i++) { if (proidList[i] == 0) { position += i + ","; } } if (!string.IsNullOrEmpty(position)) { position = position.TrimEnd(','); var rbh = new RemoteBoxHelper(); rbh.OpenRemoteBox(cabinet.mac, string.Empty, position, 0x02); } }
private void OpenBox(List <string> list) { var rbh = new RemoteBoxHelper(); var postion_list = list.Aggregate <string>((x, y) => x + "," + y).ToString(); try { rbh.OpenRemoteBox(cabinet.mac, string.Empty, postion_list); context.Insert(new CabinetCheckLog { createtime = DateTime.Now, issuccess = true, mac = cabinet.mac, message = postion_list + ":执行开箱操作", openid = OpenId, phone = userInfo.phone, username = userInfo.username }); } catch (Exception) { MessageBox.Show(this, "system_alert", "执行开箱失败"); return; } }
private static void OpenBox() { var rbh = new RemoteBoxHelper(); var context = new MySqlContext(new MySqlConnectionFactory(connString)); var orderInfo = context.Query <OrderInfo>() .FirstOrDefault(o => o.paid == true && o.delivered == false && o.date.AddMinutes(30) > DateTime.Now); if (orderInfo != null) { rbh.OpenRemoteBox(orderInfo.cabinet_mac.ObjToStr(), orderInfo.code.ObjToStr(), orderInfo.pos.ObjToStr()); } //rbh.OpenRemoteBox("861853033030503", "00000010", "1"); }
protected void OpenSingleBox(int position) { var rbh = new RemoteBoxHelper(); try { rbh.OpenRemoteBox(cabinet.mac, string.Empty, position.ObjToStr()); } catch (Exception ex) { MessageBox.Show(this, "system_alert", "开箱异常"); return; } }
protected void makeSure_ServerClick(object sender, EventArgs e) { var rbh = new RemoteBoxHelper(); var postion_list = "0,1,2,3,4,5,6,7,8,9,10,11"; var boxmac = Request.QueryString["boxmac"].ObjToStr(); try { rbh.OpenRemoteBox(boxmac, string.Empty, postion_list); } catch (Exception ex) { MessageBox.Show(this, "system_alert", "开箱异常"); return; } }
protected void OpenBox() { var proidList = context.Query <Cell>() .LeftJoin <Product>((a, b) => a.product_id == b.id) .Where((a, b) => a.part == 0 && a.mac.Equals(cabinet.mac) && !a.product_id.HasValue && b.price1 <= 100) .Select((a, b) => a.pos) .ToList(); if (proidList.Count == 0) { proidList = new List <int> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; } if (proidList.Count > 0) { var requestUrl = string.Format(Constant.YunApi + "test/back/startWater?mac={0}", cabinet.mac); LogHelper.WriteLogs(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "backNoRequestUrl:" + requestUrl); var response = JsonConvert.DeserializeObject <BackNoResponse>(Utils.HttpGet(requestUrl)); LogHelper.WriteLogs(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "backNoResponse:" + JsonConvert.SerializeObject(response)); if (!response.operationStatus.Equals("SUCCESS")) { MessageBox.Show(this, "system_alert", "补货单生成失败"); return; } if (response.operationMessage.Count == 0) { MessageBox.Show(this, "system_alert", "暂无促销品补货任务"); return; } ViewState["BackNo"] = response.operationMessage; var rbh = new RemoteBoxHelper(); rbh.OpenRemoteBox(cabinet.mac, string.Empty, "0", 0x02); } else { MessageBox.Show(this, "system_alert", "暂无促销品补货任务"); return; } }
public override void ProcessNotify() { try { WxPayData notifyData = GetNotifyData(); //检查支付结果中transaction_id是否存在 if (!notifyData.IsSet("transaction_id")) { //若transaction_id不存在,则立即返回结果给微信支付后台 WxPayData res = new WxPayData(); res.SetValue("return_code", "FAIL"); res.SetValue("return_msg", "支付结果中微信订单号不存在"); page.Response.Write(res.ToXml()); page.Response.End(); } string transaction_id = notifyData.GetValue("transaction_id").ToString(); //查询订单,判断订单真实性 if (!QueryOrder(transaction_id)) { //若订单查询失败,则立即返回结果给微信支付后台 WxPayData res = new WxPayData(); res.SetValue("return_code", "FAIL"); res.SetValue("return_msg", "订单查询失败"); page.Response.Write(res.ToXml()); page.Response.End(); } //查询订单成功 else { var context = basePage.context; string out_trade_no = notifyData.GetValue("out_trade_no").ToString(); out_trade_no = out_trade_no.Split('_')[0].ToString(); var orderInfo = context.Query <OrderInfo>().FirstOrDefault(o => o.code.Equals(out_trade_no)); if (orderInfo == null) { WxPayData res = new WxPayData(); res.SetValue("return_code", "FAIL"); res.SetValue("return_msg", "订单失效"); page.Response.Write(res.ToXml()); page.Response.End(); } if (orderInfo.price1 == notifyData.GetValue("total_fee").ObjToInt(0)) { try { var requestUrl = string.Format("{2}test/pay?orderId={0}&payId={1}", out_trade_no, transaction_id, Constant.YunApi); var response = JsonConvert.DeserializeObject <OrderResponse>(Utils.HttpGet(requestUrl)); if (response.operationStatus.Equals("SUCCESS")) { var rbh = new RemoteBoxHelper(); //执行开箱成功 rbh.OpenRemoteBox(orderInfo.cabinet_mac, out_trade_no, orderInfo.pos.ObjToStr()); } ; WxPayData res = new WxPayData(); res.SetValue("return_code", "SUCCESS"); res.SetValue("return_msg", "订单成功"); page.Response.Write(res.ToXml()); page.Response.End(); } catch (Exception e) { WxPayData res = new WxPayData(); res.SetValue("return_code", "FAIL"); res.SetValue("return_msg", "订单异常"); page.Response.Write(res.ToXml()); page.Response.End(); } } else { WxPayData res = new WxPayData(); res.SetValue("return_code", "FAIL"); res.SetValue("return_msg", "订单金额不对"); page.Response.Write(res.ToXml()); page.Response.End(); } } } catch (Exception ex) { WxPayData res = new WxPayData(); res.SetValue("return_code", "FAIL"); res.SetValue("return_msg", "回调异常"); page.Response.Write(res.ToXml()); page.Response.End(); } }
protected void Page_Load(object sender, EventArgs e) { try { Log.WriteLog("notify_url", "支付宝回调", "-----"); string connString = ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString; var context = new MySqlContext(new MySqlConnectionFactory(connString)); //Log.WriteLog("not11ify_url", "page_load", ""); SortedDictionary <string, string> sPara = GetRequestPost(); bool verifyResult = false; //Log.WriteLog("notify_url", "page_load", ""); if (sPara.Count > 0)//判断是否有带返回参数 { Log.WriteLog("notify_url", "验证成功", sPara.ObjToStr()); Common.AiLiPay.Notify aliNotify = new Common.AiLiPay.Notify(); //Log.WriteLog("notify_url", "验证成功", "1"); try { Log.WriteLog("notify_url", "验证成功", "1_try"); verifyResult = aliNotify.Verify(sPara, DTRequest.GetString("notify_id"), DTRequest.GetString("sign")); } catch (Exception ex) { Log.WriteLog("", "", ex.ToString()); Response.Write("fail"); return; //Log.WriteLog("notify_url", "验证成功", "1_catch"); } //Log.WriteLog("notify_url", "验证成功", "2"); if (verifyResult)//验证成功 { //Log.WriteLog("notify_url", "验证成功", "2_if"); //Log.WriteLog("zfb_________________________________________________________________________________", "验证成功", ""); string trade_no = DTRequest.GetString("trade_no").Trim(); Log.WriteLog("验证成功2_if", "trade_no", trade_no.ObjToStr()); //支付宝交易号 string out_trade_no = DTRequest.GetString("out_trade_no").Trim(); Log.WriteLog("验证成功2_if", "order_no", out_trade_no.ObjToStr()); //获取订单号 string total_fee = DTRequest.GetString("total_amount"); Log.WriteLog("验证成功2_if", "total_fee", total_fee.ObjToStr()); //获取总金额 string trade_status = DTRequest.GetString("trade_status"); //交易状态 var orderInfo = context.Query <OrderInfo>().FirstOrDefault(o => o.code.Equals(out_trade_no) && o.paid == false); //如果改订单已经支付或者不存在,则不继续往下走 if (orderInfo == null) { Response.Write("fail"); return; } if (Config.Type == "1") //即时到帐接口处理方法 { if (trade_status == "TRADE_FINISHED" || trade_status == "TRADE_SUCCESS") { var requestUrl = string.Format("{2}test/pay?orderId={0}&payId={1}&payType={3}", out_trade_no, trade_no, Constant.YunApi, 1); Log.WriteLog("支付接口回调", "requestUrl", requestUrl); //获取总金额 var response = JsonConvert.DeserializeObject <OrderResponse>(Utils.HttpGet(requestUrl)); Log.WriteLog("支付接口回调", "response", JsonConvert.SerializeObject(response)); //获取总金额 if (response.operationStatus.Equals("SUCCESS")) { var rbh = new RemoteBoxHelper(); Response.Write("success"); //执行开箱成功 rbh.OpenRemoteBox(orderInfo.cabinet_mac, out_trade_no, orderInfo.pos.ObjToStr()); Log.WriteLog("支付接口回调", "成功", "成功"); return; } else { Response.Write("fail"); return; } ; } else { Response.Write("fail"); return; } } } } } catch (Exception) { Response.Write("fail"); return; } }
private void PageInit() { if (userInfo == null) { MessageBox.Show(this, "system_alert", "用户不存在"); return; } if (cabinet == null) { MessageBox.Show(this, "system_alert", "房间不存在"); return; } #region 绑定房间商品 var proidList = BindGoods(this, box_rp, cabinet); //var proidList = context.Query<Cell>().Where(o => o.part == 0 && o.mac.Equals(cabinet.mac)).Select(o => o.product_id.HasValue ? o.product_id.Value : 0).ToList(); //LogHelper.WriteLogs(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "proidList:" + JsonConvert.SerializeObject(proidList)); //if (proidList.Count == 0) //{ // proidList = new List<int> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; //} //var layout = context.Query<CabinetLayout>().FirstOrDefault(o => o.hotel_id == cabinet.hotel); //if (layout == null) //{ // MessageBox.Show(this, "system_alert", "酒店未设置默认商品"); // return; //} //var layoutProList = layout.products.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); //LogHelper.WriteLogs(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "layoutProList:" + JsonConvert.SerializeObject(layoutProList)); //if (proidList.Count() != layoutProList.Count()) //{ // MessageBox.Show(this, "system_alert", "房间设置商品不全"); // return; //} //List<ProductQuery> list = new List<ProductQuery>(); //List<Product> productList = context.Query<Product>().Where(o => o.state == 1).ToList(); //for (int i = 0; i < proidList.Count(); i++) //{ // var proid = proidList[i].ObjToInt(0); // var sell_out = false; // //如果实际商品是0,则用默认商品补全 // if (proid == 0) // { // proid = layoutProList[i].ObjToInt(0); // sell_out = true; // } // var pro = productList.FirstOrDefault(o => o.id == proid); // if (pro == null) // { // continue; // } // var proQuery = TinyMapper.Map<ProductQuery>(pro); // proQuery.sell_out = sell_out; // list.Add(proQuery); //} //LogHelper.WriteLogs(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "bindList:" + JsonConvert.SerializeObject(list)); //box_rp.DataSource = list; //box_rp.DataBind(); #endregion #region 打开需要补货的格子 try { var requestUrl = string.Format(Constant.YunApi + "test/back/start?mac={0}&username={1}", cabinet.mac, userInfo.username); LogHelper.WriteLogs(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "backNoRequestUrl:" + requestUrl); var response = JsonConvert.DeserializeObject <BackNoResponse>(Utils.HttpGet(requestUrl)); LogHelper.WriteLogs(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "backNoResponse:" + JsonConvert.SerializeObject(response)); if (!response.operationStatus.Equals("SUCCESS")) { MessageBox.Show(this, "system_alert", "补货单生成失败"); return; } ViewState["BackNo"] = response.operationMessage; var position = string.Empty; for (int i = 0; i < proidList.Count; i++) { if (proidList[i] == 0) { position += i + ","; } } if (!string.IsNullOrEmpty(position)) { position = position.TrimEnd(','); var rbh = new RemoteBoxHelper(); rbh.OpenRemoteBox(cabinet.mac, string.Empty, position, 0x02); } } catch (Exception ex) { MessageBox.Show(this, "system_alert", "数据异常:" + ex.Message + ";内部异常:" + ex.InnerException.Message); return; } #endregion }