Exemplo n.º 1
0
        public ActionResult Edit(int id)
        {
            var model = new UserViewModel();

            if (id != -1)
            {
                var svc = new UserAppService();
                var o = svc.GetUser(id);
                model.UserId = o.UserId;
                model.UserName = o.UserName;
                model.LastLoginDateText = CommonHelper.GetPrettyDate(o.LastLoginDate); 
                model.HasChangePassword = o.HasChangePassword;
                model.UserStateId = o.UserStateId;
                model.UserStates = GetUserStates();
                model.UserRoles = o.UserRoles.ToList();


            }
            else
            {
                model.UserId = -1;
                model.UserName = string.Empty;
                model.LastLoginDateText = CommonHelper.GetPrettyDate(null);
                model.HasChangePassword = true;
                model.UserStates = GetUserStates();
            }



            return View(model);
        }
Exemplo n.º 2
0
        public ActionResult ChangePassword(ChangePasswordViewModel model)
        {




            if (WebHelper.VerifyCurrentPassword(model.OldPassword))
            {
                var svc = new UserAppService();
                var usr = svc.GetUserByName(HealthAuthentication.SessionInfo.UserName);
                string newsalt;
                usr.Password = WebHelper.EncryptPassword(model.NewPassword, out newsalt);
                usr.Salt = newsalt;
                svc.SaveUser(usr);



                ViewBag.Error = "0";
            }
            else
            {
                ViewBag.Error = "1";
            }




            return View(model);
        }
Exemplo n.º 3
0
        public static bool ExistUserName(string userName)
        {
            var svc = new UserAppService();
            var usr = svc.GetUserByName(userName);
            return usr != null;


        }
        public async Task Should_Reset_Permissions()
        {
            //Arrange
            var admin = await GetUserByUserNameAsync(User.AdminUserName);

            UsingDbContext(
                context => context.UserPermissions.Add(
                    new UserPermissionSetting
            {
                TenantId  = AbpSession.TenantId,
                UserId    = admin.Id,
                Name      = AppPermissions.Pages_Administration_Roles,
                IsGranted = false
            }));

            //Act
            await UserAppService.ResetUserSpecificPermissions(new EntityDto <long>(admin.Id));

            //Assert
            (await UsingDbContextAsync(context => context.UserPermissions.CountAsync(p => p.UserId == admin.Id))).ShouldBe(0);
        }
Exemplo n.º 5
0
 public TokenAuthController(
     LogInManager logInManager,
     ITenantCache tenantCache,
     AbpLoginResultTypeHelper abpLoginResultTypeHelper,
     TokenAuthConfiguration configuration,
     IExternalAuthConfiguration externalAuthConfiguration,
     IExternalAuthManager externalAuthManager,
     UserRegistrationManager userRegistrationManager,
     UserAppService userAppService,
     SessionAppService sessionAppService)
 {
     _logInManager              = logInManager;
     _tenantCache               = tenantCache;
     _abpLoginResultTypeHelper  = abpLoginResultTypeHelper;
     _configuration             = configuration;
     _externalAuthConfiguration = externalAuthConfiguration;
     _externalAuthManager       = externalAuthManager;
     _userRegistrationManager   = userRegistrationManager;
     _userAppService            = userAppService;
     _sessionAppService         = sessionAppService;
 }
Exemplo n.º 6
0
        public ActionResult Auth(string userName, string password) {
            var wa = new WebAuthenticator();
            var result = wa.Authenticate(userName, password);
            var maxTry = 3;

            string salt;
            var pwd = WebHelper.EncryptPassword(password, out salt);

            if (!result){
                var userSvc = new UserAppService();
                var user = userSvc.GetUserByName(userName);

                if (user != null){
                    if (user.UserStateId == 3) return this.Json("BLOCKED");
                    this.Session["AccessTryCounter"] = user.TryAccessCount;
                    var counter = Convert.ToInt32(this.Session["AccessTryCounter"]);
                    this.Session["AccessTryCounter"] = counter + 1;
                    counter = Convert.ToInt32(this.Session["AccessTryCounter"]);
                    if (counter >= maxTry){
                        WebHelper.UpdateUserTryCounter(userName, counter);
                        WebHelper.UpdateUserState(userName, 3); //Block User 
                        new BuildRecord().Add(user, 2);
                        return this.Json("BLOCKED");
                    }

                    WebHelper.UpdateUserTryCounter(userName, counter);
                }
            } else{
                var userSvc = new UserAppService();
                var user = userSvc.GetUserByName(userName);
                if (user.UserStateId == 3) return this.Json("BLOCKED");
                WebHelper.UpdateUserTryCounter(userName, 0);
                this.Session["LastLoginDate"] = user.LastLoginDate;
                WebHelper.UpdateLastLoginDate(user.UserId);
                this.Session["AccessTryCounter"] = 0;
                new BuildRecord().Add(user, 1);
            }

            return this.Json(result ? "OK" : string.Empty);
        }
Exemplo n.º 7
0
        public async Task <ActionResult> Registration(RegisterModel model)
        {
            await SetInitialDataAsync();

            if (ModelState.IsValid)
            {
                UserDTO userDto = new UserDTO
                {
                    Email     = model.Email,
                    Password  = model.Password,
                    FirstName = model.FirstName,
                    LastName  = model.LastName,
                    Login     = model.Login,
                    UserRole  = UserRoleDTO.User
                };
                try
                {
                    _userService.CreateUser(userDto);
                }
                catch
                {
                    ViewBag.Error = "Cannot register this user";
                    return(View(model));
                }
                OperationDetails operationDetails = await UserAppService.Create(userDto);

                if (operationDetails.Succedeed)
                {
                    return(View("SuccessRegister"));
                }
                else
                {
                    ModelState.AddModelError(operationDetails.Property, operationDetails.Message);
                }
            }
            return(View(model));
        }
Exemplo n.º 8
0
 public override void OnActionExecuting(ActionExecutingContext filterContext)
 {
     if (!HttpContext.Current.User.Identity.IsAuthenticated)
     {
         //if (!HttpContext.Current.Response.IsRequestBeingRedirected)
         //    filterContext.HttpContext.Response.Redirect("/Login/Index");
     }
     else
     {
         var database = (SettingData)filterContext.HttpContext.Session["UserDataBase"];
         if (database == null)
         {
             var                email               = HttpContext.Current.User.Identity.Name;
             UserAppService     _userservice        = new UserAppService();
             SettingDataService _settingdataservice = new SettingDataService();
             var                user = _userservice.Get(x => x.Email.Trim() == email);
             var                data = _settingdataservice.Get(x => x.UserId == user.Id);
             filterContext.HttpContext.Session["UserDataBase"] = data;
             filterContext.HttpContext.Session["UserAccount"]  = user;
             _userservice.Dispose();
             _settingdataservice.Dispose();
         }
     }
 }
        public ActionResult Edit(int id)
        {

            if (!System.IO.File.Exists(Server.MapPath("~/Employee_Files/" + id + "/")))
            {
                Directory.CreateDirectory(Server.MapPath("~/Employee_Files/" + id + "/"));
            }
             



            var model = new EmployeeViewModel();

            /********************************************/
            var userList = new List<User>();
            var userSvc = new UserAppService();
            model.EmployeeTypes = new EmployeeTypeAppService().GetAllEmployeeType(); 


            /********************************************/

            if (id != -1)
            {
                
                 var svc = new EmployeeAppService(); 
                var o = svc.GetEmployee(id);
                userList = userSvc.GetAllAvailableUserIncludeCurrent(o.UserId);
               

             
                model.UserId = o.UserId;
                model.FullName = o.FullName;
                model.EmployeeId = o.EmployeeId;
                model.EMail = o.EMail;
                model.Phone = o.Phone;
                model.Mobile = o.Mobile;
                model.EmployeeTypeId = o.EmployeeTypeId;
                model.Photo = o.Photo;
                var blankPath = Server.MapPath("~/Content/images/Photos/blank-user.jpg");
                if (!String.IsNullOrEmpty(o.Photo) )
                {
                    var imagePath = Server.MapPath("~/Employee_Files/" + o.EmployeeId + "/" + o.Photo);
                    if (!System.IO.File.Exists(imagePath)) imagePath = blankPath;
                    byte[] image =
                        System.IO.File.ReadAllBytes(imagePath);
                    var base64 = Convert.ToBase64String(image);
                    var imgSrc = String.Format("data:image/png;base64,{0}", base64);
                    model.PhotoEncodeSource = "<img src=\"" + imgSrc + "\" class=\"photo-image\"/>";
                }
                else
                {
                    byte[] image =
                        System.IO.File.ReadAllBytes(blankPath);
                    var base64 = Convert.ToBase64String(image);
                    var imgSrc = String.Format("data:image/png;base64,{0}", base64);
                    model.PhotoEncodeSource = "<img src=\"" + imgSrc + "\" class=\"photo-image\"/>";
                }



                model.UserList = userList;

            }
            else // Is New
            {

                userList = userSvc.GetAllAvailableUser();
                model.UserId = -1;
                model.FullName = string.Empty;
                model.EmployeeId = -1;
                model.EmployeeTypeId = -1;
                model.EMail = string.Empty;
                model.Phone = string.Empty;
                model.Mobile = string.Empty;
                model.UserList = userList;

            }



            return View(model);
        }
Exemplo n.º 10
0
        public ActionResult Index()
        {
            var model = new EmployeeViewModel();

            var userSvc = new UserAppService();
            var usr = userSvc.GetUserByName(HealthAuthentication.SessionInfo.UserName);

            var employee = usr.Employees.SingleOrDefault();

            var svc = new EmployeeAppService();
            var o = svc.GetEmployee(employee.EmployeeId);

            model.UserId = o.UserId;
            model.FullName = o.FullName;
            model.EmployeeId = o.EmployeeId;
            model.EMail = o.EMail;
            model.Phone = o.Phone;
            model.Mobile = o.Mobile;
            model.Photo = o.Photo;
            var blankPath = Server.MapPath("~/Content/images/Photos/blank-user.jpg");
            if (!String.IsNullOrEmpty(o.Photo))
            {
                var imagePath = Server.MapPath("~/Employee_Files/" + o.EmployeeId + "/" + o.Photo);
                if (!System.IO.File.Exists(imagePath)) imagePath = blankPath;
                byte[] image =
                    System.IO.File.ReadAllBytes(imagePath);
                var base64 = Convert.ToBase64String(image);
                var imgSrc = String.Format("data:image/png;base64,{0}", base64);
                model.PhotoEncodeSource = "<img src=\"" + imgSrc + "\" class=\"photo-image\"/>";
            }
            else
            {
                byte[] image =
                    System.IO.File.ReadAllBytes(blankPath);
                var base64 = Convert.ToBase64String(image);
                var imgSrc = String.Format("data:image/png;base64,{0}", base64);
                model.PhotoEncodeSource = "<img src=\"" + imgSrc + "\" class=\"photo-image\"/>";
            }










            return View(model);
        }
Exemplo n.º 11
0
        public ActionResult Index(EmployeeViewModel model)
        {



            var userSvc = new UserAppService();
            var usr = userSvc.GetUserByName(HealthAuthentication.SessionInfo.UserName);
            var employee = usr.Employees.SingleOrDefault();

            try
            {

                var svc = new EmployeeAppService();
                var o = svc.GetEmployee(model.EmployeeId);
                o.EmployeeId = employee.EmployeeId;
                o.FullName = model.FullName;
                o.EmployeeId = model.EmployeeId;
                o.EMail = model.EMail;
                o.Phone = model.Phone;
                o.Mobile = model.Mobile;
                o.Photo = model.Photo;

                svc.SaveEmployee(o);
                ViewBag.Feed = 0;

            }
            catch (Exception)
            {
                ViewBag.Feed = 1;

            }


            return View(model);
        }
Exemplo n.º 12
0
        public DataTablesResult<UserViewModel> GetAllUsers(DataTablesParam dataTableParam)
        {
            var roleList = CommonHelper.GetRoles();
            var svc = new UserAppService();
            var users = svc.GetAllUser();
            var usersVm = new List<UserViewModel>();
            foreach (var itm in users)
            {

                var itmVm = new UserViewModel
                {


                    UserName = itm.UserName,
                    UserStateName = itm.UserState.Description,

                    
                    UserId = itm.UserId,


                };

                
                var roleNames="  ";//2
                foreach (var rol in itm.UserRoles)
                {
                    var r1 = rol;
                    var r = roleList.SingleOrDefault(l => l.RoleId == r1.RoleId);
                    Debug.Assert(r != null, "r != null");
                    roleNames += r.Name + ", ";

                }
                itmVm.RoleNames = roleNames.Remove(roleNames.Length - 2); //2


                var employee = itm.Employees.SingleOrDefault();
                if (employee != null)
                {
                    itmVm.EmployeeName = employee.FullName;
                }
                else
                {
                    itmVm.EmployeeName = "No Asignado";
                }
                var lld = itm.LastLoginDate;

                itmVm.LastLoginDateText = CommonHelper.GetPrettyDate(lld);

                var sb = new StringBuilder();

                string editUrl = Url.Action("Edit", "User");
                sb.AppendLine("<div class=\"btn-group\">");
                sb.AppendLine(
                    "<button type=\"button\" class=\"btn btn-default dropdown-toggle\" data-toggle=\"dropdown\" aria-expanded=\"false\">");
                sb.AppendLine("Acciones <span class=\"caret\"></span>");
                sb.AppendLine("</button>");
                sb.AppendLine("<ul class=\"dropdown-menu\" role=\"menu\">");
                sb.AppendLine("<li><a href=\"" + editUrl + "?id=-1\"><i class=\"fa fa-plus\"></i>&nbsp;Nuevo Usuario</a></li>");
                sb.AppendLine("<li><a href=\"" + editUrl + "?id=" + itmVm.UserId + "\"><i class=\"fa fa-edit\"></i>&nbsp;Editar " + itmVm.UserName + "</a></li>");
                sb.AppendLine("</ul>");
                sb.AppendLine("</div>");







                var actionButton = sb.ToString();

                itmVm.ActionButton = actionButton;
                usersVm.Add(itmVm);

            }

            var usersVmQueryable = usersVm.AsQueryable();


            return DataTablesResult.Create(usersVmQueryable, dataTableParam);

        }
Exemplo n.º 13
0
 public static void UpdateUserState(string userName, int userStateId) {
     var svc = new UserAppService();
     var user = svc.GetUserByName(userName);
     user.UserStateId = userStateId;
     svc.SaveUser(user);
 }
Exemplo n.º 14
0
 public static void UpdateLastLoginDate(int userId) {
     var svc = new UserAppService();
     var usr = svc.GetUser(userId);
     usr.LastLoginDate = DateTime.Now;
     svc.SaveUser(usr);
 }
Exemplo n.º 15
0
 public TokenAuthController(UserAppService userAppService)
 {
     _userAppService = userAppService;
 }
Exemplo n.º 16
0
 public static void UpdateUserTryCounter(string userName, int accessTryCount) {
     var svc = new UserAppService();
     var user = svc.GetUserByName(userName);
     user.TryAccessCount = accessTryCount;
     svc.SaveUser(user);
 }
Exemplo n.º 17
0
 public FileController()
 {
     FileAppService = new FileAppService();
     UserAppService = new UserAppService();
 }
Exemplo n.º 18
0
        public static bool VerifyCurrentPassword(string password) {
            var svc = new UserAppService();
            var user = svc.GetUserByName(HealthAuthentication.SessionInfo.UserName);
            if (user == null) return false;

            return VerifyPassword(user.Salt, user.Password, password);
        }
Exemplo n.º 19
0
        public ActionResult Edit(UserViewModel model)
        {
            model.UserStates = GetUserStates(); //Reload List For Clean Model

            try
            {
                var svc = new UserAppService();

                var o = new User
                {
                    UserName = model.UserName,
                    
                    UserStateId = model.UserStateId,
                    HasChangePassword = model.HasChangePassword


                };
                if (model.UserId == -1)
                {
                    string salt;
                    var hashedPassword = WebHelper.EncryptPassword(model.Password, out salt);
                    o.Password = hashedPassword;
                    o.Salt = salt;
                }
                else
                {
                    if (String.IsNullOrEmpty(model.Password))
                    {
                        var ousr = new UserAppService().GetUser(model.UserId);

                        o.Password = ousr.Password;
                        o.Salt = ousr.Salt;

                    }
                    else
                    { //GetCurrentData
                        string salt;
                        var hashedPassword = WebHelper.EncryptPassword(model.Password, out salt);
                        o.Password = hashedPassword;
                        o.Salt = salt;
                        
                    }

                }


                if (model.UserId == -1)
                {

                    if(CommonHelper.ExistUserName(model.UserName))
                    {
                        ViewBag.Feed = 2;
                        return View(model);

                    }

                    o.LastLoginDate = DateTime.Now;
                    o.AccessCount = 0;
                    o.TryAccessCount = 0;
                   var userId= svc.AddUser(o);

                    var svcUserRole = new UserRoleAppService();

                    var roles = model.AssignedUserRole.Split(',');
                    foreach (var r in roles)
                    {
                        svcUserRole.AddUserRole(new UserRole { RoleId = Convert.ToInt32(r), UserId = userId });

                    }
                    

                    
                    ViewBag.Feed = 0;
                }
                else
                {
                    o.UserId = model.UserId;
                    o.LastLoginDate = DateTime.Now;
                    if (model.IsDeleteAction == 0)
                    {

                        svc.SaveUser(o);


                        var svcUserRole = new UserRoleAppService();
                        svcUserRole.RemoveUserRoleByUserId(o.UserId);
                        var roles = model.AssignedUserRole.Split(',');
                        foreach (var r in roles)
                        {
                            svcUserRole.AddUserRole(new UserRole { RoleId = Convert.ToInt32(r), UserId = o.UserId });

                        }

                        var eusr = new UserAppService().GetUser(model.UserId);
                        model.UserRoles = eusr.UserRoles.ToList();

                    }
                    else
                    {
                        var svcUserRole = new UserRoleAppService();
                        svcUserRole.RemoveUserRoleByUserId(o.UserId);
                        svc.RemoveUser(model.UserId);
                        model.UserRoles = new List<UserRole>();
                    }
                    ViewBag.Feed = 0;
                }
            }
            catch (Exception)
            {
                ViewBag.Feed = 1;

            }
      
            return View(model);
        }