public Models.User GetUser(int id) { using (var db = new SanSilvestreEntities()) { var user = db.User.FirstOrDefault(x => x.UserId == id); if (user != null) { return(new Models.User { UserId = user.UserId, UserName = user.Username, FullName = user.FullName, EmailID = user.EmailID, Password = user.Password, IsActive = user.IsActive ?? false, Roles = user.UserRole.Select(y => new Models.Role { Id = y.Role.Id, Name = y.Role.Name, }).ToList() }); } return(null); } }
public Dictionary <string, string> GetCategoryDescriptions() { using (var db = new SanSilvestreEntities()) { return(db.Competition_Category.OrderBy(x => x.Id).ToDictionary(x => x.Id.ToString(CultureInfo.InvariantCulture), x => x.Description)); } }
public void RemoveUser(int id) { using (var db = new SanSilvestreEntities()) { var currentUser = db.User.FirstOrDefault(x => x.UserId == id); if (currentUser == null) { throw new ApplicationException("Usuario no existe en la base de datos"); } var userRolesRemoved = false; if (currentUser.UserRole.Any()) { db.UserRole.RemoveRange(currentUser.UserRole); userRolesRemoved = true; } db.User.Remove(currentUser); db.SaveChanges(); if (userRolesRemoved) { _logger.Value.Debug(string.Format("Rol del usuario '{0}' eliminado de la base de datos", id)); } _logger.Value.Debug(string.Format("Usuario '{0}' eliminado de la base de datos", id)); } }
public List <DAL.Log> GetLogs(DateTime startDateTime, DateTime endDateTime) { using (var db = new SanSilvestreEntities()) { return(db.Log.Where(x => x.Date >= startDateTime && x.Date <= endDateTime).ToList()); } }
public void RemoveRunner(int id) { using (var db = new SanSilvestreEntities()) { var currentRunner = db.Runner.FirstOrDefault(x => x.Id == id); if (currentRunner == null) { throw new ApplicationException("Corredor no existe en la base de datos"); } var CompetitionDataRemoved = false; if (currentRunner.Competition_Runner.Any()) { db.Competition_Runner.RemoveRange(currentRunner.Competition_Runner); CompetitionDataRemoved = true; } db.Runner.Remove(currentRunner); db.SaveChanges(); if (CompetitionDataRemoved) { _logger.Value.Debug(string.Format("Corredor '{0}' eliminado de la Competicion actual", id)); } _logger.Value.Debug(string.Format("Corredor '{0}' eliminado de la base de datos", id)); } }
public Models.Runner GetRunner(string pDNI) { using (var db = new SanSilvestreEntities()) { var runner = db.Runner.FirstOrDefault(x => x.DNI == pDNI); if (runner != null) { return(new Models.Runner { Id = runner.Id, Name = runner.Name, SurName = runner.SurName, YearBirthday = runner.YearBirthday, Email = runner.Email, DocumentTypeId = runner.DocumentTypeId, Telephone = runner.Telephone, PostalCode = runner.PostalCode, IsLocalRunner = runner.IsLocalRunner ?? false, GenderId = runner.GenderId, DNI = runner.DNI, Club = runner.Club }); } return(null); } }
public Dictionary <string, string> GetGenderDir() { using (var db = new SanSilvestreEntities()) { return(db.Gender.OrderBy(x => x.Id).ToDictionary(x => x.Id.ToString(CultureInfo.InvariantCulture), x => x.Name)); } }
public void DeleteGender(string Id) { using (var db = new SanSilvestreEntities()) { db.Gender.Remove(db.Gender.First(x => x.Id.Equals(Id))); db.SaveChanges(); } }
public void DeleteCategory(int Id) { using (var db = new SanSilvestreEntities()) { db.Category.Remove(db.Category.First(x => x.Id.Equals(Id))); db.SaveChanges(); } }
public override string[] GetRolesForUser(string username) { using (var db = new SanSilvestreEntities()) { var user = db.User.FirstOrDefault(u => u.Username.Equals(username, StringComparison.CurrentCultureIgnoreCase)); return(user == null ? new string[] { } : db.UserRole.Where(ur => ur.User.UserId == user.UserId).Select(ur => ur.Role.Name).ToArray()); } }
public Dictionary <string, string> GetDocumentTypeDir() { using (var db = new SanSilvestreEntities()) { //TODO: Depending on role return different lists return(db.DocumentType.OrderBy(x => x.Id).ToDictionary(x => x.Id.ToString(CultureInfo.InvariantCulture), x => x.Name)); } }
public void EditCategory(int Id, string Name) { using (var db = new SanSilvestreEntities()) { var Cat = db.Category.First(x => x.Id.Equals(Id)); Cat.Name = Name; db.SaveChanges(); } }
public DAL.User GetUpdateUser(WindowsIdentity windowsIdentity) { if (windowsIdentity.User == null) { throw new ArgumentException("The user doesn't exist in the object", "windowsIdentity"); } using (var db = new SanSilvestreEntities()) { var sid = windowsIdentity.User.Value; //var domainUser = UserPrincipal.FindByIdentity(new PrincipalContext(ContextType.Domain, "tp1.ad1.tetrapak.com"), IdentityType.Sid, sid); //if (domainUser == null) throw new ArgumentException("The user is not found in the active directory", "windowsIdentity"); var user = db.User.Include("UserRole").Include("UserRole.Role").FirstOrDefault(u => u.UserId.Equals(1)); if (user == null) { return(new DAL.User { UserId = 0, Username = "******", FullName = "Persona no autorizada", UserRole = new List <UserRole> { new UserRole { RoleId = 99, Role = new Role { Id = 4, Name = "Unauthorized" } } } }); } var userChanged = false; //if (user.UserName != domainUser.SamAccountName) //{ // userChanged = true; // _logger.Value.Debug(string.Format("User '{0}' ({1}) changed user name from '{2}' to '{3}'", user.UserId, user.Username)); // user.UserName = domainUser.SamAccountName; //} //if (user.DisplayName != domainUser.Name) //{ // userChanged = true; // _logger.Value.Debug(string.Format("User '{0}' ({1}) changed name from '{2}' to '{3}'", user.UserId, user.Username)); // user.DisplayName = domainUser.Name; //} if (userChanged) { db.SaveChanges(); _logger.Value.Debug(string.Format("User '{0}' ({1}) updated with new information", user.UserId, user.Username)); } return(user); } }
public override bool IsUserInRole(string username, string roleName) { using (var db = new SanSilvestreEntities()) { var user = db.User.FirstOrDefault(u => u.Username.Equals(username, StringComparison.CurrentCultureIgnoreCase)); return(user != null && user.UserRole != null && user.UserRole.Count > 0 && user.UserRole.Any(ur => ur.Role.Name == Enums.Roles.Developer.ToString() || ur.Role.Name == roleName)); } }
public List <Models.MyCategoriesDescriptions> GetAllCategories() { using (var db = new SanSilvestreEntities()) { var data = db.Competition_Category.Select(x => new Models.MyCategoriesDescriptions { Id = x.Id, Description = x.Description }).ToList(); return(data); } }
public IEnumerable <Models.Gender> GetAllGenders() { using (var db = new SanSilvestreEntities()) { var data = db.Gender.Select(x => new SanSil.BLL.Gender.Models.Gender { Id = x.Id, Name = x.Name }).ToArray(); return(data); } }
public void AddCategory(string CatName) { using (var db = new SanSilvestreEntities()) { db.Category.Add(new DAL.Category { Id = 0, Name = CatName }); db.SaveChanges(); } }
public IEnumerable <Models.Categories> GetAllCategories() { using (var db = new SanSilvestreEntities()) { var data = db.Category.Select(x => new SanSil.BLL.Category.Models.Categories { Id = x.Id, Name = x.Name }).ToArray(); return(data); } }
public void AddGender(string Id) { using (var db = new SanSilvestreEntities()) { var gender = GetGenderData(Id); db.Gender.Add(new DAL.Gender { Id = gender.Id, Name = gender.Name }); db.SaveChanges(); } }
public Models.Gender GetGenderData(string Id) { using (var db = new SanSilvestreEntities()) { var gender = db.Gender.FirstOrDefault(x => x.Id == Id); if (gender != null) { return(new Models.Gender { Id = gender.Id, Name = gender.Name, }); } return(null); } }
public Models.Categories GetCategoryData(int Id) { using (var db = new SanSilvestreEntities()) { var Category = db.Category.FirstOrDefault(x => x.Id == Id); if (Category != null) { return(new Models.Categories { Id = Category.Id, Name = Category.Name, }); } return(null); } }
public List <Models.User> GetUsers() { using (var db = new SanSilvestreEntities()) { return(db.User .Select(x => new Models.User { UserId = x.UserId, UserName = x.Username, FullName = x.FullName, EmailID = x.EmailID, Password = x.Password, IsActive = x.IsActive ?? false, Roles = x.UserRole.Select(y => new Models.Role { Id = y.Role.Id, Name = y.Role.Name, }).ToList(), }).ToList()); } }
public List <Models.Position> GetAllRunners(int vCategoryId) { using (var db = new SanSilvestreEntities()) { var vCategoryData = db.Competition_Category.FirstOrDefault(x => x.Id == vCategoryId); if (vCategoryData != null) { var data = db.Competition_Runner .Include("Runner") .Where(z => z.CompetitionId == vCategoryData.CompetitionId && z.CategoryId == vCategoryData.CategoryId && z.GenderId == vCategoryData.GenderId) .OrderBy(y => y.PositionId) .Select(x => new Models.Position { Id = x.Id, CompetitionId = x.CompetitionId, PositionId = x.PositionId, GeneralPosition = x.GeneralPosition, Dorsal = x.Dorsal, RunnerId = x.RunnerId, RunnerName = x.Runner.Name, RunnerSurName = x.Runner.SurName, Club = x.Runner.Club, Elapsed_Time = x.Elapsed_Time, CategoryId = x.CategoryId, GenderId = x.GenderId }).ToList(); return(data); } else { return(null); } } }
public int SaveRunner(Models.Runner RunModel) { //TODO: Mapper var runner = new DAL.Runner { Id = RunModel.Id, Name = RunModel.Name, SurName = RunModel.SurName, Email = RunModel.Email, DocumentTypeId = RunModel.DocumentTypeId, Telephone = RunModel.Telephone, PostalCode = RunModel.PostalCode, IsLocalRunner = RunModel.IsLocalRunner, GenderId = RunModel.GenderId, DNI = RunModel.DNI.ToUpper(), Club = RunModel.Club, YearBirthday = RunModel.YearBirthday, }; using (var db = new SanSilvestreEntities()) { if (runner.Id == 0) { //Add if (db.Runner.Any(x => x.Id == runner.Id)) { throw new ApplicationException("El corredor ya existe en la base de datos (Mismo Id)"); } db.Runner.Add(runner); //var data = db. var pCategory = db.Competition_Category.SingleOrDefault(p => p.CompetitionId == 1 && p.GenderId == RunModel.GenderId && p.YearFrom <= RunModel.YearBirthday && p.YearTo >= RunModel.YearBirthday); var runnerCompetition = new DAL.Competition_Runner { Id = RunModel.Id, RunnerId = RunModel.Id, CompetitionId = 1, CategoryId = pCategory.CategoryId, Dorsal = RunModel.Dorsal, ElapsedTime = null, PositionId = 0, GeneralPosition = 0, GenderId = RunModel.GenderId, }; db.Competition_Runner.Add(runnerCompetition); db.SaveChanges(); _logger.Value.Debug(string.Format("Corredor '{0}' añadido a la base de datos", runner.Id)); } else { //Edit var currentRunner = db.Runner.FirstOrDefault(x => x.Id == runner.Id); if (currentRunner == null) { throw new ApplicationException("El corredor no existe en la base de datos"); } var RunnerChanged = true; //var roleIds = runner.UserRole.Select(x => x.RoleId).ToList(); //var currentRoleIds = currentRunner.UserRole.Select(x => x.RoleId).ToList(); ////Delete roles not used //if (currentRunner.UserRole.Any(x => !roleIds.Contains(x.RoleId))) //{ // RunnerChanged = true; // db.UserRole.RemoveRange(currentRunner.UserRole.Where(x => !roleIds.Contains(x.RoleId))); //} ////Add new roles //if (runner.UserRole.Any(x => !currentRoleIds.Contains(x.RoleId))) //{ // RunnerChanged = true; // runner.UserRole.Where(x => !currentRoleIds.Contains(x.RoleId)).ToList().ForEach(x => db.UserRole.Add(new UserRole // { // RoleId = x.RoleId, // UserId = runner.UserId // })); //} if (RunnerChanged) { db.SaveChanges(); _logger.Value.Debug(string.Format("User '{0}' updated in database", runner.Id)); } } } return(runner.Id); }
//public Dictionary<string, int> GetUserIdDir() //{ // using (var db = new SanSilvestreEntities()) // { // return db.User.ToDictionary(x => x.Sid, x => x.Id); // } //} public int SaveUser(Models.User UserModel) { //TODO: Mapper var user = new DAL.User { UserId = UserModel.UserId, Username = UserModel.UserName, FullName = UserModel.FullName, Password = UserModel.Password, EmailID = UserModel.EmailID, IsActive = UserModel.IsActive, UserRole = UserModel.Roles.Select(x => new UserRole { RoleId = x.Id, UserId = UserModel.UserId }).ToList(), }; using (var db = new SanSilvestreEntities()) { if (user.UserId == 0) { //Add if (db.User.Any(x => x.UserId == user.UserId)) { throw new ApplicationException("The user already exist in the database (same SID)"); } db.User.Add(user); db.UserRole.AddRange(user.UserRole); db.SaveChanges(); _logger.Value.Debug(string.Format("User '{0}' added to database", user.UserId)); } else { //Edit var currentUser = db.User.FirstOrDefault(x => x.UserId == user.UserId); if (currentUser == null) { throw new ApplicationException("The user doesn't exist in the database"); } var userChanged = false; var roleIds = user.UserRole.Select(x => x.RoleId).ToList(); var currentRoleIds = currentUser.UserRole.Select(x => x.RoleId).ToList(); //Update from domain //if (currentUser.UserName != domainUser.SamAccountName) //{ // userChanged = true; // currentUser.UserName = domainUser.SamAccountName; //} //if (currentUser.DisplayName != domainUser.Name) //{ // userChanged = true; // currentUser.DisplayName = domainUser.Name; //} //Delete roles not used if (currentUser.UserRole.Any(x => !roleIds.Contains(x.RoleId))) { userChanged = true; db.UserRole.RemoveRange(currentUser.UserRole.Where(x => !roleIds.Contains(x.RoleId))); } //Add new roles if (user.UserRole.Any(x => !currentRoleIds.Contains(x.RoleId))) { userChanged = true; user.UserRole.Where(x => !currentRoleIds.Contains(x.RoleId)).ToList().ForEach(x => db.UserRole.Add(new UserRole { RoleId = x.RoleId, UserId = user.UserId })); } ////Delete companies not used //if (currentUser.UserCompany.Any(x => !companyIds.Contains(x.CompanyId))) //{ // userChanged = true; // db.UserCompany.RemoveRange(currentUser.UserCompany.Where(x => !companyIds.Contains(x.CompanyId))); //} ////Add new roles //if (user.UserCompany.Any(x => !currentCompanyIds.Contains(x.CompanyId))) //{ // userChanged = true; // user.UserCompany.Where(x => !currentCompanyIds.Contains(x.CompanyId)).ToList().ForEach(x => db.UserCompany.Add(new UserCompany // { // CompanyId = x.CompanyId, // UserId = user.Id // })); //} if (userChanged) { db.SaveChanges(); _logger.Value.Debug(string.Format("User '{0}' updated in database", user.UserId)); } } } return(user.UserId); }