示例#1
0
 /// <summary>
 /// Метод добавления экземпляра класса-наследника Worker в нераспределенные сотрудники
 /// </summary>
 /// <param name="worker">Экземпляр, который добавляем</param>
 private void Add_Unallocated_Worker(Worker worker)
 {
     worker.DepartmentId   = 0;           //сбрасываем Id
     worker.DepartmentName = "";          //сбрасываем наименование департамента
     UnallocatedWorkersId.Add(worker.Id); //добавляем в коллекцию нераспределенных
     Workers.Add(worker);                 //добавляем в коллекцию всех сотрудников организации
 }
示例#2
0
        /// <summary>
        /// Метод добавления экземпляра Manager в департамент организации
        /// </summary>
        /// <param name="DepartmentId">Id департамента</param>
        /// <param name="worker">Экземпляр, который добавляем</param>
        private void AddManager(int DepartmentId, Worker worker)
        {
            Department temp = this[DepartmentId];                   //объявляем департамент temp, который будет ссылаться на департамент с нужным Id

            if (temp.ChiefId > 0)                                   //если у департамента уже есть начальник (экземпляр Manager)
            {
                Worker OldChief = this[temp.ChiefId, DepartmentId]; //то перемещаем старого руководителя в нераспределенные
                this[DepartmentId].ChiefId = 0;
                OldChief.DepartmentId      = 0;
                OldChief.DepartmentName    = "";
                UnallocatedWorkersId.Add(OldChief.Id);
                temp.ChiefId = 0;
            }
            worker.DepartmentName = temp.Name;    //добавляем название департамента в экзепляр Worker
            worker.DepartmentId   = DepartmentId; //добавляем Id Департамента в экземпляр Worker
            temp.ChiefId          = worker.Id;    //добавляем Id экземпляра Worker в руководителя департамента
            Workers.Add(worker);                  //добавляем экземпляр Worker в коллекцию всех сотрудников организации
        }
示例#3
0
 /// <summary>
 /// Метод удаления экземпляра класса-наследника Worker из нераспределенных сотрудников организации
 /// </summary>
 /// <param name="worker">Экземпляр, который удаляем</param>
 private void Delete_Unallocated_Worker(Worker worker)
 {
     UnallocatedWorkersId.Remove(worker.Id);
     Workers.Remove(worker);
 }