예제 #1
0
        public void UsunNaprawe()
        {
            //usuniecie powiazanych obiektow PodzespolNaprawa
            foreach (var czesc in _zuzyla)
            {
                czesc.UsunPodzespolNaprawa();
            }
            // usuniecie powiazania z Serwisantem
            _realizowanaPrzez.UsunPowiazanieNaprawa(this);

            //usuniecie powiazan ze ZgloszeniemSerwisowym
            _wRamach.UsunPowiazanaNaprawe(this);

            // usuniecie z ekstensji
            ObjectPlus.ZwrocEkstensje(typeof(NaprawaSerwisowa)).Remove(this);
        }
예제 #2
0
        //Kompozycja warunek 3 - Usuwanie części przy usunięciu całości.
        public void UsunZgloszenie()
        {
            // usuniecie powiazania z Agentem
            _obslugiwanePrzez.UsunPowiazanieZeZgloszeniem(this);
            //usuniecie powiazania z Klientem
            _zglaszanePrzez.UsunPowiazanieZeZgloszeniem(this);
            // usuniecie powiazania z Urzadzeniem
            _dotyczace.UsunPowiazanieZeZgloszeniem(this);

            //usuniecie powiazanych napraw
            for (int i = _zawierajace.Count - 1; i >= 0; i--)
            {
                _zawierajace[i].UsunNaprawe();
            }

            //usuniecie zgloszenia
            ObjectPlus.ZwrocEkstensje(typeof(ZgloszenieSerwisowe)).Remove(this);
        }
예제 #3
0
        static void Main(string[] args)
        {
            // ObjectPlus.OdczytajEkstensje();
            var s1 = new Serwisant("Damian", "Dabacki", "123456789", 200.0, "02-554");
            var a1 = new Agent("Damian", "Dabacki", "123456789", new DateTime(
                                   2007, 2, 1));
            var k1 = new Klient("Kamil", "Kabacki", "512532525", new Adres("nowa", "15/5", "02-554", "Warszawa"));
            var u1 = new Desktop("3010", DateTime.Now, Desktop.TypObudowy.MT, false);

            u1.DodajZlacze(Komputer.TypyZlacz.HDMI, 1);
            u1.DodajZlacze(Komputer.TypyZlacz.DP, 2);

            var zgloszenie = a1.UtworzZgloszenie("gjhgjh", "gfgfdgf", k1, u1);
            var naprawa    = zgloszenie.ZlecNaprawe(DateTime.Now, s1);

            ObjectPlus.PokazEkstensje(typeof(Serwisant));
            ObjectPlus.PokazEkstensje(typeof(Agent));
            ObjectPlus.PokazEkstensje(typeof(Klient));
            ObjectPlus.PokazEkstensje(typeof(ZgloszenieSerwisowe));
            ObjectPlus.PokazEkstensje(typeof(NaprawaSerwisowa));
            zgloszenie.PokazPowiazania();

            // naprawa.UsunNaprawe();
            zgloszenie.UsunZgloszenie();

            Console.WriteLine("\n__________________Powiazania po usunieciu__________________");

            zgloszenie.PokazPowiazania();

            Console.WriteLine("\n_________________po usunieciu___________________");

            ObjectPlus.PokazEkstensje(typeof(Serwisant));
            ObjectPlus.PokazEkstensje(typeof(Agent));
            ObjectPlus.PokazEkstensje(typeof(Klient));
            ObjectPlus.PokazEkstensje(typeof(ZgloszenieSerwisowe));
            ObjectPlus.PokazEkstensje(typeof(NaprawaSerwisowa));

            // ObjectPlus.ZapiszEkstensje();
            Console.Read();
        }
예제 #4
0
 public void UsunPodzespolNaprawa()
 {
     _uzyty.UsunPowiazaniaZNaprawa(this);
     ObjectPlus.ZwrocEkstensje(typeof(PodzespolNaprawa)).Remove(this);
 }