Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- namespace CSLight
- {
- internal class Program
- {
- static void Main()
- {
- const string CommandAddEmployee = "1";
- const string CommandShowInfo = "2";
- const string CommandDeleteEmployee = "3";
- const string CommandExit = "4";
- const string CommandRestart = "5";
- Dictionary<string, List<string>> dossiers = new Dictionary<string, List<string>>();
- bool unfilledPostIsFind = false;
- bool isWork = true;
- Console.CursorVisible = false;
- while (isWork)
- {
- Console.WriteLine("Меню команд:");
- Console.SetCursorPosition(0, 2);
- Console.WriteLine(CommandAddEmployee + " - Добавить сотрудника");
- Console.WriteLine(CommandShowInfo + " - Вывести всю информацию о сотрудниках");
- Console.WriteLine(CommandDeleteEmployee + " - Удалить сотрудника");
- Console.WriteLine(CommandExit + " - Выход");
- Console.WriteLine(CommandRestart + " - Рестарт");
- Console.SetCursorPosition(0, 9);
- Console.Write("Введите команду: ");
- switch (Console.ReadLine())
- {
- case CommandAddEmployee:
- FillEmployee(dossiers,ref unfilledPostIsFind);
- break;
- case CommandShowInfo:
- ShowInfo(dossiers);
- break;
- case CommandDeleteEmployee:
- DeleteEmployee(dossiers);
- break;
- case CommandExit:
- isWork = false;
- break;
- case CommandRestart:
- dossiers.Clear();
- break;
- default:
- Console.WriteLine("\nОшибка. Введена неверная команда...");
- break;
- }
- Console.ReadKey(true);
- Console.Clear();
- }
- }
- static void FillEmployee(Dictionary<string, List<string>> dossiers,ref bool unfilledPostIsFind)
- {
- string post;
- Console.Write("\nВведите должность: ");
- post = Console.ReadLine();
- if (post == "")
- {
- post = "Джуниор";
- if (dossiers.ContainsKey(post) == false && unfilledPostIsFind == false)
- {
- unfilledPostIsFind = true;
- dossiers.Add(post, new List<string>());
- }
- }
- if (dossiers.ContainsKey(post) == false)
- {
- dossiers.Add(post, new List<string>());
- }
- Console.Write("\nВведите ФИО: ");
- dossiers[post].Add(Console.ReadLine());
- }
- static void ShowInfo(Dictionary<string, List<string>> dossiers)
- {
- int sequenceNumber = 1;
- if (dossiers.Count == 0)
- {
- Console.WriteLine("\nНа данный момент у вас нет сотрудников.");
- }
- else
- {
- foreach (var dossier in dossiers)
- {
- Console.Write($"\n{sequenceNumber++}. {dossier.Key} - ");
- foreach (var value in dossier.Value)
- {
- Console.Write($"|{value}|");
- }
- }
- }
- }
- static void DeleteEmployee(Dictionary<string, List<string>> dossiers)
- {
- string post;
- string employee;
- Console.Write("\nВведите должность сотрудника: ");
- post = Console.ReadLine();
- if (dossiers.ContainsKey(post))
- {
- Console.Write("\nВведите ФИО сотрудника на удаление: ");
- employee = Console.ReadLine();
- if (dossiers[post].Contains(employee) == false)
- {
- Console.WriteLine("\nТакого сотрудника нет.");
- }
- else
- {
- dossiers[post].Remove(employee);
- }
- if (dossiers[post].Count == 0)
- {
- dossiers.Remove(post);
- }
- }
- else
- {
- Console.WriteLine("\nТакой должности нет.");
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement