protected void grdBeneficiarios_SelectedIndexChanging(object sender, GridViewSelectEventArgs e) { cBeneficiarioItinerario unBenIt = new cBeneficiarioItinerario(); unBenIt.Beneficiario = LosBenefiicarios[e.NewSelectedIndex]; unBenIt.Plan = LosBenefiicarios[e.NewSelectedIndex].lstPlanes[0]; ElItinerario.lstBeneficiarios.Add(unBenIt); LosPlanes.Add(LosBenefiicarios[e.NewSelectedIndex].lstPlanes[0]); CargarBeneficiariosAgregados(); CargarBeneficiarios(); if (ElItinerario.lstBeneficiarios.Count <= 0) { lblSeleccionarPlan.Visible = false; } else { lblSeleccionarPlan.Visible = true; } }
protected void btnConfirmar_Click(object sender, EventArgs e) { if (!FaltanDatos()) { if (!VerificarCantidadAgregados()) { ClientScript.RegisterClientScriptBlock(GetType(), "alert", "alert('ERROR: El número de beneficiarios no coincide con el tipo de sesión.')", true); } else { cItinerario unItinerario = new cItinerario(); switch (ddlTipoSesion.SelectedValue.ToString()) { case "Individual": unItinerario.TipoSesion = cUtilidades.TipoSesion.Individual; break; case "Grupo 2": unItinerario.TipoSesion = cUtilidades.TipoSesion.Grupo2; break; case "Grupo 3": unItinerario.TipoSesion = cUtilidades.TipoSesion.Grupo3; break; case "Taller": unItinerario.TipoSesion = cUtilidades.TipoSesion.Taller; break; case "PROES": unItinerario.TipoSesion = cUtilidades.TipoSesion.PROES; break; } switch (ddlDias.SelectedValue.ToString()) { case "Lunes": unItinerario.Dia = "L"; break; case "Martes": unItinerario.Dia = "M"; break; case "Miercoles": unItinerario.Dia = "X"; break; case "Jueves": unItinerario.Dia = "J"; break; case "Viernes": unItinerario.Dia = "V"; break; case "Sabado": unItinerario.Dia = "S"; break; } if (rblLocalidad.SelectedIndex == 0) { unItinerario.Centro = cUtilidades.Centro.JuanLacaze; } else { unItinerario.Centro = cUtilidades.Centro.NuevaHelvecia; } if (DateTime.Parse(ddlDesde.SelectedValue) >= DateTime.Parse(ddlHasta.SelectedValue)) { ClientScript.RegisterClientScriptBlock(GetType(), "alert", "alert('ERROR: La hora de fin de la sesión debe ser mayor a la de inicio.')", true); } else { unItinerario.HoraInicio = ddlDesde.SelectedValue; DateTime dHasta = DateTime.Parse(ddlHasta.SelectedValue); dHasta = dHasta.AddMinutes(-1); unItinerario.HoraFin = dHasta.ToShortTimeString(); unItinerario.lstBeneficiarios = new List <cBeneficiarioItinerario>(); cBeneficiarioItinerario unBen; for (int i = 0; i < LosBeneficiariosAgregados.Count; i++) { unBen = new cBeneficiarioItinerario(); unBen.Beneficiario = LosBeneficiariosAgregados[i]; switch (i) { case 0: unBen.Plan = LosBeneficiariosAgregados[i].lstPlanes[ddlPlan1.SelectedIndex]; break; case 1: unBen.Plan = LosBeneficiariosAgregados[i].lstPlanes[ddlPlan2.SelectedIndex]; break; case 2: unBen.Plan = LosBeneficiariosAgregados[i].lstPlanes[ddlPlan3.SelectedIndex]; break; case 3: unBen.Plan = LosBeneficiariosAgregados[i].lstPlanes[ddlPlan4.SelectedIndex]; break; case 4: unBen.Plan = LosBeneficiariosAgregados[i].lstPlanes[ddlPlan5.SelectedIndex]; break; case 5: unBen.Plan = LosBeneficiariosAgregados[i].lstPlanes[ddlPlan6.SelectedIndex]; break; case 6: unBen.Plan = LosBeneficiariosAgregados[i].lstPlanes[ddlPlan7.SelectedIndex]; break; case 7: unBen.Plan = LosBeneficiariosAgregados[i].lstPlanes[ddlPlan8.SelectedIndex]; break; default: break; } unItinerario.lstBeneficiarios.Add(unBen); } unItinerario.lstEspecialistas = LosEspecialistasAgregados; unItinerario.Comentario = txtComentario.Text; List <cUsuario> lstEspecialistasNoDisponibles = dFachada.ItinerarioVerificarHorarioUsuario(unItinerario); List <cBeneficiario> lstBeneficiariosNoDisponibles = dFachada.ItinerarioVerificarHorarioBeneficiarios(unItinerario); string sEspecialistas = ""; string sBeneficiarios = ""; //ESPECIALISTAS NO DISPONIBLES if (lstEspecialistasNoDisponibles.Count > 0) { if (lstEspecialistasNoDisponibles.Count > 1) { sEspecialistas += "Los especialistas "; } for (int i = 0; i < lstEspecialistasNoDisponibles.Count; i++) { if (i == lstEspecialistasNoDisponibles.Count - 1) { sEspecialistas += lstEspecialistasNoDisponibles[i].Nombres + " " + lstEspecialistasNoDisponibles[i].Apellidos; } else if (i == 0) { sEspecialistas += lstEspecialistasNoDisponibles[i].Nombres + " " + lstEspecialistasNoDisponibles[i].Apellidos + ", "; } else if (i == lstEspecialistasNoDisponibles.Count - 2) { sEspecialistas += lstEspecialistasNoDisponibles[i].Nombres + " " + lstEspecialistasNoDisponibles[i].Apellidos + " y "; } } if (lstEspecialistasNoDisponibles.Count > 1) { sEspecialistas += " no están disponibles para la sesión."; } else { sEspecialistas += " no está disponible para la sesión."; } } //BENEFICIARIOS NO DISPONIBLES if (lstBeneficiariosNoDisponibles.Count > 0) { if (lstEspecialistasNoDisponibles.Count > 1) { sBeneficiarios += "Los beneficiarios "; } for (int i = 0; i < lstBeneficiariosNoDisponibles.Count; i++) { if (i == lstBeneficiariosNoDisponibles.Count - 1) { sBeneficiarios += lstBeneficiariosNoDisponibles[i].Nombres + " " + lstBeneficiariosNoDisponibles[i].Apellidos; } else if (i == 0) { sBeneficiarios += lstBeneficiariosNoDisponibles[i].Nombres + " " + lstBeneficiariosNoDisponibles[i].Apellidos + ", "; } else if (i == lstBeneficiariosNoDisponibles.Count - 2) { sBeneficiarios += lstBeneficiariosNoDisponibles[i].Nombres + " " + lstBeneficiariosNoDisponibles[i].Apellidos + " y "; } } if (lstBeneficiariosNoDisponibles.Count > 1) { sBeneficiarios += " no están disponibles para la sesión."; } else { sBeneficiarios += " no está disponible para la sesión."; } } if (lstEspecialistasNoDisponibles.Count > 0 || lstBeneficiariosNoDisponibles.Count > 0) { ClientScript.RegisterClientScriptBlock(GetType(), "alert", string.Format("alert('ERROR: {0}{1} Su horario coincide con el de otra sesión.')", sEspecialistas, sBeneficiarios), true); } else { if (dFachada.ItinerarioAgregar(unItinerario)) { CargarTodo(); dFachada.SesionAgregarSesionesDelDia(); } else { ClientScript.RegisterClientScriptBlock(GetType(), "alert", "alert('ERROR: No se pudo agregar la sesión al itinerario.')", true); } } } } } else { ClientScript.RegisterClientScriptBlock(GetType(), "alert", "alert('ERROR: Se requiere ingresar todos los datos de la sesión.')", true); } }
public static List <cBeneficiarioItinerario> TraerTodosPorItinerario(cItinerario parItinerario) { List <cBeneficiarioItinerario> lstRetorno = new List <cBeneficiarioItinerario>(); cBeneficiarioItinerario unBeneficiarioYPlan; cBeneficiario unBeneficiario; cPlan unPlan; try { var vConn = new SqlConnection(CadenaDeConexion); vConn.Open(); SqlCommand cmd = new SqlCommand("Beneficiarios_TraerPorItinerario", vConn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add(new SqlParameter("@ItinerarioId", parItinerario.Codigo)); using (SqlDataReader oReader = cmd.ExecuteReader()) { while (oReader.Read()) { unBeneficiarioYPlan = new cBeneficiarioItinerario(); unBeneficiario = new cBeneficiario(); unBeneficiario.Codigo = int.Parse(oReader["BeneficiarioId"].ToString()); unBeneficiario.Nombres = oReader["BeneficiarioNombres"].ToString(); unBeneficiario.Apellidos = oReader["BeneficiarioApellidos"].ToString(); unBeneficiario.CI = int.Parse(oReader["BeneficiarioCI"].ToString()); unBeneficiario.Sexo = oReader["BeneficiarioSexo"].ToString(); unBeneficiario.Telefono1 = oReader["BeneficiarioTelefono1"].ToString(); unBeneficiario.Telefono2 = oReader["BeneficiarioTelefono2"].ToString(); unBeneficiario.Domicilio = oReader["BeneficiarioDomicilio"].ToString(); unBeneficiario.Email = oReader["BeneficiarioEmail"].ToString(); unBeneficiario.FechaNacimiento = DateTime.Parse(oReader["BeneficiarioFechaNacimiento"].ToString()).ToShortDateString(); unBeneficiario.Atributario = oReader["BeneficiarioAtributario"].ToString(); unBeneficiario.MotivoConsulta = oReader["BeneficiarioMotivoConsulta"].ToString(); unBeneficiario.Escolaridad = oReader["BeneficiarioEscolaridad"].ToString(); unBeneficiario.Derivador = oReader["BeneficiarioDerivador"].ToString(); unBeneficiario.Estado = bool.Parse(oReader["BeneficiarioEstado"].ToString()); unPlan = new cPlan(); unPlan.Codigo = int.Parse(oReader["PlanId"].ToString()); unPlan.Tipo = oReader["PlanTipo"].ToString(); unPlan.Tratamiento = bool.Parse(oReader["PlanTratamiento"].ToString()); unPlan.Evaluacion = bool.Parse(oReader["PlanEvaluacion"].ToString()); unPlan.FechaInicio = DateTime.Parse(oReader["PlanFechaInicio"].ToString()).ToShortDateString(); if (oReader["PlanFechaFin"] != DBNull.Value) { unPlan.FechaFin = DateTime.Parse(oReader["PlanFechaFin"].ToString()).ToShortDateString(); } unPlan.Activo = bool.Parse(oReader["PlanActivo"].ToString()); unBeneficiarioYPlan.Beneficiario = unBeneficiario; unBeneficiarioYPlan.Plan = unPlan; lstRetorno.Add(unBeneficiarioYPlan); } } if (vConn.State == ConnectionState.Open) { vConn.Close(); } } catch (Exception ex) { throw ex; } return(lstRetorno); }