/// <summary> /// Проверка на дублирование номера телефона сотрудника /// </summary> /// <param name="employee"></param> /// <param name="phoneNumber"></param> public void CheckEmployeePhoneNumber(Employee employee, string phoneNumber) { if (RegistryStaff.Any(item => item != employee && item.PhoneNumber == phoneNumber)) { throw new Exception("Этот номер телефона сотрудника уже используется!"); } }
/// <summary> /// Проверка на использование должности у сотрудников /// </summary> /// <param name="role"></param> public void CheckEmployeeRoleUsed(EmployeeRole role) { if (RegistryStaff.Any(item => item.IdEmployeeRole == role.IdEmployeeRole)) { throw new Exception("Это должность ещё используется!"); } }
/// <summary> /// Проверка на дублирование полного имени работника /// </summary> /// <param name="employee"></param> /// <param name="surname"></param> /// <param name="name"></param> /// <param name="lastname"></param> public void CheckEmployeeFullName(Employee employee, string surname, string name, string lastname) { if (RegistryStaff.Any(item => item != employee && item.Surname == surname && item.Name == name && item.LastName == lastname)) { throw new Exception("Фамилия, имя и отчество сотрудника уже используется!"); } }
public Hotel() { Rooms = new Rooms(this); // список комнат RegistryStaff = new RegistryStaff(this); // список сотрудников Reservations = new Reservations(this); // список бронирования Transfers = new Transfers(this); // список трансфера }
/// <summary> /// Получить список сотрудников, имеющих право регистрировать сотрудников /// </summary> /// <returns></returns> public List <Employee> GetAdministrators() { return(RegistryStaff.Where(item => GetEmployeeRole(item.IdEmployeeRole) .AllowedOperations.HasFlag(AllowedOperations.ManageEmployees)) .OrderBy(item => string.Concat(item.Surname, item.Name, item.LastName)).ToList()); }