private void modificar_Click(object sender, EventArgs e)
        {
            if (this.dataGridView1.CurrentRow != null && this.dataGridView1.CurrentRow.DataBoundItem != null)
            {
                utils = new Bloqueador();
                utils.process(null, null, null, new List <Control>()
                {
                    this.registrar, this.modificar, this.dateTimePicker1, this.completa, this.media
                });
                utils = new Desbloqueador();
                utils.process(null, null, null, new List <Control>()
                {
                    this.groupBox1, this.btnGuardar
                });
                haciendoCambios = true;
                isEdit          = true;

                this.current = this.dataGridView1.CurrentRow.DataBoundItem as InasistenciaAlumno;
                this.chJustificado.Checked = this.current.Justificada;
                if (this.current.valor == 1.0)
                {
                    completa.Checked = true;
                }
                else
                {
                    media.Checked = true;
                }
                this.dateTimePicker1.Value = current.fecha;
            }
        }
 private void registrar_Click(object sender, EventArgs e)
 {
     utils = new Bloqueador();
     utils.process(null, null, null, new List <Control>()
     {
         this.registrar, this.modificar
     });
     utils = new Desbloqueador();
     utils.process(null, null, null, new List <Control>()
     {
         this.groupBox1, this.btnGuardar, this.chJustificado, this.completa, this.media, this.dateTimePicker1
     });
     haciendoCambios = true;
     isEdit          = false;
     this.current    = null;
 }
Exemple #3
0
        //Inasistencias

        public void guardarInasistencia(InasistenciaAlumno inasistencia)
        {
            SqlConnection connection = ConexionSingleton.obtenerConexion();

            connection.Open();
            SqlTransaction tx = connection.BeginTransaction();
            StringBuilder  sb = new StringBuilder();

            sb.Append(" insert into inasistencia_de_alumno ");
            sb.Append(" (ina_alumno_id,ina_fecha,ina_valor,ina_dvh,ina_justificada) ");
            sb.Append(" values(@alu,@fecha,@valor,@dvh,@justificada) ");

            String dvh = new DAOSeguridad().recalcularDigitoHorizontal(new String[] { inasistencia.Alumno.legajo.ToString(),
                                                                                      inasistencia.fecha.ToString("yyyy-MM-dd") });

            SqlCommand cmd = new SqlCommand(sb.ToString(), connection, tx);

            cmd.Parameters.Add(new SqlParameter("@alu", SqlDbType.BigInt)).Value     = inasistencia.Alumno.legajo;
            cmd.Parameters.Add(new SqlParameter("@fecha", SqlDbType.DateTime)).Value = inasistencia.fecha.ToString("yyyy-MM-dd");
            cmd.Parameters.Add(new SqlParameter("@valor", SqlDbType.Decimal)
            {
                Precision = 2
            }).Value = inasistencia.valor;
            cmd.Parameters.Add(new SqlParameter("@dvh", SqlDbType.VarChar)).Value     = dvh;
            cmd.Parameters.Add(new SqlParameter("@justificada", SqlDbType.Bit)).Value = inasistencia.Justificada;

            try
            {
                cmd.CommandText = sb.ToString();


                cmd.ExecuteNonQuery();
                tx.Commit();
                connection.Close();
                Usuario usu = new Usuario();
                usu.id = TrabajoDeCampo.Properties.Settings.Default.SessionUser;
                new DAOSeguridad().grabarBitacora(usu, "Se guardó una inasistencia", CriticidadEnum.BAJA);
                new DAOSeguridad().recalcularDigitoVertical("INASISTENCIA_DE_ALUMNO");
            }
            catch (Exception)
            {
                tx.Rollback();
                connection.Close();
                throw;
            }
        }
        public Boolean verificarFechasRepetidas(InasistenciaAlumno inas)
        {
            bool hayRepetidas = false;

            List <InasistenciaAlumno> inasistenciasGuardadas = this.dataGridView1.DataSource as List <InasistenciaAlumno>;

            foreach (InasistenciaAlumno item in inasistenciasGuardadas)
            {
                if (item.fecha.ToString("yyyy-MM-dd").Equals(inas.fecha.ToString("yyyy-MM-dd")) &&
                    item.GetHashCode() != inas.GetHashCode())
                {
                    hayRepetidas = true;
                    break;
                }
            }

            return(hayRepetidas);
        }
Exemple #5
0
        public List <InasistenciaAlumno> listarInasistencias(String filtro, String valor, String orden)
        {
            SqlDataReader             reader              = null;
            SqlConnection             connection          = ConexionSingleton.obtenerConexion();
            List <InasistenciaAlumno> inasistenciaAlumnos = new List <InasistenciaAlumno>();

            connection.Open();
            SqlTransaction tx  = connection.BeginTransaction();
            SqlCommand     cmd = new SqlCommand("SELECT * FROM INASISTENCIA_DE_ALUMNO WHERE INA_ALUMNO_ID = @ID ", connection, tx);

            cmd.Parameters.Add(new SqlParameter("@ID", SqlDbType.BigInt)).Value = long.Parse(valor);

            try
            {
                reader = cmd.ExecuteReader();
                while (reader.Read())
                {
                    InasistenciaAlumno inas = new InasistenciaAlumno();
                    inas.fecha       = DateTime.Parse(reader.GetValue(1).ToString());
                    inas.valor       = (double)reader.GetDecimal(2);
                    inas.Justificada = reader.GetBoolean(4);
                    inasistenciaAlumnos.Add(inas);
                }
                reader.Close();
                tx.Commit();
                connection.Close();
            }
            catch (Exception)
            {
                if (reader != null)
                {
                    reader.Close();
                }
                tx.Rollback();
                connection.Close();
                throw;
            }

            return(inasistenciaAlumnos);
        }
Exemple #6
0
        public void modificarInasistencia(InasistenciaAlumno inasistencia)
        {
            SqlConnection connection = ConexionSingleton.obtenerConexion();

            connection.Open();
            SqlTransaction tx = connection.BeginTransaction();

            StringBuilder sb = new StringBuilder();

            sb.Append(" update inasistencia_de_alumno set ");
            sb.Append(" ina_justificada        = @justificada ");
            sb.Append(" where ina_alumno_id = @alu  and ina_fecha = @fecha");

            SqlCommand cmd = new SqlCommand(sb.ToString(), connection, tx);

            cmd.Parameters.Add(new SqlParameter("@alu", SqlDbType.BigInt)).Value      = inasistencia.Alumno.legajo;
            cmd.Parameters.Add(new SqlParameter("@fecha", SqlDbType.DateTime)).Value  = inasistencia.fecha.ToString("yyyy-MM-dd");
            cmd.Parameters.Add(new SqlParameter("@justificada", SqlDbType.Bit)).Value = inasistencia.Justificada;

            try
            {
                cmd.CommandText = sb.ToString();
                cmd.ExecuteNonQuery();
                tx.Commit();
                connection.Close();
                Usuario usu = new Usuario();
                usu.id = TrabajoDeCampo.Properties.Settings.Default.SessionUser;
                new DAOSeguridad().grabarBitacora(usu, "Se modificó una inasistencia", CriticidadEnum.BAJA);
                new DAOSeguridad().recalcularDigitoVertical("INASISTENCIA_DE_ALUMNO");
            }
            catch (Exception)
            {
                tx.Rollback();
                connection.Close();
                throw;
            }
        }
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            if ((!this.completa.Checked && !this.media.Checked))
            {
                MessageBox.Show(traducciones["com.td.complete.campos"]);
                return;
            }

            DialogResult result = MessageBox.Show(traducciones["com.td.seguro"], "", MessageBoxButtons.OKCancel);

            if (!result.Equals(DialogResult.OK))
            {
                return;
            }
            if (this.current != null)
            {
                this.current.fecha = this.dateTimePicker1.Value;
                if (this.completa.Checked)
                {
                    this.current.valor = 1.0;
                }
                else
                {
                    this.current.valor = 0.5;
                }
                this.current.Justificada = this.chJustificado.Checked;
                this.current.Alumno      = alumno;
                try
                {
                    bool repetidas = verificarFechasRepetidas(this.current);
                    if (!repetidas)
                    {
                        this.servicioAlumnos.modificarInasistencia(this.current);
                        MessageBox.Show(traducciones["com.td.completado"]);
                        this.limpiar();
                        this.listarInasistencias();
                    }
                    else
                    {
                        MessageBox.Show(traducciones["com.td.fecha.ocupada"]);
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
            else
            {
                InasistenciaAlumno inas = new InasistenciaAlumno();
                inas.fecha       = this.dateTimePicker1.Value;
                inas.Alumno      = this.alumno;
                inas.valor       = (this.completa.Checked) ? 1.0 : 0.5;
                inas.Justificada = this.chJustificado.Checked;
                try
                {
                    bool repetidas = verificarFechasRepetidas(inas);
                    if (!repetidas)
                    {
                        this.servicioAlumnos.guardarInasistencia(inas);
                        MessageBox.Show(traducciones["com.td.completado"]);
                        this.limpiar();
                        this.listarInasistencias();
                    }
                    else
                    {
                        MessageBox.Show(traducciones["com.td.fecha.ocupada"]);
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
        }
 public void modificarInasistencia(InasistenciaAlumno inasistencia)
 {
     this.daoAlumnos.modificarInasistencia(inasistencia);
 }
        //Inasistencias

        public void guardarInasistencia(InasistenciaAlumno inasistencia)
        {
            this.daoAlumnos.guardarInasistencia(inasistencia);
        }