protected override void checkBusinessRulesOnUpdate(DomainObject entity)
        {
            GimnasticarUcesnik g = (GimnasticarUcesnik)entity;

            if (!hasImeSrednjeImePrezimeDatumRodjenjaChanged(g))
            {
                return;
            }

            GimnasticarDAO gimnasticarDAO = DAOFactoryFactory.DAOFactory.GetGimnasticarDAO();

            if (gimnasticarDAO.existsGimnasticarImePrezimeSrednjeImeDatumRodjenja(oldIme, oldPrezime, oldSrednjeIme,
                                                                                  oldDatumRodjenja))
            {
                if (!gimnasticarDAO.existsGimnasticarImePrezimeSrednjeImeDatumRodjenja(g.Ime, g.Prezime, g.SrednjeIme,
                                                                                       g.DatumRodjenja))
                {
                    // Staro ime postoji u registru, novo ime ne postoji u registru.
                    // Menjaj staro ime u registru sa novim
                    Gimnasticar gim = gimnasticarDAO.FindGimnasticar(oldIme, oldPrezime,
                                                                     oldDatumRodjenja.Dan, oldDatumRodjenja.Mesec, oldDatumRodjenja.Godina, gimnastika);
                    if (gim != null)
                    {
                        gim.Ime           = g.Ime;
                        gim.Prezime       = g.Prezime;
                        gim.SrednjeIme    = g.SrednjeIme;
                        gim.DatumRodjenja = g.DatumRodjenja;
                        gimnasticarDAO.Update(gim);
                    }
                    else
                    {
                        throw new BusinessException("Greska u programu");
                    }
                }
                else
                {
                    // Staro ime postoji u registru, novo ime postoji u registru.
                    // TODO4: Ne menjaj nista u registru; trazi potvrdu za nastavak
                    throw new BusinessException("Greska u programu - neuspesna promena imena gimnasticara2");
                }
            }
            else
            {
                if (!gimnasticarDAO.existsGimnasticarImePrezimeSrednjeImeDatumRodjenja(g.Ime, g.Prezime, g.SrednjeIme,
                                                                                       g.DatumRodjenja))
                {
                    // Staro ime ne postoji u registru, novo ime ne postoji u registru.
                    // TODO4: Dodaj novog gimnasticara u registru sa novim imenom
                    throw new BusinessException("Greska u programu - neuspesna promena imena gimnasticara3");
                }
                else
                {
                    // Staro ime ne postoji u registru, novo ime postoji u registru.
                    // TODO4: Ne menjaj nista u registru; trazi potvrdu za nastavak
                    throw new BusinessException("Greska u programu - neuspesna promena imena gimnasticara4");
                }
            }
        }
Beispiel #2
0
        protected override void delete(Klub klub)
        {
            GimnasticarDAO      gimnasticarDAO = DAOFactoryFactory.DAOFactory.GetGimnasticarDAO();
            IList <Gimnasticar> gimnasticari   = gimnasticarDAO.FindGimnasticariByKlub(klub);

            foreach (Gimnasticar g in gimnasticari)
            {
                g.Klub = null;
                gimnasticarDAO.Update(g);
            }
            DAOFactoryFactory.DAOFactory.GetKlubDAO().Delete(klub);
        }
        protected override void delete(KategorijaGimnasticara kategorija)
        {
            GimnasticarDAO      gimnasticarDAO = DAOFactoryFactory.DAOFactory.GetGimnasticarDAO();
            IList <Gimnasticar> gimnasticari   = gimnasticarDAO.FindGimnasticariByKategorija(kategorija);

            foreach (Gimnasticar g in gimnasticari)
            {
                g.Kategorija = null;
                gimnasticarDAO.Update(g);
            }
            DAOFactoryFactory.DAOFactory.GetKategorijaGimnasticaraDAO().Delete(kategorija);
        }
Beispiel #4
0
        protected override void delete(Drzava drzava)
        {
            GimnasticarDAO      gimnasticarDAO = DAOFactoryFactory.DAOFactory.GetGimnasticarDAO();
            IList <Gimnasticar> gimnasticari   = gimnasticarDAO.FindGimnasticariByDrzava(drzava);
            SudijaDAO           sudijaDAO      = DAOFactoryFactory.DAOFactory.GetSudijaDAO();
            IList <Sudija>      sudije         = sudijaDAO.FindSudijeByDrzava(drzava);

            foreach (Gimnasticar g in gimnasticari)
            {
                g.Drzava = null;
                gimnasticarDAO.Update(g);
            }
            foreach (Sudija s in sudije)
            {
                s.Drzava = null;
                sudijaDAO.Update(s);
            }
            DAOFactoryFactory.DAOFactory.GetDrzavaDAO().Delete(drzava);
        }
Beispiel #5
0
        private void insertRegistrovaniGimnasticari()
        {
            RegistrovaniGimnasticariParser parser = new RegistrovaniGimnasticariParser();
            string fileName = @"..\..\test\Data\RegistracijaTakmicara2009.txt";

            parser.parse(fileName);

            GimnasticarDAO      gimnasticarDAO = DAOFactoryFactory.DAOFactory.GetGimnasticarDAO();
            IList <Gimnasticar> gimnasticari   = gimnasticarDAO.FindAll();
            IList <Klub>        klubovi        = DAOFactoryFactory.DAOFactory.GetKlubDAO().FindAll();
            Drzava srbija = DAOFactoryFactory.DAOFactory.GetDrzavaDAO().FindByKod("SRB");

            foreach (object[] o in parser.Gimnasticari)
            {
                char   pol       = (char)o[0];
                string ime       = (string)o[1];
                string prezime   = (string)o[2];
                string datumRodj = (string)o[3];
                string klubMesto = (string)o[4];
                string regBroj   = (string)o[5];
                string datumReg  = (string)o[6];

                Gimnasticar gimnasticar = findGimnasticar(ime, prezime, gimnasticari);
                if (gimnasticar != null)
                {
                    if (datumRodj.Trim() == "NULL")
                    {
                        gimnasticar.DatumRodjenja = null;
                    }
                    else
                    {
                        gimnasticar.DatumRodjenja = Datum.Parse(datumRodj);
                    }
                    gimnasticar.RegistarskiBroj = regBroj;
                    if (datumReg.Trim() == String.Empty)
                    {
                        gimnasticar.DatumPoslednjeRegistracije = null;
                    }
                    else
                    {
                        gimnasticar.DatumPoslednjeRegistracije = Datum.Parse(datumReg);
                    }
                    gimnasticar.Klub = findKlub(klubMesto, klubovi);

                    gimnasticarDAO.Update(gimnasticar);
                }
                else
                {
                    gimnasticar = new Gimnasticar();
                    if (pol == 'M')
                    {
                        gimnasticar.Gimnastika = Gimnastika.MSG;
                    }
                    else if (pol == 'Z')
                    {
                        gimnasticar.Gimnastika = Gimnastika.ZSG;
                    }
                    else if (pol == ' ')
                    {
                        gimnasticar.Gimnastika = Gimnastika.Undefined;
                    }
                    else
                    {
                        throw new FormatException("Invalid format in file " + fileName);
                    }

                    gimnasticar.Ime     = ime.Trim();
                    gimnasticar.Prezime = prezime.Trim();
                    if (datumRodj.Trim() == "NULL")
                    {
                        gimnasticar.DatumRodjenja = null;
                    }
                    else
                    {
                        gimnasticar.DatumRodjenja = Datum.Parse(datumRodj);
                    }
                    gimnasticar.RegistarskiBroj = regBroj;
                    if (datumReg.Trim() == String.Empty)
                    {
                        gimnasticar.DatumPoslednjeRegistracije = null;
                    }
                    else
                    {
                        gimnasticar.DatumPoslednjeRegistracije = Datum.Parse(datumReg);
                    }

                    gimnasticar.Klub   = findKlub(klubMesto, klubovi);
                    gimnasticar.Drzava = srbija;

                    gimnasticarDAO.Add(gimnasticar);
                }
            }
        }