public void Create(DalUser e) { if (context.Database.Connection.State != ConnectionState.Open) context.Database.Connection.Open(); Users user = new Users() { Login = e.Login, Email = e.Email, PasswordHash = e.PasswordHash, FirstName = e.FirstName, SecondName = e.SecondName, ThirdName = e.ThirdName }; context.Set<Users>().Add(user); }
public DalUsersTest GetLastResult(DalUser user) { if (context.Database.Connection.State != ConnectionState.Open) context.Database.Connection.Open(); UsersTests result = context.Set<UsersTests>().Where(tests => tests.UserId == user.Id).OrderByDescending(tests => tests.BeginningTime).FirstOrDefault(); return new DalUsersTest() { BeginningTime = result.BeginningTime, EndingTime = result.EndingTime, Id = result.id, MarkForTest = result.MarkForTest, RightAnswersCount = result.RightAnswersCount, TestId = result.TestId, UserId = result.UserId }; }
public void FinishTest(DalUser user) { if (!IsUserTested(user)) return; Users ormuser = context.Set<Users>().FirstOrDefault(users => users.id == user.Id); UsersTests ormutest = context.Set<UsersTests>().FirstOrDefault(tests => tests.UserId == user.Id && tests.EndingTime == null); Tests ormtest = context.Set<Tests>().FirstOrDefault(tests => tests.id == ormutest.TestId); //marks and other stuff will be in bll ormutest.EndingTime = DateTime.Now; }
public void StartTest(DalUser user, DalTest test) { if (IsUserTested(user)) return; Users ormuser = context.Set<Users>().FirstOrDefault(users => users.id == user.Id); Tests ormtest = context.Set<Tests>().FirstOrDefault(tests => tests.id == test.Id); UsersTests startingTest = new UsersTests() { TestId = ormtest.id, BeginningTime = DateTime.Now, EndingTime = null, MarkForTest = null, RightAnswersCount = null, UserId = ormuser.id }; context.Set<UsersTests>().Add(startingTest); }
public bool IsUserTested(DalUser user) { if (context.Database.Connection.State != ConnectionState.Open) context.Database.Connection.Open(); return context.Set<UsersTests>().Any(tests => tests.EndingTime == null && tests.UserId == user.Id); }
public void SetCoauthor(DalUser user, DalTest test) { context.Database.Connection.Open(); Users ormuser = context.Set<Users>().FirstOrDefault(users => users.id == user.Id); Tests ormtest = context.Set<Tests>().FirstOrDefault(tests => tests.id == test.Id); ormtest.CoAuthors.Add(ormuser); }
public bool AllowedUser(DalTest test, DalUser user) { if (context.Database.Connection.State != ConnectionState.Open) context.Database.Connection.Open(); Users ormuser = context.Set<Users>().FirstOrDefault(users => users.id == user.Id); Tests ormtest = context.Set<Tests>().FirstOrDefault(tests => tests.id == test.Id); return ormtest.AllowedUsers.Contains(ormuser); // return context.Set<Tests>().Any(t => t.AllowedUsers.Contains(ormuser)) && t.id == test.Id); }
public IEnumerable<DalTest> GetByAuthor(DalUser user) { if (context.Database.Connection.State != ConnectionState.Open) context.Database.Connection.Open(); IEnumerable<Tests> tests = context.Set<Tests>().Where(t => t.AuthorId == user.Id).AsEnumerable(); List<DalTest> result = new List<DalTest>(); foreach (Tests test in tests) { result.Add(new DalTest() { Id = test.id, AuthorId = test.AuthorId, Name = test.Name, Description = test.Description, AllowedTime = test.AllowedTime, Anonymous = test.Anonymous, CreationDate = test.CreationDate, GlobalAvailability = test.GlobalAvailability, Interview = test.Interview, QuestionCount = test.QuestionCount }); } return result; }
public IEnumerable<DalRole> GetUsersRoles(DalUser user) { if (context.Database.Connection.State != ConnectionState.Open) context.Database.Connection.Open(); return context.Set<Roles>(). Where(role => role.Users.Any(users => users.id == user.Id)) .AsEnumerable() .Select(roles => new DalRole() {Id = roles.id, Name = roles.Name}); }
public void Update(DalUser entity) { if (context.Database.Connection.State != ConnectionState.Open) context.Database.Connection.Open(); Users user = context.Set<Users>().FirstOrDefault(users => users.id == entity.Id); //check existing user.Login = entity.Login; user.Email = entity.Email; user.FirstName = entity.FirstName; user.SecondName = entity.SecondName; user.ThirdName = entity.ThirdName; user.PasswordHash = entity.PasswordHash; }
public void Delete(DalUser e) { if (context.Database.Connection.State != ConnectionState.Open) context.Database.Connection.Open(); Users user = context.Set<Users>().FirstOrDefault(users => users.id == e.Id); context.Set<Users>().Remove(user); }
public void SetRole(DalUser user, DalRole role) { if (context.Database.Connection.State != ConnectionState.Open) context.Database.Connection.Open(); Users ormuser = context.Set<Users>().FirstOrDefault(users => users.id == user.Id); Roles ormrole = context.Set<Roles>().FirstOrDefault(roles => roles.id == role.Id); ormuser.Roles.Add(ormrole); }