Exemplo n.º 1
0
        private static bool DoLoginBygkey(string gkey, HasanEntities database, out UserViewModel userModel)
        {
            userModel = new UserViewModel();
            string gkeyToken = "";//= AESCriptography.AesDecryption(gkey);
            Guid   usergkey  = new Guid(gkeyToken);


            var user = database.User.Where(it => it.gKey == usergkey && !it.Deleted).SingleOrDefault();

            if (user != null)
            {
                userModel.Id       = user.Id;
                userModel.Password = user.Password;
                userModel.EMail    = user.EMail;
                userModel.Name     = user.Name;
                userModel.Surname  = user.Surname;
                userModel.gKey     = user.gKey;
                userModel.aKey     = user.aKey;
                userModel.ChangePasswordAtNextLogon = user.ChangePasswordAtNextLogon;

                UserProfileSessionDTO sessionUser = new UserProfileSessionDTO();
                sessionUser.EMail    = user.EMail;
                sessionUser.UserId   = user.Id;
                sessionUser.FullName = user.Name + " " + user.Surname;
                HttpContext.Current.Session["UserSession"] = sessionUser;
                return(true);
            }
            else
            {
                return(false);
            }
        }
Exemplo n.º 2
0
 /// <summary>
 /// Get all user fro drop down
 /// </summary>
 /// <param name="database"></param>
 /// <param name="loadClass"></param>
 /// <returns></returns>
 public static List <UserViewModel> GetUserDropDown(HasanEntities database, bool loadClass)
 {
     try
     {
         List <UserViewModel> DTOlist = new List <UserViewModel>();
         var UserList = GetAllUser(database);
         if (UserList != null)
         {
             foreach (User entity in UserList)
             {
                 DTOlist.Add(GetUserDTO(entity, loadClass));
             }
             return(DTOlist);
         }
         else
         {
             return(null);
         }
     }
     catch (Exception ex)
     {
         Logger logger = LogManager.GetCurrentClassLogger();
         logger.ErrorException("GetUserTypeDropDown", ex);
         throw ex;
     }
 }
Exemplo n.º 3
0
        /// <summary>
        /// Update existing user
        /// </summary>
        /// <param name="model"></param>
        /// <param name="database"></param>
        /// <returns></returns>
        public static FocusConstants.FocusResultCode UpdateUser(UserViewModel model, HasanEntities database)
        {
            try
            {
                User entity = database.User.Where(it => it.Id == model.Id).SingleOrDefault();
                entity.UserTypeRef               = model.UserTypeRef;
                entity.GroupCompanyRef           = model.GroupCompanyRef;
                entity.CustomerRef               = model.CustomerRef;
                entity.FactoryRef                = model.FactoryRef;
                entity.PersonRef                 = model.PersonRef;
                entity.EmployeeRef               = model.EmployeeRef;
                entity.EMail                     = model.EMail;
                entity.Password                  = model.Password;
                entity.PIN                       = model.PIN;
                entity.Name                      = model.Name;
                entity.Surname                   = model.Surname;
                entity.ChangePasswordAtNextLogon = model.ChangePasswordAtNextLogon;
                entity.MailNotification          = model.MailNotification;
                entity.Note                      = model.Note;
                entity.Sort                      = model.Sort;
                entity.Active                    = model.Active;
                entity.Deleted                   = model.Deleted;
                database.SaveChanges();
            }
            catch (Exception ex)
            {
                Logger logger = LogManager.GetCurrentClassLogger();
                logger.ErrorException("UpdateUserType", ex);
                return(FocusConstants.FocusResultCode.Exception);
            }


            return(FocusConstants.FocusResultCode.Success);
        }
Exemplo n.º 4
0
        /// <summary>
        /// Mapping user with UserViewModel
        /// </summary>
        /// <param name="userEntity"></param>
        /// <returns></returns>
        private static UserViewModel GetUserModel(User userEntity, HasanEntities database)
        {
            if (userEntity != null)
            {
                UserViewModel model = new UserViewModel();
                model.Id              = userEntity.Id;
                model.gKey            = userEntity.gKey;
                model.UserTypeRef     = userEntity.UserTypeRef;
                model.UserTypeName    = userEntity.UserType.Name;
                model.GroupCompanyRef = userEntity.GroupCompanyRef;

                model.EMail    = userEntity.EMail;
                model.Password = userEntity.Password;
                model.PIN      = userEntity.PIN;
                model.Name     = userEntity.Name;
                model.Surname  = userEntity.Surname;
                model.ChangePasswordAtNextLogon = userEntity.ChangePasswordAtNextLogon;
                model.MailNotification          = userEntity.MailNotification;
                model.Note    = userEntity.Note;
                model.Sort    = userEntity.Sort;
                model.Active  = userEntity.Active;
                model.Deleted = userEntity.Deleted;
                return(model);
            }
            else
            {
                return(null);
            }
        }
Exemplo n.º 5
0
        /// <summary>
        /// Delete user
        /// </summary>
        /// <param name="model"></param>
        /// <param name="database"></param>
        /// <returns></returns>
        public static FocusConstants.FocusResultCode DeleteUser(UserViewModel model, HasanEntities database)
        {
            User entity = database.User.Where(it => it.Id == model.Id).SingleOrDefault();

            entity.Deleted = true;
            database.SaveChanges();
            return(FocusConstants.FocusResultCode.Success);
        }
Exemplo n.º 6
0
 private static bool DoesUserNameExist(string email, HasanEntities database)
 {
     if (database.User.Where(it => it.EMail == email && !it.Deleted).Count() > 0)
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Exemplo n.º 7
0
        public static bool IsValidBarierToken(string token, HasanEntities database)
        {
            var user = database.User.Where(it => it.gKey == new Guid(token) && it.Active && !it.Deleted).SingleOrDefault();

            if (user != null)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Exemplo n.º 8
0
        /// <summary>
        /// Email forgotten password
        /// </summary>
        /// <param name="email"></param>
        /// <param name="database"></param>
        /// <returns></returns>
        public static ForgetPasswordResult EmailForgottenPassword(string email, HasanEntities database)
        {
            ForgetPasswordResult res = new ForgetPasswordResult();

            try
            {
                if (string.IsNullOrEmpty(email))
                {
                    res.ResponseCode    = FocusConstants.FocusResultCode.EmailAddressIsNull;
                    res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.EmailAddressIsNull);
                    return(res);
                }
                User mem = database.User.Where(it => it.EMail == email && !it.Deleted).FirstOrDefault();
                if (mem == null)
                {
                    res.ResponseCode    = FocusConstants.FocusResultCode.MemberNotExist;
                    res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.MemberNotExist);
                    return(res);
                }
                if (!mem.Active)
                {
                    res.ResponseCode    = FocusConstants.FocusResultCode.MemberIsNotActive;
                    res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.MemberIsNotActive);
                    return(res);
                }

                if (SendForgatePasswordMail(mem.EMail, mem.Password))
                {
                    res.ResponseCode    = FocusConstants.FocusResultCode.Success;
                    res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.Success);
                }


                return(res);
            }
            catch (Exception ex)
            {
                Logger logger = LogManager.GetCurrentClassLogger();
                logger.ErrorException("EmailForgottenPassword", ex);
                res.ResponseCode    = FocusConstants.FocusResultCode.Exception;
                res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.Exception);
                return(res);
            }
        }
Exemplo n.º 9
0
        /// <summary>
        /// Login user & keep data into session
        /// </summary>
        /// <param name="email"></param>
        /// <param name="password"></param>
        /// <param name="rememberMe"></param>
        /// <param name="database"></param>
        /// <param name="userModel"></param>
        /// <returns></returns>
        private static bool DoLogin(string email, string password, bool rememberMe, HasanEntities database, out UserViewModel userModel)
        {
            try
            {
                userModel = new UserViewModel();

                if (email == null || email.Trim() == "")
                {
                    return(false);
                }
                var user = database.User.Where(it => it.EMail == email && it.Password == password && it.Active && !it.Deleted).SingleOrDefault();
                if (user != null)
                {
                    userModel.Id       = user.Id;
                    userModel.Password = user.Password;
                    userModel.EMail    = user.EMail;
                    userModel.Name     = user.Name;
                    userModel.Surname  = user.Surname;
                    userModel.gKey     = user.gKey;
                    userModel.aKey     = user.aKey;
                    userModel.ChangePasswordAtNextLogon = user.ChangePasswordAtNextLogon;

                    UserProfileSessionDTO sessionUser = new UserProfileSessionDTO();
                    sessionUser.EMail    = user.EMail;
                    sessionUser.UserId   = user.Id;
                    sessionUser.FullName = user.Name + " " + user.Surname;
                    sessionUser.isLocked = false;
                    HttpContext.Current.Session["UserSession"] = sessionUser;
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception ex)
            {
                Logger logger = LogManager.GetCurrentClassLogger();
                logger.ErrorException("DoLogin", ex);
                throw ex;
            }
        }
Exemplo n.º 10
0
 /// <summary>
 /// Get all user from database
 /// </summary>
 /// <param name="database"></param>
 /// <returns></returns>
 private static List <User> GetAllUser(HasanEntities database)
 {
     try
     {
         var UserList = database.User.Where(it => it.Deleted == false).OrderBy(it => it.Sort).ToList();
         if (UserList != null)
         {
             return(UserList);
         }
         else
         {
             return(null);
         }
     }
     catch (Exception ex)
     {
         Logger logger = LogManager.GetCurrentClassLogger();
         logger.ErrorException("GetAllUser", ex);
         throw ex;
     }
 }
Exemplo n.º 11
0
        public static List <MenuPrivilegeViewModel> GetAllMenuByUser(string UserId, HasanEntities database)
        {
            List <MenuPrivilegeViewModel> menuList = new List <MenuPrivilegeViewModel>();
            int           UserRefId = Convert.ToInt32(UserId);
            UserViewModel model     = new UserViewModel();
            var           user      = database.User.Where(it => it.Id == UserRefId).SingleOrDefault();

            model.UserTypeRef = user.UserType.Id;
            List <UserTypePermission> entityList = GetAllUserTypePermission(model.UserTypeRef, database);

            //var permi
            if (entityList != null && entityList.Count > 0)
            {
                foreach (UserTypePermission entity in entityList)
                {
                    menuList.Add(GetUserTypePermissionModel(entity));
                }
            }

            return(menuList);
        }
Exemplo n.º 12
0
 /// <summary>
 /// Get all user for grid
 /// </summary>
 /// <param name="database"></param>
 /// <param name="UserViewModelList"></param>
 /// <returns></returns>
 public static FocusConstants.FocusResultCode GetAllUserGrid(HasanEntities database, out List <UserViewModel> UserViewModelList)
 {
     UserViewModelList = new List <UserViewModel>();
     try
     {
         List <User> entityList = GetAllUser(database);
         if (entityList != null && entityList.Count > 0)
         {
             foreach (User entity in entityList)
             {
                 UserViewModelList.Add(GetUserModel(entity, database));
             }
         }
     }
     catch (Exception ex)
     {
         Logger logger = LogManager.GetCurrentClassLogger();
         logger.ErrorException("GetAllUserTypeGrid", ex);
         return(FocusConstants.FocusResultCode.Exception);
     }
     return(FocusConstants.FocusResultCode.Success);
 }
Exemplo n.º 13
0
        /// <summary>
        /// Create new user
        /// </summary>
        /// <param name="model"></param>
        /// <param name="database"></param>
        /// <returns></returns>
        public static FocusConstants.FocusResultCode CreateUser(UserViewModel model, HasanEntities database)
        {
            try
            {
                if (DoesUserNameExist(model.EMail, database))
                {
                    return(FocusConstants.FocusResultCode.DuplicateUser);
                }

                User entity = new User();
                entity.UserTypeRef               = model.UserTypeRef;
                entity.GroupCompanyRef           = model.GroupCompanyRef;
                entity.CustomerRef               = model.CustomerRef;
                entity.FactoryRef                = model.FactoryRef;
                entity.PersonRef                 = model.PersonRef;
                entity.EmployeeRef               = model.EmployeeRef;
                entity.EMail                     = model.EMail;
                entity.Password                  = model.Password;
                entity.PIN                       = model.PIN;
                entity.Name                      = model.Name;
                entity.Surname                   = model.Surname;
                entity.ChangePasswordAtNextLogon = model.ChangePasswordAtNextLogon;
                entity.MailNotification          = model.MailNotification;
                entity.Note                      = model.Note;
                entity.Sort                      = model.Sort;
                entity.Active                    = model.Active;
                entity.Deleted                   = false;
                database.User.Add(entity);
                database.SaveChanges();
            }
            catch (Exception ex)
            {
                Logger logger = LogManager.GetCurrentClassLogger();
                logger.ErrorException("CreateUserType", ex);
                return(FocusConstants.FocusResultCode.Exception);
            }
            return(FocusConstants.FocusResultCode.Success);
        }
Exemplo n.º 14
0
        public static LoginResult UserLoginBygkey(string gkey, bool RememberMe, HasanEntities database, out UserViewModel userModel)
        {
            LoginResult res = new LoginResult();

            userModel = new UserViewModel();
            try
            {
                if (DoLoginBygkey(gkey, database, out userModel))
                {
                    res.ResponseCode    = FocusConstants.FocusResultCode.Success;
                    res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.Success);
                }
                return(res);
            }
            catch (Exception ex)
            {
                Logger logger = LogManager.GetCurrentClassLogger();
                logger.ErrorException("UserLoginBygkey", ex);
                res.ResponseCode    = FocusConstants.FocusResultCode.Exception;
                res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.Exception);
                return(res);
            }
        }
Exemplo n.º 15
0
        public static bool HasServicePermission(int MenuId, Guid Userakey, HasanEntities database)
        {
            UserViewModel model = new UserViewModel();
            var           user  = database.User.Where(it => it.aKey == Userakey).SingleOrDefault();

            if (user != null)
            {
                model.UserTypeRef = user.UserType.Id;
                var UserTypePermission = database.UserTypePermission.Where(it => it.PermissionRef == MenuId && it.UserTypeRef == model.UserTypeRef).SingleOrDefault();

                if (UserTypePermission != null)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            else
            {
                return(false);
            }
        }
Exemplo n.º 16
0
 public BaseController()
 {
     database = new HasanEntities();
 }
Exemplo n.º 17
0
        private static List <UserTypePermission> GetAllUserTypePermission(int UserTypeRef, HasanEntities database)
        {
            var CurrencyList = database.UserTypePermission.Where(it => it.Denied != 0 && it.UserTypeRef == UserTypeRef).ToList();

            if (CurrencyList != null)
            {
                return(CurrencyList);
            }
            else
            {
                return(null);
            }
        }
Exemplo n.º 18
0
        /// <summary>
        /// Change Next login password
        /// </summary>
        /// <param name="PIN"></param>
        /// <param name="userId"></param>
        /// <param name="database"></param>
        /// <returns></returns>
        public static ProfileResult ChangeNextLoginPassrord(string OldPassword, string NewPassword, string ConfirmPassrord, int userId, HasanEntities database)
        {
            ProfileResult res = new ProfileResult();

            if (string.IsNullOrEmpty(OldPassword))
            {
                res.ResponseCode    = FocusConstants.FocusResultCode.OldPasswordEmpty;
                res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.OldPasswordEmpty);
                return(res);
            }
            if (string.IsNullOrEmpty(NewPassword))
            {
                res.ResponseCode    = FocusConstants.FocusResultCode.NewPasswordEmpty;
                res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.NewPasswordEmpty);
                return(res);
            }
            if (string.IsNullOrEmpty(ConfirmPassrord))
            {
                res.ResponseCode    = FocusConstants.FocusResultCode.ConfirmPasswordEmpty;
                res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.ConfirmPasswordEmpty);
                return(res);
            }
            else if (!IsMatchPassword(OldPassword, userId, database))
            {
                res.ResponseCode    = FocusConstants.FocusResultCode.InvalidOldPassword;
                res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.InvalidOldPassword);
                return(res);
            }
            else if (NewPassword != ConfirmPassrord)
            {
                res.ResponseCode    = FocusConstants.FocusResultCode.NewAndConfirmPasswordMissmatch;
                res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.NewAndConfirmPasswordMissmatch);
                return(res);
            }
            else
            {
                //Regex regex = new Regex(@"" + Core.GlobalProperty.FocusConfUserPasswordFormat);
                //Match match = regex.Match(NewPassword);
                //if (!match.Success)
                //{
                //    res.ResponseCode = FocusConstants.FocusResultCode.InvalidPasswordFormat;
                //    res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.InvalidPasswordFormat);
                //    return res;
                //}
            }
            try
            {
                User entity = database.User.Where(it => it.Id == userId).SingleOrDefault();
                entity.Password = NewPassword;
                entity.ChangePasswordAtNextLogon = false;
                database.SaveChanges();
                res.ResponseCode    = FocusConstants.FocusResultCode.PasswordChangeSuccess;
                res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.PasswordChangeSuccess);
                return(res);
            }
            catch (Exception ex)
            {
                Logger logger = LogManager.GetCurrentClassLogger();
                logger.ErrorException("ChangePassword", ex);
                res.ResponseCode    = FocusConstants.FocusResultCode.Exception;
                res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.Exception);
                return(res);
            }
        }
Exemplo n.º 19
0
        /// <summary>
        /// Match Password
        /// </summary>
        /// <param name="oldPIN"></param>
        /// <param name="userId"></param>
        /// <param name="database"></param>
        /// <returns>boolean</returns>
        private static bool IsMatchPIN(string oldPIN, int userId, HasanEntities database)
        {
            User entity = database.User.FirstOrDefault(it => it.Id == userId & it.PIN == oldPIN);

            return(entity != null);
        }
Exemplo n.º 20
0
 public static User SearchUser(int id, HasanEntities database)
 {
     return(database.User.Where(it => it.Id == id).SingleOrDefault());
 }
Exemplo n.º 21
0
        /// <summary>
        /// User login from controller
        /// </summary>
        /// <param name="email"></param>
        /// <param name="password"></param>
        /// <param name="rememberMe"></param>
        /// <param name="database"></param>
        /// <param name="userModel"></param>
        /// <returns></returns>
        public static LoginResult UserLogin(string email, string password, bool rememberMe, HasanEntities database, out UserViewModel userModel)
        {
            userModel = new UserViewModel();

            LoginResult res = new LoginResult();

            try
            {
                User mem = database.User.Where(it => it.EMail == email && !it.Deleted).FirstOrDefault(); // get data for the user
                if (mem == null)
                {
                    res.ResponseCode    = FocusConstants.FocusResultCode.MemberNotExist;
                    res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.MemberNotExist);
                    return(res);
                }
                if (mem.Password != password) // check user password is valid or not
                {
                    res.ResponseCode    = FocusConstants.FocusResultCode.InvalidPassword;
                    res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.InvalidPassword);
                    return(res);
                }
                if (!mem.Active) // check user activess
                {
                    res.ResponseCode    = FocusConstants.FocusResultCode.MemberIsNotActive;
                    res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.MemberIsNotActive);
                    return(res);
                }

                if (DoLogin(email, password, rememberMe, database, out userModel))
                {
                    // var p = Enum.Parse(typeof(FocusConstants.FocusResultCode), FocusConstants.FocusResultCode.Success.ToString());
                    //res.ResponseCode = (FocusConstants)Enum.Parse(typeof(FocusConstants), FocusConstants.FocusResultCode.Success);
                    res.ResponseCode = FocusConstants.FocusResultCode.Success;

                    res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.Success);
                }


                return(res);
            }
            catch (Exception ex)
            {
                Logger logger = LogManager.GetCurrentClassLogger();
                logger.ErrorException("UserLogin", ex);
                res.ResponseCode    = FocusConstants.FocusResultCode.Exception;
                res.ResponseMessage = FocusMessage.GetResourceResultCodeValue(FocusConstants.FocusResultCode.Exception);
                return(res);
            }
        }
Exemplo n.º 22
0
        /// <summary>
        /// Login from cookie data
        /// </summary>
        /// <param name="username"></param>
        /// <param name="password"></param>
        /// <param name="rememberMe"></param>
        /// <param name="database"></param>
        /// <returns></returns>
        public static bool DoLogin(string username, string password, bool rememberMe, HasanEntities database)
        {
            try
            {
                if (username == null || username.Trim() == "")
                {
                    return(false);
                }
                var user = database.User.Where(it => it.EMail == username && it.Password == password && it.Active && !it.Deleted).SingleOrDefault();

                if (user != null)
                {
                    UserProfileSessionDTO sessionUser = new UserProfileSessionDTO();
                    sessionUser.EMail    = user.EMail;
                    sessionUser.UserId   = user.Id;
                    sessionUser.FullName = user.Name;
                    sessionUser.Password = user.Password;
                    HttpContext.Current.Session["UserSession"] = sessionUser;
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception ex)
            {
                Logger logger = LogManager.GetCurrentClassLogger();
                logger.ErrorException("GetLoggedInUserSession", ex);
                throw ex;
            }
        }