示例#1
0
        public static bool IzmjeniOsobu(string grad, _Osoba osoba, int idRacuna, int idAplikacije)
        {
            try
            {
                using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije)))
                {
                    RACUNI_OSOBE s;
                    int idosobe = 1;

                    if (osoba.IDOsobe == -1)
                    {
                        s = new RACUNI_OSOBE();

                        if (db.RACUNI_OSOBEs.Any())
                        {
                            idosobe = db.RACUNI_OSOBEs.Max(i => i.IDOsobe) + 1;
                        }

                        s.IDOsobe = idosobe;
                    }
                    else
                    {
                        s = db.RACUNI_OSOBEs.First(i => i.IDOsobe == osoba.IDOsobe);
                    }

                    s.Ime = osoba.Ime;
                    s.Prezime = osoba.Prezime;
                    s.Ulica = osoba.Ulica;
                    s.KucniBroj = osoba.KBr;
                    s.Posta = osoba.Posta;
                    s.Mjesto = osoba.Mjesto;
                    s.Drzava = osoba.Drzava ?? "";
                    s.OIB = osoba.OIB;
                    s.Napomena = osoba.Napomena ?? "";
                    s.BrojDokumenta = osoba.BrojDokumenta;
                    s.Rodjen = osoba.Rodjen;

                    if (osoba.IDOsobe == -1)
                    {
                        db.RACUNI_OSOBEs.InsertOnSubmit(s);
                    }
                    db.SubmitChanges();

                    if (osoba.IDOsobe == -1)
                    {
                        RACUNI_OSOBE_RELACIJE rel = new RACUNI_OSOBE_RELACIJE();

                        rel.IDOsobe = idosobe;
                        rel.IDRacuna = idRacuna;
                        rel.Vlasnik = (bool) osoba.Vlasnik;

                        db.RACUNI_OSOBE_RELACIJEs.InsertOnSubmit(rel);
                        db.SubmitChanges();
                    }

                    return true;
                }
            }
            catch (Exception ex)
            {
                Sustav.SpremiGresku(grad, ex, idAplikacije, "IZMJENI OSOBU");
                return false;
            }
        }
示例#2
0
        public static bool SpremiOsobe(string grad, List<_Osoba> osobe, int idRacuna, bool mupIzvor, bool odgoda, int idAplikacije)
        {
            //todo da li je odgoda odmah dostaviti
            try
            {
                using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije)))
                {
                    int x = 0;
                    foreach (var s in osobe)
                    {
                        if (s == null)
                        {
                            continue;
                        }

                        if (string.IsNullOrEmpty(s.Ime) && string.IsNullOrEmpty(s.Prezime) && string.IsNullOrEmpty(s.Napomena) && string.IsNullOrEmpty(s.OIB) && string.IsNullOrEmpty(s.BrojDokumenta) && string.IsNullOrEmpty(s.Ulica))
                        {
                            continue;
                        }

                        RACUNI_OSOBE oso = new RACUNI_OSOBE();

                        var idosobe = 1;

                        if (db.RACUNI_OSOBEs.Any())
                        {
                            idosobe = db.RACUNI_OSOBEs.Max(i => i.IDOsobe) + 1;
                        }

                        oso.IDOsobe = idosobe;
                        oso.Ime = s.Ime ?? "";
                        oso.Prezime = s.Prezime ?? "";
                        oso.Ulica = s.Ulica ?? "";
                        oso.KucniBroj = s.KBr ?? "";
                        oso.Posta = s.Posta ?? "";
                        oso.Mjesto = s.Mjesto ?? "";
                        oso.Drzava = s.Drzava ?? "";
                        oso.OIB = s.OIB ?? "";
                        oso.Napomena = s.Napomena ?? "";
                        oso.BrojDokumenta = s.BrojDokumenta ?? "";
                        oso.Rodjen = s.Rodjen;
                        oso.MUP = mupIzvor;

                        db.RACUNI_OSOBEs.InsertOnSubmit(oso);
                        db.SubmitChanges();

                        RACUNI_OSOBE_RELACIJE rel = new RACUNI_OSOBE_RELACIJE();

                        rel.IDOsobe = idosobe;
                        rel.IDRacuna = idRacuna;
                        rel.Vlasnik = s.Vlasnik ?? false;

                        db.RACUNI_OSOBE_RELACIJEs.InsertOnSubmit(rel);
                        db.SubmitChanges();

                        x++;
                    }

                    //ima uključen dohvat od mupa i nije proslijeđeno ništa od draška i idvrste je odgoda
                    if (!mupIzvor && odgoda && !osobe.Any(i => i.Vlasnik == true))
                    {
                        try
                        {
                            using (PostavkeDataContext pdb = new PostavkeDataContext())
                            {
                                bool mup = pdb.GRADOVIs.First(i => i.IDGrada == Sistem.IDGrada(grad)).DohvatVlasnikaMUP;

                                if (mup) // uključen dohvat od mupa i nije dodana niti jedna osoba
                                {
                                    _Racun rac = Naplata.DohvatiRacun(grad, idRacuna, true, idAplikacije);
                                    Naplata.DohvatMUPa(grad, rac, rac.IDDjelatnika, idAplikacije);
                                }
                            }
                        }
                        catch (Exception ex)
                        {
                            Sustav.SpremiGresku(grad, ex, idAplikacije, "OSOBE RAČUNA - DOHVAT MUP");
                        }
                    }

                    return true;
                }
            }
            catch (Exception ex)
            {
                Sustav.SpremiGresku(grad, ex, idAplikacije, "OSOBE RAČUNA");
                return false;
            }
        }