Example #1
0
        /// <summary>
        /// 用户修改密码
        /// </summary>
        /// <param name="phone">手机号</param>
        /// <param name="password">密码</param>
        /// <param name="type">类型:2=登陆密码,3=交易密码</param>
        /// <returns>返回调用结果</returns>
        public static bool PWD(string phone, string password, string type)
        {
            bool tl = false;

            try
            {
                SortedDictionary <string, string> dic = new SortedDictionary <string, string>();
                dic.Add("httpid", LCommon.TimeToUNIX(DateTime.Now));
                dic.Add("phone", phone);
                dic.Add("password", password);
                dic.Add("type", type);
                dic.Add("sign", Helper.BuildRequest(dic));
                string json = PostGet.Post("http://bccbtoken.com/api/Memberapi/changePwd", dic);
                //LogManager.WriteLog("APP接口", json);
                JObject paramJson = JsonConvert.DeserializeObject(json) as JObject;
                tl = bool.Parse(paramJson["success"].ToString());
                if (!tl)
                {
                    LogManager.WriteLog("APP修改密码失败", paramJson["message"].ToString() + ":会员=" + phone + ",type=" + type);
                }
            }
            catch (Exception err)
            {
                LogManager.WriteLog("APP接口异常", "修改密码(" + phone + ")=" + err.Message);
            }
            return(tl);
        }
Example #2
0
        /// <summary>
        /// 积分兑换
        /// </summary>
        /// <param name="phone">手机号</param>
        /// <param name="coin_name">币种名称:BCCB, FBCC</param>
        /// <param name="amount">金额</param>
        /// <returns>返回调用结果</returns>
        public static bool AddMB(string phone, string coin_name, string amount)
        {
            bool tl = false;

            try
            {
                SortedDictionary <string, string> dic = new SortedDictionary <string, string>();
                dic.Add("httpid", LCommon.TimeToUNIX(DateTime.Now));
                dic.Add("phone", phone);
                dic.Add("coin_name", coin_name);
                dic.Add("amount", amount);
                dic.Add("sign", Helper.BuildRequest(dic));
                string json = PostGet.Post("http://bccbtoken.com/api/Memberapi/transfer", dic);
                //LogManager.WriteLog("APP接口", json);
                JObject paramJson = JsonConvert.DeserializeObject(json) as JObject;
                tl = bool.Parse(paramJson["success"].ToString());
                if (!tl)
                {
                    LogManager.WriteLog("APP积分兑换失败", paramJson["message"].ToString() + ":会员=" + phone + ",币种=" + coin_name + ",金额=" + amount);
                }
            }
            catch (Exception err)
            {
                LogManager.WriteLog("APP接口异常", "积分兑换(" + phone + ")=" + err.Message);
            }
            return(tl);
        }
Example #3
0
 /// <summary>
 /// 找回密码
 /// </summary>
 /// <param name="account">会员帐号</param>
 /// <param name="pwd">会员密码</param>
 /// <param name="identifyingCode">注册验证码</param>
 /// <param name="type">密码类型 2-登录 3=支付</param>
 /// <returns>返回调用结果</returns>
 /// <para name="result">200 是成功其他失败</para>
 /// <para name="data">结果提示</para>
 /// <remarks>
 /// 2017-08-18 林建生
 /// </remarks>
 public ActionResult RetrievePWD(string account, string pwd, string identifyingCode, string type)
 {
     if (string.IsNullOrEmpty(account) || string.IsNullOrEmpty(pwd) || string.IsNullOrEmpty(identifyingCode))
     {
         return(View());
     }
     else
     {
         if (account.Length == 11 && account.Substring(0, 1) == "1" && pwd.Length > 5)
         {
             using (EFDB db = new EFDB())
             {
                 //判断该手机号十分钟之内是否有验证码
                 var sms = db.SMS.Where(l => l.PhoneNumber == account && l.Content == identifyingCode).OrderByDescending(l => l.AddTime).FirstOrDefault();
                 if (sms != null)
                 {
                     TimeSpan ts = DateTime.Now - sms.AddTime;
                     if (ts.TotalMinutes <= 10)
                     {
                         string pwdMD5 = MD5.GetMD5ljsheng(pwd);
                         var    b      = db.Member.Where(l => l.Account == account).FirstOrDefault();
                         if (type == "3")
                         {
                             b.PayPWD = pwdMD5;
                         }
                         else
                         {
                             b.PWD = pwdMD5;
                         }
                         b.LoginIdentifier = LCommon.TimeToUNIX(DateTime.Now);
                         if (db.SaveChanges() == 1)
                         {
                             LCookie.DelALLCookie();
                             AppApi.PWD(account, pwd, type);
                             return(Helper.Redirect("成功!", "/Home/Login", "修改密码成功,请点确定重新登录!"));
                         }
                         else
                         {
                             return(Helper.Redirect("失败!", "history.go(-1);", "帐号不存在,点确定返回重新修改!"));
                         }
                     }
                     else
                     {
                         return(Helper.Redirect("失败!", "history.go(-1);", "验证码已失效,请重新获取"));
                     }
                 }
                 else
                 {
                     return(Helper.Redirect("失败!", "history.go(-1);", "短信验证码错误"));
                 }
             }
         }
         else
         {
             return(Helper.Redirect("失败!", "history.go(-1);", "必须是11位的手机号,密码最少需要6位"));
         }
     }
 }
Example #4
0
        /// <summary>
        /// 注册
        /// </summary>
        /// <param name="username">用户名</param>
        /// <param name="password">密码</param>
        /// <param name="pay_password">交易密码</param>
        /// <param name="phone">手机号</param>
        /// <param name="invite_code">邀请码</param>
        /// <returns>返回调用结果</returns>
        public static bool AppMR(string username, string password, string pay_password, string phone, string invite_code)
        {
            bool tl = false;

            try
            {
                SortedDictionary <string, string> dic = new SortedDictionary <string, string>();
                dic.Add("httpid", LCommon.TimeToUNIX(DateTime.Now));
                dic.Add("username", HttpUtility.UrlEncode(username));
                dic.Add("password", password);
                dic.Add("pay_password", pay_password);
                dic.Add("phone", phone);
                dic.Add("invite_code", invite_code);
                dic.Add("sign", Helper.BuildRequest(dic));
                string json = PostGet.Post("http://bccbtoken.com/api/Memberapi/register", dic);
                //LogManager.WriteLog("APP接口", json);
                JObject paramJson = JsonConvert.DeserializeObject(json) as JObject;
                tl = bool.Parse(paramJson["success"].ToString());
                if (!tl)
                {
                    //LogManager.WriteLog("注册", paramJson["message"].ToString());
                    if (paramJson["message"].ToString() == "此手机号已被注册")
                    {
                        tl = true;
                    }
                    else
                    {
                        LogManager.WriteLog("APP注册失败", paramJson["message"].ToString() + ":会员=" + phone + ",invite_code=" + invite_code);
                    }
                }
                //LogManager.WriteLog("APP接口", paramJson["message"].ToString());
                //LogManager.WriteLog("APP参数", Helper.PostUrl(dic));
            }
            catch (Exception err) {
                LogManager.WriteLog("APP接口异常", "注册(" + phone + ")=" + err.Message);
            }
            return(tl);
        }
Example #5
0
 /// <summary>
 /// 会员登录
 /// </summary>
 /// <param name="account">会员帐号</param>
 /// <param name="pwd">会员密码</param>
 /// <returns>返回调用结果</returns>
 /// <para name="result">200 是成功其他失败</para>
 /// <para name="data">结果提示</para>
 /// <remarks>
 /// 2016-06-30 林建生
 /// </remarks>
 public ActionResult Login(string account, string pwd)
 {
     ViewBag.OpenID = LCookie.GetCookie("openid");
     if (string.IsNullOrEmpty(account) || string.IsNullOrEmpty(pwd))
     {
         return(View());
     }
     else
     {
         if (account.Length == 11 && account.Substring(0, 1) == "1" && pwd.Length > 5)
         {
             using (EFDB db = new EFDB())
             {
                 string pwdMD5 = MD5.GetMD5ljsheng(pwd);
                 var    b      = db.Member.Where(l => l.Account == account && l.PWD == pwdMD5).OrderBy(l => l.AddTime).FirstOrDefault();
                 if (b != null)
                 {
                     //更新登录时间戳
                     b.LoginIdentifier = LCommon.TimeToUNIX(DateTime.Now);
                     db.SaveChanges();
                     Helper.MLogin(b.Gid);
                     string url = LCookie.Project() == 1 ? "Tea" : "Index";
                     return(new RedirectResult("/Home/" + url));
                 }
                 else
                 {
                     return(Helper.Redirect("登录失败!", "history.go(-1);", "帐号或密码错误!"));
                 }
             }
         }
         else
         {
             return(Helper.Redirect("登录失败!", "history.go(-1);", "必须是11位的手机号,密码最少需要6位!"));
         }
     }
 }
Example #6
0
        /// <summary>
        /// 根据code获取小程序登录用户的信息
        /// </summary>
        /// <param name="逻辑说明"></param>
        /// <param>修改备注</param>
        /// 2014-5-20 林建生
        public object oauth(HttpContext context)
        {
            Guid    gid = Guid.NewGuid();
            Boolean TF  = false;
            string  login_identifier = "";
            string  code             = context.Request.Form["code"];

            if (!String.IsNullOrEmpty(code))
            {
                try
                {
                    var    url  = string.Format("https://api.weixin.qq.com/sns/jscode2session?appid={0}&secret={1}&js_code={2}&grant_type=authorization_code", Help.appid, Help.appsecret, code);
                    string json = Helper.Post(url, "");
                    LogManager.WriteLog("json", json);
                    JObject paramJson = JsonConvert.DeserializeObject(json) as JObject;
                    string  openid    = paramJson["openid"].ToString();
                    if (!string.IsNullOrEmpty(openid))
                    {
                        using (EFDB db = new EFDB())
                        {
                            member member;
                            member = db.member.Where(l => l.openid == openid).FirstOrDefault();
                            if (member == null)
                            {
                                member                  = new member();
                                member.gid              = gid;
                                member.add_time         = DateTime.Now;
                                member.account          = "微信帐号";
                                member.login_identifier = LCommon.TimeToUNIX(DateTime.Now);
                                member.ip               = Helper.IP;
                                member.pwd              = MD5.GetMD5ljsheng("654123");
                                member.jurisdiction     = "正常";
                                member.openid           = openid;
                                member.nickname         = context.Request.Form["nickName"];
                                member.picture          = context.Request.Form["avatarUrl"];
                                member.gender           = context.Request.Form["gender"] == "1" ? "男" : "女";
                                member.province         = context.Request.Form["province"];
                                member.city             = context.Request.Form["city"];
                                //member.area = null;
                                //member.real_name = null;
                                member.number  = 0;
                                member.balance = 0;
                                db.member.Add(member);
                            }
                            else
                            {
                                TF  = true;
                                gid = member.gid;
                                member.login_identifier = LCommon.TimeToUNIX(DateTime.Now);
                                member.nickname         = context.Request.Form["nickName"];
                                member.picture          = context.Request.Form["avatarUrl"];
                                member.gender           = context.Request.Form["gender"] == "1" ? "男" : "女";
                                member.province         = context.Request.Form["province"];
                                member.city             = context.Request.Form["city"];
                            }
                            //添加新账号
                            if (db.SaveChanges() == 1)
                            {
                                TF = true;
                            }
                            login_identifier = member.login_identifier;
                        }
                    }
                }
                catch (Exception err)
                {
                    LogManager.WriteLog("err", err.Message);
                }
            }
            if (TF)
            {
                return(new AjaxResult(new { gid, login_identifier }));
            }
            else
            {
                return(new AjaxResult(300, "登录异常,请退出微信在登录!"));
            }
        }