private void CargaInspeccionTrabajoDetalle()
        {
            List <InspeccionTrabajoDetalleBE> lstTmpInspeccionTrabajoDetalle = null;

            lstTmpInspeccionTrabajoDetalle = new InspeccionTrabajoDetalleBL().ListaTodosActivo(IdInspeccionTrabajo);

            mListaInspeccionTrabajoDetalleOrigen.Clear();

            foreach (InspeccionTrabajoDetalleBE item in lstTmpInspeccionTrabajoDetalle)
            {
                CInspeccionTrabajoDetalle objE_InspeccionTrabajoDetalle = new CInspeccionTrabajoDetalle();
                objE_InspeccionTrabajoDetalle.IdEmpresa                  = item.IdEmpresa;
                objE_InspeccionTrabajoDetalle.IdInspeccionTrabajo        = item.IdInspeccionTrabajo;
                objE_InspeccionTrabajoDetalle.IdInspeccionTrabajoDetalle = item.IdInspeccionTrabajoDetalle;
                objE_InspeccionTrabajoDetalle.Item = item.Item;
                objE_InspeccionTrabajoDetalle.Foto = item.Foto;
                objE_InspeccionTrabajoDetalle.CondicionSubEstandar = item.CondicionSubEstandar;
                objE_InspeccionTrabajoDetalle.AccionCorrectiva     = item.AccionCorrectiva;
                objE_InspeccionTrabajoDetalle.IdResponsable        = item.IdResponsable;
                objE_InspeccionTrabajoDetalle.Responsable          = item.Responsable;
                objE_InspeccionTrabajoDetalle.FechaEjecucion       = item.FechaEjecucion;
                objE_InspeccionTrabajoDetalle.FotoCumplimiento     = item.FotoCumplimiento;
                objE_InspeccionTrabajoDetalle.Observacion          = item.Observacion;
                objE_InspeccionTrabajoDetalle.IdSituacion          = item.IdSituacion;
                objE_InspeccionTrabajoDetalle.DescSituacion        = item.DescSituacion;
                objE_InspeccionTrabajoDetalle.TipoOper             = item.TipoOper;
                mListaInspeccionTrabajoDetalleOrigen.Add(objE_InspeccionTrabajoDetalle);
            }

            bsListado.DataSource = mListaInspeccionTrabajoDetalleOrigen;
            gcInspeccionTrabajoDetalle.DataSource = bsListado;
            gcInspeccionTrabajoDetalle.RefreshDataSource();
        }
        private void eliminarToolStripMenuItem_Click(object sender, EventArgs e)
        {
            try
            {
                int IdInspeccionTrabajoDetalle = 0;
                if (gvInspeccionTrabajoDetalle.GetFocusedRowCellValue("IdInspeccionTrabajoDetalle") != null)
                {
                    IdInspeccionTrabajoDetalle = int.Parse(gvInspeccionTrabajoDetalle.GetFocusedRowCellValue("IdInspeccionTrabajoDetalle").ToString());
                }
                InspeccionTrabajoDetalleBE objBE_InspeccionTrabajoDetalle = new InspeccionTrabajoDetalleBE();
                objBE_InspeccionTrabajoDetalle.IdInspeccionTrabajoDetalle = IdInspeccionTrabajoDetalle;
                objBE_InspeccionTrabajoDetalle.IdEmpresa = Parametros.intEmpresaId;
                objBE_InspeccionTrabajoDetalle.Usuario   = Parametros.strUsuarioLogin;
                objBE_InspeccionTrabajoDetalle.Maquina   = WindowsIdentity.GetCurrent().Name.ToString();

                InspeccionTrabajoDetalleBL objBL_InspeccionTrabajoDetalle = new InspeccionTrabajoDetalleBL();
                objBL_InspeccionTrabajoDetalle.Elimina(objBE_InspeccionTrabajoDetalle);
                gvInspeccionTrabajoDetalle.DeleteRow(gvInspeccionTrabajoDetalle.FocusedRowHandle);
                gvInspeccionTrabajoDetalle.RefreshData();

                picImage.Image = SSOMA.Presentacion.Properties.Resources.noImage;
            }
            catch (Exception ex)
            {
                XtraMessageBox.Show(ex.Message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        private void btnGrabar_Click(object sender, EventArgs e)
        {
            try
            {
                InspeccionTrabajoDetalleBL objBL_AccionCorrectiva = new InspeccionTrabajoDetalleBL();
                objBL_AccionCorrectiva.ActualizaSituacion(IdInspeccionTrabajoDetalle, Convert.ToInt32(cboSituacion.EditValue));

                XtraMessageBox.Show("La Actualización de la situación de la acción correctiva se realizó correctamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);

                StringBuilder strMensaje = new StringBuilder();
                strMensaje.Append("*****************************************************************************\n\n");
                strMensaje.Append("La Condición Insegura N°: " + Numero + " del Item : " + Item.ToString() + "  se regulizaró correctamente." + "\n\n");
                strMensaje.Append("Emitido Por el Area de Seguridad y Salud en el Trabajo" + "\n\n");
                strMensaje.Append("*****************************************************************************\n\n");

                //ELIMINAMOS LOR ARCHIVOS CREADOS
                foreach (var item in Directory.GetFiles(@"D:\", "*.pdf"))
                {
                    File.SetAttributes(item, FileAttributes.Normal);
                    File.Delete(item);
                }

                //GENERAR EL REPORTE EN PDF
                List <ReporteInspeccionTrabajoBE> lstReporteInspeccion = null;
                lstReporteInspeccion = new ReporteInspeccionTrabajoBL().Listado(Convert.ToInt32(Numero));
                rptInspeccionTrabajo objReporte = new rptInspeccionTrabajo();
                objReporte.SetDataSource(lstReporteInspeccion);
                objReporte.ExportToDisk(ExportFormatType.PortableDocFormat, @"D:\" + Numero + ".pdf");

                if (Convert.ToInt32(cboSituacion.EditValue) == Parametros.intDITEjecutado)
                {
                    BSUtils.EmailSend(strMailTO, "Inspección Interna de Trabajo", strMensaje.ToString(), @"D:\" + Numero + ".pdf", "", "", "");
                }

                this.Close();
            }
            catch (Exception ex)
            {
                XtraMessageBox.Show(ex.Message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        private void enviarFotoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            try
            {
                Cursor = Cursors.WaitCursor;

                string strMailTO = "";
                string strNumero = "";

                int intIdInspeccionTrabajo = 0;
                intIdInspeccionTrabajo = int.Parse(gvInspeccionTrabajo.GetFocusedRowCellValue("IdInspeccionTrabajo").ToString());
                strNumero = gvInspeccionTrabajo.GetFocusedRowCellValue("Numero").ToString();

                InspeccionTrabajoBE objE_InspeccionTrabajo = null;
                objE_InspeccionTrabajo = new InspeccionTrabajoBL().Selecciona(intIdInspeccionTrabajo);
                if (objE_InspeccionTrabajo != null)
                {
                    strMailTO = objE_InspeccionTrabajo.MailSectorResponsable;
                }

                //TRAEMOS LOS CORREOS DE LOS RESONSABLES DE LAS ACCIONES CORRECTIVAS PENDIENTES
                List <InspeccionTrabajoDetalleBE> lstInspeccionTrabajoDetalle = null;
                lstInspeccionTrabajoDetalle = new InspeccionTrabajoDetalleBL().ListaSituacion(intIdInspeccionTrabajo, Parametros.intDITPendiente);
                if (lstInspeccionTrabajoDetalle.Count == 0)
                {
                    XtraMessageBox.Show("La Inspección de Trabajo no tiene acciones correctivas pendienes", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
                    Cursor = Cursors.Default;
                    return;
                }
                else
                {
                    foreach (var item in lstInspeccionTrabajoDetalle)
                    {
                        PersonaBE objE_Persona = new PersonaBE();
                        objE_Persona = new PersonaBL().Selecciona(0, 0, 0, item.IdResponsable);
                        if (objE_Persona != null)
                        {
                            strMailTO = strMailTO + ";" + objE_Persona.Email;
                        }
                    }
                }

                StringBuilder strMensaje = new StringBuilder();
                strMensaje.Append("**************************************************************************************************************************\n\n");
                strMensaje.Append("Se adjunta las Acciones Correctivas Pendientes " + "\n\n");
                strMensaje.Append("Comunicarse con el Area de Seguridad y Salud en el Trabajo" + "\n\n");
                strMensaje.Append("**************************************************************************************************************************\n\n");

                //ELIMINAMOS LOR ARCHIVOS CREADOS
                foreach (var item in Directory.GetFiles(@"D:\", "*.pdf"))
                {
                    File.SetAttributes(item, FileAttributes.Normal);
                    File.Delete(item);
                }

                //GENERAR EL REPORTE EN PDF
                List <ReporteInspeccionTrabajoBE> lstReporteInspeccion = null;
                lstReporteInspeccion = new ReporteInspeccionTrabajoBL().ListadoPendiente(intIdInspeccionTrabajo);
                rptInspeccionTrabajo objReporte = new rptInspeccionTrabajo();
                objReporte.SetDataSource(lstReporteInspeccion);
                objReporte.ExportToDisk(ExportFormatType.PortableDocFormat, @"D:\" + strNumero + ".pdf");

                BSUtils.EmailSend(strMailTO, "Inspección Interna de Trabajo", strMensaje.ToString(), @"D:\" + strNumero + ".pdf", "", "", "");

                XtraMessageBox.Show("El Correo se envio correctamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                Cursor = Cursors.Default;
            }
            catch (Exception ex)
            {
                Cursor = Cursors.Default;
                XtraMessageBox.Show(ex.Message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }