private async void BtnTrazi_Click(object sender, EventArgs e) { DateTime dt; if (cbSviDatumi.Checked) { dt = DateTime.MinValue; } else { dt = dtpDatumTreninga.Value; } var search = new TreningSearchRequest() { TipTreningaID = Convert.ToInt32(cbTipTreninga.SelectedValue), DatumTreninga = dt, TrenerID = _trener.Id }; var treninzi = await _apiService.Get <List <Model.Trening> >(search); dgvTreninzi.DataSource = treninzi; foreach (DataGridViewRow row in dgvTreninzi.Rows) { Model.Trening obj = (Model.Trening)row.DataBoundItem; row.Cells[1].Value = obj.TipTreninga.TipTreninga1; } }
private async void VecPostojiTrening(object sender, TreningSearchRequest TreningSearch, CancelEventArgs e) { var treningList = await _apiService_Trening.Get <List <Model.Trening> >(TreningSearch); if (_id != null) { //var tr =await _apiService_Trening.GetById<Model.Trening>(_id); treningList = treningList.Where(t => t.Id != _id).ToList(); } if (treningList.Count != 0) { var trening = treningList[0]; e.Cancel = true; var ele = (DateTimePicker)sender; epTreningDetalji.SetError(ele, "Vec postoji trening u intervalu -> " + trening.VrijemePocetak.ToShortTimeString() + " - " + trening.VrijemeKraj.ToShortTimeString()); btnSnimi.Enabled = false; } else { e.Cancel = false; epTreningDetalji.SetError(dtpPocetak, null); epTreningDetalji.SetError(dtpKraj, null); btnSnimi.Enabled = true; } }
private async void BtnTrazi_Click(object sender, EventArgs e) { DateTime dt; if (cbSviDatumi.Checked) { dt = DateTime.MinValue; } else { dt = dtpDatumTreninga.Value; } var search = new TreningSearchRequest() { TipTreningaID = Convert.ToInt32(cbTipTreninga.SelectedValue), DatumTreninga = dt, TrenerID = _trener.Id, MaksimalnoPristunihManjeOd = (int)numMaksimalnoPrisutnihManjeOd.Value, MaksimalnoPristunihVeceOd = (int)numMaksimalnoPrisutnihVeceOd.Value, }; if ((string)cbOdrzan.SelectedValue == "svi") { search.Odrzan = null; } if ((string)cbOdrzan.SelectedValue == "odrzani") { search.Odrzan = true; } if ((string)cbOdrzan.SelectedValue == "ne odrzani") { search.Odrzan = false; } var treninzi = await _apiService.Get <List <Model.Trening> >(search); treninzi = treninzi.OrderByDescending(t => t.Odrzan).ToList(); dgvTreninzi.DataSource = treninzi; foreach (DataGridViewRow row in dgvTreninzi.Rows) { Model.Trening obj = (Model.Trening)row.DataBoundItem; row.Cells[1].Value = obj.TipTreninga.TipTreninga1; if (obj.Odrzan == false || obj.Odrzan == null) { row.Cells[10].Value = "false"; } else { row.Cells[10].Value = "true"; } } }
private async void FrmTrening_Load(object sender, EventArgs e) { var search = new TreningSearchRequest() { TipTreningaID = 0, DatumTreninga = DateTime.MinValue, TrenerID = _trener.Id }; var treninzi = await _apiService.Get <List <Model.Trening> >(search); treninzi = treninzi.OrderByDescending(t => t.Odrzan).ToList(); dgvTreninzi.DataSource = treninzi; foreach (DataGridViewRow row in dgvTreninzi.Rows) { Model.Trening obj = (Model.Trening)row.DataBoundItem; row.Cells[1].Value = obj.TipTreninga.TipTreninga1; if (obj.Odrzan == false || obj.Odrzan == null) { row.Cells[10].Value = "false"; } else { row.Cells[10].Value = "true"; } } //--------------------------------------------------- Model.TipTreninga svi = new Model.TipTreninga() { Id = 0, TipTreninga1 = "svi", }; cbTipTreninga.Text = "svi"; var TipTreninga = await _apiService_TipTreninga.Get <List <Model.TipTreninga> >(null); TipTreninga.Insert(0, svi); cbTipTreninga.DataSource = TipTreninga; cbTipTreninga.DisplayMember = "TipTreninga1"; cbTipTreninga.ValueMember = "id"; cbTipTreninga.SelectedValue = svi.Id; cbTipTreninga.DropDownStyle = ComboBoxStyle.DropDownList; //--------------------------------------------------- dtpDatumTreninga.Enabled = false; cbSviDatumi.Checked = true; //--------------------------------------------------- List <string> Odrzan = new List <string>(); Odrzan.Add("svi"); Odrzan.Add("odrzani"); Odrzan.Add("ne odrzani"); cbOdrzan.DataSource = Odrzan; cbOdrzan.DropDownStyle = ComboBoxStyle.DropDownList; }
private async Task <bool> VecPostojiTrening(object sender, TreningSearchRequest TreningSearch) { var treningList = await _apiService_Trening.Get <List <Model.Trening> >(TreningSearch); if (_id != null) { //var tr =await _apiService_Trening.GetById<Model.Trening>(_id); treningList = treningList.Where(t => t.Id != _id).ToList(); } if (treningList.Count != 0) { MessageBox.Show("Vec ste dodali trening u datom terminu!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1); return(true); } return(false); }
private void DtpKraj_Validating(object sender, CancelEventArgs e) { var TreningSearch = new TreningSearchRequest() { TipTreningaID = 0, TrenerID = _trener.Id }; var datumTreninga = dtpDatumTreninga.Value; var vrijemePocetak = dtpPocetak.Value; var vrijemeKraj = dtpKraj.Value; TreningSearch.DatumTreninga = new DateTime(datumTreninga.Year, datumTreninga.Month, datumTreninga.Day, 0, 0, 0, 0); TreningSearch.VrijemePocetak = new DateTime(datumTreninga.Year, datumTreninga.Month, datumTreninga.Day, vrijemePocetak.Hour, vrijemePocetak.Minute, 0, 0); TreningSearch.VrijemeKraj = new DateTime(datumTreninga.Year, datumTreninga.Month, datumTreninga.Day, vrijemeKraj.Hour, vrijemeKraj.Minute, 0, 0); VecPostojiTrening(sender, TreningSearch, e); //DatumVeciOd(dtpPocetak.Value, dtpKraj.Value, e); }
public List <Model.Trening> Get(TreningSearchRequest request) { var query = _context.Trening .Include(t => t.TipTreninga) .Include(t => t.Trener) .ThenInclude(t => t.Radnik) .ThenInclude(t => t.Osoba) .OrderBy(t => t.Odrzan) .AsQueryable(); if (request != null) { //sa ovim if-om provjeravamo ima li treninga sa zeljenim terminom.. if (request.TrenerID != null && request.VrijemePocetak != null && request.VrijemeKraj != null && request.DatumTreninga != null) { query = query.Where(q => q.TrenerId == request.TrenerID); query = query.Where(q => q.DatumTreninga.ToShortDateString() == request.DatumTreninga.ToShortDateString()); query = query.Where(q => (q.VrijemePocetak <= request.VrijemePocetak && q.VrijemeKraj >= request.VrijemePocetak) || (request.VrijemeKraj >= q.VrijemePocetak && request.VrijemeKraj <= q.VrijemeKraj) || (q.VrijemePocetak <= request.VrijemePocetak && q.VrijemeKraj >= request.VrijemeKraj)); } else { if (request.TipTreningaID != 0) { query = query.Where(q => q.TipTreningaId == request.TipTreningaID); } if (request.DatumTreninga.ToShortDateString() != DateTime.MinValue.ToShortDateString()) { query = query.Where(q => q.DatumTreninga.ToShortDateString() == request.DatumTreninga.ToShortDateString()); } if (request.TrenerID != null) { query = query.Where(q => q.TrenerId == request.TrenerID); } } } var list = query.ToList(); return(_mapper.Map <List <Model.Trening> >(list)); }
private async void FrmTrening_Load(object sender, EventArgs e) { var search = new TreningSearchRequest() { TipTreningaID = 0, DatumTreninga = DateTime.MinValue, TrenerID = _trener.Id }; var treninzi = await _apiService.Get <List <Model.Trening> >(search); dgvTreninzi.DataSource = treninzi; foreach (DataGridViewRow row in dgvTreninzi.Rows) { Model.Trening obj = (Model.Trening)row.DataBoundItem; row.Cells[1].Value = obj.TipTreninga.TipTreninga1; } //--------------------------------------------------- Model.TipTreninga svi = new Model.TipTreninga() { Id = 0, TipTreninga1 = "svi", }; cbTipTreninga.Text = "svi"; var TipTreninga = await _apiService_TipTreninga.Get <List <Model.TipTreninga> >(null); TipTreninga.Insert(0, svi); cbTipTreninga.DataSource = TipTreninga; cbTipTreninga.DisplayMember = "TipTreninga1"; cbTipTreninga.ValueMember = "id"; cbTipTreninga.SelectedValue = svi.Id; //--------------------------------------------------- dtpDatumTreninga.Enabled = false; cbSviDatumi.Checked = true; }
public ActionResult <List <Model.Trening> > Get([FromQuery] TreningSearchRequest request) { return(_service.Get(request)); }
private async void BtnSnimi_Click(object sender, EventArgs e) { if (this.ValidateChildren()) { #region validateTime if (pocetakVeciOdKraja(dtpPocetak.Value, dtpKraj.Value)) { return; } var TreningSearch = new TreningSearchRequest() { TipTreningaID = 0, TrenerID = _trener.Id }; var datumTreninga = dtpDatumTreninga.Value; var vrijemePocetak = dtpPocetak.Value; var vrijemeKraj = dtpKraj.Value; TreningSearch.DatumTreninga = new DateTime(datumTreninga.Year, datumTreninga.Month, datumTreninga.Day, 0, 0, 0, 0); TreningSearch.VrijemePocetak = new DateTime(datumTreninga.Year, datumTreninga.Month, datumTreninga.Day, vrijemePocetak.Hour, vrijemePocetak.Minute, 0, 0); TreningSearch.VrijemeKraj = new DateTime(datumTreninga.Year, datumTreninga.Month, datumTreninga.Day, vrijemeKraj.Hour, vrijemeKraj.Minute, 0, 0); var vecPostoji = await VecPostojiTrening(sender, TreningSearch); if (vecPostoji == true) { return; } #endregion validateTime if (cbTipTreninga.Items.Count <= 0) { MessageBox.Show("Za dodavanje/uredivanje treninga potrebno je imati tipove treninga!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1); return; } var request = new TreningInsertRequest() { TipTreningaId = Convert.ToInt32(cbTipTreninga.SelectedValue), DatumTreninga = new DateTime(dtpDatumTreninga.Value.Year, dtpDatumTreninga.Value.Month, dtpDatumTreninga.Value.Day, 0, 0, 0, 0), VrijemePocetak = new DateTime(dtpDatumTreninga.Value.Year, dtpDatumTreninga.Value.Month, dtpDatumTreninga.Value.Day, dtpPocetak.Value.Hour, dtpPocetak.Value.Minute, 0, 0), VrijemeKraj = new DateTime(dtpDatumTreninga.Value.Year, dtpDatumTreninga.Value.Month, dtpDatumTreninga.Value.Day, dtpKraj.Value.Hour, dtpKraj.Value.Minute, 0, 0), MaksimalnoPrisutnih = int.Parse(txtMaxPrisutnih.Text), TrenerId = _trener.Id, }; if (_id.HasValue) { //request.Id = Convert.ToInt32(_id); await _apiService_Trening.Update <Model.Trening>(_id, request); this.Close(); MessageBox.Show("Uspješna promjena!", "Success", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1); } else { await _apiService_Trening.Insert <Model.Trening>(request); this.Close(); MessageBox.Show("Uspješna ste dodali novi trening!", "Success", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1); } } }
public async Task Init() { int ClanId = _clan.Id; var search = new TreningSearchRequest() { DatumTreninga = DateTime.MinValue, TipTreningaID = 0 }; search.TipTreningaID = SelectedTipTreninga.Id; var list = await _apiService.Get <List <Model.Trening> >(search); Trening.Clear(); //----------------------------------------------------------------------------------------------- for (int i = 0; i < list.Count; i++) { Model.Trening x = list[i]; //var trenutnoPrisutnih =await _apiService_ClanPrisustvo.Get<List<Model.ClanPrisustvo>>(); var trenutnoPrisutnih = AsyncHelpers.RunSync <List <Wellness.Model.ClanPrisustvo> >(() => _apiService_ClanPrisustvo.Get <List <Model.ClanPrisustvo> >(new ClanPrisustvoSearchRequest() { TreningId = x.Id })); var treningModel = new Wellness.Mobile.Models.TreningModel() { Id = x.Id, DatumTreninga = x.DatumTreninga.ToString("dd.MM.yyyy"), pocetak = x.VrijemePocetak, kraj = x.VrijemeKraj, MaxPrisutnih = x.MaksimalnoPrisutnih, Trener = x.Trener.Radnik.Osoba.Ime + " " + x.Trener.Radnik.Osoba.Prezime, TipTreninga = x.TipTreninga.TipTreninga1, ClanId = ClanId, TrenutnoPrisutnih = trenutnoPrisutnih.Count, Odrzan = x.Odrzan, Image = x.TipTreninga.Image }; var prisustvo = AsyncHelpers.RunSync <List <Wellness.Model.ClanPrisustvo> >(() => _apiService_ClanPrisustvo.Get <List <Model.ClanPrisustvo> >(new ClanPrisustvoSearchRequest() { TreningId = x.Id, ClanId = ClanId })); if (prisustvo.Count > 0 && (selectedSearchFilter == "Svi" || selectedSearchFilter == "Prijavljeni")) { treningModel.ClanPrisustvovaoTreningu = prisustvo[0].Prisustvovao; treningModel._Prisustvuje = true; treningModel.PrisustvoId = prisustvo[0].Id; if (prisustvo[0].Ocjena != null) { treningModel._Ocjena = (int)prisustvo[0].Ocjena; treningModel.Ocjenjen = true; } else { treningModel._Ocjena = 0; treningModel.Ocjenjen = false; } Trening.Add(treningModel); } else { if (prisustvo.Count == 0 && (selectedSearchFilter == "Svi" || selectedSearchFilter == "Ne prijavljeni")) { treningModel.ClanPrisustvovaoTreningu = false; treningModel._Prisustvuje = false; treningModel.Ocjenjen = false; treningModel.PrisustvoId = 0; treningModel._Ocjena = 0; Trening.Add(treningModel); } } } }
public List <Model.Trening> Get(TreningSearchRequest request) { var query = _context.Trening .Include(t => t.TipTreninga) .Include(t => t.Trener) .ThenInclude(t => t.Radnik) .ThenInclude(t => t.Osoba) .OrderBy(t => t.Odrzan) .AsQueryable(); if (request != null) { //sa ovim if-om provjeravamo ima li treninga sa zeljenim terminom.. if (request.TrenerID != null && request.VrijemePocetak != null && request.VrijemeKraj != null && request.DatumTreninga != null) { query = query.Where(q => q.TrenerId == request.TrenerID); query = query.Where(q => q.DatumTreninga.ToShortDateString() == request.DatumTreninga.ToShortDateString()); query = query.Where(q => (request.VrijemeKraj >= q.VrijemeKraj && request.VrijemeKraj >= q.VrijemeKraj) ||//POCETAK UNUTAR (request.VrijemePocetak >= q.VrijemePocetak && request.VrijemePocetak >= q.VrijemePocetak) ||//POCETAK UNUTAR (request.VrijemePocetak <= q.VrijemePocetak && request.VrijemeKraj >= q.VrijemeKraj) ||//pocetak prije treninga kraj je poslije OKOLO (request.VrijemePocetak >= q.VrijemePocetak && request.VrijemeKraj <= q.VrijemeKraj)); //pocetak unutar i kraj unutar treninnn UNUTAR //(q.VrijemePocetak <= request.VrijemePocetak && q.VrijemeKraj >= request.VrijemePocetak)// pocetak prije treningaj, kraj je unutar treninga // || (request.VrijemeKraj >= q.VrijemePocetak && request.VrijemeKraj <= q.VrijemeKraj)//kraj je unutar treninga } else { if (request.TipTreningaID != 0) { query = query.Where(q => q.TipTreningaId == request.TipTreningaID); } if (request.DatumTreninga.ToShortDateString() != DateTime.MinValue.ToShortDateString()) { query = query.Where(q => q.DatumTreninga.ToShortDateString() == request.DatumTreninga.ToShortDateString()); } if (request.TrenerID != null) { query = query.Where(q => q.TrenerId == request.TrenerID); } if (request.MaksimalnoPristunihManjeOd != 0) { query = query.Where(q => q.MaksimalnoPrisutnih < request.MaksimalnoPristunihManjeOd); } if (request.MaksimalnoPristunihVeceOd != 0) { query = query.Where(q => q.MaksimalnoPrisutnih > request.MaksimalnoPristunihVeceOd); } if (request.Odrzan == true) { query = query.Where(q => q.Odrzan == request.Odrzan); } if (request.Odrzan == false) { query = query.Where(q => q.Odrzan == false || q.Odrzan == null); } } } var list = query.ToList(); return(_mapper.Map <List <Model.Trening> >(list)); }
public async Task Init() { int ClanId = _clan.Id; var search = new TreningSearchRequest() { DatumTreninga = DateTime.MinValue, TipTreningaID = 0 }; search.TipTreningaID = SelectedTipTreninga.Id; var list = await _apiService.Get <List <Wellness.Model.Trening> >(search); //filter if historyOnly = true //u toDeleteList se nalaze treninga koji nisu odrzani var newList = new List <Wellness.Model.Trening>(); if (_historyOnly == true) { //uklanjamo treninge koji se nisu odrzali for (int i = 0; i < list.Count; i++) { if (list[i].Odrzan == null) { list[i].Odrzan = false; } Wellness.Model.Trening x = list[i]; if (x.Odrzan == true) { //clan je prisustvovo treninug x var prisustvoList = AsyncHelpers.RunSync <List <Wellness.Model.ClanPrisustvo> >(() => _apiService_ClanPrisustvo.Get <List <Wellness.Model.ClanPrisustvo> >(new ClanPrisustvoSearchRequest() { TreningId = x.Id, ClanId = ClanId })); //ako _clan nije prosustvovo treningu x izbacujemo x iz liste if (prisustvoList.Count > 0) { newList.Add(list[i]); } } } list = newList; } else { newList = list.Where(p => p.Odrzan == false || p.Odrzan == null).ToList(); list = newList; foreach (var x in list) { if (x.Odrzan == null) { x.Odrzan = false; } } } //----------------------------------------------------------------------------------------------- Trening.Clear(); for (int i = 0; i < list.Count; i++) { Wellness.Model.Trening x = list[i]; //var trenutnoPrisutnih =await _apiService_ClanPrisustvo.Get<List<Model.ClanPrisustvo>>(); var trenutnoPrisutnih = AsyncHelpers.RunSync <List <Wellness.Model.ClanPrisustvo> >(() => _apiService_ClanPrisustvo.Get <List <Wellness.Model.ClanPrisustvo> >(new ClanPrisustvoSearchRequest() { TreningId = x.Id })); var treningModel = new Mobile.Models.TreningModel() { Id = x.Id, DatumT = x.DatumTreninga, DatumTreninga = x.DatumTreninga.ToString("dd.MM.yyyy"), pocetak = x.VrijemePocetak, kraj = x.VrijemeKraj, MaxPrisutnih = x.MaksimalnoPrisutnih, Trener = x.Trener.Radnik.Osoba.Ime + " " + x.Trener.Radnik.Osoba.Prezime, TipTreninga = x.TipTreninga.TipTreninga1, ClanId = ClanId, TrenutnoPrisutnih = trenutnoPrisutnih.Count, Odrzan = x.Odrzan, Image = x.TipTreninga.Image }; var prisustvo = AsyncHelpers.RunSync <List <Wellness.Model.ClanPrisustvo> >(() => _apiService_ClanPrisustvo.Get <List <Wellness.Model.ClanPrisustvo> >(new ClanPrisustvoSearchRequest() { TreningId = x.Id, ClanId = ClanId })); if (prisustvo.Count > 0 && (selectedSearchFilter == "Svi" || selectedSearchFilter == "Prijavljeni")) { treningModel.ClanPrisustvovaoTreningu = prisustvo[0].Prisustvovao; treningModel._Prisustvuje = true; treningModel.PrisustvoId = prisustvo[0].Id; if (prisustvo[0].Ocjena != null) { treningModel._Ocjena = (int)prisustvo[0].Ocjena; treningModel.Ocjenjen = true; } else { treningModel._Ocjena = 0; treningModel.Ocjenjen = false; } Trening.Add(treningModel); } else { if (prisustvo.Count == 0 && (selectedSearchFilter == "Svi" || selectedSearchFilter == "Ne prijavljeni")) { treningModel.ClanPrisustvovaoTreningu = false; treningModel._Prisustvuje = false; treningModel.Ocjenjen = false; treningModel.PrisustvoId = 0; treningModel._Ocjena = 0; Trening.Add(treningModel); } } } }