public void AddElement(User model) { User element = context.Users.FirstOrDefault(rec => rec.UserLogin == model.UserLogin); if (element != null) { throw new Exception("Этот логин уже занят!"); } User elementEmail = context.Users.FirstOrDefault(rec => rec.UserMail == model.UserMail && rec.Id != model.Id); if (elementEmail != null) { throw new Exception("Этот E-mail уже занят!"); } context.Users.Add(new User { Id = model.Id, UserFIO = model.UserFIO, UserMail = model.UserMail, UserLogin = model.UserLogin, UserPassword = model.UserPassword, isAdmin = model.isAdmin, UserMeetings = null, }); context.SaveChanges(); }
public void AddElement(Meeting model) { if (model.RepeatingDays == "0000000") { var intersect = context.Meetings .Where(m => m.StartTime.Year == model.StartTime.Year && m.StartTime.Month == model.StartTime.Month && m.StartTime.Day == model.StartTime.Day && m.RepeatingDays == "0000000"); foreach (var m in intersect) { if (MeetingIntersect(m.StartTime, m.EndTime, model.StartTime, model.EndTime)) { throw new Exception("Мероприятие пересекается с уже созданным"); } } } context.Meetings.Add(new Meeting { MeetingName = model.MeetingName, MeetingDescription = model.MeetingDescription, MeetingTheme = model.MeetingTheme, CreatorId = model.CreatorId, StartTime = model.StartTime, EndTime = model.EndTime, RoomId = model.RoomId, RepeatingDays = model.RepeatingDays }); foreach (var um in model.UserMeetings) { context.UserMeetings.Add(new UserMeeting { MeetingId = model.Id, UserId = um.UserId }); } context.SaveChanges(); var creator = context.Users.FirstOrDefault(u => u.Id == model.CreatorId); var room = context.Rooms.FirstOrDefault(r => r.Id == model.RoomId); foreach (var um in model.UserMeetings) { var user = context.Users.FirstOrDefault(u => u.Id == um.UserId); if (user != null && room != null && creator != null) { MailService.SendEmail(user.UserMail, user.Id == creator.Id ? "Создание мероприятия" : "Приглашение на мероприятие", $"{model.MeetingName}\nМесто: {room.RoomName}, {room.RoomAdress}\nВремя начала: {model.StartTime}"); } } }
public void AddElement(Room model) { Room element = context.Rooms.FirstOrDefault(rec => rec.RoomName == model.RoomName); if (element != null) { throw new Exception("Уже есть помещение с таким названием"); } context.Rooms.Add(new Room { Id = model.Id, RoomName = model.RoomName, RoomAdress = model.RoomAdress, Description = model.Description, Meetings = null, }); context.SaveChanges(); }