Example #1
0
        public static UserModel Authorization(string user, string password)
        {
            using (var context = new TheHermesEntities.TheHermesEntities())
            {
                var dbUser = context.User.FirstOrDefault(u => u.Login.Equals(user));
                if (dbUser != null)
                {
                    var sha256 = SHA256.Create();

                    var salt           = dbUser.Salt;
                    var passwordBase   = password + salt;
                    var passwordHash   = sha256.ComputeHash(Encoding.ASCII.GetBytes(passwordBase));
                    var passwordString = Encoding.ASCII.GetString(passwordHash);

                    if (passwordString.Equals(dbUser.Password))
                    {
                        var userType = context.UserRole.First(u => u.UserGuid == dbUser.Guid);
                        return(new UserModel()
                        {
                            Id = dbUser.Id, Login = dbUser.Login, Token = dbUser.Token, UserGuid = dbUser.Guid, UserType = (RoleType)userType.RoleId
                        });
                    }
                }
                return(null);
            }
        }
Example #2
0
 public static User GetUserByToken(string token)
 {
     using (var context = new TheHermesEntities.TheHermesEntities())
     {
         var user = context.User.First(u => u.Token == token);
         return(user);
     }
 }
Example #3
0
 public static RoleType GetRoleByUser(User user)
 {
     using (var context = new TheHermesEntities.TheHermesEntities())
     {
         var role = context.UserRole.First(u => u.UserGuid == user.Guid);
         return((RoleType)role.RoleId);
     }
 }
Example #4
0
 public static RoleType GetRoleByToken(string token)
 {
     using (var context = new TheHermesEntities.TheHermesEntities())
     {
         var user = context.User.First(u => u.Token == token);
         var role = context.UserRole.First(u => u.UserGuid == user.Guid);
         return((RoleType)role.RoleId);
     }
 }
Example #5
0
 public static void AddStartData()
 {
     using (var context = new TheHermesEntities.TheHermesEntities())
     {
         var user = context.User.FirstOrDefault(u => u.Login == "*****@*****.**");
         if (user == null)
         {
             CreateAccount("*****@*****.**", "*****@*****.**", (int)RoleType.Administrator);
         }
     }
 }
 public static UserInfo GetUserInfo(Guid userGuid)
 {
     using (var context = new TheHermesEntities.TheHermesEntities())
     {
         var info = context.UserInfo.FirstOrDefault(u => u.UserGuid == userGuid);
         if (info != null)
         {
             return(info);
         }
         return(null);
     }
 }
Example #7
0
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);

            LocalStorage.Education         = DbStatisticWorker.GetEducations();
            LocalStorage.MakeMoney         = DbStatisticWorker.GetMakeMoney();
            LocalStorage.Population        = DbStatisticWorker.GetPopulations();
            LocalStorage.StateOfMarriage   = DbStatisticWorker.GetStateOfMarriages();
            LocalStorage.DictionaryRegions = DbStatisticWorker.GetDictionary();

            using (var context = new TheHermesEntities.TheHermesEntities())
            {
                if (!context.Population.Any())
                {
                    var e = DbStatisticWorker.GetPopulations();
                    context.Population.AddRange(e);
                    context.SaveChanges();
                }
            }
            //    if (context.Education.Any())
            //    {
            //        var e = DbStatisticWorker.GetEducations();
            //        var arr = e.ToArray();

            //        for (int i = 0; i < 4; i++)
            //        {
            //            context.Education.Add(new Education());

            //        }
            //        context.SaveChanges();

            //    }
            //    if (!context.StateOfMarriage.Any())
            //    {

            //        context.StateOfMarriage.AddRange(e);
            //        context.SaveChanges();
            //    }
            //    if (!context.MakeMoney.Any())
            //    {
            //        var e = DbStatisticWorker.GetMakeMoney();
            //        context.MakeMoney.AddRange(e);
            //        context.SaveChanges();
            //    }
            //}
        }
 public static UpdateUserInfoResult UpdateUserInfo(UserInfo userInfo)
 {
     using (var context = new TheHermesEntities.TheHermesEntities())
     {
         var info = context.UserInfo.FirstOrDefault(u => u.UserGuid == userInfo.UserGuid);
         if (info == null)
         {
             CreateUserInfo(userInfo);
         }
         else
         {
             info.Age              = userInfo.Age;
             info.ChildrenCount    = userInfo.ChildrenCount;
             info.OrganisationGuid = userInfo.OrganisationGuid;
         }
         context.SaveChanges();
         return(UpdateUserInfoResult.Success);
     }
 }
 public static CreateUserInfoResult CreateUserInfo(UserInfo userInfo)
 {
     using (var context = new TheHermesEntities.TheHermesEntities())
     {
         var info = context.UserInfo.FirstOrDefault(u => u.UserGuid == userInfo.UserGuid);
         if (info == null)
         {
             var dbInfo = new UserInfo();
             dbInfo.Age              = userInfo.Age;
             dbInfo.ChildrenCount    = userInfo.ChildrenCount;
             dbInfo.OrganisationGuid = userInfo.OrganisationGuid;
             dbInfo.UserGuid         = userInfo.UserGuid;
             context.UserInfo.Add(dbInfo);
             context.SaveChanges();
             return(CreateUserInfoResult.Success);
         }
         return(CreateUserInfoResult.Success);
     }
 }
Example #10
0
        public static IdentityResult CreateAccount(string user, string password, int roleId = 1)
        {
            using (var context = new TheHermesEntities.TheHermesEntities())
            {
                var dbUser = context.User.FirstOrDefault(x => x.Login.Equals(user));
                if (dbUser == null)
                {
                    var sha256 = SHA256.Create();

                    var salt         = GetSalt();
                    var passwordBase = password + salt;
                    var passwordHash = sha256.ComputeHash(Encoding.ASCII.GetBytes(passwordBase));

                    var u = new User();
                    u.Login    = user;
                    u.Email    = user;
                    u.Guid     = Guid.NewGuid();
                    u.Password = Encoding.ASCII.GetString(passwordHash);
                    u.Salt     = salt;

                    var tokenBase = u.Guid + user;
                    var tokenHash = sha256.ComputeHash(Encoding.ASCII.GetBytes(tokenBase));
                    u.Token = Encoding.ASCII.GetString(tokenHash);

                    context.UserRole.Add(new UserRole()
                    {
                        RoleId = roleId, UserGuid = u.Guid
                    });
                    context.User.Add(u);

                    DbUserWorker.CreateUserInfo(new UserInfo()
                    {
                        UserGuid = u.Guid
                    });
                    context.SaveChanges();
                    sha256.Dispose();
                    return(IdentityResult.Success);
                }
                return(IdentityResult.Failed(new[] { "Данная почта занята" }));
            }
        }