private void btnGuardar_Click(object sender, EventArgs e)
        {
            switch (ValidarFecha(DateTime.Parse(dtimeFechaInicioAsig.Text), DateTime.Parse(dtimeFechaFinAsig.Text)))
            {
            case 0:

                if (cbIncidencia.SelectedValue.ToString() != "20")
                {
                    if (ltTrab.Count != 0)
                    {
                        IncCaptura objinc = new IncCaptura();

                        bool bBandera = false;
                        bool bExists  = false;
                        for (int iCont = 0; iCont < ltTrab.Count(); iCont++)
                        {
                            Captura obj = ltTrab.ElementAt(iCont);

                            int idTrabActual       = Convert.ToInt32(TrabajadorInfo.IdTrab);
                            int cvincidenciaActual = obj.cvincidencia;
                            int cvtipoActual       = obj.cvtipo;

                            objinc.fFecharegistro = obj.FechaReg;
                            objinc.iIdtrab        = idTrabActual;
                            objinc.iCvIncidencia  = cvincidenciaActual;
                            objinc.iCvTipo        = cvtipoActual;
                            objinc.iCvIncidencia2 = Convert.ToInt32(cbIncidencia.SelectedValue.ToString());
                            objinc.iCvTipo2       = Convert.ToInt32(cbTipo.SelectedValue.ToString());

                            objinc.fFechaFin    = DateTime.Parse(dtimeFechaFinAsig.Text);
                            objinc.fFechaInicio = DateTime.Parse(dtimeFechaInicioAsig.Text);
                            objinc.sUsuumod     = LoginInfo.IdTrab;
                            objinc.sPrgumod     = this.Name;

                            DataTable dt = objinc.ExtrañamientoRetroactivo(objinc, 1);

                            if (dt.Columns.Contains("INSERT") || dt.Columns.Contains("EXISTS"))
                            {
                                bBandera = true;
                                IncCalificacion objInc = new IncCalificacion();
                                objInc.fFechaInicio  = dpFechaInicio.Value;
                                objInc.fFechaTermino = dpFechaFin.Value;

                                LlenarGrid(objInc);
                            }
                        }

                        ltCvIncidencia.Clear();
                        ltcvTipo.Clear();
                        ltFechasRegistro.Clear();
                        ltTrab.Clear();

                        if (bBandera == true)
                        {
                            Utilerias.ControlNotificaciones(panelTag, lbMensaje, 1, "Asignaciones Guardadas Correctamente");
                            txtReferencia.Text         = String.Empty;
                            cbTipo.SelectedIndex       = 0;
                            dtimeFechaInicioAsig.Value = DateTime.Now;
                            dtimeFechaFinAsig.Value    = DateTime.Now;
                            cbTipo.SelectedIndex       = 0;
                            cbTipo.Enabled             = false;
                            cbIncidencia.SelectedIndex = 0;
                            timer1.Start();
                        }
                        else
                        {
                            Utilerias.ControlNotificaciones(panelTag, lbMensaje, 3, "Una o más asignaciones no se lograron guardar.");
                            timer1.Start();
                        }
                    }
                }
                else
                {
                    DiasEspeciales objDias = new DiasEspeciales();

                    objDias.sIdTrab       = TrabajadorInfo.IdTrab;
                    objDias.iCvIncidencia = Convert.ToInt32(cbIncidencia.SelectedValue.ToString());
                    objDias.iCvTipo       = Convert.ToInt32(cbTipo.SelectedValue.ToString());
                    objDias.fFechaInicio  = DateTime.Parse(dtimeFechaInicioAsig.Text);
                    objDias.fFechaFin     = DateTime.Parse(dtimeFechaFinAsig.Text);
                    objDias.sReferencia   = txtReferencia.Text;
                    objDias.iOrden        = 6;
                    objDias.sUsuumod      = LoginInfo.IdTrab;
                    objDias.sPrgumod      = this.Name;
                    DataTable dt = objDias.ObtenerDiasEspecialesxTrabajador(objDias, 1);

                    if (dt.Columns.Contains("INSERT"))
                    {
                        Utilerias.ControlNotificaciones(panelTag, lbMensaje, 1, "Suspensión Guardada Correctamente");
                        txtReferencia.Text         = String.Empty;
                        cbTipo.SelectedIndex       = 0;
                        dtimeFechaInicioAsig.Value = DateTime.Now;
                        dtimeFechaFinAsig.Value    = DateTime.Now;
                        cbTipo.SelectedIndex       = 0;
                        cbTipo.Enabled             = false;
                        cbIncidencia.SelectedIndex = 0;
                        timer1.Start();
                    }
                    else if (dt.Columns.Contains("EXISTS"))
                    {
                        Utilerias.ControlNotificaciones(panelTag, lbMensaje, 2, "Este Tipo de Suspensión ya fue Asignado a este trabajador en esa fecha");

                        timer1.Start();
                    }
                    else
                    {
                        Utilerias.ControlNotificaciones(panelTag, lbMensaje, 3, "Error de Comunicación. Favor de Repetir el proceso");
                        timer1.Start();
                    }
                }

                break;


            case 1:
                Utilerias.ControlNotificaciones(panelTag, lbMensaje, 3, "La Fecha de Inicio no puede ser Superior a la de Término");
                timer1.Start();
                break;
            }
        }
Esempio n. 2
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            if (iActbtn != 3)
            {
                if (cbTipo.Text == "" | cbTipo.Text == "Seleccionar" | Convert.ToInt32(cbTipo.SelectedValue.ToString()) == 0
                    | Convert.ToInt32(cbTipo.SelectedIndex.ToString()) < 0)
                {
                    MessageBox.Show("Debe Capturar el Tipo de Incidencia.", "SIPAA");
                }
                else
                {
                    switch (ValidarFecha(DateTime.Parse(dtimeFechaInicioAsig.Text), DateTime.Parse(dtimeFechaFinAsig.Text)))
                    {
                    case 0:

                        if (cbIncidencia.SelectedValue.ToString() != "17")     //Suspension
                        {
                            if (ltTrab.Count != 0)
                            {
                                IncCaptura objinc = new IncCaptura();

                                DataTable dtReporte = new DataTable();
                                dtReporte.Columns.Add("FechaInc", typeof(string));
                                dtReporte.Columns.Add("Incidencia", typeof(string));
                                dtReporte.Columns.Add("TiempoEmp", typeof(string));
                                dtReporte.Columns.Add("TiempoProf", typeof(string));

                                bool bBandera = false;
                                for (int iCont = 0; iCont < ltTrab.Count(); iCont++)
                                {
                                    Captura2 obj = ltTrab.ElementAt(iCont);

                                    int idTrabActual       = Int32.Parse(cbEmpleados.SelectedValue.ToString());
                                    int cvincidenciaActual = obj.cvincidencia;
                                    int cvtipoActual       = obj.cvtipo;

                                    objinc.fFecharegistro = obj.FechaReg;
                                    objinc.iIdtrab        = idTrabActual;
                                    objinc.iCvIncidencia  = cvincidenciaActual;
                                    objinc.iCvTipo        = cvtipoActual;
                                    objinc.iCvIncidencia2 = Convert.ToInt32(cbIncidencia.SelectedValue.ToString());
                                    objinc.iCvTipo2       = Convert.ToInt32(cbTipo.SelectedValue.ToString());

                                    objinc.fFechaFin    = DateTime.Parse(dtimeFechaFinAsig.Text);
                                    objinc.fFechaInicio = DateTime.Parse(dtimeFechaInicioAsig.Text);
                                    objinc.sUsuumod     = LoginInfo.IdTrab;
                                    objinc.sPrgumod     = "IncidenciasExtSuspRetroGeneral";   //this.Name;
                                    if (ckbaplica.Checked)
                                    {
                                        objinc.iAplica = 1;
                                    }
                                    else
                                    {
                                        objinc.iAplica = 0;
                                    }

                                    DataTable dt = objinc.ExtrañamientoRetroactivo(objinc, 1);
                                    dtReporte.Rows.Add(Convert.ToString(objinc.fFecharegistro.ToString("dd/MM/yyyy")), obj.sIncidencia, obj.iTiempoEmp, obj.iTiempoProf);

                                    if (dt.Columns.Contains("INSERT") || dt.Columns.Contains("EXISTS"))
                                    {
                                        bBandera = true;
                                        IncCalificacion objInc = new IncCalificacion();
                                        objInc.fFechaInicio  = dpFechaInicio.Value;
                                        objInc.fFechaTermino = dpFechaFin.Value;

                                        LlenarGrid(objInc);
                                    }
                                }

                                if (cbIncidencia.SelectedValue.ToString() == "19")      //Extraña
                                {
                                    //Se lanza la carta
                                    ViewerReporte  form      = new ViewerReporte();
                                    ReportDocument ReportDoc = Utilerias.ObtenerObjetoReporte(dtReporte, "SIPAA_CS.RecursosHumanos.Reportes", "CartaExtrañamiento.rpt");
                                    ReportDoc.SetParameterValue("NombreEmpleado", cbEmpleados.Text);
                                    ReportDoc.SetParameterValue("FechaInicio", dpFechaInicio.Text);
                                    ReportDoc.SetParameterValue("FechaFin", dpFechaFin.Text);
                                    form.RptDoc = ReportDoc;
                                    form.Show();
                                }

                                ltCvIncidencia.Clear();
                                ltcvTipo.Clear();
                                ltFechasRegistro.Clear();
                                ltTrab.Clear();

                                if (bBandera == true)
                                {
                                    Utilerias.ControlNotificaciones(panelTag, lbMensaje, 1, "Asignaciones Guardadas Correctamente");
                                    txtReferencia.Text         = String.Empty;
                                    cbTipo.SelectedIndex       = 0;
                                    dtimeFechaInicioAsig.Value = DateTime.Now;
                                    dtimeFechaFinAsig.Value    = DateTime.Now;
                                    cbTipo.SelectedIndex       = 0;
                                    cbTipo.Enabled             = false;
                                    cbIncidencia.SelectedIndex = 0;
                                    timer1.Start();
                                }
                                else
                                {
                                    Utilerias.ControlNotificaciones(panelTag, lbMensaje, 3, "Una o más asignaciones no se lograron guardar.");
                                    timer1.Start();
                                }
                            }
                        }
                        else
                        {
                            DiasEspeciales objDias = new DiasEspeciales();

                            objDias.sIdTrab       = cbEmpleados.SelectedValue.ToString();
                            objDias.iCvIncidencia = Convert.ToInt32(cbIncidencia.SelectedValue.ToString());
                            objDias.iCvTipo       = Convert.ToInt32(cbTipo.SelectedValue.ToString());
                            objDias.fFechaInicio  = DateTime.Parse(dtimeFechaInicioAsig.Text);
                            objDias.fFechaFin     = DateTime.Parse(dtimeFechaFinAsig.Text);
                            objDias.sReferencia   = txtReferencia.Text;
                            objDias.iOrden        = 6;
                            objDias.sUsuumod      = LoginInfo.IdTrab;
                            objDias.sPrgumod      = "IncidenciasExtSuspRetroGeneral";
                            DataTable dt = objDias.ObtenerDiasEspecialesxTrabajador(objDias, 1);

                            if (dt.Columns.Contains("INSERT"))
                            {
                                Utilerias.ControlNotificaciones(panelTag, lbMensaje, 1, "Suspensión Guardada Correctamente");
                                txtReferencia.Text         = String.Empty;
                                cbTipo.SelectedIndex       = 0;
                                dtimeFechaInicioAsig.Value = DateTime.Now;
                                dtimeFechaFinAsig.Value    = DateTime.Now;
                                cbTipo.SelectedIndex       = 0;
                                cbTipo.Enabled             = false;
                                cbIncidencia.SelectedIndex = 0;
                                timer1.Start();
                            }
                            else if (dt.Columns.Contains("EXISTS"))
                            {
                                Utilerias.ControlNotificaciones(panelTag, lbMensaje, 2, "Este Tipo de Suspensión ya fue Asignado a este trabajador en esa fecha");
                                timer1.Start();
                            }
                            else
                            {
                                Utilerias.ControlNotificaciones(panelTag, lbMensaje, 3, "Error de Comunicación. Favor de Repetir el proceso");
                                timer1.Start();
                            }
                        }
                        //// frecargar(); mejor re-leemos en lugar de cerrar y abrir la misma pantalla
                        btnBuscar_Click(sender, e);
                        break;

                    case 1:
                        Utilerias.ControlNotificaciones(panelTag, lbMensaje, 3, "La Fecha de Inicio no puede ser Mayor a la de Término");
                        timer1.Start();
                        break;
                    }
                }
            }
            else //va a elminarlo
            {
                DialogResult result = MessageBox.Show("¿Esta Seguro que desea eliminar el registro seleccionado?", "SIPAA", MessageBoxButtons.YesNo);

                if (result == DialogResult.Yes)
                {
                    //mandarlo al bote solo a los RETROACTIVOS
                    DataGridViewRow row          = this.dgvInc.SelectedRows[0];
                    IncCaptura      objaEliminar = new IncCaptura();
                    objaEliminar.iIdtrab        = Convert.ToInt32(row.Cells[1].Value);
                    objaEliminar.iCvIncidencia  = Convert.ToInt32(row.Cells["cvincidencia"].Value.ToString());
                    objaEliminar.fFecharegistro = DateTime.Parse(row.Cells["Fecha Registro"].Value.ToString());
                    objaEliminar.iCvTipo        = 0;
                    objaEliminar.iCvIncidencia2 = 6;
                    objaEliminar.iCvTipo2       = 0;
                    objaEliminar.fFechaInicio   = DateTime.Now;
                    objaEliminar.fFechaFin      = DateTime.Now;
                    objaEliminar.sUsuumod       = String.Empty;
                    objaEliminar.fFhumod        = DateTime.Now;
                    objaEliminar.sPrgumod       = "RegistroExtSuspRetro";
                    objaEliminar.iAplica        = 0;
                    objaEliminar.ExtrañamientoRetroactivo(objaEliminar, 3);
                    //hay que terminar
                    btnBuscar_Click(sender, e);
                }
                else
                {
                    btnBuscar_Click(sender, e);
                }
            }
        }