示例#1
0
        [NotNull] public IScope Enter(object state = null)
        {
            lock (mLock)
            {
                if (EnterTrigger == ScopeEnterTrigger.Entering)
                {
                    mOnEnter?.Invoke();
                }

                EnteringOverride();
                Entering?.Invoke(this, new EventArgs());

                mStateStack.Push(state);

                Entered?.Invoke(this, new EventArgs());
                EnteredOverride();

                if (EnterTrigger == ScopeEnterTrigger.Entered)
                {
                    mOnEnter?.Invoke();
                }
            }

            return(this);
        }
示例#2
0
 private DicaseType SelectOrConfirmDicaseType(DicaseType current)
 {
     while (true)
     {
         string dicaseName = Entering.EnterString(
             "Вид хвороби", current.Nazva);
         if (dicaseName == current.Nazva)
         {
             return(current);
         }
         if (dicaseName == null)
         {
             Console.WriteLine("\tПомилка: потрібно ввести назву "
                               + "наявного у сховищі об'єкта, що представляє "
                               + "вид хвороби, до якого відноситься хвороба");
             continue;
         }
         DicaseType inst = dataSet.DicaseTypes
                           .FirstOrDefault(e => e.Nazva == dicaseName);
         if (inst != null)
         {
             return(inst);
         }
         Console.WriteLine("\tПомилка: у сховищі відсутній об'єкт, "
                           + "що представляє хвороба з назвою " + dicaseName);
     }
 }
示例#3
0
 private Discase SelectOrConfirmDiscase(Discase current)
 {
     while (true)
     {
         string patcientName = Entering.EnterString(
             "хвороба", current.Nazva);
         if (patcientName == current.Nazva)
         {
             return(current);
         }
         if (patcientName == null)
         {
             Console.WriteLine("\tПомилка: потрібно ввести назву "
                               + "наявного у сховищі об'єкта, що представляє "
                               + "хворобу, до якого відноситься пацієнт");
             continue;
         }
         Discase inst = dataSet.Discases
                        .FirstOrDefault(e => e.Nazva == patcientName);
         if (inst != null)
         {
             return(inst);
         }
         Console.WriteLine("\tПомилка: у сховищі відсутній об'єкт, "
                           + "що представляє хворобу з назвою " + patcientName);
     }
 }
示例#4
0
        private Command EnterCommand()
        {
            Console.WriteLine();
            int number = Entering.EnterInt32(
                "Введіть номер команди меню");

            return(commandsInfo[number].command);
        }
示例#5
0
        public void Remove()
        {
            int     id   = Entering.EnterInt32("Введіть ІД об'єкта");
            Surname inst = dataContext.Surnames.FirstOrDefault(
                e => e.Id == id);

            dataContext.Surnames.Remove(inst);
        }
示例#6
0
        public void Select()
        {
            ShowFileFormatsMenu();
            int number = Entering.EnterInt32(
                "\n\tВведіть номер формату файлу");

            Controller = controllers[number - 1];
        }
示例#7
0
        public void Update(DicaseType inst)
        {
            Console.WriteLine("Відредагуйте дані виду хвороби {0}", inst.Nazva);
            inst.Nazva = Entering.EnterString("Назва", inst.Nazva);

            inst.Parent = SelectOrConfirmParent(inst.Parent);

            inst.Descripotion = Entering.EnterString("Опис", inst.Descripotion);
        }
示例#8
0
        private DepartmentName SelectDepartmentName()
        {
            string departmentName = Entering.EnterString(
                "Назва відділення");
            DepartmentName inst = dataContext.DepartmentNames
                                  .FirstOrDefault(e => e.Name == departmentName);

            return(inst);
        }
示例#9
0
        public static void ManualInput()
        {
            int len = Entering.EnterIntNext("Введіть кількість значень масиву");

            Program.array = new int[len];
            for (int i = 0; i < len; i++)
            {
                Program.array[i] = Entering.EnterIntPrompt("Введіть " + (i + 1) + " значення");
            }
        }
示例#10
0
        public void Add()
        {
            Surname inst = new Surname();

            inst.Name           = Entering.EnterString("ПІБ Пацієнта");
            inst.departmentName = SelectDepartmentName();
            inst.data           = Entering.EnterStringOrNull("Дата");
            inst.daysInBed      = Entering.EnterDouble("Ліжко-днів");
            inst.Id             = dataContext.Surnames.Select(e => e.Id).Max() + 1;
            dataContext.Surnames.Add(inst);
        }
示例#11
0
 /// <summary>
 /// Called as the object goes from Inactive to Active. Prefer <see cref="Entering"/> if you
 /// are programmatically adding event handlers at runtime. If you are adding event handlers
 /// in the Unity Editor, prefer <see cref="onEntering"/>. If you are waiting for this event
 /// in a subclass of StateController, prefer overriding the <see cref="OnEnable"/> method.
 /// </summary>
 protected virtual void OnEntering()
 {
     if (!skipEvents)
     {
         if (onEntering != null)
         {
             onEntering?.Invoke();
         }
         Entering?.Invoke(this, EventArgs.Empty);
     }
 }
示例#12
0
        public void Create()
        {
            Console.WriteLine("\tВведіть дані хвороби, що додається:");
            Discase inst = new Discase();

            inst.Nazva      = EnterAndValidateName();
            inst.DicaseType = SelectDicaseTypeFromList();
            inst.note       = Entering.EnterString("Примітка");

            inst.Id = ++counter;
            dataSet.Discases.Add(inst);
        }
示例#13
0
        public static void RandomInput()
        {
            Random rand = new Random();
            int    len  = Entering.EnterIntNext("Введіть кількість значень масиву");

            Program.array = new int[len];
            int max = Entering.EnterIntPrompt("Введіть максимальне значення");

            for (int i = 0; i < len; i++)
            {
                Program.array[i] = rand.Next(max);
            }
        }
示例#14
0
 private string EnterAndValidateName()
 {
     while (true)
     {
         string name = Entering.EnterString("Назва виду хвороби");
         if (!collection.Any(e => e.Nazva == name))
         {
             return(name);
         }
         Console.WriteLine("\tПомилка: у сховищі вже зберігається об'єкт, "
                           + "що представляє вид хвороби з назвою " + name);
     }
 }
示例#15
0
 private string EnterAndValidateName()
 {
     while (true)
     {
         string name = Entering.EnterString("Прізвище");
         if (!collection.Any(e => e.Sorname == name))
         {
             return(name);
         }
         Console.WriteLine(
             "\tПомилка: у сховищі вже зберігається об'єкт, "
             + "що представляє прізвище з назвою " + name);
     }
 }
示例#16
0
        public void Create()
        {
            Console.WriteLine("\tВведіть дані пацієнта, що додається:");
            Patcient inst = new Patcient();

            inst.Sorname        = EnterAndValidateName();
            inst.Dicase         = SelectDicaseTypeFromList();
            inst.Doctor         = Entering.EnterString("Лікарь");
            inst.Date           = new DateTime(2013, 09, 23);
            inst.Medical_card   = Entering.EnterString("Медична кардка");
            inst.number_Chamber = Entering.EnterString("Палата");
            inst.Id             = ++counter;
            dataSet.Patcients.Add(inst);
        }
示例#17
0
        internal virtual void OnEntering(IRpcSession session)
        {
            if (session == null)
            {
                throw new ArgumentNullException(nameof(session));
            }

            if (Collection.Contains(session))
            {
                return;
            }

            Entering?.Invoke(this, new EventArgs <IRpcSession>(session));
            Collection.Add(session);
        }
示例#18
0
        public void Create()
        {
            DicaseType inst = new DicaseType();

            Console.WriteLine("\tВведіть дані виду хвороби, що додається:");
            inst = new DicaseType();

            inst.Nazva  = EnterAndValidateName();
            inst.Parent = SelectParent();

            inst.Descripotion = Entering.EnterString("Опис");
            inst.Id           = ++counter;
            collection.Add(inst);
            inst.Parent.CildsOjects.Add(inst);
        }
示例#19
0
        static Command EnterCommand()
        {
            int number;

            while (true)
            {
                number = Entering.EnterIntPrompt("Введіть номер команди меню");
                if (number < CommandInfoArray.Length && number >= 0)
                {
                    return(CommandInfoArray[number].command);
                }
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("\tНемає команди з введеним номером!");
                Console.ForegroundColor = ConsoleColor.Black;
            }
        }
示例#20
0
 public static void FilelInput()
 {
     Program.array = file.Load(Entering.EnterStringPrompt("Введіть назву файлу"));
     if (!file.fileExists)
     {
         Console.ForegroundColor = ConsoleColor.Red;
         Console.WriteLine("\tТакого файлу не існує!");
         Console.ForegroundColor = ConsoleColor.Black;
     }
     else if (!file.fileValid)
     {
         Console.ForegroundColor = ConsoleColor.Red;
         Console.WriteLine("\tДані файлу не відповідають формату csv!");
         Console.ForegroundColor = ConsoleColor.Black;
     }
 }
示例#21
0
        //----------------------------------------------------

        public void Update(Patcient inst)
        {
            Console.WriteLine("Відредагуйте значення атрибутів пацієнта {0}",
                              inst.Sorname);
            inst.Sorname = Entering.EnterString("Назва", inst.Sorname);
            inst.Dicase  = SelectOrConfirmDiscase(inst.Dicase);

            string patcientName = inst.Dicase.Nazva;

            patcientName = Entering.EnterString(
                " хвороба", patcientName);
            if (patcientName != inst.Dicase.Nazva)
            {
                inst.Dicase = dataSet.Discases.FirstOrDefault(
                    e => e.Nazva == patcientName);
            }
        }
示例#22
0
 static bool Result()
 {
     if (array.Length != 0)
     {
         Console.Write("  Введені значення: ");
         EchoArray(", ");
         Array.Sort(array);
         Console.Write("\n\n  Введені значення: ");
         EchoArray(", ");
     }
     if (Entering.EnterBoolUA("\n\n  Бажаєте повторити[так/ні]"))
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
示例#23
0
 private DicaseType SelectParent()
 {
     while (true)
     {
         string parentName = Entering.EnterStringOrNull(
             "Хвороба вищого рівня");
         if (parentName == null)
         {
             return(null);
         }
         DicaseType inst = collection.FirstOrDefault(e => e.Nazva == parentName);
         if (inst != null)
         {
             return(inst);
         }
         Console.WriteLine("\tПомилка: у сховищі відсутній об'єкт, "
                           + "що представляє вид хвороби з назвою " + parentName);
     }
 }
示例#24
0
        //----------------------------------------------------

        public void Update(Discase inst)
        {
            Console.WriteLine("Відредагуйте значення атрибутів хвороби {0}",
                              inst.Nazva);
            inst.Nazva      = Entering.EnterString("Назва", inst.Nazva);
            inst.DicaseType = SelectOrConfirmDicaseType(inst.DicaseType);

            string dicaseName = inst.DicaseType.Nazva;

            dicaseName = Entering.EnterString(
                "Вид хвороби", dicaseName);
            if (dicaseName != inst.DicaseType.Nazva)
            {
                inst.DicaseType = dataSet.DicaseTypes.FirstOrDefault(
                    e => e.Nazva == dicaseName);
            }

            inst.note         = Entering.EnterString("Примітка", inst.note);
            inst.Descripotion = Entering.EnterString("Опис", inst.Descripotion);
        }
示例#25
0
 private DicaseType SelectOrConfirmParent(DicaseType current)
 {
     while (true)
     {
         string dicasetypeName = Entering.EnterString(
             "Вид хвороби", current.Nazva);
         if (dicasetypeName == current.Nazva)
         {
             return(current);
         }
         if (string.IsNullOrEmpty(dicasetypeName))
         {
             return(null);
         }
         DicaseType inst = collection
                           .FirstOrDefault(e => e.Nazva == dicasetypeName);
         if (inst != null)
         {
             return(inst);
         }
         Console.WriteLine("\tПомилка: у сховищі відсутній об'єкт, "
                           + "що представляє вид хвороби з назвою " + dicasetypeName);
     }
 }
示例#26
0
 public virtual void OnEntering(EndPoint endPoint)
 {
     Entering?.Invoke(this, new EventArgs <EndPoint>(endPoint));
 }