/// <summary> /// 保存用户信息--非供应商 /// </summary> /// <param name="target"></param> /// <returns></returns> public ActionResult Save_One(string Code, string NickName, string LoginPwd, string Pwd2, string RecommendCode, string smscode) { try { LogOperate.Write("注册开始:" + CookieHelper.GetCookieValue("headimgurl")); //判断手机验证码 if (!DB.XmlConfig.XmlSite.IsJiHuo) { string code = Session["smscode"] as string; if (string.IsNullOrEmpty(code)) { throw new Exception("验证码过期"); } if (code != ReqHelper.GetString("smscode")) { throw new Exception("验证码不正确"); } } //if (DB.XmlConfig.XmlSite.IsJiHuo) //{ //var code = Tools.getCookie("gif"); //if (string.IsNullOrEmpty(code)) // throw new Exception("验证码过期"); //if (code != smscode) // throw new Exception("验证码不正确"); //} var DataBase = new Member_Info(); DataBase.Code = Code; DataBase.NickName = NickName; DataBase.LoginPwd = LoginPwd; DataBase.Pwd2 = Pwd2; DataBase.RecommendCode = RecommendCode; DataBase.CreateMemberId = "00"; DataBase.CreateMemberName = "admin"; DataBase.CreateTime = DateTime.Now; //赋值省市区 if (DataBase.ProvId != null) { DataBase.ProvName = DB.Area_Province.FindEntity(DataBase.ProvId).name; } if (DataBase.CityId != null) { DataBase.CityName = DB.Area_City.FindEntity(DataBase.CityId).name; } if (DataBase.CountyId != null) { DataBase.CountyName = DB.Area_County.FindEntity(DataBase.CountyId).name; } DataBase.Code = DataBase.Code.Trim(); DataBase.Mobile = DataBase.Mobile; var json = DB.Member_Info.Save(DataBase, Enums.LoginType.nologin, "", "", 0, 0, 0, 0); if (json.Status == "n") { return(Error(json.Msg)); } else { //重新保存cookie User_Shop.SetUser(DataBase); return(Success("注册成功")); } } catch (Exception ex) { LogOperate.Write(ex); return(Error(ex)); } }
public ActionResult ToWheel(int id) { //var memberid = User_Shop.GetMemberID(); try { var memberid = User_Shop.GetMemberID(); var member = DB.Member_Info.FindEntity(memberid); #region 验证会员是否有抽奖机会 // 1.比如 条件 ,每天免费抽3次 var today = DateTime.Now.Date; var count = DB.ShopBigWheelLog.Count(a => a.MemberID == memberid && a.BID == id && a.CreateTime >= today); if (count >= 3) { return(Error("每天免费3次抽奖机会已用完,不能再次抽奖")); } #endregion #region 抽奖 var model = new ShopBigWheelLog() { BID = id, CreateTime = DateTime.Now, IP = WebTools.GetHostAddress(), MemberCode = member.Code, NickName = member.NickName, MemberID = member.MemberId, }; var r = DB.ShopBigWheelLog.Insert(model); if (r) { if (model != null) { #region 抽奖过程 var details = DB.ShopBigWheelDetail.Where(a => a.BID == model.BID); ShopBigWheelDetail curResult = null; foreach (var item in details) { if (item.Probability <= 0) { continue; } else if (item.Probability >= 1) { curResult = item; break; } else { var big = 1000; var n = item.Probability * big; //先放大1000倍 var random = DB.Random.Next(0, big + 1); //1-1000之间随机一个数,如果这个数<=n ,中奖 if (random <= n) { curResult = item; break; } } } #endregion #region 奖结果赋于model if (curResult == null) { model.ResultID = null; model.Result = "未中奖"; model.Desc = "谢谢参与,再接再厉"; } else { model.ResultID = curResult.ID; model.Result = curResult.Name; model.Desc = curResult.Desc; } var re = DB.ShopBigWheelLog.Update(model); if (re) { switch (model.Result) { case "一等奖": return(Success("3037,恭喜您中" + model.Result)); case "二等奖": return(Success("2945,恭喜您中" + model.Result)); case "三等奖": return(Success("3215,恭喜您中" + model.Result)); case "四等奖": return(Success("3127,恭喜您中" + model.Result)); default: break; } } #endregion } //var obj = new{angle = "2994",prize = "谢谢参与,请再接再厉",prizename = "谢谢参与"}; return(Success("2994,谢谢参与")); } else { return(Error("抽奖失败")); } #endregion } catch (Exception e) { return(Error(e)); } }
public ActionResult OAuthHandle() { ConfigInfo config = ConfigInfo.GetInfo(); OAuthManage _oauth = new OAuthManage(config.AppID, config.AppSecret, new LinkManage().GetUserOAthHandle()); string recirecturl = Url_Shop.GetRecirectUrl(); LogHelper.Debug("OAuthHandle-redirecturl:" + recirecturl); string result = ""; try { //注册事件处理 _oauth.OnError = (e) => { string msg = ""; Exception inner = e; while (inner != null) { msg += inner.Message; inner = inner.InnerException; } result = msg; LogOperate.Write(msg); }; _oauth.OnGetTokenSuccess = (token) => { result += "<br/>"; result += token.ToJsonString(); LogOperate.Write("获取token成功:" + result); }; //特别处理获取用户信息成功 _oauth.OnGetUserInfoSuccess = (user) => { result += "<br/>"; result += user.ToJsonString(); CookieHelper.SetCookie("openid", user.openid, 1); CookieHelper.SetCookie("nickname", user.nickname, 1); CookieHelper.SetCookie("headimgurl", user.headimgurl, 1); //判断openid的用户是否存在 Member_Info model = DB.Member_Info.GetModelByOpenID(user.openid); if (model != null) { //保存信息到客户端同步登录 User_Shop.SetUser(model); } else { if (model == null) { //如果是游客,返回登录 if (string.IsNullOrEmpty(recirecturl)) { recirecturl = $"http://{Request.Url.Host}/mobile/login"; } } else { model.OpenID = user.openid; if (string.IsNullOrEmpty(model.NickName)) { model.NickName = user.nickname; } model.Photo = user.headimgurl; DB.Member_Info.Update(model); //保存信息到客户端同步登录 User_Shop.SetUser(model); recirecturl = Url_Mobile.GetUserCenter(); } } }; //第二步 _oauth.GetAccess_Token(); //第三步 _oauth.GetUserInfo(); //显示结果 ViewBag.msg = result; if (string.IsNullOrEmpty(recirecturl)) { recirecturl = $"http://{Request.Url.Host}/mobile"; } return(Redirect(recirecturl)); } catch (Exception ex) { string msg = ""; Exception inner = ex; while (inner != null) { msg += inner.Message; inner = inner.InnerException; } return(Content(result + "----->" + msg + "<br />" + ex.StackTrace)); } }
/// <summary> /// 确认付款操作 /// </summary> /// <returns></returns> public ActionResult DoPay(int addressid, string paytype, string remark, bool isziti, string payPwd) { JsonHelp json = new JsonHelp(true); try { Xml_Site config = DB.XmlConfig.XmlSite; Xml_Shop shopConfig = DB.XmlConfig.XmlShop; Member_Info curUser = User_Shop.GetMember_Info(); //获取订单信息 string orderlist = CookieHelper.GetCookieValue("orderlist"); List <string> orderList = orderlist.JsonDeserializer <List <string> >(); if (orderList == null) { throw new Exception("订单支付异常"); } if (orderList.Count <= 0) { throw new Exception("获取订单信息失败"); } var orderid = orderList.First(); var query = DB.ShopOrder.Where(q => q.GUID == orderid).FirstOrDefault(); if (query.State != 1) { throw new Exception("订单不是待支付订单不可支付"); } DB.ShopOrder.UpdateOrderInfo(orderList, addressid, remark, isziti, paytype); if (paytype == "余额") { //计算处理 DB.ShopOrder.Calcute(curUser, orderList.First(), payPwd); CookieHelper.ClearCookie("orderlist"); } else if (paytype == "支付宝") { json.ReUrl = "/Member_Mall/Pay/Pay?OrderId=" + orderList.First();//http://tjyy.fabeisha.cn //r.ReUrl = "http://tjyy.fabeisha.cn/Member_Mall/Pay/Pay?BillId=" + r.BillId;//http://www.738600.cn } else if (paytype == "微信") { var orderModel = DB.ShopOrder.FindEntity(orderList.First()); H5Pay h5Pay = new H5Pay(); var wxConfig = WxPayConfig.GetConfig(); string clientIP = wxConfig.GetIp(); //获取客户端真实IP var url = h5Pay.GetPayUrl(clientIP, orderModel.OrderCode, (orderModel.RealAmount + orderModel.Postage.Value) * 100M); //通过统一下单接口进行H5支付 //Response.Redirect(url);//跳转到微信支付中间页 json.ReUrl = url; //json.ReUrl = "/Member_Mall/Pay/WXPay?OrderId=" + orderList.First();//http://tjyy.fabeisha.cn //r.ReUrl = "/Member_Mall/Pay/WXPay?BillId=" + r.BillId;//http://tjyy.fabeisha.cn } //3.清空cookie CookieHelper.ClearCookie("cart"); CookieHelper.ClearCookie("total"); CookieHelper.ClearCookie("traceno"); } catch (Exception ex) { StringBuilder str = new StringBuilder(); Exception inner = ex; while (inner != null) { str.AppendLine(inner.Message); inner = inner.InnerException; } json.IsSuccess = false; json.Msg = str.ToString(); str.AppendLine("跟踪:" + ex.StackTrace); LogHelper.Debug(str.ToString()); } return(Json(json)); }