Beispiel #1
0
        public Result Index(string nickname, string number, string email, string firstName, string lastName, string position, string password, string specialty, string group)
        {
            var result = new Result();

            try
            {
                using (var db = new DatabaseContext())
                {
                    var user = new Database.User();
                    user.Nickname         = nickname;
                    user.FirstName        = firstName;
                    user.LastName         = lastName;
                    user.Number           = number;
                    user.PasswordHash     = password.GetSHA256();
                    user.UserId           = db.Users.Count() + 1;
                    user.Token            = user.PasswordHash.GetSHA256() + new Random().Next(1, 999999999);
                    user.Friends          = "";
                    user.FirendsRequests  = "";
                    user.PathProfilePic   = "avatars/Stock/usr.jpg";
                    user.FriendsRequested = "";
                    user.Status           = "online";
                    user.Group            = "";
                    user.Position         = position;
                    user.Specialty        = specialty;
                    user.Group            = group;
                    user.Specialty        = "";
                    user.AccessLevel      = 1;
                    user.EMail            = email;

                    db.Users.Add(user);

                    db.UnreadMessages.Add(new UnreadMessages()
                    {
                        Messages = "", UserId = user.UserId
                    });
                    db.SaveChanges();


                    var response = new Shared.Models.Register();
                    response.Token  = user.Token;
                    response.UserId = user.UserId;
                    result.Data     = response;
                    result.Status   = true;
                }
            }
            catch (Exception e)
            {
                var error = new Error();
                error.Code    = 1;
                error.Message = "Неизвестная ошибка";

                result.Data   = error;
                result.Status = false;
                return(result);
            }

            return(result);
        }
Beispiel #2
0
        public Result Get(string login, string password, string name, string lastName, string number)
        {
            _logger.Info("Запрос на регистрацию.");
            var result = new Result();

            using (var db = new DatabaseContext())
            {
                if (db.Users.Any(u => u.Nickname.ToLower() == login.ToLower()))
                {
                    //Такой пользователь уже зарегестрирован
                    var error = new Error();
                    error.Code    = 3;
                    error.Message = "Этот никнейм уже занят.";
                    result.Data   = error;
                    result.Status = false;
                    return(result);
                }


                if (db.Users.Any(u => u.Number == number))
                {
                    var error = new Error();
                    error.Code    = 3;
                    error.Message = "Такой номер телефона уже используется.";
                    result.Data   = error;
                    result.Status = false;
                    return(result);
                }

                //Регистрация

                try
                {
                    var user = new Database.User();
                    user.Nickname         = login;
                    user.FirstName        = name;
                    user.LastName         = lastName;
                    user.Number           = number;
                    user.PasswordHash     = password.GetSHA256();
                    user.UserId           = db.Users.Count() + 1;
                    user.Token            = user.PasswordHash.GetSHA256() + new Random().Next(1, 999999999);
                    user.Friends          = "";
                    user.FirendsRequests  = "";
                    user.PathProfilePic   = "avatars/Stock/usr.jpg";
                    user.FriendsRequested = "";
                    user.Status           = "online";

                    db.Users.Add(user);

                    db.UnreadMessages.Add(new UnreadMessages()
                    {
                        Messages = "", UserId = user.UserId
                    });
                    db.SaveChanges();


                    var response = new Shared.Models.Register();
                    response.Token  = user.Token;
                    response.UserId = user.UserId;
                    result.Data     = response;
                    result.Status   = true;

                    _logger.Info($"Зарегистрирован новый пользователь {user.Nickname}");
                }
                catch (Exception e)
                {
                    _logger.Error("Register", e);
                    var error = new Error();
                    error.Code    = 1;
                    error.Message = "Неизвестная ошибка";
                }
            }
            return(result);
        }