Exemplo n.º 1
0
        /// <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));
            }
        }
Exemplo n.º 2
0
        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));
            }
        }
Exemplo n.º 3
0
        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));
            }
        }
Exemplo n.º 4
0
        /// <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));
        }