예제 #1
0
 public bool IsLoginNameExist(string loginName)
 {
     using (BonesAndFlowersDBEntities db = new BonesAndFlowersDBEntities())
     {
         return(db.SYSUsers.Where(o => o.UserName.Equals(loginName)).Any());
     }
 }
예제 #2
0
 public int GetUserID(string userName)
 {
     using (BonesAndFlowersDBEntities db = new BonesAndFlowersDBEntities())
     {
         var user = db.SYSUsers.Where(o => o.UserName.Equals(userName));
         if (user.Any())
         {
             return(user.FirstOrDefault().SYSUserID);
         }
     }
     return(0);
 }
예제 #3
0
        public void AddUserAccount(UserSignUpView user)
        {
            using (BonesAndFlowersDBEntities db = new BonesAndFlowersDBEntities())
            {
                SYSUser SU = new SYSUser
                {
                    UserName = user.UserName,
                    PasswordEncryptedText = user.Password,
                    RowCreatedSYSUserID   = user.SYSUserID > 0 ? user.SYSUserID : 1,
                    RowModifiedSYSUserID  = user.SYSUserID > 0 ? user.SYSUserID : 1,
                    RowCreatedDateTime    = DateTime.Now,
                    RowModifiedDateTime   = DateTime.Now
                };

                db.SYSUsers.Add(SU);
                db.SaveChanges();

                SYSUserProfile SUP = new SYSUserProfile
                {
                    SYSUserID            = SU.SYSUserID,
                    Race                 = user.Race,
                    Class                = user.Class,
                    Country              = user.Country,
                    Gender               = user.Gender,
                    RowCreatedSYSUserID  = user.SYSUserID > 0 ? user.SYSUserID : 1,
                    RowModifiedSYSUserID = user.SYSUserID > 0 ? user.SYSUserID : 1,
                    RowCreatedDateTime   = DateTime.Now,
                    RowModifiedDateTime  = DateTime.Now
                };

                db.SYSUserProfiles.Add(SUP);
                db.SaveChanges();

                if (user.LOOKUPRoleID > 0)
                {
                    SYSUserRole SUR = new SYSUserRole
                    {
                        LOOKUPRoleID         = user.LOOKUPRoleID,
                        SYSUserID            = user.SYSUserID,
                        IsActive             = true,
                        RowCreatedSYSUserID  = user.SYSUserID > 0 ? user.SYSUserID : 1,
                        RowModifiedSYSUserID = user.SYSUserID > 0 ? user.SYSUserID : 1,
                        RowCreatedDateTime   = DateTime.Now,
                        RowModifiedDateTime  = DateTime.Now
                    };

                    db.SYSUserRoles.Add(SUR);
                    db.SaveChanges();
                }
            }
        }
예제 #4
0
        public List <LOOKUPAvailableRole> GetAllRoles()
        {
            using (BonesAndFlowersDBEntities db = new BonesAndFlowersDBEntities())
            {
                var roles = db.LOOKUPRoles.Select(o => new LOOKUPAvailableRole
                {
                    LOOKUPRoleID    = o.LOOKUPRoleID,
                    RoleName        = o.RoleName,
                    RoleDescription = o.RoleDescription
                }).ToList();

                return(roles);
            }
        }
예제 #5
0
 public string GetUserPassword(string userName)
 {
     using (BonesAndFlowersDBEntities db = new BonesAndFlowersDBEntities())
     {
         var user = db.SYSUsers.Where(o => o.UserName.ToLower().Equals(userName));
         if (user.Any())
         {
             return(user.FirstOrDefault().PasswordEncryptedText);
         }
         else
         {
             return(string.Empty);
         }
     }
 }
예제 #6
0
            protected override bool AuthorizeCore(HttpContextBase httpContext)
            {
                bool authorize = false;

                using (BonesAndFlowersDBEntities db = new BonesAndFlowersDBEntities())
                {
                    UserManager UM = new UserManager();
                    foreach (var roles in userAssignedRoles)
                    {
                        authorize = UM.IsUserInRole(httpContext.User.Identity.Name, roles);
                        if (authorize)
                        {
                            return(authorize);
                        }
                    }
                }
                return(authorize);
            }
예제 #7
0
        public List <UserProfileView> GetAllUserProfiles()
        {
            List <UserProfileView> profiles = new List <UserProfileView>();

            using (BonesAndFlowersDBEntities db = new BonesAndFlowersDBEntities())
            {
                UserProfileView UPV;
                var             users = db.SYSUsers.ToList();

                foreach (SYSUser u in db.SYSUsers)
                {
                    UPV = new UserProfileView
                    {
                        SYSUserID = u.SYSUserID,
                        UserName  = u.UserName,
                        Password  = u.PasswordEncryptedText
                    };

                    //if (db.SYSUserProfiles != null)
                    var SUP = db.SYSUserProfiles.Find(u.SYSUserID);
                    if (SUP != null)
                    {
                        UPV.Race    = SUP.Race;
                        UPV.Class   = SUP.Class;
                        UPV.Country = SUP.Country;
                        UPV.Gender  = SUP.Gender;
                    }

                    var SUR = db.SYSUserRoles.Where(o => o.SYSUserID.Equals(u.SYSUserID));
                    if (SUR.Any())
                    {
                        var userRole = SUR.FirstOrDefault();
                        UPV.LOOKUPRoleID = userRole.LOOKUPRoleID;
                        UPV.RoleName     = userRole.LOOKUPRole.RoleName;
                        UPV.IsRoleActive = userRole.IsActive;
                    }

                    profiles.Add(UPV);
                }
            }

            return(profiles);
        }
예제 #8
0
        public bool IsUserInRole(string userName, string roleName)
        {
            using (BonesAndFlowersDBEntities db = new BonesAndFlowersDBEntities())
            {
                SYSUser SU = db.SYSUsers.Where(o => o.UserName.ToLower().Equals(userName.ToLower()))?.FirstOrDefault();
                if (SU != null)
                {
                    var roles = from q in db.SYSUserRoles
                                join r in db.LOOKUPRoles on q.LOOKUPRoleID equals r.LOOKUPRoleID
                                where r.RoleName.Equals(roleName) && q.SYSUserID.Equals(SU.SYSUserID)
                                select r.RoleName;

                    if (roles != null)
                    {
                        return(roles.Any());
                    }
                }

                return(false);
            }
        }
예제 #9
0
        public void DeleteUser(int userID)
        {
            using (BonesAndFlowersDBEntities db = new BonesAndFlowersDBEntities())
            {
                using (var dbContextTransaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        var SUR = db.SYSUserRoles.Where(o => o.SYSUserID == userID);
                        if (SUR.Any())
                        {
                            db.SYSUserRoles.Remove(SUR.FirstOrDefault());
                            db.SaveChanges();
                        }

                        var SUP = db.SYSUserProfiles.Where(o => o.SYSUserID == userID);
                        if (SUP.Any())
                        {
                            db.SYSUserProfiles.Remove(SUP.FirstOrDefault());
                            db.SaveChanges();
                        }

                        var SU = db.SYSUsers.Where(o => o.SYSUserID == userID);
                        if (SU.Any())
                        {
                            db.SYSUsers.Remove(SU.FirstOrDefault());
                            db.SaveChanges();
                        }

                        dbContextTransaction.Commit();
                    }
                    catch
                    {
                        dbContextTransaction.Rollback();
                    }
                }
            }
        }
예제 #10
0
        public void UpdateUserAccount(UserProfileView user)
        {
            using (BonesAndFlowersDBEntities db = new BonesAndFlowersDBEntities())
            {
                using (var dbContextTransaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        SYSUser SU = db.SYSUsers.Find(user.SYSUserID);
                        SU.UserName = user.UserName;
                        SU.PasswordEncryptedText = user.Password;
                        SU.RowCreatedSYSUserID   = user.SYSUserID;
                        SU.RowModifiedSYSUserID  = user.SYSUserID;
                        SU.RowCreatedDateTime    = DateTime.Now;
                        SU.RowModifiedDateTime   = DateTime.Now;

                        db.SaveChanges();

                        var userProfile = db.SYSUserProfiles.Where(o => o.SYSUserID == user.SYSUserID);

                        if (userProfile.Any())
                        {
                            SYSUserProfile SUP = userProfile.FirstOrDefault();
                            SUP.SYSUserID            = SU.SYSUserID;
                            SUP.Race                 = user.Race;
                            SUP.Class                = user.Class;
                            SUP.Country              = user.Country;
                            SUP.Gender               = user.Gender;
                            SUP.RowCreatedSYSUserID  = user.SYSUserID;
                            SUP.RowModifiedSYSUserID = user.SYSUserID;
                            SUP.RowCreatedDateTime   = DateTime.Now;
                            SUP.RowModifiedDateTime  = DateTime.Now;

                            db.SaveChanges();
                        }

                        if (user.LOOKUPRoleID > 0)
                        {
                            var         userRole = db.SYSUserRoles.Where(o => o.SYSUserID == user.SYSUserID);
                            SYSUserRole SUR      = null;
                            if (userRole.Any())
                            {
                                SUR = userRole.FirstOrDefault();
                                SUR.LOOKUPRoleID         = user.LOOKUPRoleID;
                                SUR.SYSUserID            = user.SYSUserID;
                                SUR.IsActive             = true;
                                SUR.RowCreatedSYSUserID  = user.SYSUserID;
                                SUR.RowModifiedSYSUserID = user.SYSUserID;
                                SUR.RowCreatedDateTime   = DateTime.Now;
                                SUR.RowModifiedDateTime  = DateTime.Now;
                            }
                            else
                            {
                                SUR = new SYSUserRole();
                                SUR.LOOKUPRoleID         = user.LOOKUPRoleID;
                                SUR.SYSUserID            = user.SYSUserID;
                                SUR.IsActive             = true;
                                SUR.RowCreatedSYSUserID  = user.SYSUserID;
                                SUR.RowModifiedSYSUserID = user.SYSUserID;
                                SUR.RowCreatedDateTime   = DateTime.Now;
                                SUR.RowModifiedDateTime  = DateTime.Now;
                                db.SYSUserRoles.Add(SUR);
                            }

                            db.SaveChanges();
                        }

                        dbContextTransaction.Commit();
                    }
                    catch
                    {
                        dbContextTransaction.Rollback();
                    }
                }
            }
        }
예제 #11
0
        public UserDataView GetUserDataView(string userName)
        {
            UserDataView               UDV      = new UserDataView();
            List <UserProfileView>     profiles = GetAllUserProfiles();
            List <LOOKUPAvailableRole> roles    = GetAllRoles();

            int?   userAssignedRoleID = 0, userID = 0;
            string userRace    = string.Empty;
            string userClass   = string.Empty;
            string userCountry = string.Empty;
            string userGender  = string.Empty;

            userID = GetUserID(userName);
            using (BonesAndFlowersDBEntities db = new BonesAndFlowersDBEntities())
            {
                userAssignedRoleID = db.SYSUserRoles.Where(o => o.SYSUserID == userID)?.FirstOrDefault().LOOKUPRoleID;
                userRace           = db.SYSUserProfiles.Where(o => o.SYSUserID == userID)?.FirstOrDefault().Race;
                userClass          = db.SYSUserProfiles.Where(o => o.SYSUserID == userID)?.FirstOrDefault().Class;
                userCountry        = db.SYSUserProfiles.Where(o => o.SYSUserID == userID)?.FirstOrDefault().Country;
                userGender         = db.SYSUserProfiles.Where(o => o.SYSUserID == userID)?.FirstOrDefault().Gender;
            }

            List <Race> races = new List <Race>();

            races.AddRange(StaticLists.races);

            List <Class> classes = new List <Class>();

            classes.AddRange(StaticLists.classes);

            List <Country> countries = new List <Country>();

            countries.AddRange(StaticLists.countries);

            List <Gender> genders = new List <Gender>();

            genders.AddRange(StaticLists.genders);

            UDV.UserProfile = profiles;

            UDV.UserRoles = new UserRoles
            {
                SelectedRoleID = userAssignedRoleID,
                UserRoleList   = roles
            };

            UDV.UserClass = new UserClass
            {
                SelectedClass = userClass,
                Class         = classes
            };

            UDV.UserRace = new UserRace
            {
                SelectedRace = userRace,
                Race         = races
            };

            UDV.UserCountry = new UserCountry
            {
                SelectedCountry = userCountry,
                Country         = countries
            };

            UDV.UserGender = new UserGender
            {
                SelectedGender = userGender,
                Gender         = genders
            };

            return(UDV);
        }