Пример #1
0
        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;
            }
        }
Пример #2
0
        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);
            }
        }
Пример #3
0
        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);
        }