public static Freelancer GetCurrentFreelancer(string name) { if (!WorkerRepository.IsNewWorker(name)) { Freelancer freec = new Freelancer(name); freec.Load("Список отработанных часов внештатных сотрудников.txt"); foreach (string line in freec.workers) { string[] freecInfo = line.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); if (freecInfo[1] == name) { freec.DatesAndHours.Add(DateTime.Parse(freecInfo[0]), int.Parse(freecInfo[2])); freec.allTasks.Add(freecInfo[3]); } } return(freec); } else { throw new Exception("Данного сотрудника нет в списках!"); } }
public void SetWorkingHours(int hours, string date, string name, string task) { string[] info = WorkerRepository.FindWorker(name); switch (info[1]) { case "руководитель": Manager manager = Manager.GetCurrentManager(name); manager.NewTask = task; manager.SetWorkingHours(hours, date); break; case "сотрудник": Employee employee = Employee.GetCurrentEmployee(name); employee.NewTask = task; employee.SetWorkingHours(hours, date); break; case "фрилансер": Freelancer freelancer = Freelancer.GetCurrentFreelancer(name); freelancer.NewTask = task; freelancer.SetWorkingHours(hours, date); break; } }