public ErrorsCollection Create(User_UserRolePostModel user_userRolePostModel) { var errors = userRoleValidator.Validate(user_userRolePostModel, context); if (errors != null) { return(errors); } User user = context.Users .FirstOrDefault(u => u.Id == user_userRolePostModel.UserId); if (user != null) { UserRole userRole = context .UserRoles .Include(u_ur => u_ur.User_UserRoles) .FirstOrDefault(ur => ur.Name == user_userRolePostModel.UserRoleName); User_UserRole currentUser_UserRole = context .User_UserRoles .Include(ur => ur.UserRole) .FirstOrDefault(u_ur => u_ur.EndTime == null && u_ur.UserId == user.Id); if (currentUser_UserRole == null) { // context.User_UserRoles.Add(new User_UserRole // { // User = user, // UserRole = userRole, // StartTime = DateTime.Now, // EndTime = null // }); // context.SaveChanges(); return(null); } // aici se inchide perioada de activare pentru un anumit rol if (!currentUser_UserRole.UserRole.Name.Contains(user_userRolePostModel.UserRoleName)) { currentUser_UserRole.EndTime = DateTime.Now; context.User_UserRoles.Add(new User_UserRole { User = user, UserRole = userRole, StartTime = DateTime.Now, EndTime = null }); context.SaveChanges(); return(null); } else { return(null); } } return(null); }
public static User_UserRoleGetModel FromUser_UserRole(User_UserRole user_userRole) { return(new User_UserRoleGetModel { Id = user_userRole.Id, UserId = user_userRole.UserId, UserRoleId = user_userRole.UserRoleId, UserRoleName = user_userRole.UserRole.Name, StartTime = user_userRole.StartTime, EndTime = user_userRole.EndTime }); }