Beispiel #1
0
 private void CheckListBox()
 {
     if (Workshop.GetDetails(listBox1).Any(d => !d.Completed) ||
         !(Workshop1.Detail == null && Workshop2.Detail == null && Workshop3.Detail == null &&
           Workshop4.Detail == null && Workshop5.Detail == null))
     {
         return;
     }
     {
         Logger.WriteLine("Все детали на складе готовы. Все цеха свободны.");
         button4_Click(this, new EventArgs());
     }
 }
Beispiel #2
0
        internal void StartOperation(Workshop workshop, DetailOperation operation)
        {
            if (Completed)
            {
                throw new Exception("Произошла попытка начать операцию с обработанной деталью.");
            }
            if (GetCurrentOperation() != operation)
            {
                throw new Exception("Произошла попытка начать некоректную операцию.");
            }

            var log = $"{workshop.Name} начал операцию {Stage.GetDetailOperationName(GetCurrentOperation())} с деталью {Id}.";

            Value += $"->{workshop.Name}";
            Log.Add(log);
            workshop.Factory.Logger.WriteLine(log);
        }
Beispiel #3
0
        internal void FinishOperation(Workshop workshop)
        {
            string log;

            if (Marker == Stages.Count)
            {
                Completed = true;
                Value    += "->End";
                log       = $"{workshop.Name} закончил последнюю операцию {Stage.GetDetailOperationName(GetCurrentOperation())} с деталью {Id}.";
            }
            else
            {
                log = $"{workshop.Name} закончил операцию {Stage.GetDetailOperationName(GetCurrentOperation())} с деталью {Id}.";
                Marker++;
            }

            Log.Add(log);
            workshop.Factory.Logger.WriteLine(log);
        }