protected void btnImprimir_Click(object sender, EventArgs e)
    {
        string Ciclo = this.ddlCiclo.SelectedValue;
        int Zona = int.Parse(this.ddlZonas.SelectedValue);
        int PlantelID = int.Parse(this.ddlPlanteles.SelectedValue);
        byte Turno = byte.Parse(this.ddlTurnos.SelectedValue);
        int Estatus = int.Parse(ddlEstatus.SelectedValue);

        string NomPlantel = this.ddlPlanteles.SelectedItem.Text;

        db = new DBEscolarDataContext();
        var res = (from A in db.vwRPTEstadisticaPreInscritos011s
                   where A.Ciclo == Ciclo && A.Zona == Zona && A.PlantelID == PlantelID && A.Turno == (Turno == 0 ? A.Turno : Turno)
                    && A.Estatus == (Estatus == -1 ? A.Estatus : Estatus)
                   orderby A.Zona, A.Plantel, A.Turno, A.Nombre
                   select A).ToList();

        this.lblMensaje.Visible = res.Count() == 0;
        if (res.Count() == 0)
            return;

        ReportDocument rptDoc = new ReportDocument();

        rptDoc.Load(Server.MapPath("../Reportes/rptEstPre01.rpt"));
        rptDoc.SetDataSource(res);
        rptDoc.SetParameterValue("NomPlantel", NomPlantel);

        MemoryStream stream = (MemoryStream)rptDoc.ExportToStream(CrystalDecisions.Shared.ExportFormatType.Excel);
        rptDoc.Close();
        rptDoc.Dispose();

        Response.Clear();
        Response.Buffer = true;
        Response.ContentType = "application/vnd.ms-excel";
        Response.AddHeader("Content-Disposition", "inline; filename=Alumnos.xls");
        Response.BinaryWrite(stream.ToArray());
        Response.End();
        stream.Close();
        stream.Dispose();
    }
    protected void ddlPlantel_SelectedIndexChanged(object sender, EventArgs e)
    {
        DBEscolarDataContext db = new DBEscolarDataContext();
        var res = (from P in db.Plantels
                   where P.PlantelID == byte.Parse(this.ddlPlantel.SelectedValue)
                   select new { ID = P.PlantelID, Nombre = P.Descripcion, P.TurnoMatutino, P.TurnoVespertino, P.TurnoNocturno, P.EsEmsad }).FirstOrDefault();

        if (res == null)//Nunca debe de pasar
            return;

        Utils.InicializaCombo(this.ddlTurno);

        if (res.TurnoMatutino)
            this.ddlTurno.Items.Add(new ListItem("Matutino", "1"));
        if (res.TurnoVespertino)
            this.ddlTurno.Items.Add(new ListItem("Vespertino", "2"));
        if (res.TurnoNocturno)
            this.ddlTurno.Items.Add(new ListItem("Nocturno", "3"));
        if (res.EsEmsad)
            this.ddlTurno.Items.Add(new ListItem("Turno Único", "1"));

        //Si solo hay un turno, seleccionarlo automaticamente
        if (this.ddlTurno.Items.Count == 2)
            this.ddlTurno.SelectedIndex = 1;
    }
    protected void ddlMunicipio_SelectedIndexChanged(object sender, EventArgs e)
    {
        DBEscolarDataContext db = new DBEscolarDataContext();
        var res = from P in db.Plantels
                  where P.Activo && P.MunicipioID == byte.Parse(this.ddlMunicipio.SelectedValue)
                  orderby P.plantel
                  select new { ID = P.PlantelID, Nombre = P.plantel + " - " + P.Descripcion };

        Utils.InicializaCombo(this.ddlPlantel);
        this.ddlPlantel.DataSource = res;
        this.ddlPlantel.DataBind();
    }
    private void Imprimir(int AlumnoID)
    {
        DBEscolarDataContext db = new DBEscolarDataContext();
        var Pago = (from P in db.vwRPTPagosEncabezados join D in db.vwRPTPagosDetalles on P.PagoID equals D.PagoID
                    where P.AlumnoID == AlumnoID && P.Ciclo == Utils.CicloActual && (P.Estatus != 0)
                    && D.Clave == "A01"
                    select P).FirstOrDefault();

        if (Pago == null)
        {
            this.lblMensaje.Text = "No se ha encontrado la ficha de pago.<br />Nota: Para poder generar la Ficha de Pago, debes de estar validado.";
            return;
        }
        else if (Pago.Estatus == 3) {

            Alumno Alumno = (from A in db.Alumnos
                             where A.AlumnoID == AlumnoID
                             select A).FirstOrDefault();

            this.lblMensaje.Text = "Felicidades. Tú ficha ha sido pagada y ya te encuentras inscrito con matrícula: " + Alumno.Matricula;
            return;

        }

        var Detalle = (from D in db.vwRPTPagosDetalles
                       where D.PagoID == Pago.PagoID
                       select D).ToList();

        //Actualiza el estatus del pago a 2:Impreso
        db.spEXEPagosCambiaEstatus(AlumnoID, Pago.PagoID, 2, Utils.CicloActual);

        ArrayList col = new ArrayList();
        col.Add(Pago);
        ReportDocument rptDoc = new ReportDocument();

        rptDoc.Load(Server.MapPath("Reportes/rptFichaDePago.rpt"));
        //set dataset to the report viewer.
        rptDoc.SetDataSource(col);
        rptDoc.Subreports["Detalle"].SetDataSource(Detalle);
        rptDoc.Subreports["Detalle2"].SetDataSource(Detalle);

        MemoryStream stream = (MemoryStream)rptDoc.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
        rptDoc.Close();
        rptDoc.Dispose();
        Response.Clear();
        Response.ContentType = @"Application/pdf";
        Response.AddHeader("Content-Disposition", "inline; filename=FichaDePago.pdf");
        Response.AddHeader("content-length", stream.Length.ToString());
        Response.BinaryWrite(stream.ToArray());
        Response.Flush();
        stream.Close();
        stream.Dispose();
    }
    protected void btnAccesar_Click(object sender, EventArgs e)
    {
        Session.Clear();

        Alumnos_Virtual PreInsc = new Alumnos_Virtual();

        CURP curp = new CURP();
        curp.Curp = this.txtCURP.Text;
           // curp.getFromRENAPO(this.txtCURP.Text);
        curp.Encontrado = true;

        if (curp.Encontrado)
        {
            PreInsc.CURP = curp.Curp;
            PreInsc.Nombre = "";
            PreInsc.ApPaterno ="";
            PreInsc.ApMaterno ="";
            PreInsc.Sexo = char.Parse("H");
            PreInsc.FechaNac = new DateTime();
            PreInsc.EntidadFed = curp.Estado;
            /*if (PreInsc.EntidadFed.Length > 20)//TODO: Mover esta comprobacion a la clase CURP
                PreInsc.EntidadFed = "EXTRANJERO";*/
        }
        else// Si no esta en la RENAPO :(
        {
            DBEscolarDataContext db = new DBEscolarDataContext();
            var curpDB = (from C in db.CURPs
                          where C.curp == this.txtCURP.Text
                          select C).FirstOrDefault();

            if (curpDB == null) //Si tampoco lo encontro en la BD:CURPS
            {
                lblMensaje.Text = "El CURP que proporcionaste no ha sido encontrado ni en el sitio oficial de la RENAPO, y tampoco ha sido encontrado en nuestra BD. <br /> Si estas seguro que es correcto, favor de acudir a control escolar del plantel donde quieres inscribirte.";
                return;
            }

            PreInsc.CURP = curpDB.curp;
            PreInsc.Nombre = curpDB.Nombre;
            PreInsc.ApPaterno = curpDB.ApPaterno;
            PreInsc.ApMaterno = curpDB.ApMaterno;
            PreInsc.Sexo = curpDB.Sexo;
            PreInsc.FechaNac = curpDB.FechaNacimiento;
            PreInsc.EntidadFed = curpDB.Estado;
        }

        PreInsc.PlantelID = 141;
        PreInsc.Turno = 1;
        PreInsc.Estatus = 0;

        Session["PreInsc"] = PreInsc;
        Response.Redirect("SolicitudPV.aspx");
    }
    protected void btnAccesar_Click(object sender, EventArgs e)
    {
        Session.Clear();

        PreInscrito PreInsc = new PreInscrito();

        CURP curp = new CURP();
           // curp.getFromRENAPO(this.txtCURP.Text);
        curp.Curp = this.txtCURP.Text;

        DBEscolarDataContext db = new DBEscolarDataContext();
        var curpDB = (from C in db.CURPs
                      where C.curp == this.txtCURP.Text
                      select C).FirstOrDefault();

        if (curpDB != null) //Si tampoco lo encontro en la BD:CURPS
        {
            PreInsc.CURP = curpDB.curp;
            PreInsc.Nombre = curpDB.Nombre;
            PreInsc.ApPaterno = curpDB.ApPaterno;
            PreInsc.ApMaterno = curpDB.ApMaterno;
            PreInsc.Sexo = curpDB.Sexo;
            PreInsc.FechaNac = curpDB.FechaNacimiento;
            PreInsc.EntidadFed = curpDB.Estado;
        }
        else
        {
            /*curp.Encontrado = true;
            PreInsc.CURP = curp.Curp;
            PreInsc.Nombre = "" ;
            PreInsc.ApPaterno = "";
            PreInsc.ApMaterno = "";
            PreInsc.Sexo = char.Parse(" ");
            PreInsc.FechaNac = new DateTime();
            PreInsc.EntidadFed = "";
            if (PreInsc.EntidadFed.Length > 20)//TODO: Mover esta comprobacion a la clase CURP
                PreInsc.EntidadFed = "EXTRANJERO";*/
            lblMensaje.Text = "Tu CURP no puede ser validada o es incorrecta, debes acudir al plantel para poder preinscribirte";
            return;
        }

        PreInsc.PlantelID = byte.Parse(this.ddlPlantel.SelectedValue);
        PreInsc.Turno = byte.Parse(this.ddlTurno.SelectedValue);
        PreInsc.Ciclo = Utils.CicloPreInscripciones;
        PreInsc.Estatus = 0;

        Session["PreInsc"] = PreInsc;
        Response.Redirect("SolicitudPre.aspx");
    }
    protected void txtCURP_TextChanged(object sender, EventArgs e)
    {
        Session.Clear();

        DBEscolarDataContext db = new DBEscolarDataContext();
        var PreInsc = (from A in db.Alumnos_Virtuals
                       where A.CURP == this.txtCURP.Text
                       select A).FirstOrDefault();

        if (PreInsc != null)//Si ya existe
        {
            Session["PreInsc"] = PreInsc;
            Response.Redirect("SolicitudPV.aspx");
            return;
        }
    }
    private void Guardar()
    {
        DBEscolarDataContext db = new DBEscolarDataContext();
        var Alumno = (from A in db.Alumnos
                      where A.Matricula == this.Matricula
                      select A).FirstOrDefault();

        if (Alumno == null) //NO existe en Alumnos
        {
            //Si no esta en la sesion, que lo cargue
            AlumnoReinsc Alu = Session["AlumnoReinsc"] as AlumnoReinsc ?? (from A in db.AlumnoReinscs
                                                                           where A.Matricula == this.Matricula
                                                                           select A).FirstOrDefault();

            if (Alu == null) //NO EXISTE, nunca debe de pasar, si no, no hubiera pasado Accesar
                return;

            Alumno = new Alumno();
            Alumno.PlantelID = Alu.PlantelID;
            Alumno.Turno = Alu.Turno;
            Alumno.Grupo = Alu.Grupo;
            Alumno.Semestre = Alu.Semestre;
            Alumno.Matricula = Alu.Matricula;

            Alumno.FechaDeAlta = DateTime.Now;
            db.Alumnos.InsertOnSubmit(Alumno);
        }
        else if (Alumno.Estatus == 0 && Alumno.Semestre < 6)//Si ya esta en alumnos pero esta actualizando
        {
            Alumno.Semestre += 1;
            Alumno.Grupo += 100;
        }

        Alumno.CURP = this.txtCURP.Text.ToUpper();
        Alumno.ApPaterno = this.txtApPaterno.Text.ToUpper();
        Alumno.ApMaterno = this.txtApMaterno.Text.ToUpper();
        Alumno.Nombre = this.txtNombre.Text.ToUpper();
        Alumno.Sexo = char.Parse(this.ddlSexo.SelectedValue);
        Alumno.FechaNac = DateTime.Parse(this.txtFecNac.Text);

        Alumno.Telefono = this.txtTelefono.Text.ToUpper();
        Alumno.Celular = this.txtCelular.Text.ToUpper();
        Alumno.Correo = this.txtCorreo.Text.ToLower();

        Alumno.Calle = this.txtDirCalle.Text.ToUpper();
        Alumno.Numero = this.txtDirNumero.Text.ToUpper();
        Alumno.CodigoPostal = int.Parse(this.txtDirCP.Text);
        Alumno.ColoniaID = int.Parse(this.ddlColonia.SelectedValue);
        Alumno.ColoniaTXT = Alumno.ColoniaID > 0 ? this.ddlColonia.SelectedItem.Text.ToUpper() : this.txtDirColonia.Text.ToUpper();

        Alumno.EstadoCivil = byte.Parse(this.ddlEstadoCivil.SelectedValue);
        Alumno.Ocupacion = byte.Parse(this.ddlOcupacion.SelectedValue);
        Alumno.TipoBeca = byte.Parse(this.ddlTipoBeca.SelectedValue);
        Alumno.TipoSangre = byte.Parse(this.ddlTipoSangre.SelectedValue);
        Alumno.Alergias = this.chkAlergias.Checked ? this.txtAlergias.Text.ToUpper() : null;
        Alumno.EnfermedadesCronicas = this.chkEnfCronicas.Checked ? this.txtEnfCronicas.Text.ToUpper() : null;
        Alumno.CapacidadesDiferentes = this.chkCapDiferentes.Checked ? this.txtCapDiferentes.Text.ToUpper() : null;

        Alumno.DIMSS = this.chkIMSS.Checked;
        Alumno.DSeguroPopular = this.chkSeguro.Checked;
        Alumno.DISSSTE = this.chkISSSTE.Checked;
        Alumno.DPrivado = this.chkPrivado.Checked;

        Alumno.IntPers1 = byte.Parse(this.ddlIntDet1.SelectedValue);
        Alumno.IntPersOtros1 = this.txtIntOtro1.Text.ToUpper();
        Alumno.IntPers2 = byte.Parse(this.ddlIntDet2.SelectedValue);
        Alumno.IntPersOtros2 = this.txtIntOtro2.Text.ToUpper();

        Alumno.ViveCon = byte.Parse(this.rblViveCon.SelectedValue);
        if (this.ddlViveConTutor.SelectedValue == "-1")
            Alumno.ViveConTutor = null;
        else
            Alumno.ViveConTutor = byte.Parse(this.ddlViveConTutor.SelectedValue);
        Alumno.TipoVivienda = byte.Parse(this.rblTipoDeCasa.SelectedValue);
        Alumno.IngresoMensual = byte.Parse(this.rblIngresoMensual.SelectedValue);
        Alumno.NumIntegrantes = byte.Parse(this.ddlIntegrantes.SelectedValue);
        Alumno.TienePC = this.chkTienePC.Checked;
        Alumno.TieneInternet = this.chkTieneInternet.Checked;

        Alumno.SecundariaID = int.Parse(this.ddlSecSecundaria.SelectedValue);
        Alumno.SecundariaTXT = Alumno.SecundariaID > 0 ? this.ddlSecSecundaria.SelectedItem.Text.ToUpper() : this.txtSecundaria.Text.ToUpper();

        if (this.tabPadre.Visible)
        {
            Alumno.PadreApPaterno = this.txtPadreApPaterno.Text.ToUpper();
            Alumno.PadreApMaterno = this.txtPadreApMaterno.Text.ToUpper();
            Alumno.PadreNombre = this.txtPadreNombre.Text.ToUpper();
            Alumno.PadreTelefono = this.txtPadreTelefono.Text.ToUpper();
            Alumno.PadreOcupacion = byte.Parse(this.ddlPadreOcupacion.SelectedValue);
            Alumno.PadreEmpresa = this.txtPadreEmpresa.Text.ToUpper();
        }
        else
        {
            Alumno.PadreApPaterno = Alumno.PadreApMaterno = Alumno.PadreNombre = Alumno.PadreTelefono = Alumno.PadreEmpresa = null;
            Alumno.PadreOcupacion = null;
        }

        if (this.tabMadre.Visible)
        {
            Alumno.MadreApPaterno = this.txtMadreApPaterno.Text.ToUpper();
            Alumno.MadreApMaterno = this.txtMadreApMaterno.Text.ToUpper();
            Alumno.MadreNombre = this.txtMadreNombre.Text.ToUpper();
            Alumno.MadreTelefono = this.txtMadreTelefono.Text.ToUpper();
            Alumno.MadreOcupacion = byte.Parse(this.ddlMadreOcupacion.SelectedValue);
            Alumno.MadreEmpresa = this.txtMadreEmpresa.Text.ToUpper();
        }
        else
        {
            Alumno.MadreApPaterno = Alumno.MadreApMaterno = Alumno.MadreNombre = Alumno.MadreTelefono = Alumno.MadreEmpresa = null;
            Alumno.MadreOcupacion = null;
        }

        Alumno.EntidadFed = "";
        Alumno.FechaDeModif = DateTime.Now;
        Alumno.Estatus = 1;

        db.SubmitChanges();
        this.TabContainer1.ActiveTabIndex = 0;

        //this.GenerarPDF();

        //int Reprobadas = this.MateriasReprobadas(Alumno.Matricula, Utils.CicloAnterior);
        //if (this.PasaValidacionAutomatica(Reprobadas))
        //{

        int folioPa=0;
        Plantel P = new Plantel();
        if (Pagos.GenerarReciboDePago(Alumno, Utils.CicloActual, true, out folioPa,out P))
        {
            Session["AlumnoID"] = Alumno.AlumnoID;
            try
            {

                Activa_Correo(Alumno.Matricula, folioPa, P.Zona, P.plantel);

            }
            catch (Exception e) { }
            //Guardar el AlumnoID en la sesion para que pueda imprimir la ficha de pago
            Response.Redirect("ImprimirFichaDePago.aspx");

            return;
        }
        //}

        this.GenerarPDF();
    }
 private List<DBEscolar.TipoDeInteres> CargarTiposDeInteres()
 {
     object TiposDeInteres = Cache["TiposDeInteres"];
     if (TiposDeInteres == null)
     {
         DBEscolarDataContext dbInt = new DBEscolarDataContext();
         TiposDeInteres = (from I in dbInt.TipoDeInteres
                           select I).ToList();
         Cache.Insert("TiposDeInteres", TiposDeInteres, null, DateTime.Now.AddHours(1), System.Web.Caching.Cache.NoSlidingExpiration);
     }
     return (List<DBEscolar.TipoDeInteres>)TiposDeInteres;
 }
    private void GenerarPDF()
    {
        DBEscolarDataContext db = new DBEscolarDataContext();
        var Alumno = (from A in db.vwRPTReinscripcions
                      where A.Matricula == this.Matricula
                      select A).FirstOrDefault();

        if (Alumno == null)//No se encontro
            return;

        System.Collections.ArrayList col = new System.Collections.ArrayList();
        col.Add(Alumno);
        ReportDocument rptDoc = new ReportDocument();

        rptDoc.Load(Server.MapPath("Reportes/rptReinscripcion.rpt"));
        //set dataset to the report viewer.
        rptDoc.SetDataSource(col);

        MemoryStream stream = (MemoryStream)rptDoc.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
        rptDoc.Close();
        rptDoc.Dispose();
        Response.Clear();
        Response.ContentType = @"Application/pdf";
        Response.AddHeader("Content-Disposition", "inline; filename=Solicitud.pdf");
        // Response.AddHeader("Content-Disposition", "attachment; filename=File.pdf");
        Response.AddHeader("content-length", stream.Length.ToString());
        Response.BinaryWrite(stream.ToArray());
        Response.Flush();
        stream.Close();
        stream.Dispose();
    }
    private void BuscarColonias()
    {
        if (this.txtDirCP.Text == "")
            return;

        DBEscolarDataContext db = new DBEscolarDataContext();
        var res = from C in db.Colonias
                  where C.CodigoPostal == this.txtDirCP.Text
                  orderby C.Nombre
                  select new { ID = C.ColoniaID, Nombre = string.Format("{0} ({1})", C.Nombre, C.Tipo) };

        DropDownList ddl = this.ddlColonia;
        ddl.Items.Clear();
        ddl.Items.Add(new ListItem("Seleccionar:", "-1"));
        ddl.Items.Add(new ListItem("=== NO APARECE EN LA LISTA ===", "0"));

        ddl.DataSource = res;
        ddl.DataTextField = "Nombre";
        ddl.DataValueField = "ID";
        ddl.DataBind();
    }
    private void CargarMunicipios()
    {
        object Municipios = Cache["Municipios"];
        if (Municipios == null)
        {
            DBEscolarDataContext db = new DBEscolarDataContext();
            Municipios = (from M in db.Municipios
                          where M.MunicipioID >= 1 && M.MunicipioID <= 18
                          orderby M.Nombre
                          select new { ID = M.MunicipioID, M.Nombre }).ToList();
            Cache.Insert("Municipios", Municipios, null, DateTime.Now.AddHours(1), System.Web.Caching.Cache.NoSlidingExpiration);
        }

        //Combo de municipios en secundaria
        Utils.InicializaCombo(this.ddlSecMunicipio);
        this.ddlSecMunicipio.DataSource = Municipios;
        this.ddlSecMunicipio.DataBind();
        ddlSecMunicipio.Items.Add(new ListItem("OTRO ESTADO", "0"));
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        PreInscrito PreInsc = (PreInscrito)Session["PreInsc"];

        if (PreInsc == null)//Si no existe la variable en la sesion regresarlo a la pagina de inicio
        {
            Response.Redirect("NuevoIngreso.aspx");
            return;
        }

        if (!Page.IsPostBack)
        {
            if (!string.IsNullOrEmpty(PreInsc.Folio)) //Ya lo validaron
            {
                //Si ya esta validado, ya debe de haberse pasado a la tabla de Alumnos
                DBEscolarDataContext db = new DBEscolarDataContext();
                var Alumno = (from A in db.PreInscritos
                             where A.PreInscritoID == PreInsc.PreInscritoID
                            select A).FirstOrDefault();

                this.pnlInfo.Visible = true;
                this.pnlSolicitud.Visible = true;

                this.lblInfo.Text = string.Format("¡Hola {0} {1} {2}!<br />", PreInsc.ApPaterno, PreInsc.ApMaterno, PreInsc.Nombre);
                this.lblInfo.Text += string.Format("Tus datos ya fueron guardados:<br /><strong>CURP: {0}<br />FOLIO: {1}</strong>", PreInsc.CURP, PreInsc.Folio);

                if (PreInsc.Estatus > 0)
                    this.lblMen.Text = "Tu información ya fue validada en el plantel, a continuación aparece tu Folio de Preinscripción";
                else this.lblMen.Text = "Tu información ya fue capturada, a continuación aparece tu Folio de Preinscripción";

               for (int i = 0; i < 6; i++) {
                  if(TabContainer1.Tabs[i] != null)
                      if (TabContainer1.Tabs[i].HeaderText != "Escuela de Procedencia")
                    TabContainer1.Tabs[i].Enabled = false;

                }
               bl = 1;

                    Session["AlumnoID"] = Alumno.AlumnoID;//Guardar el AlumnoID en la sesion para que pueda imprimir la ficha de pago

                //if (Alumno.Estatus == 2)
                //    this.lblInfo.Text = "Para imprimir tu Ficha de Pago, da click <a href='ImprimirFichaDePago.aspx'>AQUÍ</a>";

                //if (Alumno.Estatus == 3)
                //    this.lblInfo.Text = "Para reimprimir tu Ficha de Pago, da click <a href='ImprimirFichaDePago.aspx'>AQUÍ</a>.<br />Si ya pagaste, espera de 1 a 2 dias hábiles para que tu pago sea procesado.";

                //if (Alumno.Estatus == 4)
                //    this.lblInfo.Text = string.Format("Tu pago ya ha sido recibido, Gracias. Tu Matrícula es: {0}", Alumno.Matricula);

            }

            //Si esta entrando por primera vez
            if (PreInsc.Estatus == 0 && string.IsNullOrEmpty(PreInsc.Folio))
            {
                this.txtCURP.Text = PreInsc.CURP;
                this.txtApPaterno.Text = PreInsc.ApPaterno;
                this.txtApMaterno.Text = PreInsc.ApMaterno;
                this.txtNombre.Text = PreInsc.Nombre;
                this.ddlSexo.SelectedValue = PreInsc.Sexo.ToString();
                this.txtFecNac.Text = PreInsc.FechaNac.ToShortDateString();

                this.CargarMunicipios();
                this.tabCambioDePlantel.Visible = false;
                return;
            }

            this.txtCURP.Text = PreInsc.CURP;
            this.txtApPaterno.Text = PreInsc.ApPaterno;
            this.txtApMaterno.Text = PreInsc.ApMaterno;
            this.txtNombre.Text = PreInsc.Nombre;
            this.ddlSexo.SelectedValue = PreInsc.Sexo.ToString();
            this.txtFecNac.Text = PreInsc.FechaNac.ToShortDateString();

            this.txtTelefono.Text = PreInsc.Telefono;
            this.txtCelular.Text = PreInsc.Celular;
            this.txtCorreo.Text = PreInsc.Correo;

            this.txtDirCalle.Text = PreInsc.Calle;
            this.txtDirNumero.Text = PreInsc.Numero;
            this.txtDirCP.Text = PreInsc.CodigoPostal.ToString();
            if (!string.IsNullOrEmpty(PreInsc.ColoniaTXT))
            {
                if (PreInsc.ColoniaID != 0)
                {
                    this.ddlColonia.Items.Add(new ListItem(PreInsc.ColoniaTXT, PreInsc.ColoniaID.ToString()));
                    this.ddlColonia.SelectedValue = PreInsc.ColoniaID.ToString();
                    this.txtDirColonia.Text = PreInsc.ColoniaTXT;
                }
            }

            this.ddlEstadoCivil.SelectedValue = PreInsc.EstadoCivil.ToString();
            this.ddlOcupacion.SelectedValue = PreInsc.Ocupacion.ToString();
            this.ddlTipoBeca.SelectedValue = PreInsc.TipoBeca.ToString();
            this.ddlTipoSangre.SelectedValue = PreInsc.TipoSangre.ToString();

            this.chkAlergias.Checked = !string.IsNullOrEmpty(PreInsc.Alergias);
            this.txtAlergias.Visible = this.chkAlergias.Checked;
            this.txtAlergias.Text = PreInsc.Alergias;
            this.chkEnfCronicas.Checked = !string.IsNullOrEmpty(PreInsc.EnfermedadesCronicas);
            this.txtEnfCronicas.Visible = this.chkEnfCronicas.Checked;
            this.txtEnfCronicas.Text = PreInsc.EnfermedadesCronicas;
            this.chkCapDiferentes.Checked = !string.IsNullOrEmpty(PreInsc.CapacidadesDiferentes);
            this.txtCapDiferentes.Visible = this.chkCapDiferentes.Checked;
            this.txtCapDiferentes.Text = PreInsc.CapacidadesDiferentes;

            this.chkIMSS.Checked = PreInsc.DIMSS;
            this.chkSeguro.Checked = PreInsc.DSeguroPopular;
            this.chkISSSTE.Checked = PreInsc.DISSSTE;
            this.chkPrivado.Checked = PreInsc.DPrivado;

            var Intereses = this.CargarTiposDeInteres();
            var InteresSeleccionado = Intereses.Find(x => x.TipoDeInteresID == PreInsc.IntPers1);
            if (InteresSeleccionado != null)
            {
                //Seleccionar el combo de categorias
                this.ddlInt1.SelectedValue = InteresSeleccionado.Interes.ToString();
                //Llenar el combo de intereses y seleccionar el correspondiente
                this.ddlIntDet1.Items.Clear();
                this.ddlIntDet1.DataSource = Intereses.Where(x => x.Interes == InteresSeleccionado.Interes);
                this.ddlIntDet1.DataValueField = "TipoDeInteresID";
                this.ddlIntDet1.DataTextField = "Descripcion";
                this.ddlIntDet1.DataBind();
                this.ddlIntDet1.SelectedValue = PreInsc.IntPers1.ToString();
            }
            this.txtIntOtro1.Text = PreInsc.IntPersOtros1;

            InteresSeleccionado = Intereses.Find(x => x.TipoDeInteresID == PreInsc.IntPers2);
            if (InteresSeleccionado != null)
            {
                //Seleccionar el combo de categorias
                this.ddlInt2.SelectedValue = InteresSeleccionado.Interes.ToString();
                //Llenar el combo de intereses y seleccionar el correspondiente
                this.ddlIntDet2.Items.Clear();
                this.ddlIntDet2.DataSource = Intereses.Where(x => x.Interes == InteresSeleccionado.Interes);
                this.ddlIntDet2.DataValueField = "TipoDeInteresID";
                this.ddlIntDet2.DataTextField = "Descripcion";
                this.ddlIntDet2.DataBind();
                this.ddlIntDet2.SelectedValue = PreInsc.IntPers2.ToString();
            }
            this.txtIntOtro2.Text = PreInsc.IntPersOtros2;

            this.rblViveCon.SelectedValue = PreInsc.ViveCon.ToString();
            this.OcultaMuestraTabs(PreInsc.ViveCon.ToString());
            this.ddlViveConTutor.SelectedValue = PreInsc.ViveConTutor.ToString();
            this.rblTipoDeCasa.SelectedValue = PreInsc.TipoVivienda.ToString();
            this.rblIngresoMensual.SelectedValue = PreInsc.IngresoMensual.ToString();
            this.ddlIntegrantes.SelectedValue = PreInsc.NumIntegrantes.ToString();
            this.chkTienePC.Checked = PreInsc.TienePC;
            this.chkTieneInternet.Checked = PreInsc.TieneInternet;

            if (!string.IsNullOrEmpty(PreInsc.SecundariaTXT))
            {
                if (PreInsc.SecundariaID != 0)
                {
                    this.ddlSecSecundaria.Items.Add(new ListItem(PreInsc.SecundariaTXT, PreInsc.SecundariaID.ToString()));
                    this.ddlSecSecundaria.SelectedValue = PreInsc.SecundariaID.ToString();
                    this.txtSecundaria.Text = PreInsc.SecundariaTXT;
                }
            }

            this.txtPadreApPaterno.Text = PreInsc.PadreApPaterno;
            this.txtPadreApMaterno.Text = PreInsc.PadreApMaterno;
            this.txtPadreNombre.Text = PreInsc.PadreNombre;
            this.txtPadreTelefono.Text = PreInsc.PadreTelefono;
            this.ddlPadreOcupacion.SelectedValue = PreInsc.PadreOcupacion == null ? "-1" : PreInsc.PadreOcupacion.ToString();
            this.txtPadreEmpresa.Text = PreInsc.PadreEmpresa;

            this.txtMadreApPaterno.Text = PreInsc.MadreApPaterno;
            this.txtMadreApMaterno.Text = PreInsc.MadreApMaterno;
            this.txtMadreNombre.Text = PreInsc.MadreNombre;
            this.txtMadreTelefono.Text = PreInsc.MadreTelefono;
            this.ddlMadreOcupacion.SelectedValue = PreInsc.MadreOcupacion == null ? "-1" : PreInsc.MadreOcupacion.ToString();
            this.txtMadreEmpresa.Text = PreInsc.MadreEmpresa;

            //Cambiar de Plantel
            this.ddlPlantelPlantel.Items.Add(new ListItem("Si quieres cambiar de plantel, elige un Municipio", PreInsc.PlantelID.ToString()));

            this.CargarMunicipios();
        }
    }
Example #14
0
    private void Accesar()
    {
        //Limpiar Sesión
        Session.Clear();

        string CURP = this.txtCURP.Text.ToUpper();
        string Matricula = this.txtMatricula.Text;

        DBEscolarDataContext db = new DBEscolarDataContext();

        var AlumnoReinsc = (from A in db.AlumnoReinscs
                            where A.Matricula == Matricula
                            select A).FirstOrDefault();

        //Checar si existe
        if (AlumnoReinsc == null)
        {
            this.lblMensaje.Text = "No eres alumno vigente, acude al plantel que desees reinscribirte.";
            return;
        }

        DBEscolar.Alumno Alumno = null;
        if (AlumnoReinsc.Tipo == 1)
        {
            Alumno = (from A in db.Alumnos
                      where A.Matricula == Matricula && A.CURP == CURP
                      select A).FirstOrDefault();

            //Checar que el plantel este habilitado

            if (Alumno == null || Alumno.Estatus == 0)
            {
                var Plantel = (from P in db.PlantelesEnReinscripcions
                               where P.PlantelID == AlumnoReinsc.PlantelID
                               select P).FirstOrDefault();

                DateTime Fecha = DateTime.Now;
                if (Plantel == null || Fecha < Plantel.FechaInicial || Fecha > Plantel.FechaLimite)
                {
                    this.lblMensaje.Text = "LO SENTIMOS! De momento no podemos procesar tu solicitud de RE INSCRIPCIÓN,<br />" +
                                           "El periodo de RE INSCRIPCIÓN no está activo en tu plantel.";
                    return;
                }
            }

            //Checar que no tenga adeudos, solo cuando es Estatus = 0
            if (Alumno != null && Alumno.Estatus == 0)
            {
                if (this.TieneRecibosPendientes(Alumno.AlumnoID))
                {
                    this.lblMensaje.Text = "LO SENTIMOS! De momento no podemos procesar tu solicitud de RE INSCRIPCIÓN, TIENES ADEUDOS PENDIENTES, favor de acudir a tu plantel para aclarar tu situación.";
                    return;
                }
            }

            //Checar que no sea baja
            if (Alumno != null && (Alumno.Estatus == 5 || Alumno.Estatus == 6))
            {
                this.lblMensaje.Text = "No eres alumno vigente, acude al plantel que desees reinscribirte.";
                return;
            }

            //Checar que el plantel ya haya subido calificaciones
            if (Alumno == null || Alumno.Estatus == 0)
            {
                var Plantel = (from P in db.Plantels
                               where P.PlantelID == AlumnoReinsc.PlantelID && P.CalificacionesCompletas == true
                               select P).FirstOrDefault();

                if (Plantel == null)
                {
                    this.lblMensaje.Text = "LO SENTIMOS! De momento no podemos procesar tu solicitud de RE INSCRIPCIÓN,<br />" +
                                           "NO ENCONTRAMOS TUS CALIFICACIONES finales del semestre anterior. <br />" +
                                           "POR FAVOR INTENTA MÁS TARDE, o bien, verifica en tu plantel que puede estar pasando.";
                    return;
                }
            }

            //Checar las materias reprobadas, solo cuando es Estatus = 0
            if (AlumnoReinsc.Tipo == 1 && (Alumno == null || Alumno.Estatus == 0))
            {
                int Reprobadas = this.MateriasReprobadas(Matricula);
                if (Reprobadas > 3)
                {
                    this.lblMensaje.Text = "No eres alumno vigente, acude al plantel que desees reinscribirte.";
                    return;
                }
                if (Reprobadas == -1)
                {
                    this.lblMensaje.Text = "No eres alumno vigente, por el momento no tenemos tus calificaciones completas.";
                    return;
                }
                if (Reprobadas == -2)
                {
                    this.lblMensaje.Text = "LO SENTIMOS! Ha ocurrido un problema de conexión, por favor intente nuevamente en un momento.";
                    return;
                }
            }
        }

        if (AlumnoReinsc.CURP != CURP) //NO COINCIDE Matricula y CURP
        {
            //Checar contra los datos de RENAPO
            bool match = false;
            CURP renapo = new CURP();
            //renapo.getFromRENAPO(CURP);

            this.lblMensaje.Text = "La Matricula y el CURP no coinciden con nuestros registros, si los datos son correctos, acude primero a Control Escolar en tu plantel.";
            return;
        }

        Session["Matricula"] = Matricula;
        Session["Alumno"] = Alumno;
        Session["AlumnoReinsc"] = AlumnoReinsc;
        Response.Redirect("Solicitud.aspx");
    }
    protected void ddlInt2_SelectedIndexChanged(object sender, EventArgs e)
    {
        DBEscolarDataContext db = new DBEscolarDataContext();

        var res = from I in db.TipoDeInteres
                  where I.Interes == byte.Parse(this.ddlInt2.SelectedValue.ToString())
                  select new { ID = I.TipoDeInteresID, Nombre = I.Descripcion };

        DropDownList ddl = this.ddlIntDet2;
        ddl.Items.Clear();
        ddl.Items.Add(new ListItem("Seleccionar:", "-1"));

        ddl.DataSource = res;
        ddl.DataTextField = "Nombre";
        ddl.DataValueField = "ID";
        ddl.DataBind();
    }
    protected void ddlSecLocalidad_SelectedIndexChanged(object sender, EventArgs e)
    {
        DBEscolarDataContext db = new DBEscolarDataContext();

        var res = from S in db.Secundarias
                  where S.LocalidadID == int.Parse(this.ddlSecLocalidad.SelectedValue)
                  orderby S.Nombre
                  select new { ID = S.SecundariaID, Nombre = string.Format("{0} - {1} ({2})", S.ClaveCCT, S.Nombre, S.Turno == 1 ? "Matutino" : "Vespertino") };

        DropDownList ddl = this.ddlSecSecundaria;
        ddl.Items.Clear();
        ddl.Items.Add(new ListItem("Seleccionar:", "-1"));
        ddl.Items.Add(new ListItem("=== NO APARECE EN LA LISTA ===", "0"));

        ddl.DataSource = res;
        ddl.DataTextField = "Nombre";
        ddl.DataValueField = "ID";
        ddl.DataBind();
    }
Example #17
0
    private static int getCap(Alumno alumno)
    {
        DBEscolar.DBEscolarDataContext dbEscolar = new DBEscolarDataContext();

        int? Rep = (from A in dbEscolar.Alumnos
                   join C in dbEscolar.Capacitacions on new {p = A.PlantelID, g = ((int)A.Grupo) ,t = A.Turno} equals new {
                   p = C.PlantelID, g=(int)C.Grupo,t=C.Turno}
                   where A.Matricula == alumno.Matricula
                   select C.Capacitacion1).FirstOrDefault();

        if (Rep == null)
            return 0;
        return Rep.Value;
    }
    private void GenerarPDF(bool EsNuevo)
    {
        try
        {
            PreInscrito PreInsc = (PreInscrito)Session["PreInsc"];
            if (PreInsc == null)//Nunca debe de pasar
                return;

            DBEscolarDataContext db = new DBEscolarDataContext();
            var Alumno = (from A in db.vwRPTPreInscripcions
                          where A.Folio == PreInsc.Folio
                          select A).FirstOrDefault();

            if (Alumno == null)
                return;

            System.Collections.ArrayList col = new System.Collections.ArrayList();
            col.Add(Alumno);
            ReportDocument rptDoc = new ReportDocument();

            if (EsNuevo)
                rptDoc.Load(Server.MapPath("Reportes/rptPreInscripcion.rpt"));
            else rptDoc.Load(Server.MapPath("Reportes/rptPreInscripcion_Re.rpt"));
            //set dataset to the report viewer.
            rptDoc.SetDataSource(col);

            MemoryStream stream = (MemoryStream)rptDoc.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
            rptDoc.Close();
            rptDoc.Dispose();

            Response.Clear();
            Response.ContentType = @"Application/pdf";
            Response.AddHeader("Content-Disposition", "inline; filename=File.pdf");
            //Response.AddHeader("Content-Disposition", "attachment; filename=File.pdf");
            Response.AddHeader("content-length", stream.Length.ToString());
            Response.BinaryWrite(stream.ToArray());
            Response.Flush();
            stream.Close();
            stream.Dispose();
        }
        catch (Exception e) { }
    }
    private void Guardar()
    {
        Alumnos_Virtual PreInsc = (Alumnos_Virtual)Session["PreInsc"];

        bool EsNuevo = PreInsc.Estatus == 0 && string.IsNullOrEmpty(PreInsc.Matricula);

        DBEscolarDataContext db = new DBEscolarDataContext();
        if (!EsNuevo)
        {
            string CURP = PreInsc.CURP;
            PreInsc = (from A in db.Alumnos_Virtuals
                       where A.CURP == CURP
                       select A).FirstOrDefault();
        }

        PreInsc.CURP = this.txtCURP.Text.ToUpper();
        PreInsc.ApPaterno = this.txtApPaterno.Text.ToUpper();
        PreInsc.ApMaterno = this.txtApMaterno.Text.ToUpper();
        PreInsc.Nombre = this.txtNombre.Text.ToUpper();
        PreInsc.Sexo = char.Parse(this.ddlSexo.SelectedValue);
        PreInsc.FechaNac = DateTime.Parse(this.txtFecNac.Text);
        PreInsc.EntidadFed = this.txtEstado.Text.ToUpper();

        PreInsc.Telefono = this.txtTelefono.Text.ToUpper();
        PreInsc.Celular = this.txtCelular.Text.ToUpper();
        PreInsc.Correo = this.txtCorreo.Text.ToLower();

        PreInsc.Calle = this.txtDirCalle.Text.ToUpper();
        PreInsc.Numero = this.txtDirNumero.Text.ToUpper();
        PreInsc.CodigoPostal = int.Parse(this.txtDirCP.Text);
        PreInsc.ColoniaID = int.Parse(this.ddlColonia.SelectedValue);
        PreInsc.ColoniaTXT = PreInsc.ColoniaID > 0 ? this.ddlColonia.SelectedItem.Text.ToUpper() : this.txtDirColonia.Text.ToUpper();
        PreInsc.MunicipioID = byte.Parse(this.ddlMunicipio.SelectedValue.ToString());

        if (EsNuevo)
        {
            string Folio = "";
            db.spEXEGetFolioPreInscripcion(PreInsc.PlantelID, "2015B", ref Folio);
            PreInsc.Matricula = Folio;

            //PreInsc.EntidadFed = "";
            PreInsc.Matricula = Folio; //Guardar el folio por mientras
            PreInsc.FechaDeAlta = DateTime.Now;
            PreInsc.Estatus = 1;

            db.Alumnos_Virtuals.InsertOnSubmit(PreInsc);
        }

        try
        {
            db.SubmitChanges();
            Session["PreInsc"] = PreInsc;
        }
        catch (Exception ex)
        {
            this.AlertToPage("Lo sentimos, ha ocurrido un problema al guardar tus datos. Si el problema persiste, favor de acudir directamente al plantel. \\n ERROR: " + ex.Message);
            return;
        }

        this.GenerarPDF();
    }
    private void Guardar()
    {
        PreInscrito PreInsc = (PreInscrito)Session["PreInsc"];

        bool EsNuevo = PreInsc.Estatus == 0 && string.IsNullOrEmpty(PreInsc.Folio);

        DBEscolarDataContext db = new DBEscolarDataContext();
        if (!EsNuevo)
        {
            string CURP = PreInsc.CURP;
            PreInsc = (from A in db.PreInscritos
                       where A.CURP == CURP && A.Ciclo == Utils.CicloPreInscripciones
                       select A).FirstOrDefault();
        }

        //PreInsc.CURP = this.txtCURP.Text.ToUpper();
        PreInsc.ApPaterno = this.txtApPaterno.Text.ToUpper();
        PreInsc.ApMaterno = this.txtApMaterno.Text.ToUpper();
        PreInsc.Nombre = this.txtNombre.Text.ToUpper();
        PreInsc.Sexo = char.Parse(this.ddlSexo.SelectedValue);
        PreInsc.FechaNac = DateTime.Parse(this.txtFecNac.Text);
        PreInsc.EntidadFed = "SINALOA";
        PreInsc.Telefono = this.txtTelefono.Text.ToUpper();
        PreInsc.Celular = this.txtCelular.Text.ToUpper();
        PreInsc.Correo = this.txtCorreo.Text.ToLower();

        PreInsc.Calle = this.txtDirCalle.Text.ToUpper();
        PreInsc.Numero = this.txtDirNumero.Text.ToUpper();
        PreInsc.CodigoPostal = int.Parse(this.txtDirCP.Text);
        PreInsc.ColoniaID = int.Parse(this.ddlColonia.SelectedValue);
        PreInsc.ColoniaTXT = PreInsc.ColoniaID > 0 ? this.ddlColonia.SelectedItem.Text.ToUpper() : this.txtDirColonia.Text.ToUpper();

        PreInsc.EstadoCivil = byte.Parse(this.ddlEstadoCivil.SelectedValue);
        PreInsc.Ocupacion = byte.Parse(this.ddlOcupacion.SelectedValue);
        PreInsc.TipoBeca = byte.Parse(this.ddlTipoBeca.SelectedValue);
        PreInsc.TipoSangre = byte.Parse(this.ddlTipoSangre.SelectedValue);
        PreInsc.Alergias = this.chkAlergias.Checked ? this.txtAlergias.Text.ToUpper() : null;
        PreInsc.EnfermedadesCronicas = this.chkEnfCronicas.Checked ? this.txtEnfCronicas.Text.ToUpper() : null;
        PreInsc.CapacidadesDiferentes = this.chkCapDiferentes.Checked ? this.txtCapDiferentes.Text.ToUpper() : null;

        PreInsc.DIMSS = this.chkIMSS.Checked;
        PreInsc.DSeguroPopular = this.chkSeguro.Checked;
        PreInsc.DISSSTE = this.chkISSSTE.Checked;
        PreInsc.DPrivado = this.chkPrivado.Checked;

        PreInsc.IntPers1 = byte.Parse(this.ddlIntDet1.SelectedValue);
        PreInsc.IntPersOtros1 = this.txtIntOtro1.Text.ToUpper();
        PreInsc.IntPers2 = byte.Parse(this.ddlIntDet2.SelectedValue);
        PreInsc.IntPersOtros2 = this.txtIntOtro2.Text.ToUpper();

        PreInsc.ViveCon = byte.Parse(this.rblViveCon.SelectedValue);
        if (this.ddlViveConTutor.SelectedValue == "-1")
            PreInsc.ViveConTutor = null;
        else
            PreInsc.ViveConTutor = byte.Parse(this.ddlViveConTutor.SelectedValue);
        PreInsc.TipoVivienda = byte.Parse(this.rblTipoDeCasa.SelectedValue);
        PreInsc.IngresoMensual = byte.Parse(this.rblIngresoMensual.SelectedValue);
        PreInsc.NumIntegrantes = byte.Parse(this.ddlIntegrantes.SelectedValue);
        PreInsc.TienePC = this.chkTienePC.Checked;
        PreInsc.TieneInternet = this.chkTieneInternet.Checked;

        PreInsc.SecundariaID = int.Parse(this.ddlSecSecundaria.SelectedValue);
        PreInsc.SecundariaTXT = PreInsc.SecundariaID > 0 ? this.ddlSecSecundaria.SelectedItem.Text.ToUpper() : this.txtSecundaria.Text.ToUpper();

        if (this.tabPadre.Visible)
        {
            PreInsc.PadreApPaterno = this.txtPadreApPaterno.Text.ToUpper();
            PreInsc.PadreApMaterno = this.txtPadreApMaterno.Text.ToUpper();
            PreInsc.PadreNombre = this.txtPadreNombre.Text.ToUpper();
            PreInsc.PadreTelefono = this.txtPadreTelefono.Text.ToUpper();
            PreInsc.PadreOcupacion = byte.Parse(this.ddlPadreOcupacion.SelectedValue);
            PreInsc.PadreEmpresa = this.txtPadreEmpresa.Text.ToUpper();
        }
        else
        {
            PreInsc.PadreApPaterno = PreInsc.PadreApMaterno = PreInsc.PadreNombre = PreInsc.PadreTelefono = PreInsc.PadreEmpresa = null;
            PreInsc.PadreOcupacion = null;
        }

        if (this.tabMadre.Visible)
        {
            PreInsc.MadreApPaterno = this.txtMadreApPaterno.Text.ToUpper();
            PreInsc.MadreApMaterno = this.txtMadreApMaterno.Text.ToUpper();
            PreInsc.MadreNombre = this.txtMadreNombre.Text.ToUpper();
            PreInsc.MadreTelefono = this.txtMadreTelefono.Text.ToUpper();
            PreInsc.MadreOcupacion = byte.Parse(this.ddlMadreOcupacion.SelectedValue);
            PreInsc.MadreEmpresa = this.txtMadreEmpresa.Text.ToUpper();
        }
        else
        {
            PreInsc.MadreApPaterno = PreInsc.MadreApMaterno = PreInsc.MadreNombre = PreInsc.MadreTelefono = PreInsc.MadreEmpresa = null;
            PreInsc.MadreOcupacion = null;
        }

        PreInsc.FechaDeModif = DateTime.Now;

        if (EsNuevo)
        {
            string Folio = "";
            db.spEXEGetFolioPreInscripcion(PreInsc.PlantelID, PreInsc.Ciclo, ref Folio);
            PreInsc.Folio = Folio;

            //PreInsc.EntidadFed = "";
            PreInsc.FechaDeAlta = DateTime.Now;
            PreInsc.Estatus = 0;

            db.PreInscritos.InsertOnSubmit(PreInsc);
        }
        else
        {
            //Checar si hubo cambio de plantel
            if (PreInsc.PlantelID.ToString() != this.ddlPlantelPlantel.SelectedValue)
            {
                PreInsc.PlantelID = byte.Parse(this.ddlPlantelPlantel.SelectedValue);
                PreInsc.Turno = byte.Parse(this.ddlPlantelTurno.SelectedValue);

                string Folio = "";
                db.spEXEGetFolioPreInscripcion(PreInsc.PlantelID, PreInsc.Ciclo, ref Folio);
                PreInsc.Folio = Folio;
            }
        }

        try
        {
            db.SubmitChanges();
            Session["PreInsc"] = PreInsc;
        }
        catch (Exception ex)
        {
            this.AlertToPage("Lo sentimos, ha ocurrido un problema al guardar tus datos. Si el problema persiste, favor de acudir directamente al plantel. \\n ERROR: " + ex.Message);
            return;
        }

        this.TabContainer1.ActiveTabIndex = 0;

        this.GenerarPDF();
    }
    protected void ddlZonas_SelectedIndexChanged(object sender, EventArgs e)
    {
        int Zona = int.Parse(this.ddlZonas.SelectedValue);

        this.Chart2.Visible = false;

        this.ddlPlanteles.Enabled = Zona > 0;
        this.ddlPlanteles.Items.Clear();
        this.ddlPlanteles.Items.Add(new ListItem("Todos", "0"));

        if (Zona > 0)
        {
            DBEscolarDataContext db = new DBEscolarDataContext();
            var res = from P in db.Plantels
                      where P.Zona == Zona && P.EsEmsad == false && P.Activo == true
                      orderby P.plantel
                      select new { Plantel = P.plantel, Nombre = string.Format("{0} - {1}", P.plantel, P.Descripcion) };

            this.ddlPlanteles.DataSource = res;
            this.ddlPlanteles.DataTextField = "Nombre";
            this.ddlPlanteles.DataValueField = "Plantel";
            this.ddlPlanteles.DataBind();
        }
    }
    protected void txtCURP_TextChanged(object sender, EventArgs e)
    {
        Session.Clear();

        DBEscolarDataContext db = new DBEscolarDataContext();
        var PreInsc = (from A in db.PreInscritos
                       where A.CURP == this.txtCURP.Text && A.Ciclo == Utils.CicloPreInscripciones
                       select A).FirstOrDefault();

        if (PreInsc != null)//Si ya existe
        {
            if (PreInsc.Estatus == 0 || PreInsc.Estatus == 1)
            {

                Session["PreInsc"] = PreInsc;
                Response.Redirect("SolicitudPre.aspx");
                return;
            }
            else {

                Session["AlumnoID"] = PreInsc.AlumnoID;
                Response.Redirect("ImprimirFichaDePago.aspx");
                return;

            }
        }
    }
    protected void ddlSecMunicipio_SelectedIndexChanged(object sender, EventArgs e)
    {
        DBEscolarDataContext db = new DBEscolarDataContext();

        var res = from L in db.Localidads
                  where L.MunicipioID == int.Parse(this.ddlSecMunicipio.SelectedValue)
                    && L.Secundarias.Count > 0
                  orderby L.Nombre
                  select new { ID = L.LocalidadID, Nombre = L.Nombre };

        DropDownList ddl = this.ddlSecLocalidad;
        ddl.Items.Clear();
        ddl.Items.Add(new ListItem("Seleccionar:", "-1"));
        ddl.Items.Add(new ListItem("=== NO APARECE EN LA LISTA ===", "0"));

        ddl.DataSource = res;
        ddl.DataTextField = "Nombre";
        ddl.DataValueField = "ID";
        ddl.DataBind();
    }
    private void CargarMunicipios()
    {
        if (Cache["Municipios"] == null)
        {
            DBEscolarDataContext db = new DBEscolarDataContext();
            var res = (from M in db.Municipios
                       where M.MunicipioID >= 1 && M.MunicipioID <= 18
                       orderby M.Nombre
                       select new { ID = M.MunicipioID, M.Nombre }).ToList();
            Cache.Insert("Municipios", res, null, DateTime.Now.AddHours(1), System.Web.Caching.Cache.NoSlidingExpiration);
        }
        var Municipios = Cache["Municipios"];

        Utils.InicializaCombo(this.ddlMunicipio);
        this.ddlMunicipio.DataSource = Municipios;
        this.ddlMunicipio.DataBind();
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (this.Matricula == "")
        {
            Response.Redirect("Default.aspx");
            return;
        }

        if (!Page.IsPostBack)
        {
            DBEscolarDataContext db = new DBEscolarDataContext();

            Alumno Alumno = Session["Alumno"] as Alumno ?? (from A in db.Alumnos
                                                            where A.Matricula == this.Matricula
                                                            select A).FirstOrDefault();

            //Si no esta en la sesion, que lo cargue
            AlumnoReinsc Alu = Session["AlumnoReinsc"] as AlumnoReinsc ?? (from A in db.AlumnoReinscs
                                                                           where A.Matricula == this.Matricula
                                                                           select A).FirstOrDefault();

            //if (Alumno == null || Alumno.Estatus == 0)
            //{
            //    Response.Redirect("PlazoFinalizado.aspx");
            //    return;
            //}

            if (Alumno == null) //Carga solo la informacion desde AlumnosReinsc
            {
                //Poner la informacion leida desde AlumnosReinsc (O de la RENAPO)
                this.txtCURP.Text = Alu.CURP;
                this.txtApPaterno.Text = Alu.ApPaterno;
                this.txtApMaterno.Text = Alu.ApMaterno;
                this.txtNombre.Text = Alu.Nombre;
                this.ddlSexo.SelectedValue = Alu.Sexo.ToString();
                this.txtFecNac.Text = Alu.FechaDeNac.ToShortDateString();

                this.CargarMunicipios();
                return;
            }

            //Si es un alumno que existe en Alumnos pero no ha llenado y no coincide el CURP con el de AlumnosReinsc
            //pasar la info de la RENAPO a Alumno
            if (Alumno.Estatus == 0 && Alumno.CURP != Alu.CURP)
            {
                Alumno.CURP = Alu.CURP;
                Alumno.ApPaterno = Alu.ApPaterno;
                Alumno.ApMaterno = Alu.ApMaterno;
                Alumno.Nombre = Alu.Nombre;
                Alumno.Sexo = Alu.Sexo;
                Alumno.FechaNac = Alu.FechaDeNac;
            }

            if (Alumno.Estatus >= 2) //Ya lo validaron y no puede modificar nada
            {
                this.pnlInfo.Visible = true;
                this.pnlSolicitud.Visible = false;

                Session["AlumnoID"] = Alumno.AlumnoID;//Guardar el AlumnoID en la sesion para que pueda imprimir la ficha de pago

                //if (Alumno.Estatus == 1)//Ya llenó la solicitud
                //{
                //    int Reprobadas = this.MateriasReprobadas(Alumno.Matricula, CicloAnterior);//TODO??
                //    if (this.PasaValidacionAutomatica(Reprobadas))
                //    {
                //        if (Pagos.GenerarReciboDePago(Alumno, CicloActual, true))
                //            Alumno.Estatus = 2;
                //        //Response.Redirect("ImprimirFichaDePago.aspx");
                //        //return;
                //    }
                //}

                if (Alumno.Estatus == 2)
                    this.lblInfo.Text = "Para imprimir tu Ficha de Pago, da click <a href='ImprimirFichaDePago.aspx'>AQUÍ</a>";

                if (Alumno.Estatus == 3)
                    this.lblInfo.Text = "Para reimprimir tu Ficha de Pago, da click <a href='ImprimirFichaDePago.aspx'>AQUÍ</a>.<br />Si ya pagaste, espera de 1 a 2 dias hábiles para que tu pago sea procesado.";

                if (Alumno.Estatus == 4)
                    this.lblInfo.Text = "Tu pago ya ha sido recibido, gracias.";

                return;
            }

            //Poner la informacion leida desde Alumnos
            this.txtCURP.Text = Alumno.CURP;
            this.txtApPaterno.Text = Alumno.ApPaterno;
            this.txtApMaterno.Text = Alumno.ApMaterno;
            this.txtNombre.Text = Alumno.Nombre;
            this.ddlSexo.SelectedValue = Alumno.Sexo.ToString();
            this.txtFecNac.Text = Alumno.FechaNac.ToShortDateString();

            this.txtTelefono.Text = Alumno.Telefono;
            this.txtCelular.Text = Alumno.Celular;
            this.txtCorreo.Text = Alumno.Correo;

            this.txtDirCalle.Text = Alumno.Calle;
            this.txtDirNumero.Text = Alumno.Numero;
            this.txtDirCP.Text = Alumno.CodigoPostal.ToString();
            if (!string.IsNullOrEmpty(Alumno.ColoniaTXT))
            {
                if (Alumno.ColoniaID != 0)
                {
                    this.ddlColonia.Items.Add(new ListItem(Alumno.ColoniaTXT, Alumno.ColoniaID.ToString()));
                    this.ddlColonia.SelectedValue = Alumno.ColoniaID.ToString();
                    this.txtDirColonia.Text = Alumno.ColoniaTXT;
                }
            }

            this.ddlEstadoCivil.SelectedValue = Alumno.EstadoCivil.ToString();
            this.ddlOcupacion.SelectedValue = Alumno.Ocupacion.ToString();
            this.ddlTipoBeca.SelectedValue = Alumno.TipoBeca.ToString();
            this.ddlTipoSangre.SelectedValue = Alumno.TipoSangre.ToString();

            this.chkAlergias.Checked = !string.IsNullOrEmpty(Alumno.Alergias);
            this.txtAlergias.Visible = this.chkAlergias.Checked;
            this.txtAlergias.Text = Alumno.Alergias;
            this.chkEnfCronicas.Checked = !string.IsNullOrEmpty(Alumno.EnfermedadesCronicas);
            this.txtEnfCronicas.Visible = this.chkEnfCronicas.Checked;
            this.txtEnfCronicas.Text = Alumno.EnfermedadesCronicas;
            this.chkCapDiferentes.Checked = !string.IsNullOrEmpty(Alumno.CapacidadesDiferentes);
            this.txtCapDiferentes.Visible = this.chkCapDiferentes.Checked;
            this.txtCapDiferentes.Text = Alumno.CapacidadesDiferentes;

            this.chkIMSS.Checked = Alumno.DIMSS;
            this.chkSeguro.Checked = Alumno.DSeguroPopular;
            this.chkISSSTE.Checked = Alumno.DISSSTE;
            this.chkPrivado.Checked = Alumno.DPrivado;

            var Intereses = this.CargarTiposDeInteres();
            var InteresSeleccionado = Intereses.Find(x => x.TipoDeInteresID == Alumno.IntPers1);
            if (InteresSeleccionado != null)
            {
                //Seleccionar el combo de categorias
                this.ddlInt1.SelectedValue = InteresSeleccionado.Interes.ToString();
                //Llenar el combo de intereses y seleccionar el correspondiente
                this.ddlIntDet1.Items.Clear();
                this.ddlIntDet1.DataSource = Intereses.Where(x => x.Interes == InteresSeleccionado.Interes);
                this.ddlIntDet1.DataValueField = "TipoDeInteresID";
                this.ddlIntDet1.DataTextField = "Descripcion";
                this.ddlIntDet1.DataBind();
                this.ddlIntDet1.SelectedValue = Alumno.IntPers1.ToString();
            }
            this.txtIntOtro1.Text = Alumno.IntPersOtros1;

            InteresSeleccionado = Intereses.Find(x => x.TipoDeInteresID == Alumno.IntPers2);
            if (InteresSeleccionado != null)
            {
                //Seleccionar el combo de categorias
                this.ddlInt2.SelectedValue = InteresSeleccionado.Interes.ToString();
                //Llenar el combo de intereses y seleccionar el correspondiente
                this.ddlIntDet2.Items.Clear();
                this.ddlIntDet2.DataSource = Intereses.Where(x => x.Interes == InteresSeleccionado.Interes);
                this.ddlIntDet2.DataValueField = "TipoDeInteresID";
                this.ddlIntDet2.DataTextField = "Descripcion";
                this.ddlIntDet2.DataBind();
                this.ddlIntDet2.SelectedValue = Alumno.IntPers2.ToString();
            }
            this.txtIntOtro2.Text = Alumno.IntPersOtros2;

            this.rblViveCon.SelectedValue = Alumno.ViveCon.ToString();
            this.OcultaMuestraTabs(Alumno.ViveCon.ToString());
            this.ddlViveConTutor.SelectedValue = Alumno.ViveConTutor.ToString();
            this.rblTipoDeCasa.SelectedValue = Alumno.TipoVivienda.ToString();
            this.rblIngresoMensual.SelectedValue = Alumno.IngresoMensual.ToString();
            this.ddlIntegrantes.SelectedValue = Alumno.NumIntegrantes.ToString();
            this.chkTienePC.Checked = Alumno.TienePC;
            this.chkTieneInternet.Checked = Alumno.TieneInternet;

            if (!string.IsNullOrEmpty(Alumno.SecundariaTXT))
            {
                if (Alumno.SecundariaID != 0)
                {
                    this.ddlSecSecundaria.Items.Add(new ListItem(Alumno.SecundariaTXT, Alumno.SecundariaID.ToString()));
                    this.ddlSecSecundaria.SelectedValue = Alumno.SecundariaID.ToString();
                    this.txtSecundaria.Text = Alumno.SecundariaTXT;
                }
            }

            this.txtPadreApPaterno.Text = Alumno.PadreApPaterno;
            this.txtPadreApMaterno.Text = Alumno.PadreApMaterno;
            this.txtPadreNombre.Text = Alumno.PadreNombre;
            this.txtPadreTelefono.Text = Alumno.PadreTelefono;
            this.ddlPadreOcupacion.SelectedValue = Alumno.PadreOcupacion == null ? "-1" : Alumno.PadreOcupacion.ToString();
            this.txtPadreEmpresa.Text = Alumno.PadreEmpresa;

            this.txtMadreApPaterno.Text = Alumno.MadreApPaterno;
            this.txtMadreApMaterno.Text = Alumno.MadreApMaterno;
            this.txtMadreNombre.Text = Alumno.MadreNombre;
            this.txtMadreTelefono.Text = Alumno.MadreTelefono;
            this.ddlMadreOcupacion.SelectedValue = Alumno.MadreOcupacion == null ? "-1" : Alumno.MadreOcupacion.ToString();
            this.txtMadreEmpresa.Text = Alumno.MadreEmpresa;

            this.CargarMunicipios();
            return;
        }
    }
    private void MostrarDatos()
    {
        string Ciclo = this.ddlCiclo.SelectedValue;
        int Zona = int.Parse(this.ddlZonas.SelectedValue);
        int PlantelID = int.Parse(this.ddlPlanteles.SelectedValue);
        byte Turno = byte.Parse(this.ddlTurnos.SelectedValue);
        int Estatus = int.Parse(ddlEstatus.SelectedValue);

        db = new DBEscolarDataContext();
        var res = (from A in db.PreInscritos
                   join P in db.Plantels on A.PlantelID equals P.PlantelID
                   where A.Ciclo == Ciclo && P.Zona == (Zona == 0 ? P.Zona : Zona) && P.PlantelID == (PlantelID == 0 ? P.PlantelID : PlantelID)
                    && A.Turno == (Turno == 0 ? A.Turno : Turno) && A.Estatus == (Estatus == -1 ? A.Estatus : Estatus)
                   group A by A.Estatus into g
                   select new { Estatus = g.Key.ToString().Replace("0", "Llenó web").Replace("1", "Validado").Replace("2", "Validado (Insc)"), Alumnos = g.Count() }).ToList();

        this.lblMensaje.Visible = res.Count() == 0;

        this.Chart1.DataSource = res;
        this.Chart1.DataBind();

        //Habilitar / Deshabilitar reporte
        this.btnImprimir.Enabled = this.ddlPlanteles.SelectedIndex > 0 && res.Count() > 0;
    }
Example #27
0
    private int MateriasReprobadas(string Matricula)
    {
        int Reprobadas = 0;

        DBEscolarDataContext db = new DBEscolarDataContext();

        var Repro = (from A in db.Reprobados_Is
                            where A.or_matric == Matricula
                            select A).FirstOrDefault();

        if (Repro == null)
            return 0;

        if (Repro.Incompletas > 0)
            return -1;

        return Repro.Reprobadas.Value;
    }