protected void CarregarAgenda() { // passa a data para o título, exemplo: "Domingo, 19 de fevereiro de 2016" txtTexto.Text = clData.SelectedDate.ToLongDateString(); Agendamento_Model agenda = new Agendamento_Model(); // carrega a agenda naquele dia Local_Model lmodel = new Local_Model(); try { // pega do combobox se tiver algum local listado/selecionado if (ddLocal.Items.Count > 0) { gvAgenda.DataSource = agenda.ListarDia(clData.SelectedDate, lmodel.Obter(Int32.Parse(ddLocal.SelectedValue))); } else // senão pega do cadastro do mediador logado { gvAgenda.DataSource = agenda.ListarDia(clData.SelectedDate, lmodel.Obter(Master.GetLogado().id_local)); } gvAgenda.DataBind(); if (gvAgenda.Rows.Count > 0) { gvAgenda.UseAccessibleHeader = true; gvAgenda.HeaderRow.TableSection = TableRowSection.TableHeader; } } catch { } }
protected void btnAgendar_Click(object sender, EventArgs e) { if (ValidaAgendamento()) { Agendamento_Model model = new Agendamento_Model(); agendamento a = new agendamento(); DateTime dDataInicial, dDataFinal; dDataInicial = DateTime.Parse(txtData.Value + " " + txtHoraInicial.Value + ":00"); dDataFinal = DateTime.Parse(txtData.Value + " " + txtHoraFinal.Value + ":00"); a.descricao = txtDescricaoAgendamento.Value; a.id_solicitacao = int.Parse(txtId.Value); a.data_inicial = dDataInicial; a.data_final = dDataFinal; a.id_mediador = Master.GetLogado().id; Local_Model mLocal = new Local_Model(); if (model.VerificarDisponibilidade(a, mLocal.Obter(Master.GetLogado().id_local))) { if (model.Inserir(a)) { Master.Sucesso("Horário agendado com sucesso."); LimpaCamposAgendamento(); InsereDescSoli("Solicitação já agendada."); } else { Master.Alerta("Erro ao agendar horário. Erro: " + model.message); } } else { // se model.message estiver vazio, então ele retornou false pois o horário está vago, // se nao, houve erro na consulta if (model.message == "") { Master.Alerta("O horário escolhido já está agendado, selecione outro horário."); } else { Master.Alerta("Erro ao agendar horário. Erro: " + model.message); } } } }
protected void gvAgenda_RowCommand(object sender, GridViewCommandEventArgs e) { // recupera a linha clicada no gridview int linha = Convert.ToInt32(e.CommandArgument); // recupera o id do agendamento na linha clicada Int32 id = (Int32)gvAgenda.DataKeys[linha].Value; if (e.CommandName == "Arquivar") { agendamento a = new agendamento(); Agendamento_Model model = new Agendamento_Model(); // busca o agendamento selecionado a = model.Obter(id); if (model.Arquivar(a)) { Master.Sucesso("Agendamento arquivado com sucesso"); CarregarAgenda(); } else { Master.Alerta("Erro ao excluír o agendamento. Erro:" + model.message); } } else if (e.CommandName == "Mediacao") { // deve abrir o cadastro de pessoa com o parametro AGEND // para quando abrir o cadastro ele salvar na sessão Response.Redirect("cad_pessoa.aspx?AGEND=" + id.ToString()); } else if (e.CommandName == "Visualizar") { Mediacao_Model medm = new Mediacao_Model(); try { // visualiza a mediação correspondente a esse agendamento Response.Redirect("detail_mediacao.aspx?ID=" + medm.ObterPorAgendamento(id).id.ToString()); } catch (Exception error) { Master.Alerta(error.Message); } } }