// GET: api/Agendamento/5 public IHttpActionResult Get(string filtro, DateTime filtroinicio, DateTime filtrofim) { if (filtro == null) { filtro = ""; } Agendamento agendamento = new Agendamento(); var Id = ""; var identity = User.Identity as ClaimsIdentity; if (identity != null) { IEnumerable <Claim> claims = identity.Claims; Id = claims.First(x => x.Type == "Id").Value; } var iduser = agendamento.IdUsuario = Convert.ToInt32(Id); try { AgendamentoRepositorio repo = new AgendamentoRepositorio(); var agend = repo.PesquisarAgendamentoPorIDUser(iduser, filtro, filtroinicio, filtrofim); return(Ok(agend)); } catch (Exception ex) { return(InternalServerError(ex)); } }
private void ExcluirAgendamento_Click(object sender, RoutedEventArgs e) { control.MenuItem menuItem = (control.MenuItem)sender; control.ContextMenu contextMenu = (control.ContextMenu)menuItem.Parent; control.DataGrid item = (control.DataGrid)contextMenu.PlacementTarget; if (item.SelectedCells.Count > 0) { Agendamento agendamento = (Agendamento)item.SelectedCells[0].Item; AgendamentoRepositorio repos = new AgendamentoRepositorio(); MessageBoxResult resposta; resposta = System.Windows.MessageBox.Show("Deseja realmente excluir este Agendamento?", "Excluir", MessageBoxButton.YesNo, MessageBoxImage.Question); if (resposta == MessageBoxResult.Yes) { repos.Excluir(agendamento.Id); AtualizarDG(); } else { e.Handled = true; } } }
public void Post([FromBody] Agendamento value) { var conexao = new Connection(new System.Data.SqlClient.SqlConnection()); try { using (var repositorio = new AgendamentoRepositorio(new Connection(new System.Data.SqlClient.SqlConnection()))) { #region Validaçãoes if (repositorio.Buscar(new Agendamento() { IdAgenda = value.IdAgenda }).Where(x => x.Data == value.Data && x.Horario == value.Horario).Count() > 0) { throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.NotAcceptable) { Content = new StringContent("Existe um outro agendamento para esse mesmo horário."), ReasonPhrase = "Agendamento inválido" }); } #endregion repositorio.Criar(value); } } catch (Exception ex) { throw ex; } finally { conexao.Dispose(); } }
// GET: api/Agendamento public IHttpActionResult Get(DateTime dia, TimeSpan horaretirada, TimeSpan horadevolucao, int id) { try { AgendamentoRepositorio repo = new AgendamentoRepositorio(); var agend = repo.ConsultarAgendamento(dia, horaretirada, horadevolucao, id); var QuantidadeDisponivel = 0; if (agend.Count > 0) { QuantidadeDisponivel = agend.First().Quantidade; } else { EquipamentoRepositorio repoEquip = new EquipamentoRepositorio(); Equipamento equipamento = new Equipamento(); equipamento = repoEquip.ConsultarPorId(id); QuantidadeDisponivel = equipamento.Quantidade; } return(Ok(QuantidadeDisponivel)); } catch (Exception ex) { return(InternalServerError(ex)); } }
public ActionResult ObterAgendamento() { _repositorio = new AgendamentoRepositorio(); _repositorio.ObterAgendamentos(); ModelState.Clear(); return(View(_repositorio.ObterAgendamentos())); }
private void AtualizarDG() { AgendamentoRepositorio repo = new AgendamentoRepositorio(); lista = repo.PesquisarAgendamento2(txtPesquisar.Text, dpDataInicio.SelectedDate.Value, dpDataFim.SelectedDate.Value); dgCarteira.ItemsSource = lista; dgCarteira.IsReadOnly = true; dgCarteira.CanUserAddRows = false; }
public void Delete(int id) { using (var repositorio = new AgendamentoRepositorio(new Connection(new System.Data.SqlClient.SqlConnection()))) { repositorio.Deletar(new Agendamento() { Id = id }); } }
public Agendamento Get(int idAgendamento) { using (var repositorioAgendamento = new AgendamentoRepositorio(new Connection(new System.Data.SqlClient.SqlConnection()))) { return(repositorioAgendamento.Buscar(new Agendamento() { Id = idAgendamento }).FirstOrDefault()); } }
public IEnumerable <Agendamento> Get(DateTime data, int idAgenda) { var conexao = new Connection(new System.Data.SqlClient.SqlConnection()); using (var repositorioAgendamento = new AgendamentoRepositorio(conexao)) { return(repositorioAgendamento.Buscar(new Agendamento() { IdAgenda = idAgenda }).Where(x => x.Data == data.Date)); } }
private void OpcaoExcluir_Click(object sender, RoutedEventArgs e) { MenuItem menuItem = (MenuItem)sender; ContextMenu contextMenu = (ContextMenu)menuItem.Parent; DataGrid item = (DataGrid)contextMenu.PlacementTarget; if (item.SelectedCells.Count > 0) { Usuario user = (Usuario)item.SelectedCells[0].Item; UsuarioRepositorio repos = new UsuarioRepositorio(); AgendamentoRepositorio reposAgend = new AgendamentoRepositorio(); var lista = reposAgend.PesquisarTodosAgendamento(""); bool erro = false; foreach (var agend in lista) { agend.Usuario = new Usuario(); agend.UsuarioAlteracao = new Usuario(); if (agend.Usuario.Id == user.Id || agend.UsuarioAlteracao.Id == user.Id) { erro = true; break; } } if (erro == true) { MessageBox.Show("Este usuario ja possui um agendamento, por tal motivo não será possível fazer a exclusão.", "Erro", MessageBoxButton.OK, MessageBoxImage.Error); } else { MessageBoxResult resposta; resposta = MessageBox.Show("Deseja realmente excluir este Usuario?", "Excluir", MessageBoxButton.YesNo, MessageBoxImage.Question); if (resposta == MessageBoxResult.Yes) { repos.excluir(user.Id); AtualizarDG(); } else { e.Handled = true; } } } }
public ActionResult ExcluirAgendamento(int id) { try { _repositorio = new AgendamentoRepositorio(); if (_repositorio.ExcluirAgendamento(id)) { ViewBag.Mensagem = "Seu agendamento foi excluido com sucesso"; } return(RedirectToAction("ObterAgendamento")); } catch (Exception) { return(View("ObterAgendamento")); } }
private void alterarStatusParaAtrasado_Click(object sender, RoutedEventArgs e) { control.MenuItem menuItem = (control.MenuItem)sender; control.ContextMenu contextMenu = (control.ContextMenu)menuItem.Parent; control.DataGrid item = (control.DataGrid)contextMenu.PlacementTarget; if (item.SelectedCells.Count > 0) { Agendamento agendamento = (Agendamento)item.SelectedCells[0].Item; AgendamentoRepositorio repos = new AgendamentoRepositorio(); int usuario = agendamento.Usuario.Id; repos.Alterar(4, usuario, agendamento.Id); AtualizarDG(); } }
public ActionResult AtualizarAgendamento(Agenda agendaObj) { try { _repositorio = new AgendamentoRepositorio(); _repositorio.AtualizarAgendamento(agendaObj); _repositorio = new AgendamentoRepositorio(); _repositorio.ObterAgendamentos(); ModelState.Clear(); //return View(); return(RedirectToAction("ObterAgendamento", "Agenda", _repositorio.ObterAgendamentos())); } catch (Exception e) { return(View()); //return View("ObterAgendamento"); } }
// POST: api/Agendamento public IHttpActionResult Post([FromBody] Agendamento agendamento) { var Id = ""; var identity = User.Identity as ClaimsIdentity; if (identity != null) { IEnumerable <Claim> claims = identity.Claims; Id = claims.First(x => x.Type == "Id").Value; } agendamento.IdUsuario = Convert.ToInt32(Id); try { AgendamentoRepositorio Repo = new AgendamentoRepositorio(); Repo.InserirAgendamento(agendamento); return(Ok()); } catch (Exception ex) { return(InternalServerError(ex)); } }
public ActionResult IncluirAgendamento(Agenda agendaObj) { try { if (ModelState.IsValid) { _repositorio = new AgendamentoRepositorio(); if (_repositorio.AdicionarAgendamento(agendaObj)) { ViewBag.Mensagem = "Seu agendamento foi realizado com sucesso!"; } } _repositorio.ObterAgendamentos(); ModelState.Clear(); return(RedirectToAction("IncluirAgendamento")); } catch (Exception) { return(View("IncluirAgendamento")); } }
public IEnumerable <OdontologistaAgendamento> Todos(DateTime data, int idClinica) { var conexao = new Connection(new System.Data.SqlClient.SqlConnection()); try { using (var repositorioOdonto = new OdontologistaRepositorio(conexao)) { var listaOdonto = new List <OdontologistaAgendamento>(); repositorioOdonto.Buscar(idClinica).ToList().ForEach( x => listaOdonto.Add(new OdontologistaAgendamento() { Odontologista = x })); using (var repositorioAgenda = new AgendaRepositorio(conexao)) { using (var repositorioAgendamento = new AgendamentoRepositorio(conexao)) { using (var repositorioSemana = new SemanaAgendaRepositorio(conexao)) { using (var repositorioDia = new DiaAgendaRepositorio(conexao)) { using (var repositorioDayOff = new AgendaDayOffRepositorio(conexao)) { foreach (var item in listaOdonto) { var agenda = repositorioAgenda.Buscar(new Agenda() { IdClinica = idClinica, IdOdontologista = item.Odontologista.Id }).FirstOrDefault(); if (agenda != null) { var agendamentos = repositorioAgendamento.Buscar(new Agendamento() { IdAgenda = agenda.Id }).Where(x => x.Data == data.Date); var semana = repositorioSemana.Buscar(new SemanaAgenda() { IdClinica = idClinica, IdOdontologista = item.Odontologista.Id }).Where(x => x.DiaSemana == (int)data.DayOfWeek + 1); var dia = repositorioDia.Buscar(new DiaAgenda() { IdClinica = idClinica, IdOdontologista = item.Odontologista.Id }).Where(x => x.Data == data.Date); var dayOff = repositorioDayOff.Buscar(new AgendaDayOff() { IdClinica = idClinica, IdOdontologista = item.Odontologista.Id }).Where(x => x.Data == data.Date); var listaAgendamentos = new List <Agendamento>(); if (dayOff.Count() >= 1) { return(null); } if (dia.Count() >= 1) { foreach (var d in dia.Where(x => x.Data.Date == data.Date)) { TimeSpan horario = d.HorarioAtendimentoInicio; do { if (agendamentos.Where(x => x.Data.Date == data.Date && x.Horario >= horario && x.Horario < horario.Add(new TimeSpan(0, 0, agenda.TempoAtendimento, 0, 0)) ).Count() > 0) { var agendamento = agendamentos.Where(x => x.Data.Date == data.Date && x.Horario >= horario && x.Horario < horario.Add(new TimeSpan(0, 0, agenda.TempoAtendimento, 0, 0)) ).FirstOrDefault(); listaAgendamentos.Add(new Agendamento() { Id = agendamento.Id, Data = agendamento.Data, Horario = agendamento.Horario, IdAgenda = agenda.Id, IdOdonto = agenda.IdOdontologista, IdPaciente = agendamento.IdPaciente, Nome = agendamento.Nome }); } else { listaAgendamentos.Add(new Agendamento() { Id = 0, Data = data.Date, Horario = horario, IdAgenda = agenda.Id, IdOdonto = agenda.IdOdontologista, IdPaciente = 0 }); } horario = horario.Add(new TimeSpan(0, 0, agenda.TempoAtendimento, 0, 0)); } while (horario <= d.HorarioAtendimentoTermino); } } if (semana.Count() >= 1) { foreach (var s in semana.Where(x => x.DiaSemana == (int)data.DayOfWeek + 1)) { TimeSpan horario = s.HorarioAtendimentoInicio; do { if (agendamentos.Where(x => x.Data.Date == data.Date && x.Horario >= horario && x.Horario < horario.Add(new TimeSpan(0, 0, agenda.TempoAtendimento, 0, 0)) ).Count() > 0) { var agendamento = agendamentos.Where(x => x.Data.Date == data.Date && x.Horario >= horario && x.Horario < horario.Add(new TimeSpan(0, 0, agenda.TempoAtendimento, 0, 0)) ).FirstOrDefault(); listaAgendamentos.Add(new Agendamento() { Id = agendamento.Id, Data = agendamento.Data, Horario = agendamento.Horario, IdAgenda = agenda.Id, IdOdonto = agenda.IdOdontologista, IdPaciente = agendamento.IdPaciente, Nome = agendamento.Nome }); } else { listaAgendamentos.Add(new Agendamento() { Id = 0, Data = data.Date, Horario = horario, IdAgenda = agenda.Id, IdOdonto = agenda.IdOdontologista, IdPaciente = 0 }); } horario = horario.Add(new TimeSpan(0, 0, agenda.TempoAtendimento, 0, 0)); } while (horario <= s.HorarioAtendimentoTermino); } } item.Agendamentos = listaAgendamentos; } } } } } } } return(listaOdonto); } } catch (Exception ex) { throw ex; } finally { conexao.Dispose(); } }
public IEnumerable <DateTime> DiasDisponiveis(int meses, int idOdontologista, int idClinica) { var conexao = new Connection(new System.Data.SqlClient.SqlConnection()); using (var repositorio = new AgendaRepositorio(conexao)) { var agenda = repositorio.Buscar(new Agenda() { IdClinica = idClinica, IdOdontologista = idOdontologista }).FirstOrDefault(); if (agenda == null) { return(null); } using (var repositorioAgendamento = new AgendamentoRepositorio(conexao)) { var agendamentos = repositorioAgendamento.Buscar(new Agendamento() { IdAgenda = agenda.Id }); using (var repositorioSemana = new SemanaAgendaRepositorio(conexao)) { var semana = repositorioSemana.Buscar(new SemanaAgenda() { IdClinica = idClinica, IdOdontologista = idOdontologista }); using (var repositorioDia = new DiaAgendaRepositorio(conexao)) { var dia = repositorioDia.Buscar(new DiaAgenda() { IdClinica = idClinica, IdOdontologista = idOdontologista }); using (var repositorioDayOff = new AgendaDayOffRepositorio(conexao)) { var dayOff = repositorioDayOff.Buscar(new AgendaDayOff() { IdClinica = idClinica, IdOdontologista = idOdontologista }); var listaDatas = new List <DateTime>(); var dataAtual = DateTime.Now; while (dataAtual <= DateTime.Now.AddMonths(meses)) { if (dayOff.Where(x => x.Data.Date == dataAtual.Date).Count() >= 1) { dataAtual = dataAtual.AddDays(1); continue; } if (dia.Where(x => x.Data.Date == dataAtual.Date).Count() >= 1) { foreach (var d in dia.Where(x => x.Data.Date == dataAtual.Date)) { TimeSpan horario = d.HorarioAtendimentoInicio; do { if (agendamentos.Where(x => x.Data.Date == dataAtual.Date && x.Horario >= horario && x.Horario < horario.Add(new TimeSpan(0, 0, agenda.TempoAtendimento, 0, 0)) ).Count() == 0) { listaDatas.Add(dataAtual); horario = d.HorarioAtendimentoTermino.Add(new TimeSpan(90000)); } else { horario = horario.Add(new TimeSpan(0, 0, agenda.TempoAtendimento, 0, 0)); } } while (horario <= d.HorarioAtendimentoTermino); } } if (semana.Where(x => x.DiaSemana == (int)dataAtual.DayOfWeek + 1).Count() >= 1 && listaDatas.Where(x => x.Date == dataAtual.Date).Count() == 0) { foreach (var s in semana.Where(x => x.DiaSemana == (int)dataAtual.DayOfWeek + 1)) { TimeSpan horario = s.HorarioAtendimentoInicio; do { if (agendamentos.Where(x => x.Data.Date == dataAtual.Date && x.Horario >= horario && x.Horario < horario.Add(new TimeSpan(0, 0, agenda.TempoAtendimento, 0, 0)) ).Count() == 0) { listaDatas.Add(dataAtual); horario = s.HorarioAtendimentoTermino.Add(new TimeSpan(90000)); } horario = horario.Add(new TimeSpan(0, 0, agenda.TempoAtendimento, 0, 0)); } while (horario <= s.HorarioAtendimentoTermino); } } dataAtual = dataAtual.AddDays(1); } return(listaDatas); } } } } } }
public AgendamentoController() { repo = new AgendamentoRepositorio(); }
public void Inicializar() { BaseSqlTeste.SeedDatabase(); _agendamentoRepositorio = new AgendamentoRepositorio(); }
public ActionResult AtualizarAgendamento(int id) { _repositorio = new AgendamentoRepositorio(); return(View(_repositorio.ObterAgendamentos().Find(t => t.cod_agendamento == id))); }