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; } }
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; } }