예제 #1
0
        public object Login(string account, string password)
        {
            try
            {
                var re = UserServer.Login(account, password);

                //如果登陆成功  设置session
                if (re != "login successful")
                {
                    return new { msg = re }
                }
                ;

                var user = UserServer.GetUser(account);
                HttpContext.Session.SetString("user_Account", account);
                HttpContext.Session.SetString("user_Password", user.password);
                HttpContext.Session.SetString("user_Type", user.userType);
                HttpContext.Session.SetString("user_Province", user.province);
                HttpContext.Session.SetString("user_phoneNumber", user.phoneNumber);

                return(new { msg = re });
            }
            catch (Exception e)
            {
                return(new { msg = e.Message });
            }
        }
예제 #2
0
        public object ModifyPassword([FromBody] User user)
        {
            try
            {
                if (user == null)
                {
                    return(new { msg = "request error" });
                }

                var account     = user.Account;
                var newPassword = user.Password;

                if (!UserServer.AccountIsExist(account).Equals("account is exists"))
                {
                    return(new
                    {
                        msg = "account not found"
                    });
                }
                var re = UserServer.ModifyPassowrd(account, newPassword);
                return(new
                {
                    msg = re
                });
            }
            catch (Exception e)
            {
                return(new { msg = e.Message });
            }
        }
예제 #3
0
        public object Register([FromBody] User user)
        {
            try
            {
                if (user == null)
                {
                    return(new { msg = "bad request" });
                }

                var account  = user.Account;
                var active   = user.ActiveCode;
                var password = user.Password;
                var phoneNum = user.PhoneNum;

                if (UserServer.AccountIsExist(account).Equals("account is exists"))
                {
                    return(new { msg = "account is exists" });
                }

                if (UserServer.ActiveCodeState(active).Equals("key is invalid") ||
                    UserServer.ActiveCodeState(active).Equals("key is not found"))
                {
                    return(new { msg = "key is not found or invaild" });
                }

                var re = UserServer.Register(active, account, password, phoneNum);

                return(new { msg = re });
            }
            catch (Exception e)
            {
                return(new { msg = e.Message });
            }
        }
예제 #4
0
 public object ModifyPassowrd(string account, string newPassword)
 {
     try
     {
         if (!UserServer.AccountIsExist(account).Equals("account is exists"))
         {
             return(new
             {
                 msg = "account not found"
             });
         }
         var re = UserServer.ModifyPassowrd(account, newPassword);
         return(new
         {
             msg = re
         });
     }
     catch (Exception e)
     {
         return(new
         {
             msg = e.Message
         });
     }
 }
예제 #5
0
 public void Constructor()
 {
     using (DataServer database = new UserServer())
     {
         Assert.IsNotNull(database);
     }
 }
예제 #6
0
        protected async void Btn_Click(object sender, EventArgs e)
        {
            string      userName    = this.Txt_User.Text;
            string      passWord    = this.Txt_Pwd.Text;
            UserRequest userRequest = new UserRequest()
            {
                PassWord = passWord, UserName = userName
            };
            TokenResult tokenResult = await UserServer.UserLoginToken(userRequest);

            //判断是否登录请求Token成功
            if (tokenResult.Status == 200)
            {
                Session["UserSession"] = new UserSession()
                {
                    IsLogin  = true,
                    UserName = userName,
                    Token    = tokenResult.Token
                };
                Session.Timeout = 60;
                Response.Redirect("Index.aspx", false);
            }
            else
            {
                Response.Write("<script>alert('登录失败');</script>");
            }
        }
예제 #7
0
 public void CommitTransactionNoTransactionError()
 {
     using (DataServer database = new UserServer())
     {
         database.CommitTransaction();
     }
 }
예제 #8
0
 public void BeginTransaction()
 {
     using (DataServer database = new UserServer())
     {
         database.BeginTransaction();
     }
 }
예제 #9
0
 public void RollbackTransactionNoTransactionError()
 {
     using (DataServer database = new UserServer())
     {
         database.RollbackTransaction();
     }
 }
예제 #10
0
        //注册

        public IActionResult Register()
        {
            LoginState  loginState = new LoginState();
            IUserServer userServer = new UserServer();
            UserDate    user       = new UserDate();

            user.Email    = HttpContext.Request.Form["email"];
            user.UserName = HttpContext.Request.Form["username"];
            user.Password = HttpContext.Request.Form["password"];
            string Repassword = HttpContext.Request.Form["repassword"];

            if (user.Password == Repassword)
            {
                if (!userServer.AnyUser(user.Email))
                {
                    userServer.AddUser(user.UserName, user.Email, user.Password);

                    loginState.code    = 0;
                    loginState.message = "success";
                }
                else
                {
                    loginState.code    = 1;
                    loginState.message = "用户已注册";
                }
            }
            else
            {
                loginState.code    = 1;
                loginState.message = "两次输入密码不一致";
            }

            return(Json(loginState));
        }
예제 #11
0
        public IActionResult Index()
        {
            string sessionCode = "";

            Request.Cookies.TryGetValue("SessionCode", out sessionCode);
            ViewData["User"] = null;
            if (!string.IsNullOrEmpty(sessionCode))
            {
                User user = UserServer.CheckSessionCode(sessionCode, _usercontext);
                if (user != null)
                {
                    ViewData["User"] = user;
                }
            }
            ViewData["Title"] = "一站式编程学习平台|首页";
            int count = _articlecontext.Articles.AsEnumerable().Count();

            ViewData["NewArticleList"] = _articlecontext.Articles.AsEnumerable().OrderBy(a => a.CreateDate).Reverse().ToList().GetRange(0, count > 10 ? 10 : count);
            ViewData["HotArticleList"] = _articlecontext.Articles.AsEnumerable().OrderBy(a => a.LookCount).Reverse().ToList().GetRange(0, count > 10 ? 10 : count);
            count = _downloaditemcontext.DownloadItems.AsEnumerable().Count();
            ViewData["DownloadItem"] = _downloaditemcontext.DownloadItems.AsEnumerable().OrderBy(d => d.CreateDate).Reverse().ToList().GetRange(0, count > 10 ? 10 : count);
            ViewData["Controller"]   = "Main";
            ViewData["Action"]       = "Index";
            return(View());
        }
예제 #12
0
        public IActionResult Download([FromRoute] string page)
        {
            string sessionCode = "";

            Request.Cookies.TryGetValue("SessionCode", out sessionCode);
            ViewData["User"] = null;
            if (!string.IsNullOrEmpty(sessionCode))
            {
                User user = UserServer.CheckSessionCode(sessionCode, _usercontext);
                if (user != null)
                {
                    ViewData["User"]       = user;
                    ViewData["Title"]      = "一站式编程学习平台|下载";
                    ViewData["Controller"] = "Download";
                    ViewData["Action"]     = "Download";
                    ViewData["Tab"]        = page;
                    List <DownloadItem> items = _downloaditemcontext.DownloadItems.AsEnumerable().ToList();
                    ViewData["Items"] = items;
                    List <User> users = new List <User>();
                    foreach (var d in items)
                    {
                        users.Add(_usercontext.Users.AsEnumerable().FirstOrDefault(u => u.Id == d.UserId));
                    }
                    ViewData["Users"] = users;
                    return(View());
                }
            }
            return(RedirectToAction("Login", "Login"));
        }
예제 #13
0
        public ActionResult ModifitSecodePwd(UserDTO model)
        {
            string  msg       = "";
            UserDTO usermodel = UserServer.GetModel(model.ID);

            if (Request.Params["resepwd"] != model.SecondPassword)
            {
                msg = "密码不一致";
            }
            else if (usermodel.SecondPassword != CommonHelper.GetMD5(Request.Params["oldsepwd"]))
            {
                msg = "旧密码不正确";
            }
            else if (CommonHelper.GetMD5(model.SecondPassword) == usermodel.SecondPassword)
            {
                msg = "新密码不能于旧密码一样,请重新输入新的密码";
            }
            else
            {
                model.SecondPassword = CommonHelper.GetMD5(model.SecondPassword);
                bool bol = UserServer.UpdateScodePwd(model);
                if (bol)
                {
                    msg = "修改成功";
                }
                else
                {
                    msg = "修改失败";
                }
            }

            return(Content("<script>alert('" + msg + "');window.location='/Team/PersonalInfo';</script>"));
        }
예제 #14
0
        public static bool UpdateUser(Users user)
        {
            #region 更新用户信息
            return(UserServer.UpdateUser(user));

            #endregion
        }
예제 #15
0
 public Users(Token token)
 {
     InitializeComponent();
     userRequest = new UserServer(token.login_Token);
     this.token  = token;
     InitializeView();
 }
예제 #16
0
        public static Users GetUserById(int Id)
        {
            #region 通过用户Id返回用户信息
            return(UserServer.GetUserById(Id));

            #endregion
        }
예제 #17
0
        public static DataTable GetAllUsers(string Search)
        {
            #region 根据搜索关键字获取用户列表
            return(UserServer.GetAllUsers(Search));

            #endregion
        }
예제 #18
0
 public object ModifyPassowrd(string account, string newPassword)
 {
     try
     {
         var addr = Server.GetUserIp(Request.HttpContext);
         if (Server.IPHandle(addr) == 0)
         {
             return(new
             {
                 msg = "your ip can't using our api , please contact administrator"
             });
         }
         if (!UserServer.AccountIsExist(account).Equals("account is exists"))
         {
             return(new
             {
                 msg = "account not found"
             });
         }
         var re = UserServer.ModifyPassowrd(account, newPassword);
         return(new
         {
             msg = re
         });
     }
     catch (Exception e)
     {
         return(new
         {
             msg = e.Message
         });
     }
 }
예제 #19
0
        public IActionResult UpdateImg()
        {
            StringValues file;

            Request.Form.TryGetValue("file", out file);
            string sessionCode = "";

            Request.Cookies.TryGetValue("SessionCode", out sessionCode);
            if (!string.IsNullOrEmpty(sessionCode))
            {
                User user = UserServer.CheckSessionCode(sessionCode, _usercontext);
                if (user != null)
                {
                    string filePath = hostingEnvironment.WebRootPath + @"\data\image";
                    if (!Directory.Exists(filePath))
                    {
                        Directory.CreateDirectory(filePath);
                    }
                    var match = Regex.Match(HttpUtility.UrlDecode(file.ToString()), "data:image/(\\w{2,4});base64,([\\w\\W]*)$");
                    if (match.Success)
                    {
                        using (FileStream fs = System.IO.File.Create(filePath + $@"\{user.Id}.{match.Groups[1].Value}"))
                        {
                            fs.Write(Convert.FromBase64String(match.Groups[2].Value));
                            fs.Flush();
                        }
                        user.UserImgURL = $@"\data\image\{user.Id}.{match.Groups[1].Value}";
                        _usercontext.Users.Update(user);
                        _usercontext.SaveChanges();
                    }
                }
            }
            return(RedirectToAction("Info"));
        }
예제 #20
0
        public object SelectUser(int theaterId)
        {
            try
            {
                var addr = Server.GetUserIp(Request.HttpContext);
                if (Server.IpHandle(addr) == 0)
                {
                    return(new[] { "your ip can't using our api , please contact administrator" });
                }

                var account = HttpContext.Session.GetString("user_account");

//                if (account == null)
//                {
//                    return new
//                    {
//                        result = 401 ,
//                        msg = "not login"
//                    };
//                }

                var re = UserServer.SelectUser(theaterId);

                return(re);
            }
            catch (Exception e)
            {
                return(new
                {
                    result = e.HResult,
                    msg = e.Message
                });
            }
        }
예제 #21
0
        public User Login(string username, string password, int port, string address)
        {
            Console.WriteLine("[Login] {0}:{1}, address: {2}", username, password, address);
            if (!DBManager.hasUsername(username))
            {
                Console.WriteLine("[Login] User {0} doesn't exist", username);
                return(null);
            }

            UserServer user = DBManager.GetUser(username);

            if (!user.Password.Equals(password))
            {
                Console.WriteLine("[Login] User {0} wrong password", username);
                return(null);
            }

            if (user.Online)
            {
                Console.WriteLine("[Login] User {0} is already online", username);
                return(null);
            }

            user.Online  = true;
            user.Port    = port;
            user.Address = address;
            Console.WriteLine("[Login] User {0} successfully logged in", username);

            OnLoginChange();

            return(user.GetUser());
        }
예제 #22
0
 public Home(Token token)
 {
     InitializeComponent();
     login_token = token;
     userRequest = new UserServer(token.login_Token);
     Initialze();
 }
예제 #23
0
        public object UpdateUserTel([FromBody] UpdateUserTelModel um)
        {
            try
            {
                var addr = Server.GetUserIp(Request.HttpContext);
                if (Server.IpHandle(addr) == 0)
                {
                    return(new[] { "your ip can't using our api , please contact administrator" });
                }

                var account = HttpContext.Session.GetString("user_account");

                if (account == null)
                {
                    return(new
                    {
                        result = 401,
                        msg = "not login"
                    });
                }

                var re = UserServer.UpdateUserTel(um);

                return(re);
            }
            catch (Exception e)
            {
                return(new
                {
                    result = e.HResult,
                    msg = e.Message
                });
            }
        }
예제 #24
0
        public IActionResult CommentSubmit([FromForm] CommentSubmitParameter parameter)
        {
            Debug.WriteLine(parameter.ArticleId);
            Debug.WriteLine(parameter.Comment);
            string sessionCode = "";

            Request.Cookies.TryGetValue("SessionCode", out sessionCode);
            ViewData["User"] = null;
            if (!string.IsNullOrEmpty(sessionCode))
            {
                User user = UserServer.CheckSessionCode(sessionCode, _usercontext);
                if (user != null)
                {
                    ViewData["User"] = user;
                    if (parameter.Comment != null && !String.IsNullOrEmpty(parameter.Comment))
                    {
                        Comment comment = new Comment
                        {
                            ArticleId = parameter.ArticleId,
                            Content   = parameter.Comment,
                            UserId    = user.Id
                        };
                        _commentcontext.Comments.Add(comment);
                        _commentcontext.SaveChanges();
                        Article article = _articlecontext.Articles.FirstOrDefault(a => a.Id == parameter.ArticleId);
                        article.CommentCount = _commentcontext.Comments.Where(c => c.ArticleId == article.Id).Count();
                        _articlecontext.Articles.Update(article);
                        _articlecontext.SaveChanges();
                    }
                }
            }
            ViewData["Controller"] = "Article";
            ViewData["Action"]     = "Read";
            return(RedirectToAction("Read", new { id = parameter.ArticleId }));
        }
예제 #25
0
 public void Ping()
 {
     using (WebServiceDataServer database = new UserServer())
     {
         Assert.IsTrue(database.Ping());
     }
 }
예제 #26
0
        public object Register(string active, string account, string password, string phoneNum)
        {
            try
            {
                var addr = Server.GetUserIp(Request.HttpContext);
                if (Server.IPHandle(addr) == 0)
                {
                    return(new { msg = "your ip can't using our api , please contact administrator" });
                }
                if (UserServer.AccountIsExist(account).Equals("account is exists"))
                {
                    return(new { msg = "account is exists" });
                }

                if (UserServer.ActiveCodeState(active).Equals("key is invalid") ||
                    UserServer.ActiveCodeState(active).Equals("key is not found"))
                {
                    return(new { msg = "key is not found or invaild" });
                }

                var re = UserServer.Register(active, account, password, phoneNum);

                return(new { msg = re });
            }
            catch (Exception e)
            {
                return(new { msg = e.Message });
            }
        }
예제 #27
0
        //验证客户端登录信息
        private string VerifyLogin(byte[] message)
        {
            byte[] name     = new byte[message[0]];
            byte[] password = new byte[message[1]];
            for (int i = 2; i < message[0] + 2; i++)
            {
                name[i - 2] = message[i];
            }

            for (int k = message[0] + 2; k < message[1] + message[0] + 2; k++)
            {
                password[k - message[0] - 2] = message[k];
            }

            System.Text.ASCIIEncoding asciiEncoding = new System.Text.ASCIIEncoding();

            string UserName     = asciiEncoding.GetString(name);
            string UserPassword = asciiEncoding.GetString(password);

            UserServer user     = new UserServer();
            string     sqlSelct = "select UserAuthority from user where UserName='******' and UserPassWord= '******'";

            string    UserAuthority = null;
            DataTable dt            = db.Select(sqlSelct);

            if (dt != null)
            {
                UserAuthority = dt.Rows[0][0].ToString();
            }
            return(UserAuthority);
        }
예제 #28
0
        public ActionResult ProcLevel()
        {
            ViewBag.LeveModelList = lvelname.GetAll();
            UserProView modelview = new UserProView();

            modelview.UserProViewList = MemberLevelService.GetUerProList(pageIndex, pageSize);
            for (int i = 0; i < modelview.UserProViewList.Count; i++)
            {
                UserDTO model = UserServer.GetModel(modelview.UserProViewList[i].UserID);
                if (model != null)
                {
                    modelview.UserProViewList[i].UserCode      = model.UserCode;
                    modelview.UserProViewList[i].LastLevelName = lvelname.GetLevelName(modelview.UserProViewList[i].LastLevel).LevelName;
                    modelview.UserProViewList[i].EndLevelName  = lvelname.GetLevelName(modelview.UserProViewList[i].EndLevel).LevelName;
                    modelview.UserProViewList[i].TrueName      = model.TrueName;
                    //if (list[i].Flag == 0)
                    //{
                    //    list[i].
                    //}
                }
            }
            modelview.totalPage = MemberLevelService.GetUerProCount().Count;
            decimal s = (decimal)modelview.totalPage / (decimal)pageSize;

            modelview.showPageNum = int.Parse(Math.Ceiling(s).ToString());
            return(PartialView(modelview));
        }
예제 #29
0
        public void GetAddress()
        {
            String address;

            address = UserServer.GetAddress();
            Assert.IsTrue(address.IsNotEmpty());
        }
예제 #30
0
        private void CheckUser()
        {
            User   user;
            Server server;

            if (!db.Users.Any(u => u.DiscordId == Context.User.Id))
            {
                user = new User()
                {
                    DiscordId = Context.User.Id
                };
                db.Users.Add(user);
                db.SaveChanges();
            }
            else
            {
                user = db.Users.FirstOrDefault(u => u.DiscordId == Context.User.Id);
            }

            if (!db.Servers.Any(s => s.DiscordId == Context.Guild.Id))
            {
                server = new Server()
                {
                    DiscordId = Context.Guild.Id
                };
                db.Servers.Add(server);
                db.SaveChanges();
            }
            else
            {
                server = db.Servers.FirstOrDefault(s => s.DiscordId == Context.Guild.Id);
            }

            if (!db.UserServers.Any(us => us.UserId == user.Id && us.ServerId == server.Id))
            {
                us = new UserServer()
                {
                    UserId   = user.Id,
                    ServerId = server.Id,
                };
                db.UserServers.Add(us);
                db.SaveChanges();

                var lp = new Points()
                {
                    Count        = 0,
                    UserServerId = us.Id
                };

                db.Points.Add(lp);
                db.SaveChanges();
                us.Points   = lp;
                us.PointsId = lp.Id;
            }
            else
            {
                us = db.UserServers.Include(s => s.Points).FirstOrDefault(us => us.UserId == user.Id && us.ServerId == server.Id);
            }
        }