public IEnumerable<Termination> GetEmployeesTerminatedByUser(ApplicationUser User) { IEnumerable<Termination> terminations; if (User != null & !User.CompaniesRole.Contains("null")) { JavaScriptSerializer js = new JavaScriptSerializer(); List<int> companiesList = js.Deserialize<List<int>>(User.CompaniesRole); terminations = from ter in terminateRepository.GetMany(te => companiesList.Contains(te.Employee.CompanyId)) select ter; return terminations; } return terminations = terminateRepository.GetAll(); }
public IEnumerable<Company> GetCompaniesByUser(ApplicationUser User) { IEnumerable<Company> companies; if(User != null & !User.CompaniesRole.Contains("null")) { JavaScriptSerializer js = new JavaScriptSerializer(); List<int> companiesList = js.Deserialize<List<int>>(User.CompaniesRole); companies = from c in companyRepository.GetMany(co => companiesList.Contains(co.Id)) select c; return companies; } return companies = companyRepository.GetAll(); }
} } public class LoginViewModel { //[Required(ErrorMessage="Nhập Email")] //[Display(Name = "Email")] //public string Email { get; set; } [Required(ErrorMessage = "Nhập Tên")] [Display(Name = "User name")] public string UserName { get; set; } [Required(ErrorMessage="Nhập mật khẩu")] [DataType(DataType.Password)] [Display(Name = "Password")] public string Password { get; set; } bool? rememberMe; [Display(Name = "Ghi nhớ ?")] public bool? RememberMe { get { return rememberMe ?? false; } set { rememberMe = value; } } } public class EditUserViewModel { public EditUserViewModel() { } // Allow Initialization with an instance of ApplicationUser: public EditUserViewModel(ApplicationUser user) { this.UserName = user.UserName; this.FirstName = user.FirstName; this.LastName = user.LastName; this.Email = user.Email; this.RoleId = user.RoleId; } [Required(ErrorMessage="Nhập tên đăng nhập")] [Display(Name = "Tên đăng nhập")] public string UserName { get; set; } [Required(ErrorMessage="Nhập tên")] [Display(Name = "Tên")] public string FirstName { get; set; } [Required(ErrorMessage="Nhập họ")] [Display(Name = "Họ")] public string LastName { get; set; } [Required(ErrorMessage="Nhập Email")] [EmailAddress(ErrorMessage="Email không đúng")] [Display(Name = "Email")] public string Email { get; set; } [Required(ErrorMessage="Nhập mật khẩu")] [StringLength(100, ErrorMessage = "Mật khẩu {0} phải ít nhất {2} ký tự.", MinimumLength = 6)] [DataType(DataType.Password)] [Display(Name = "Mật khẩu")] public string Password { get; set; } [DataType(DataType.Password)] [Display(Name = "Xác nhận mật khẩu")] [Compare("Password", ErrorMessage = "Mật khẩu và xác nhận mật khẩu không khớp.")] public string ConfirmPassword { get; set; } [Display(Name = "Quyền")] [Required(ErrorMessage="Chọn một quyền")] public string RoleId { get; set; } public List<ApplicationRole> Roles { get; set; } public List<Company> CompanyList { get; set; }
using Microsoft.AspNet.Identity.EntityFramework; using System.ComponentModel.DataAnnotations; using System.Collections.Generic; using HNGHRMS.Model.Models; namespace HNGHRMS.Web.Models { public class ManageUserViewModel { [Display(Name = "Tên đăng nhập")] public string UserName { get; set; } [Display(Name = "Tên")] public string FirstName { get; set; } [Display(Name = "Họ")] public string LastName { get; set; } [Display(Name = "Quyền")] public string RoleId { get; set; } [Display(Name = "Email")] public string Email { get; set; } [Required] [StringLength(100, ErrorMessage = "{0} Phải ít nhất {2} số ký tự", MinimumLength = 6)] [DataType(DataType.Password)] [Display(Name = "Mật khẩu")] public string NewPassword { get; set; } [DataType(DataType.Password)] [Display(Name = "Xác nhận mật khẩu")] [Compare("NewPassword", ErrorMessage = "Xác nhận mật khẩu không đúng với mật khẩu.")] public string ConfirmPassword { get; set;} public IList<Company> CompaniesList { get; set;} public ManageUserViewModel(ApplicationUser user) { UserName = user.UserName; FirstName = user.FirstName; LastName = user.LastName; Email = user.Email; NewPassword = ""; ConfirmPassword = ""; RoleId = user.RoleId; }
public ActionResult UserAccountAdd(EditUserViewModel item) { int[] companySelected = CheckBoxListExtension.GetSelectedValues<int>("CompaniesCheckboxList"); JavaScriptSerializer js = new JavaScriptSerializer(); string jsonCompanies = js.Serialize(companySelected); if (ModelState.IsValid) { var user = new ApplicationUser() { UserName = item.UserName, Email = item.Email, LastName = item.LastName, FirstName = item.FirstName, CompaniesRole = jsonCompanies, RoleId = item.RoleId }; try { var result1 = UserManager.Create(user, item.Password); if(result1.Succeeded) { var result2 = UserManager.AddToRole(user.Id, user.RoleId); if (result2.Succeeded) { return Json(new { status = "Succeeded", messeage = "OK" }); } else { return Json(new { status = "Fail", messeage = result2.Errors.FirstOrDefault() }); } } else { string message = result1.Errors.FirstOrDefault(); if (message.Contains("is already taken")) { return Json(new { status = "Fail", messeage = "Người dùng " + user.UserName + " đã tồn tại trên hệ thống"}); } else { return Json(new { status = "Fail", messeage = message }); } } } catch (Exception ex) { return Json(new { status = "Fail", messeage = ex.Message}); } } else { return Json(new { status = "Fail", messeage = "Kiểm tra nhập liệu" }); } }
private async Task SignInAsync(ApplicationUser user, bool isPersistent) { AuthenticationManager.SignOut(DefaultAuthenticationTypes.ExternalCookie); var identity = await UserManager.CreateIdentityAsync(user, DefaultAuthenticationTypes.ApplicationCookie); AuthenticationManager.SignIn(new AuthenticationProperties() { IsPersistent = isPersistent }, identity); }
public void UpdateUser(ApplicationUser user) { userRepository.Update(user); SaveUser(); }