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); }
internal static string GetDetailOperationName(DetailOperation operation) { return(OperationNames[(int)operation]); }
internal Stage(DetailOperation operation, int number) { Number = number; Operation = operation; OperationName = GetDetailOperationName(operation); }