public List <Model.Clanarina> Get(ClanarinaSearchRequest request) { var query = _context.Clanarina .Include(c => c.Clan) .ThenInclude(c => c.Osoba) .Include(c => c.Paket) .ThenInclude(p => p.PaketPristupniDani) .ThenInclude(p => p.PristupniDani) .OrderByDescending(c => c.DatumUplate) .AsQueryable(); #region search if (request.UplataZaMjesec != null) { query = query.Where(q => q.UplataZaMjesec == request.UplataZaMjesec); } if (request.UplataZaGodinu != null) { query = query.Where(q => q.UplataZaGodinu == request.UplataZaGodinu); } if (request.ClanID != 0) { query = query.Where(q => q.ClanId == request.ClanID); } if (request.PaketID != 0) { query = query.Where(q => q.PaketId == request.PaketID); } #endregion search var list = query.ToList(); return(_mapper.Map <List <Model.Clanarina> >(list)); }
private async Task LoadClanarine() { ClanarinaSearchRequest request = new ClanarinaSearchRequest { KorisnikId = _clanId }; var clanarine = await _service.Get <List <Model.Clanarina> >(request); dgvClanarine.AutoGenerateColumns = false; dgvClanarine.DataSource = clanarine; }
public async Task Init() { var clanarinaSearchRequest = new ClanarinaSearchRequest() { ClanID = _clan.Id }; var clanarinaList = await _apiService.Get <IEnumerable <Model.Clanarina> >(clanarinaSearchRequest); if (_SelectedSortirajPo == "Cijena rast.") { clanarinaList = clanarinaList.OrderBy(c => c.IznosUplate); } if (_SelectedSortirajPo == "Cijena opad.") { clanarinaList = clanarinaList.OrderByDescending(c => c.IznosUplate); } if (_SelectedSortirajPo == "Datum uplate rast.") { clanarinaList = clanarinaList.OrderBy(c => c.DatumUplate); } if (_SelectedSortirajPo == "Datum uplate opad.") { clanarinaList = clanarinaList.OrderByDescending(c => c.DatumUplate); } clanarine.Clear(); foreach (Model.Clanarina x in clanarinaList) { if (x.UplataZaMjesec == _SelectedUplataZaMjesec && x.UplataZaGodinu == _SelectedUplataZaGodinu) { var clanarina = new Wellness.Mobile.Models.ClanarinaModel() { DatumUplate = x.DatumUplate.ToString("dd.MM.yyyy"), IznosUplate = Math.Round(x.IznosUplate, 2).ToString(), Paket = x.Paket.Naziv, UplataZaMjesec = x.UplataZaMjesec.ToString(), UplataZaGodinu = x.UplataZaGodinu.ToString() }; clanarine.Add(clanarina); } } }
private async void BtnUcitaj_Click_1(object sender, EventArgs e) { this.chart1.Series[0].Points.Clear(); this.chart1.Series[1].Points.Clear(); var ClanarinaSearchRequest = new ClanarinaSearchRequest(); if (!string.IsNullOrEmpty(txtUplataZaGodinu.Text)) { ClanarinaSearchRequest.UplataZaGodinu = Convert.ToInt32(txtUplataZaGodinu.Text); } if ((int)Tab1_cbPaket.SelectedValue != 0) { ClanarinaSearchRequest.PaketID = (int)Tab1_cbPaket.SelectedValue; } var cl = await _apiService_Clanarin.Get <List <Model.Clanarina> >(ClanarinaSearchRequest); var clanarine = cl.OrderBy(c => c.UplataZaMjesec).ToList(); if (Tab1_cbOmoguci_DatumPocetak.Checked) { clanarine = clanarine.Where(cp => cp.DatumUplate >= Tab1_dtpDatumPocetak.Value).ToList(); } if (Tab1_cbOmoguci_DatumKraj.Checked) { clanarine = clanarine.Where(cp => cp.DatumUplate <= Tab1_dtpDatumKraj.Value).ToList(); } var clanarineGodine = clanarine.GroupBy(c => c.UplataZaMjesec).ToList(); foreach (var x in clanarineGodine) { var month = DateTimeFormatInfo.CurrentInfo.GetAbbreviatedMonthName(x.Last().UplataZaMjesec); this.chart1.Series["Zarada"].Points.AddXY(month, x.Sum(y => y.IznosUplate)); this.chart1.Series["Prodano Paketa"].Points.AddXY(month, x.Count()); } }
private async void BtnTrazi_Click(object sender, EventArgs e) { var search = new ClanarinaSearchRequest(); if (!string.IsNullOrWhiteSpace(txtUplataZaMjesec.Text)) { search.UplataZaMjesec = Convert.ToInt32(txtUplataZaMjesec.Text); } else { search.UplataZaMjesec = null; } if (!string.IsNullOrWhiteSpace(txtUplataZaGodinu.Text)) { search.UplataZaGodinu = Convert.ToInt32(txtUplataZaGodinu.Text); } else { search.UplataZaGodinu = null; } search.PaketID = (int)cbPaket.SelectedValue; search.ClanID = (int)cbClan.SelectedValue; //-------------------------------------------------------------------- var result = await _apiService.Get <List <Model.Clanarina> >(search); dgvClanarina.DataSource = result; foreach (DataGridViewRow row in dgvClanarina.Rows) { Model.Clanarina obj = (Model.Clanarina)row.DataBoundItem; row.Cells[4].Value = Math.Round(obj.IznosUplate, 2); row.Cells[5].Value = obj.Clan.Osoba.Ime + " " + obj.Clan.Osoba.Prezime + " #" + obj.Clan.Id; row.Cells[6].Value = obj.Paket.Naziv; } }
public async Task ProvjeraPOsjedovanja() { KorisnikPlanSearchRequest request = new KorisnikPlanSearchRequest { KorisnikId = APIService.UserId, PlanId = PlanIProgram.Id }; List <KorisnikPlan> korisnikPlanovi = await _korisnikPlanService.Get <List <KorisnikPlan> >(request); if (korisnikPlanovi.Count > 0) { Posjeduje = true; PosjedujeOposite = false; } else { Posjeduje = false; PosjedujeOposite = true; } ClanarinaSearchRequest clanarinaSearchRequest = new ClanarinaSearchRequest { KorisnikId = APIService.UserId }; List <Model.Clanarina> clanarine = await _clanarinaService.Get <List <Model.Clanarina> >(clanarinaSearchRequest); if (clanarine.Count > 0) { foreach (var x in clanarine) { if (x.DatumDodavanja <= DateTime.Today && x.DatumIsteka >= DateTime.Today) { Posjeduje = true; } } } }
public ActionResult <List <Model.Clanarina> > Get([FromQuery] ClanarinaSearchRequest request) { return(_service.Get(request)); }
/* * Imaju cetri moguca rezultata * * 1.QR Kod nije prepoznatljiv * 2.QR Kod se ne moze ocitat * 3.QR Kod je prepoznat i sve je u redu u vezi clanarina * 4.QR Kod je prepoznat ali clan ima ne podmirenih obaveza */ //... private async Task tick() { _ticks++; txtTotal.Text = _ticks.ToString(); var text = QRCodeHelper.DecodeQRCode(pictureBox1.Image); if (String.IsNullOrEmpty(text)) { _falseResult++; txtNegative.Text = _falseResult.ToString(); } else { _trueResult++; txtPositive.Text = _trueResult.ToString(); timer.Stop(); var ClanSearchRequest = new Model.Requests.ClanSearchRequest() { QrCodeText = text }; var list = await _apiService_Clan.Get <List <ClanViewRequest> >(ClanSearchRequest); //1.QR Kod nije prepoznatljiv if (list.Count == 0) { textMain = "Pristup ogranicen"; textSide = "QR kod koji ste prikazali nije prepoznatljiv ! "; CameraStopSetup(textMain, textSide); PanelRed(); playBeep(BeepNotOK); return; } var clan = list.FirstOrDefault(); //2.QR Kod se ne moze ocitat //event se pozove nakon 10 sekundi.. iznad //3.QR Kod je prepoznat i sve je u redu u vezi clanarina //4.QR Kod je prepoznat ali clan ima ne podmirenih obaveza //Prvo korisnik treba imati clanarinu za dati mjesec i godinu, zatim if (clan != null) { DateTime dateTime = DateTime.Now; var DanUSedmici = dateTime.DayOfWeek; var DanUSedmiciString = ""; bool pristupDatimDanomOdobren = false; switch (Convert.ToInt32(DanUSedmici)) { case 0: { DanUSedmiciString = "Nedjelja"; } break; case 1: { DanUSedmiciString = "Ponedjeljak"; } break; case 2: { DanUSedmiciString = "Utorak"; } break; case 3: { DanUSedmiciString = "Srijeda"; } break; case 4: { DanUSedmiciString = "Cetvrtak"; } break; case 5: { DanUSedmiciString = "Petak"; } break; case 6: { DanUSedmiciString = "Subota"; } break; default: { DanUSedmiciString = "Nepoznato"; } break; } var clanarinaSearchRequest = new ClanarinaSearchRequest() { ClanID = clan.Id, UplataZaGodinu = dateTime.Year, UplataZaMjesec = dateTime.Month }; var clanarinaList = await _apiService_Clanarina.Get <List <Model.Clanarina> >(clanarinaSearchRequest); if (clanarinaList.Count == 0) { textMain = "Pristup ogranicen"; textSide = "Niste uplatili clanarinu za " + dateTime.Month + ". mjesec " + dateTime.Year + ". godine"; CameraStopSetup(textMain, textSide); PanelRed(); playBeep(BeepNotOK); return; } var clanarina = clanarinaList[0]; var paketPristupniDaniSearchRequest = new PaketPristupniDaniSearchRequest() { PaketId = clanarina.Paket.Id, }; var paketPristupniDaniList = await _apiService_PaketPristupniDani.Get <List <Model.PaketPristupniDani> >(paketPristupniDaniSearchRequest);//vraca 0 rezultata //Gledamo ima li pristup datim danima foreach (Model.PaketPristupniDani x in paketPristupniDaniList) { if (DanUSedmiciString == x.PristupniDani.DanUSedmici) { pristupDatimDanomOdobren = true; break; } } if (pristupDatimDanomOdobren == false) { textMain = "Pristup ogranicen"; textSide = "Nemate pristup Fitness centru ovim danom(" + DanUSedmiciString + ")"; CameraStopSetup(textMain, textSide); PanelRed(); playBeep(BeepNotOK); return; } else { //Gledamo ima li pristup u datom vremenskom intervalu var paketList = await _apiService_Paket.Get <List <Model.Paket> >(new PaketSearchRequest() { Id = clanarina.PaketId }); var paket = paketList[0]; if (paket.NeogranicenPristup == true) { textMain = "Pristup odobren"; textSide = "Dobrodošli!"; CameraStopSetup(textMain, textSide); PanelGreen(); playBeep(BeepOK); return; } var DateTimeUsporedni = new DateTime(clanarina.Paket.VrijemePristupaOd.Value.Year, clanarina.Paket.VrijemePristupaOd.Value.Month, clanarina.Paket.VrijemePristupaOd.Value.Day, dateTime.Hour, dateTime.Minute, clanarina.Paket.VrijemePristupaOd.Value.Second, clanarina.Paket.VrijemePristupaOd.Value.Millisecond); if (DateTimeUsporedni > clanarina.Paket.VrijemePristupaOd && clanarina.Paket.VrijemePristupaDo > DateTimeUsporedni) { textMain = "Pristup odobren"; textSide = "Dobrodošli!"; CameraStopSetup(textMain, textSide); PanelGreen(); playBeep(BeepOK); return; } else { textMain = "Pristup ogranicen"; textSide = "Pristup imate samo u terminu od " + clanarina.Paket.VrijemePristupaOd.Value.ToShortTimeString() + " do " + clanarina.Paket.VrijemePristupaDo.Value.ToShortTimeString(); CameraStopSetup(textMain, textSide); PanelRed(); playBeep(BeepNotOK); return; } } } } }
private async void btnSpremi_Click(object sender, EventArgs e) { Model.Korisnik korisnik = null; KorisniciSearchRequest korisniciSearchRequest = new KorisniciSearchRequest { BrojKartice = txtBrojKartice.Text }; List <Model.Korisnik> korisnici = await _korisnikService.Get <List <Model.Korisnik> >(korisniciSearchRequest); if (korisnici.Count == 1) { korisnik = korisnici[0]; } if (korisnik == null) { MessageBox.Show("Korisnik sa unesenom karticom ne postoji!"); return; } ClanarinaSearchRequest clanarinaSearchRequest = new ClanarinaSearchRequest { KorisnikId = korisnik.Id }; Model.PrisutnostClana prisutnostClana; PrisutnostClanaSearchRequest request = new PrisutnostClanaSearchRequest { BrojKartice = txtBrojKartice.Text }; List <Model.PrisutnostClana> result = await _service.Get <List <Model.PrisutnostClana> >(request); if (result.Count == 0) { PrisutnostClanaInsertRequest insertRequest = new PrisutnostClanaInsertRequest { Date = DateTime.Today, KorisnikId = korisnik.Id, VrijemeDolaska = DateTime.Now.TimeOfDay }; prisutnostClana = await _service.Insert <Model.PrisutnostClana>(insertRequest); if (prisutnostClana != null) { MessageBox.Show("Uspjesno dodan clan na listu prisutnih!"); } } else { prisutnostClana = new Model.PrisutnostClana { Id = result[0].Id, KorisnikId = result[0].KorisnikId, VrijemeDolaska = result[0].VrijemeDolaska, VrijemeOdlaska = DateTime.Now.TimeOfDay }; Model.PrisutnostClana entity; entity = await _service.Update <Model.PrisutnostClana>(result[0].Id, prisutnostClana); if (entity != null) { MessageBox.Show("Uspjesno ste uklonili clana sa liste prisutnih!"); } } await LoadPrisutne(); }
private async void button1_Click(object sender, EventArgs e) { double _zarada = 0; Model.IzvjestajClanovi izvjestajClanovi = new Model.IzvjestajClanovi { clanarineIzvjestaj = new List <ClanarineIzvjestaj>(), Dani = new Model.Dani { Ponedeljak = 0, Cetvrtak = 0, Nedelja = 0, Petak = 0, Srijeda = 0, Subota = 0, Utorak = 0 } }; ClanarinaSearchRequest clanarinaSearch = new ClanarinaSearchRequest { Od = dateTimePicker1.Value, Do = dateTimePicker2.Value }; List <Model.Clanarina> clanarine = await _clanarinaService.Get <List <Model.Clanarina> >(clanarinaSearch); foreach (var x in clanarine) { bool categoryExists = false; for (int i = 0; i < izvjestajClanovi.clanarineIzvjestaj.Count; i++) { if (izvjestajClanovi.clanarineIzvjestaj[i].Kategorija == x.TipClanarine) { izvjestajClanovi.clanarineIzvjestaj[i].BrojClanarina += 1; izvjestajClanovi.clanarineIzvjestaj[i].Zarada += x.Cijena; categoryExists = true; } } if (categoryExists == false) { ClanarineIzvjestaj _cizv = new ClanarineIzvjestaj { Kategorija = x.TipClanarine, BrojClanarina = 1, Zarada = x.Cijena }; izvjestajClanovi.clanarineIzvjestaj.Add(_cizv); } _zarada += x.Cijena; } label5.Text = _zarada.ToString() + " KM"; dataGridView1.DataSource = izvjestajClanovi.clanarineIzvjestaj; PrisutnostClanaSearchRequest prisutnostClanaSearch = new PrisutnostClanaSearchRequest { Od = dateTimePicker1.Value, Do = dateTimePicker2.Value }; List <Model.PrisutnostClana> prisutnostClana = await _prisutnostService.Get <List <Model.PrisutnostClana> >(prisutnostClanaSearch); foreach (var x in prisutnostClana) { switch (x.Datum.DayOfWeek.ToString()) { case "Monday": izvjestajClanovi.Dani.Ponedeljak++; break; case "Tuesday": izvjestajClanovi.Dani.Utorak++; break; case "Wendsday": izvjestajClanovi.Dani.Srijeda++; break; case "Thursday": izvjestajClanovi.Dani.Cetvrtak++; break; case "Friday": izvjestajClanovi.Dani.Petak++; break; case "Saturday": izvjestajClanovi.Dani.Subota++; break; case "Sunday": izvjestajClanovi.Dani.Nedelja++; break; default: break; } } dataGridView1.AutoGenerateColumns = false; txtPon.Text = izvjestajClanovi.Dani.Ponedeljak.ToString(); txtUto.Text = izvjestajClanovi.Dani.Utorak.ToString(); txtSri.Text = izvjestajClanovi.Dani.Srijeda.ToString(); txtCet.Text = izvjestajClanovi.Dani.Cetvrtak.ToString(); txtPet.Text = izvjestajClanovi.Dani.Petak.ToString(); txtSub.Text = izvjestajClanovi.Dani.Srijeda.ToString(); txtNed.Text = izvjestajClanovi.Dani.Nedelja.ToString(); }