//public static void AllocateTramToService(TramDTO tram, RepairService _repairServiceLogic, CleaningService _cleaningServiceLogic)
        //{
        //    if (tram.Status.Any(s => s.Status == TramStatus.Defect))
        //    {
        //        _repairServiceLogic.AddTram(tram);
        //    }
        //    if (tram.Status.Any(s => s.Status == TramStatus.Cleaning))
        //    {
        //        _cleaningServiceLogic.AddTram(tram);
        //    }
        //}

        public static void AllocateTramToTrack(TramDTO tram, List <TrackDTO> tracks, Track _Tracklogic)
        {
            //if tram is in the repairservice -> send to a repair track

            foreach (TrackDTO track in tracks)
            {
                if (_Tracklogic.CheckTramCanBeStored(tram, track))
                {
                    _Tracklogic.StoreTram(tram, track);
                    break;
                }
            }
        }
        public static void AllocateToRandomTrack(TramDTO tram, List <TrackDTO> tracks, Track _Tracklogic)
        {
            bool tramIsStored = false;

            do
            {
                TrackDTO randomTrack = _Tracklogic.GetRandomTrack(tracks);
                if (_Tracklogic.CheckTramCanBeStored(tram, randomTrack))
                {
                    _Tracklogic.StoreTram(tram, randomTrack);
                    tramIsStored = true;
                }
            } while (tramIsStored == false);
        }