private void showPrethodneUplate(IList <UplataClanarine> uplate, bool hasNeplaceniDolasci) { if (hasNeplaceniDolasci) { btnNedostajuceUplate.ForeColor = Color.Red; } if (uplate == null || uplate.Count == 0) { listViewPrethodneUplate.Items.Clear(); return; } ListViewItem[] items = new ListViewItem[uplate.Count]; for (int i = 0; i < uplate.Count; ++i) { UplataClanarine u = uplate[i]; items[i] = new ListViewItem(new string[] { u.VaziOd.Value.ToString("MMM"), u.VaziOd.Value.ToString("yyyy"), u.IznosDin, u.Napomena, u.Grupa.Naziv }); } listViewPrethodneUplate.Items.Clear(); listViewPrethodneUplate.Items.AddRange(items); listViewPrethodneUplate.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent); }
public IActionResult Obrisi(int id) { UplataClanarine uplata = _ctx.UplataClanarine.Find(id); _ctx.UplataClanarine.Remove(uplata); _ctx.SaveChanges(); return(RedirectToAction("Index")); }
protected override void updateUIFromEntity(DomainObject entity) { UplataClanarine uplata = (UplataClanarine)entity; SelectedGrupa = uplata.Grupa; lblSummary.Text = uplata.PrezimeImeBrojDatumRodj + "\n" + uplata.SifraGrupeCrtaNazivGrupe + "\n" + uplata.VaziOd.Value.ToString("dd.MM.yyyy") + "\n" + uplata.IznosDin; }
public IActionResult Snimi(UplataClanarineDodajVM model, string clan = "ne") { if (ModelState.IsValid && ViewData["porukaUspjesno"] == null) { UplataClanarine u; if (model.UplataClanarineId != 0) { u = _ctx.UplataClanarine.Find(model.UplataClanarineId); ViewData["porukaUspjesno"] = "Uspješno ste uredili podatke o uplati."; } else { u = new UplataClanarine(); _ctx.UplataClanarine.Add(u); u.DatumUplate = model.DatumUplate; ViewData["porukaUspjesno"] = "Uspješno ste dodali uplatu."; } model.Clan = _ctx.Clanovi.Find(model.ClanId); u.Clan = model.Clan; u.ClanId = model.ClanId; u.Iznos = model.Iznos; model.Clanovi = GetClanovi(); _ctx.SaveChanges(); if (clan == "da") { return(View("Dodaj", model)); } return(View("Uredi", model)); } else { ViewData["porukaNeuspjesno"] = "Žao nam je. Podaci nisu validni."; if (model.ClanId != 0) { model.Clan = _ctx.Clanovi.Find(model.ClanId); model.Clanovi = _ctx.Clanovi.Where(x => x.ClanId == model.ClanId).ToList(); } else { model.Clanovi = GetClanovi(); } if (clan == "da") { return(View("Dodaj", model)); } return(View("Uredi", model)); } }
public IActionResult Uredi(int id) { UplataClanarine c = _ctx.UplataClanarine.Find(id); UplataClanarineDodajVM model = new UplataClanarineDodajVM(); model.UplataClanarineId = c.UplataClanarineId; model.Clan = _ctx.Clanovi.Find(c.ClanId); model.Clanovi = _ctx.Clanovi.Where(x => x.ClanId == c.ClanId).ToList(); model.Iznos = c.Iznos; model.DatumUplate = c.DatumUplate; model.ClanId = c.ClanId; _ctx.SaveChanges(); return(View("Uredi", model)); }
private void updateUplateListView(ListView listView, List <UplataClanarine> uplate) { if (uplate == null || uplate.Count == 0) { listView.Items.Clear(); return; } ListViewItem[] items = new ListViewItem[uplate.Count]; for (int i = 0; i < uplate.Count; ++i) { UplataClanarine u = uplate[i]; items[i] = new ListViewItem(new string[] { u.VaziOd.Value.ToString("MMM"), u.VaziOd.Value.ToString("yyyy"), u.IznosDin, u.Grupa.Naziv }); } listView.Items.Clear(); listView.Items.AddRange(items); listView.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent); }
private void btnStampaj_Click(object sender, System.EventArgs e) { // TODO: Probaj da promenis i EntityListForm i EntityDetailForm tako da // rade za bilo koji objekt (da mogu da se koriste i za npr. DTO objekte) UplataClanarine uplata = (UplataClanarine)getSelectedEntity(); if (uplata == null) { return; } try { using (ISession session = NHibernateHelper.Instance.OpenSession()) using (session.BeginTransaction()) { CurrentSessionContext.Bind(session); PreviewDialog p = new PreviewDialog(); List <int> idList = new List <int>(); idList.Add(uplata.Id); p.setIzvestaj(new PotvrdaIzvestaj(idList)); p.ShowDialog(); } } catch (InfrastructureException ex) { MessageDialogs.showError(ex.Message, this.Text); } catch (Exception ex) { MessageDialogs.showError(ex.Message, this.Text); } finally { CurrentSessionContext.Unbind(NHibernateHelper.Instance.SessionFactory); } }
private void getData() { List <UplataClanarine> uplate = getUplate(idList); UplataClanarine uplata = uplate[0]; broj = uplata.Clan.Broj.Value; ime = String.Empty; if (uplata.Clan.Ime != null) { ime = uplata.Clan.Ime; } prezime = String.Empty; if (uplata.Clan.Prezime != null) { prezime = uplata.Clan.Prezime; } mesto = uplata.Clan.NazivMesta; datumUplate = uplata.DatumUplate.Value; sifraGrupe = uplata.Grupa.Sifra.Value; nazivGrupe = uplata.Grupa.Naziv; decimal ukupanIznos = 0; datumClanarine = String.Empty; string zarez = String.Empty; string format = uplate.Count <= 6 ? "MMMM yyyy" : "MMM yyyy"; foreach (UplataClanarine u in uplate) { ukupanIznos += u.Iznos.Value; // TODO2: Ovde bi verovatno trebalo stampati ceo mesec (MMMM), ali za to bi trebalo // implementirati text wrap. datumClanarine += zarez + u.VaziOd.Value.ToString(format); zarez = ", "; } iznos = ukupanIznos.ToString("F2") + " Din"; }
protected override void updateEntityFromUI(DomainObject entity) { List <UplataItem> uplateItems = getUplataItems(); uplateList.Clear(); DateTime vremeUplate = DateTime.Now; for (int i = 0; i < uplateItems.Count; ++i) { UplataClanarine u = new UplataClanarine(); u.Clan = SelectedClan; u.Grupa = SelectedGrupa; u.DatumVremeUplate = new DateTime( vremeUplate.Year, vremeUplate.Month, vremeUplate.Day, vremeUplate.Hour, vremeUplate.Minute, vremeUplate.Second); UplataItem uplataItem = uplateItems[i]; u.VaziOd = uplataItem.VaziOd; u.Iznos = uplataItem.Iznos; if (txtNapomena.Text.Trim() != String.Empty) { u.Napomena = txtNapomena.Text.Trim(); } else { u.Napomena = null; // u Access bazi je specifikovano da ne prihvata } // stringove duzine nula za Napomenu u.Korisnik = "Admin"; uplateList.Add(u); vremeUplate = vremeUplate.AddSeconds(1); } }
protected override void updateEntityFromUI(DomainObject entity) { UplataClanarine uplata = (UplataClanarine)entity; uplata.Grupa = SelectedGrupa; }
private void prikaziOcitavanje(Clan clan, DateTime vremeOcitavanja, out UplataClanarine uplata) { uplata = CitacKarticaDictionary.Instance.findUplata(clan); bool okForTrening = false; if (uplata != null) { // Moguce da je clan uplatio clanarinu npr. pre 3 meseca, a tek ovog meseca mu je promenjen status // u neplaca clanarinu. U tom slucaju treba da svetli zeleno. if (clan.NeplacaClanarinu) { okForTrening = true; } else if (uplata.Grupa.ImaGodisnjuClanarinu) { okForTrening = uplata.VaziOd.Value.Year == vremeOcitavanja.Year; } else { // Proveri da li postoji uplata za ovaj ili sledeci mesec. okForTrening = uplata.VaziOd.Value.Year == vremeOcitavanja.Year && uplata.VaziOd.Value.Month == vremeOcitavanja.Month; if (!okForTrening) { DateTime sledeciMesec = DateTime.Now.AddMonths(1); okForTrening = uplata.VaziOd.Value.Year == sledeciMesec.Year && uplata.VaziOd.Value.Month == sledeciMesec.Month; } } } else { okForTrening = clan.NeplacaClanarinu; } // Tolerisi do odredjenog dana u mesecu, ali ne i za godisnje clanarine. if (!okForTrening) { if (uplata != null && uplata.Grupa.ImaGodisnjuClanarinu) { okForTrening = vremeOcitavanja.Month <= Options.Instance.PoslednjiMesecZaGodisnjeClanarine; } else { okForTrening = vremeOcitavanja.Day <= Options.Instance.PoslednjiDanZaUplate; } } string grupa = null; if (uplata != null) { grupa = uplata.Grupa.Naziv; } string msg = FormatMessage(clan.BrojKartice.Value, clan, grupa); // Posto ocitavanje kartice traje relativno dugo (oko 374 ms), moguce je da je prozor // zatvoren bas u trenutku dok se kartica ocitava. Korisnik je u tom slucaju cuo zvuk // da je kartica ocitana ali se na displeju ne prikazuje da je kartica ocitana. CitacKarticaForm form = Form1.Instance.CitacKarticaForm; if (form != null) { Color color = Options.Instance.PozadinaCitacaKartica; if (Options.Instance.PrikaziBojeKodOcitavanja) { if (okForTrening) { color = Color.SpringGreen; } else { color = Color.Red; } } form.Prikazi(msg, color); } }
private void unesiOcitavanje(Clan clan, DateTime vremeOcitavanja, UplataClanarine uplata) { try { using (ISession session = NHibernateHelper.Instance.OpenSession()) using (session.BeginTransaction()) { // NOTE: DolazakNaTreningDAO (vidi dole) ne uzima session iz CurrentSessionContext zato sto planiram // da metod unesiOcitavanje izvrsavam u posebnom threadu. // CurrentSessionContext.Bind(session); DolazakNaTrening dolazak = new DolazakNaTrening(); dolazak.Clan = clan; dolazak.DatumVremeDolaska = vremeOcitavanja; if (uplata != null && !clan.NeplacaClanarinu) { dolazak.Grupa = uplata.Grupa; } else { dolazak.Grupa = null; } DolazakNaTreningDAOImpl dolazakNaTreningDAO = DAOFactoryFactory.DAOFactory.GetDolazakNaTreningDAO() as DolazakNaTreningDAOImpl; dolazakNaTreningDAO.Session = session; dolazakNaTreningDAO.MakePersistent(dolazak); if (CitacKarticaDictionary.Instance.DanasnjaOcitavanja.Add(clan.Id)) { DolazakNaTreningMesecniDAOImpl dolazakNaTreningMesecniDAO = DAOFactoryFactory.DAOFactory.GetDolazakNaTreningMesecniDAO() as DolazakNaTreningMesecniDAOImpl; dolazakNaTreningMesecniDAO.Session = session; DolazakNaTreningMesecni dolazakMesecni = dolazakNaTreningMesecniDAO.getDolazakNaTrening(dolazak.Clan, dolazak.DatumDolaska.Value.Year, dolazak.DatumDolaska.Value.Month); if (dolazakMesecni == null) { dolazakMesecni = new DolazakNaTreningMesecni(); dolazakMesecni.Clan = clan; dolazakMesecni.Godina = vremeOcitavanja.Year; dolazakMesecni.Mesec = vremeOcitavanja.Month; dolazakMesecni.BrojDolazaka = 1; } else { ++dolazakMesecni.BrojDolazaka; } dolazakNaTreningMesecniDAO.MakePersistent(dolazakMesecni); } session.Transaction.Commit(); } } catch (Exception ex) { MessageDialogs.showMessage(ex.Message, "Citac kartica"); } finally { // CurrentSessionContext.Unbind(NHibernateHelper.Instance.SessionFactory); } }