Ejemplo n.º 1
0
 public async Task <IEnumerable <WeeksCal> > GetCalculateWeeks(int year)
 {
     return(await Task.Run(() =>
     {
         return SomeHelpers.GenerateWeeks(year);
     }));
 }
Ejemplo n.º 2
0
        private void cmsOpciones_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            ToolStripMenuItem tsmi = (ToolStripMenuItem)e.ClickedItem;

            if (lvImagenes.SelectedItems.Count > 0)
            {
                if (tsmi == tsmFijarImagen)
                {
                    dtgRep.SelectedRows[0].Cells[3].Value = lvImagenes.SelectedItems[0].ImageList.Images[lvImagenes.SelectedItems[0].Index];
                    dtgRep.SelectedRows[0].Height         = 180;

                    //DESCARGAR IMAGEN A EQUIPO
                    string url = lvImagenes.SelectedItems[0].ImageList.Images.Keys[lvImagenes.SelectedItems[0].Index];
                    list[dtgRep.SelectedRows[0].Index].imagen_name = url;

                    //EDITAR EN LA BASE DE DATOS EL NOMBRE DE LA IMAGEN DESCARGADA
                    daoRU.EditRep(list[dtgRep.SelectedRows[0].Index]);

                    SomeHelpers.DownloadImageUrl(url);
                }
                if (tsmi == tsmVerImagenInternet)
                {
                    VisorImagenes vi = new VisorImagenes(false);
                    vi.b_imgShow = lvImagenes.SelectedItems[0].Name;
                    vi.ShowDialog();
                }
            }
            else
            {
                MessageBox.Show("Se debe seleccionar una imágen!");
            }
        }
Ejemplo n.º 3
0
        private void button1_Click(object sender, EventArgs e)
        {
            if (dtgHerr.SelectedRows.Count > 0)
            {
                using (OpenFileDialog dlg = new OpenFileDialog())
                {
                    dlg.Title            = "Abrir imágen";
                    dlg.Filter           = "Imágenes (*.jpg, *.jpeg, *.jpe, *.jfif, *.png) | *.jpg; *.jpeg; *.jpe; *.jfif; *.png";
                    dlg.InitialDirectory = Util.Global.DIRECTORIO_IMAGENES;

                    if (dlg.ShowDialog() == DialogResult.OK)
                    {
                        dtgHerr.SelectedRows[0].Cells[4].Value =
                            SomeHelpers.resizeImage(180, 180, dlg.FileName);
                        dtgHerr.SelectedRows[0].Height = 180;
                        //EDITAR EN LA BASE DE DATOS EL NOMBRE DE LA IMAGEN DESCARGADA
                        daoH.EditTool(listHerr[dtgHerr.SelectedRows[0].Index]);

                        listHerr[dtgHerr.SelectedRows[0].Index].imagen_name = dlg.SafeFileName;
                        SomeHelpers.CopyImageToServer(dlg);
                    }
                }
            }
            else
            {
                MessageBox.Show("Debe seleccionar una herramienta!");
            }
        }
Ejemplo n.º 4
0
        private void cboAreaLinea_Validated(object sender, EventArgs e)
        {
            ComboBox cbo = (ComboBox)sender;

            Console.WriteLine(cbo.Name.ToString());
            SomeHelpers.AddValueComboBox(cbo);
        }
Ejemplo n.º 5
0
        private void pbImage_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
        {
            image = SomeHelpers.CargarImagenXaml();

            if (!image.Equals(""))
            {
                pbImage.Source = new BitmapImage(new Uri(image));
            }
        }
Ejemplo n.º 6
0
 public Menu()
 {
     InitializeComponent();
     ManageFolder();
     //Properties.Settings.Default.EwoDatabaseConnectionString = "";
     Console.WriteLine(SomeHelpers.CalculateMD5Hash("prueba"));
     //this.Text = this.Text +" - " + Global.UserLoged.Nombre;
     //VerifyImages();
 }
        private void cmsImagen1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            SomeHelpers.ImageManager(imagen1, e, new List <ToolStripMenuItem>()
            {
                tsmVerImagen, itemQuitarImagen
            }, true, pbImg1);
            ToolStripMenuItem tsmCk = (ToolStripMenuItem)e.ClickedItem;

            if (tsmCk == itemQuitarImagen)
            {
                imagen1 = "";
            }
        }
Ejemplo n.º 8
0
        public async Task <ActionResult <IEnumerable <ProgramacionesModel> > > GetProgramaciones(long area, int year)
        {
            List <ProgramacionesModel> list = new List <ProgramacionesModel>();

            try
            {
                var query = from p in _context.Programaciones
                            join e in _context.Equipos
                            on p.IdEquipo equals e.Id
                            join td in _context.TiposData
                            on p.IdEstado equals td.Id
                            join u in _context.Usuarios
                            on p.IdUsuario equals u.Id
                            where e.Area == area &&
                            p.Ano == year
                            select new { e, p, td, u };

                var data = await query.ToListAsync();

                foreach (var item in data.ToList())
                {
                    list.Add(new ProgramacionesModel()
                    {
                        id            = item.p.Id,
                        idEquipo      = item.e.Id,
                        descEquipo    = item.e.Nombre,
                        ano           = item.p.Ano.Value,
                        semana        = item.p.Semana.Value,
                        fecha         = item.p.Fecha.Value,
                        idEstado      = item.td.Id,
                        descEstado    = item.td.Descripcion,
                        idUsuario     = item.u.Id,
                        nombreUsuario = item.u.Nombres + " " + item.u.Apellidos,
                        observaciones = item.p.Observaciones,
                        frecuencia    = item.e.Frecuencia.Value,
                        codigoEquipo  = item.e.Código,
                        idArea        = item.e.Area.Value,
                        mes           = SomeHelpers.FirstDateOfWeekISO8601(item.p.Ano.Value, item.p.Semana.Value).Month
                    });
                }
            }
            catch (Exception e)
            {
                string err = "Excepción al momento de consultar programaciones by area year: " + e.ToString();
                Trace.WriteLine(err);
            }

            return(list);
        }
Ejemplo n.º 9
0
        public tecnicos LoginUser(tecnicos u, int pilar)
        {
            tecnicos uslog = new tecnicos();

            try
            {
                using (var context = new MttoAppEntities())
                {
                    string passMD5 = SomeHelpers.CalculateMD5Hash(u.password);

                    // Query for all
                    var als = from b in context.tecnicos
                              where b.usuario.Equals(u.usuario) &&
                              b.password.Equals(passMD5) &&
                              b.tipo_usuario == pilar
                              select b;

                    var item = als.FirstOrDefault();

                    if (item != null)
                    {
                        uslog.Id       = item.Id;
                        uslog.Nombre   = item.Nombre;
                        uslog.usuario  = item.usuario;
                        uslog.password = item.password;
                        uslog.activo   = item.activo;
                        uslog.id_rol   = item.id_rol;
                    }
                }
            }
            catch (Exception e)
            {
                MessageBox.Show("Excepción al iniciar sesión con usuario: " + e,
                                "Atención", MessageBoxButton.OK, MessageBoxImage.Error);
            }

            return(uslog);
        }
Ejemplo n.º 10
0
        private void button1_Click(object sender, EventArgs e)
        {
            if (dtgRep.SelectedRows.Count > 0)
            {
                using (OpenFileDialog dlg = new OpenFileDialog())
                {
                    dlg.Title            = "Abrir imagen";
                    dlg.Filter           = "Imágenes (*.jpg, *.jpeg, *.jpe, *.jfif, *.png) | *.jpg; *.jpeg; *.jpe; *.jfif; *.png";
                    dlg.InitialDirectory = Util.Global.DIRECTORIO_IMAGENES;

                    if (dlg.ShowDialog() == DialogResult.OK)
                    {
                        dtgRep.SelectedRows[0].Cells[3].Value =
                            SomeHelpers.resizeImage(180, 180, dlg.FileName);;
                        dtgRep.SelectedRows[0].Height = 180;
                    }
                }
            }
            else
            {
                MessageBox.Show("Debe seleccionar una herramienta!");
            }
        }
Ejemplo n.º 11
0
 private void pbImg1_Click(object sender, EventArgs e)
 {
     imagen1 = SomeHelpers.CargarImagenPictureBox(pbImg1);
 }
Ejemplo n.º 12
0
        private void bgSaveData_DoWork(object sender, DoWorkEventArgs e)
        {
            this.Invoke((MethodInvoker) delegate
            {
                try
                {
                    //LLENAR RESPECTIVOS DATATABLES PARA VALIDAR INFORMACIÓN A GUARDAR
                    dt_epps      = FillEpps(dtgEpps);
                    dt_repuestos = FillRepuestos(dtgRep);
                    dt_pasos     = FillPasoPaso(dtgPasoAPaso);
                    //GUARDAR EN BASE DE DATOS
                    Objetos.Smp smp = new Objetos.Smp();

                    smp.consecutivo        = int.Parse(txtConsecutivo.Text);
                    smp.nombre             = txtNombreSMP.Text.Trim();
                    smp.numero             = int.Parse(txtSMP.Text);
                    smp.id_linea           = daoAL.ExistsAreaLinea(cboAreaLinea.Text.Trim());
                    smp.id_equipo          = daoEqu.ExistsEquipo(cboEquipo.Text.Trim());
                    smp.fecha_smp          = dtpFecha.Value;
                    smp.clasificacion      = cboClasificación.Text;
                    smp.tipo_mtto          = cboTipoMtto.Text;
                    smp.tecnicos_eq        = int.Parse(txtTecnicosRequeridos.Text);
                    smp.duracion_actividad = int.Parse(txtDuracionActividad.Text);
                    smp.equipo_parado      = int.Parse(txtTiempoEquipoParado.Text);
                    smp.frecuencia         = int.Parse(txtFrecuencia.Text);
                    smp.tipo_frecuencia    = cboFrecuencia.Text;
                    smp.id_elaborador      = daoTec.ExistsTecnico(cboElaborador.Text.Trim());
                    smp.id_aprobador       = daoTec.ExistsTecnico(cboAprobador.Text.Trim());
                    smp.loto = rbLotoSi.Checked;
                    //PERMISOS CHEKEADOS
                    foreach (object itemChecked in chlbPermisosRequeridos.CheckedItems)
                    {
                        smp.permisos += itemChecked.ToString() + ",";
                    }
                    //QUITAR ULTIMA COMA
                    smp.permisos = smp.permisos.TrimEnd(',');
                    smp.imagen_1 = Path.GetFileName(imagen1);
                    smp.imagen_2 = Path.GetFileName(imagen2);

                    //GUARDAR OBJETO EN BASE DE DATOS
                    int ins = daoSmp.AddSmp(smp);
                    //PENDIENTE GUARDAR EPPS, HERRAMIENTAS, PASOS, REPUESTOS
                    //E INDEPENDIZAR PERMISOS DE RIESGOS
                    if (ins > 0)
                    {
                        //AGREGAR EPPS
                        for (int i = 0; i < listEpps.Count; i++)
                        {
                            if (listEpps[i].sel)
                            {
                                daoSmp.AddSmpUtil(new SmpUtil()
                                {
                                    id_smp  = ins,
                                    id_tipo = 9,
                                    id_util = listEpps[i].id
                                });
                            }
                        }

                        foreach (Objetos.Herramientas item in list)
                        {
                            if (item.sel)
                            {
                                daoSmp.AddSmpUtil(new SmpUtil()
                                {
                                    id_smp  = ins,
                                    id_tipo = 10,
                                    id_util = item.Id
                                });
                            }
                        }

                        foreach (Objetos.Repuestos item in listR)
                        {
                            daoSmp.AddSmpUtil(new SmpUtil()
                            {
                                id_smp  = ins,
                                id_tipo = 11,
                                id_util = item.Id
                            });
                        }

                        foreach (Objetos.PasoaPaso item in listPasos)
                        {
                            item.id_smp = ins;
                            daoPP.EditPaso(item);
                        }
                    }

                    //GENERAR EXCEL
                    //OBEJTO QUE PERMITE GESTIONAR DOCUMENTO EXCEL
                    Microsoft.Office.Interop.Excel.Application xlApp =
                        new Microsoft.Office.Interop.Excel.Application();

                    //MOSTRAR ARCHIVO MIENTRAS SE UTILIZA
                    xlApp.Visible = false;

                    //DIRECTORIO DONDE SE COPIARÁ EL ARCHIVO TEMPORALMENTE
                    //PARA EDITARLO
                    string sru = Util.Global.DIRECTORIO_FORMATOS;

                    //NOMBRE DEL ARCHIVO TEMPORAL
                    path = @"" + sru + "\\SMP.xlsx";

                    //COPIAR EL ARCHIVO DE LOS RECURSOS DE LA APLICACIÓN
                    // A LA RUTA ESTABLECIDA
                    File.WriteAllBytes(path, Properties.Resources.SMP_MODIFICADO);

                    //VERIFICAR SI EL ARCHIVO ESTÁ BLOQUEADO O ESTA SIENDO UTILIZADO POR OTRO PROCESO
                    if (IsFileLocked(new FileInfo(path)))
                    {
                        MessageBox.Show("El archivo se está ejecutando, debe cerrarlo para continuar",
                                        "Exportar en Excel", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    else
                    {
                        //CREAR EL OBJETO DEL LIBRO A PARTIR DE LA RUTA
                        Workbook wb = xlApp.Workbooks.Open(path);

                        //FIJAR EN OBJETOS LAS PESTAÑAS U HOJA DEL LIBRO PARA TRABAJAR
                        Worksheet ws2 = (Worksheet)wb.Worksheets[1];

                        //////////////////////////////////////////////////
                        //**************** INFORMACIÓN BÁSICA ************
                        //////////////////////////////////////////////////
                        //LINEA
                        FillCell(ws2, 3, 5, cboAreaLinea.Text.ToString());
                        //EQUIPO
                        FillCell(ws2, 4, 5, cboEquipo.Text.ToString());
                        //CLASDIFICACIÓN SMP
                        FillCell(ws2, 5, 5, cboClasificación.Text.ToString());
                        //NOMBRE SMP
                        FillCell(ws2, 2, 14, txtNombreSMP.Text.ToString());
                        //NÚMERO SMP
                        FillCell(ws2, 3, 18, txtSMP.Text.ToString());
                        //ELABORADO POR
                        FillCell(ws2, 3, 25, cboElaborador.Text.ToString());
                        //APROBADO POR
                        FillCell(ws2, 3, 35, cboAprobador.Text.ToString());
                        //FECHA
                        FillCell(ws2, 4, 40, dtpFecha.Value.ToShortDateString());
                        //NÚMERO DE TECNICOS REQUERIDOS
                        FillCell(ws2, 5, 14, txtTecnicosRequeridos.Text.ToString());
                        //TIPO MANTENIMIENTO
                        FillCell(ws2, 5, 24, cboTipoMtto.Text.ToString());
                        //DURACIÓN DE LA ACTIVIDAD
                        FillCell(ws2, 5, 30, txtDuracionActividad.Text.ToString());
                        //TIEMPO EQUIPO PARADO
                        FillCell(ws2, 5, 35, txtTiempoEquipoParado.Text.ToString());
                        //FREUENCIA
                        FillCell(ws2, 5, 41, txtFrecuencia.Text.ToString() + " " + cboFrecuencia.Text.ToString());
                        //LOTO
                        FillCell(ws2, 16, 3, rbLotoSi.Checked ? "SI" : "NO");
                        //IMAGEN 1
                        if (!imagen1.Equals(""))
                        {
                            Microsoft.Office.Interop.Excel.Range rIm = (Microsoft.Office.Interop.Excel.Range)ws2.Cells[7, 9];
                            SomeHelpers.AddImageExcel(ws2, imagen1, (float)rIm.Left + 1, (float)rIm.Top + 1, 152, 150);
                        }
                        //IMAGEN 2
                        if (!imagen2.Equals(""))
                        {
                            Microsoft.Office.Interop.Excel.Range rIm = (Microsoft.Office.Interop.Excel.Range)ws2.Cells[7, 21];
                            SomeHelpers.AddImageExcel(ws2, imagen2, (float)rIm.Left + 1, (float)rIm.Top + 1, 152, 150);
                        }
                        //TO DO: YA SABE

                        //PERMISOS DE TRABAJO
                        int k = 0;
                        for (int i = 5; i <= 30; i += 2)
                        {
                            if (k < chlbPermisosRequeridos.CheckedIndices.Count)
                            {
                                //CÓDIGO PODEROSO
                                SomeHelpers.AddImageExcel(ws2, Util.Global.DIRECTORIO_IMAGENES + @"\"
                                                          + RiskImages.Images.Keys[chlbPermisosRequeridos.CheckedIndices[k]].ToString(), (float)GetRangeImageRisk(ws2, i).Left + 1,
                                                          (float)GetRangeImageRisk(ws2, i).Top + 1, 55, 58);

                                FillCell(ws2, 19, i, chlbPermisosRequeridos.CheckedItems[k].ToString());
                                k++;
                            }
                        }

                        //////////////////////////////////////////////////
                        //**************** EPPS *************************
                        //////////////////////////////////////////////////
                        //EPPS
                        //EPPS IMAGENES RANGO
                        int j = 0;

                        for (int i = 6; i <= 70; i += 2)
                        {
                            if (j < dt_epps.Rows.Count)
                            {
                                //CÓDIGO PODEROSO
                                SomeHelpers.AddImageExcel(ws2, Util.Global.DIRECTORIO_IMAGENES + @"\"
                                                          + dt_epps.Rows[j][5].ToString(), (float)GetRangeImageEpp(ws2, i).Left + 1,
                                                          (float)GetRangeImageEpp(ws2, i).Top + 1, 56, 59);

                                FillCell(ws2, 12, i, dt_epps.Rows[j][3].ToString());

                                j++;
                            }
                        }
                        //////////////////////////////////////////////////
                        //**************** HERRAMIENTAS *****************
                        //////////////////////////////////////////////////
                        int herramientas_cant = dt_herramientas.Rows.Count;
                        int inicio_herr       = 22;
                        Range linePpal        = (Range)ws2.Rows[inicio_herr - 1];
                        if (herramientas_cant > 0)
                        {
                            linePpal.RowHeight = 138.6;
                        }

                        //COMBINAR Y CENTRAR CELDAS
                        for (int i = 1; i < herramientas_cant; i++)
                        {
                            Range line         = (Range)ws2.Rows[inicio_herr];
                            linePpal.RowHeight = 138.6;
                            line.Insert();

                            //COMBINAR CELDA DE FOTO
                            ws2.Range[ws2.Cells[inicio_herr, 26], ws2.Cells[inicio_herr, 42]].Merge();
                            //COMBINAR CELDA DE NOMBRE HERRAMIENTA
                            ws2.Range[ws2.Cells[inicio_herr, 13], ws2.Cells[inicio_herr, 25]].Merge();
                            //COMBINAR CELDA DE NOMBRE CATEGORÍA
                            ws2.Range[ws2.Cells[inicio_herr, 11], ws2.Cells[inicio_herr, 12]].Merge();
                        }
                        //SI HAY MAS DE 1 ELEMENTO, SE COMBINAN LAS COLUMNAS
                        if (herramientas_cant > 1)
                        {
                            ws2.Range[ws2.Cells[inicio_herr - 1, 3], ws2.Cells[inicio_herr + herramientas_cant - 2, 9]].Merge();
                        }

                        //AÑADIR ELEMENTOS A CELDAS
                        int l = inicio_herr - 1;

                        for (int i = 0; i < herramientas_cant; i++)
                        {
                            //OBTENER EL RANGO DEPENDIENDO DE CADA ELEMENTO
                            Microsoft.Office.Interop.Excel.Range picPosition = GetRangeHerramienta(ws2, l, 32);
                            //LA IMAGEN EN EL DATAGRID FUE DESCARGADA, SE OBTIENE LA RUTA PARA PEGAR EN EL EXCEL
                            string image_p = Util.Global.DIRECTORIO_IMAGENES + @"\" + Path.GetFileName(list[i].imagen_name);
                            //SE INSERTA LA IMAGEN EN EL EXCEL, CONFIGURANDO ATRIBUTOS
                            SomeHelpers.AddImageExcel(ws2, image_p, (float)picPosition.Left, (float)picPosition.Top + 1, 170, 137);
                            //NOMBRE DE LA HERRAMIENTA
                            FillCell(ws2, l, 13, dt_herramientas.Rows[i][2].ToString());
                            l++;
                        }

                        //////////////////////////////////////////////////
                        //**************** REPUESTOS *****************
                        //////////////////////////////////////////////////
                        if (herramientas_cant == 0)
                        {
                            herramientas_cant++;
                        }

                        int repuestos_cant = dt_repuestos.Rows.Count;
                        int inicio_rep     = inicio_herr + herramientas_cant; //+ 1; //23;
                        Range linePpalRep  = (Range)ws2.Rows[inicio_rep - 1];
                        if (repuestos_cant > 0)
                        {
                            linePpalRep.RowHeight = 138.6;
                        }

                        //COMBINAR Y CENTRAR CELDAS
                        for (int i = 1; i < repuestos_cant; i++)
                        {
                            Range line            = (Range)ws2.Rows[inicio_rep];
                            linePpalRep.RowHeight = 138.6;
                            line.Insert();

                            //COMBINAR CELDA DE FOTO
                            ws2.Range[ws2.Cells[inicio_rep, 26], ws2.Cells[inicio_rep, 42]].Merge();
                            //COMBINAR CELDA DE NOMBRE HERRAMIENTA
                            ws2.Range[ws2.Cells[inicio_rep, 13], ws2.Cells[inicio_rep, 25]].Merge();
                            //COMBINAR CELDA DE NOMBRE CATEGORÍA
                            ws2.Range[ws2.Cells[inicio_rep, 11], ws2.Cells[inicio_rep, 12]].Merge();
                        }
                        //SI HAY MAS DE 1 ELEMENTO, SE COMBINAN LAS COLUMNAS
                        if (repuestos_cant > 1)
                        {
                            ws2.Range[ws2.Cells[inicio_rep - 1, 3], ws2.Cells[inicio_rep + repuestos_cant - 2, 9]].Merge();
                        }

                        //AÑADIR ELEMENTOS A CELDAS
                        int b = inicio_rep - 1;

                        for (int i = 0; i < repuestos_cant; i++)
                        {
                            //OBTENER EL RANGO DEPENDIENDO DE CADA ELEMENTO
                            Microsoft.Office.Interop.Excel.Range picPosition = GetRangeHerramienta(ws2, b, 32);
                            //LA IMAGEN EN EL DATAGRID FUE DESCARGADA, SE OBTIENE LA RUTA PARA PEGAR EN EL EXCEL
                            string image_p = Util.Global.DIRECTORIO_IMAGENES + @"\" + Path.GetFileName(listR[i].imagen_name);
                            //SE INSERTA LA IMAGEN EN EL EXCEL, CONFIGURANDO ATRIBUTOS
                            SomeHelpers.AddImageExcel(ws2, image_p, (float)picPosition.Left, (float)picPosition.Top + 1, 170, 137);
                            //NOMBRE DE LA HERRAMIENTA
                            FillCell(ws2, b, 13, "(" + dt_repuestos.Rows[i][2].ToString() + ") " + dt_repuestos.Rows[i][1].ToString());
                            b++;
                        }

                        //////////////////////////////////////////////////
                        //**************** PASO A PASO *****************
                        //////////////////////////////////////////////////
                        if (repuestos_cant == 0)
                        {
                            repuestos_cant += 1;
                        }

                        int paso_cant     = dt_pasos.Rows.Count;
                        int inicio_paso   = inicio_rep + repuestos_cant + 1; //23;
                        Range linePpalPas = (Range)ws2.Rows[inicio_paso - 1];
                        if (paso_cant > 0)
                        {
                            linePpalPas.RowHeight = 138.6;
                        }

                        //COMBINAR Y CENTRAR CELDAS
                        for (int i = 1; i < paso_cant; i++)
                        {
                            Range line            = (Range)ws2.Rows[inicio_paso];
                            linePpalPas.RowHeight = 138.6;
                            line.Insert();

                            //COMBINAR CELDA DE FOTO
                            ws2.Range[ws2.Cells[inicio_paso, 26], ws2.Cells[inicio_paso, 42]].Merge();
                            //COMBINAR CELDA DESCRIPCIÓN DEL PASO
                            ws2.Range[ws2.Cells[inicio_paso, 13], ws2.Cells[inicio_paso, 25]].Merge();
                            //COMBINAR CELDA DE FOTO CATEGORÍA
                            ws2.Range[ws2.Cells[inicio_paso, 11], ws2.Cells[inicio_paso, 12]].Merge();
                            //COMBINAR CELDA DE DURACIÓN
                            ws2.Range[ws2.Cells[inicio_paso, 10], ws2.Cells[inicio_paso, 10]].Merge();
                            //COMBINAR CELDA DE NOMBRE
                            ws2.Range[ws2.Cells[inicio_paso, 3], ws2.Cells[inicio_paso, 9]].Merge();
                        }

                        //AÑADIR ELEMENTOS A CELDAS
                        int p = inicio_paso - 1;

                        for (int i = 0; i < paso_cant; i++)
                        {
                            //OBTENER EL RANGO DEPENDIENDO DE CADA ELEMENTO
                            Microsoft.Office.Interop.Excel.Range picPosition = GetRangeHerramienta(ws2, p, 32);
                            //LA IMAGEN EN EL DATAGRID FUE DESCARGADA, SE OBTIENE LA RUTA PARA PEGAR EN EL EXCEL
                            string image_p = Util.Global.DIRECTORIO_IMAGENES + @"\" + Path.GetFileName(listPasos[i].imagen_paso_path);
                            //SE INSERTA LA IMAGEN EN EL EXCEL, CONFIGURANDO ATRIBUTOS
                            SomeHelpers.AddImageExcel(ws2, image_p, (float)picPosition.Left, (float)picPosition.Top + 1, 170, 137);

                            //DESCRIPCIÓN
                            FillCell(ws2, p, 13, dt_pasos.Rows[i][1].ToString());
                            //NOMBRE
                            FillCell(ws2, p, 3, dt_pasos.Rows[i][0].ToString());
                            //DURACIÓN
                            FillCell(ws2, p, 10, dt_pasos.Rows[i][2].ToString() + "");
                            //NUMERO PASO
                            int num_pas = i + 1;
                            FillCell(ws2, p, 2, num_pas.ToString() + "");

                            //IMAGEN CATEGORIA
                            //OBTENER EL RANGO DEPENDIENDO DE CADA ELEMENTO
                            Microsoft.Office.Interop.Excel.Range picPositionCat = GetRangeHerramienta(ws2, p, 11);
                            //LA IMAGEN EN EL DATAGRID FUE DESCARGADA, SE OBTIENE LA RUTA PARA PEGAR EN EL EXCEL
                            string image_pCat = Util.Global.DIRECTORIO_IMAGENES + @"\" + Path.GetFileName(listPasos[i].categoria + ".PNG");
                            //SE INSERTA LA IMAGEN EN EL EXCEL, CONFIGURANDO ATRIBUTOS
                            SomeHelpers.AddImageExcel(ws2, image_pCat, (float)picPositionCat.Left + 15, (float)picPositionCat.Top + 57, 20, 20);

                            p++;
                        }

                        int limit = inicio_paso + paso_cant;
                        //CONFIGURANDO AREA DE IMPRESIÓN
                        ws2.PageSetup.PrintArea = "$A$1:$AP$" + limit;

                        //GUARDAR FORMATO PDF
                        if (chkPDF.Checked)
                        {
                            wb.ExportAsFixedFormat(XlFixedFormatType.xlTypePDF,
                                                   Util.Global.DIRECTORIO_FORMATOS + "\\SMP.pdf");
                        }

                        wb.Save();
                        wb.Close();
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.ToString());
                }
            });
        }
Ejemplo n.º 13
0
 private void txtNombreSMP_Enter(object sender, EventArgs e)
 {
     SomeHelpers.StartOSK();
 }
Ejemplo n.º 14
0
 private void img2_Click(object sender, EventArgs e)
 {
     imagen2 = SomeHelpers.CargarImagenPictureBox(pbImg2);
 }
Ejemplo n.º 15
0
 private void pbImg1_Click(object sender, EventArgs e)
 {
     pp.imagen_paso_path = Path.GetFileName(SomeHelpers.CargarImagenPictureBox(pbImg1));
 }
Ejemplo n.º 16
0
        private void bgSaveData_DoWork(object sender, DoWorkEventArgs e)
        {
            this.Invoke((MethodInvoker) delegate
            {
                try
                {
                    //LLENAR RESPECTIVOS DATATABLES PARA VALIDAR INFORMACIÓN A GUARDAR
                    dt_epps  = FillEpps(dtgEpps);
                    dt_pasos = FillPasoPaso(dtgPasoAPaso);

                    System.Windows.Forms.Application.DoEvents();

                    //GUARDAR EN BASE DE DATOS
                    sop sop = new sop();

                    sop.consecutivo               = int.Parse(txtConsecutivo.Text);
                    sop.titulo                    = txtNombreSOP.Text.Trim();
                    sop.numero_sop                = int.Parse(txtSOP.Text);
                    sop.codigo_categoria          = int.Parse(cboCategoria.SelectedValue.ToString());
                    sop.codigo_tipo               = int.Parse(cboTipoSop.SelectedValue.ToString());
                    sop.fecha                     = dtpFecha.Value;
                    sop.codigo_maquina            = int.Parse(cboMaquina.SelectedValue.ToString());
                    sop.codigo_frecuencia         = int.Parse(cboFrecuencia.SelectedValue.ToString());
                    sop.personas_requeridas       = int.Parse(txtNumPersonas.Text);
                    sop.tiempo_persona            = dtpTiempoPersona.Text;
                    sop.duracion_tarea            = dtpDuracionTarea.Text;
                    sop.maquina_parada            = dtpMaquinaParada.Text;
                    sop.codigo_area_aprobadora    = int.Parse(cboAreaAprobadora.SelectedValue.ToString());
                    sop.codigo_usuario_preparador = int.Parse(cboElaborador.SelectedValue.ToString());
                    sop.codigo_lider_area         = int.Parse(cboAprobador.SelectedValue.ToString());
                    sop.numero_revision           = int.Parse(txtNumRevision.Text);
                    sop.codigo_formato            = txtCodFormato.Text.Trim();
                    sop.user_id                   = Util.Global.UserLoged.Id;

                    //GUARDAR OBJETO EN BASE DE DATOS
                    int id_sop = daoSop.AddSop(sop);

                    System.Windows.Forms.Application.DoEvents();

                    //PENDIENTE GUARDAR EPPS, HERRAMIENTAS, PASOS, REPUESTOS
                    //E INDEPENDIZAR PERMISOS DE RIESGOS
                    if (id_sop > 0)
                    {
                        //AGREGAR EPPS
                        for (int i = 0; i < listEpps.Count; i++)
                        {
                            if (listEpps[i].sel)
                            {
                                daoSop.AddSopUtil(new sop_utils()
                                {
                                    id_sop  = id_sop,
                                    id_tipo = 9,
                                    id_util = listEpps[i].id
                                });
                            }
                        }

                        foreach (Objetos.Herramientas item in list)
                        {
                            if (item.sel)
                            {
                                daoSop.AddSopUtil(new sop_utils()
                                {
                                    id_sop  = id_sop,
                                    id_tipo = 10,
                                    id_util = item.Id
                                });
                            }
                        }

                        foreach (PasoaPaso item in listPasos)
                        {
                            daoPP.AddPasoSop(new sop_pasos()
                            {
                                descripcion        = item.desc,
                                duracion           = item.duracion,
                                id_smp             = id_sop,
                                num_paso           = item.numPaso,
                                codigo_herramienta = item.codigo_herramienta,
                                image_path         = item.imagen_paso_path
                            });
                        }
                    }

                    System.Windows.Forms.Application.DoEvents();

                    //GENERAR EXCEL
                    //OBEJTO QUE PERMITE GESTIONAR DOCUMENTO EXCEL
                    Microsoft.Office.Interop.Excel.Application xlApp =
                        new Microsoft.Office.Interop.Excel.Application();

                    //NO MOSTRAR ARCHIVO MIENTRAS SE UTILIZA
                    xlApp.Visible     = false;
                    xlApp.Interactive = false;

                    //DIRECTORIO DONDE SE COPIARÁ EL ARCHIVO TEMPORALMENTE
                    //PARA EDITARLO
                    string sru = Util.Global.DIRECTORIO_FORMATOS;

                    //NOMBRE DEL ARCHIVO TEMPORAL
                    path = @"" + sru + "\\SOP.xlsx";

                    //COPIAR EL ARCHIVO DE LOS RECURSOS DE LA APLICACIÓN
                    // A LA RUTA ESTABLECIDA
                    File.WriteAllBytes(path, Properties.Resources.SOP_BLANCO);

                    //VERIFICAR SI EL ARCHIVO ESTÁ BLOQUEADO O ESTA SIENDO UTILIZADO POR OTRO PROCESO
                    if (IsFileLocked(new FileInfo(path)))
                    {
                        MessageBox.Show("El archivo se está ejecutando, debe cerrarlo para continuar",
                                        "Exportar a Excel", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    else
                    {
                        System.Windows.Forms.Application.DoEvents();

                        //CREAR EL OBJETO DEL LIBRO A PARTIR DE LA RUTA
                        Workbook wb = xlApp.Workbooks.Open(path);

                        //FIJAR EN OBJETOS LAS PESTAÑAS U HOJA DEL LIBRO PARA TRABAJAR
                        Worksheet ws2 = (Worksheet)wb.Worksheets[1];

                        //////////////////////////////////////////////////
                        //**************** INFORMACIÓN BÁSICA ************
                        //////////////////////////////////////////////////
                        //CATEGORIA
                        FillCell(ws2, 3, 10, cboCategoria.Text.ToString());
                        //FORMATO
                        FillCell(ws2, 6, 1, txtCodFormato.Text.ToString());
                        //MAQUINA
                        FillCell(ws2, 6, 4, cboMaquina.Text.ToString());
                        //TITULO
                        FillCell(ws2, 2, 5, txtNombreSOP.Text.ToString());
                        //NÚMERO
                        FillCell(ws2, 2, 14, txtSOP.Text.ToString());
                        //NÚMERO REVISION
                        FillCell(ws2, 4, 14, txtNumRevision.Text.ToString());
                        //TIPO
                        FillCell(ws2, 6, 7, cboTipoSop.Text.ToString());
                        //ELABORADO POR
                        FillCell(ws2, 6, 9, cboElaborador.Text.ToString());
                        //AREA APROBADORA
                        FillCell(ws2, 6, 11, cboAreaAprobadora.Text.ToString());
                        //LIDER AREA
                        FillCell(ws2, 6, 13, cboAprobador.Text.ToString());
                        //FECHA
                        FillCell(ws2, 3, 13, dtpFecha.Value.ToShortDateString());
                        //NÚMERO DE PERSONAS REQUERIDAS
                        FillCell(ws2, 8, 9, txtNumPersonas.Text.ToString());
                        //TIEMPO POR PERSONA
                        FillCell(ws2, 8, 10, dtpTiempoPersona.Text.ToString());
                        //DURACIÓN DE LA ACTIVIDAD
                        FillCell(ws2, 8, 11, dtpDuracionTarea.Text.ToString());
                        //TIEMPO EQUIPO PARADO
                        FillCell(ws2, 8, 12, dtpMaquinaParada.Text.ToString());
                        //FREUENCIA
                        string name_opt = "";
                        switch (cboFrecuencia.SelectedValue.ToString())
                        {
                        case "91":
                            name_opt = "turno";
                            break;

                        case "92":
                            name_opt = "diario";
                            break;

                        case "96":
                            name_opt = "cada_cambio";
                            break;

                        case "97":
                            name_opt = "semanal";
                            break;

                        case "99":
                            name_opt = "quincenal";
                            break;

                        case "100":
                            name_opt = "mensual";
                            break;

                        default:
                            break;
                        }
                        Microsoft.Office.Interop.Excel.OptionButton opt =
                            (Microsoft.Office.Interop.Excel.OptionButton)ws2.OptionButtons(name_opt);
                        opt.Value = true;

                        //////////////////////////////////////////////////
                        //**************** EPPS *************************
                        //////////////////////////////////////////////////
                        //EPPS
                        //EPPS IMAGENES RANGO
                        int j = 0;

                        for (int i = 1; i <= 70; i++)
                        {
                            if (j < dt_epps.Rows.Count)
                            {
                                if (j >= 4 && j <= 8)
                                {
                                    //CÓDIGO PODEROSO
                                    SomeHelpers.AddImageExcel(ws2, Util.Global.DIRECTORIO_IMAGENES + @"\"
                                                              + dt_epps.Rows[j][5].ToString(), (float)GetRangeImageEpp(ws2, 10, i - 4).Left + 1,
                                                              (float)GetRangeImageEpp(ws2, 10, i - 4).Top + 1, 62, 48);

                                    FillCell(ws2, 11, i - 4, dt_epps.Rows[j][3].ToString());
                                }
                                else
                                {
                                    //CÓDIGO PODEROSO
                                    SomeHelpers.AddImageExcel(ws2, Util.Global.DIRECTORIO_IMAGENES + @"\"
                                                              + dt_epps.Rows[j][5].ToString(), (float)GetRangeImageEpp(ws2, 8, i).Left + 1,
                                                              (float)GetRangeImageEpp(ws2, 8, i).Top + 1, 62, 48);

                                    FillCell(ws2, 9, i, dt_epps.Rows[j][3].ToString());
                                }

                                j++;
                            }
                        }
                        //////////////////////////////////////////////////
                        //**************** HERRAMIENTAS *****************
                        //////////////////////////////////////////////////
                        int h = 0;

                        for (int i = 5; i <= 70; i++)
                        {
                            if (h < dt_herramientas.Rows.Count)
                            {
                                if (h >= 4 && h <= 8)
                                {
                                    //CÓDIGO PODEROSO
                                    SomeHelpers.AddImageExcel(ws2, Util.Global.DIRECTORIO_IMAGENES + @"\"
                                                              + Path.GetFileName(list[h].imagen_name), (float)GetRangeImageEpp(ws2, 10, i - 4).Left + 1,
                                                              (float)GetRangeImageEpp(ws2, 10, i - 4).Top + 1, 62, 48);

                                    FillCell(ws2, 11, i - 4, list[h].herramienta.ToString());
                                }
                                else
                                {
                                    //CÓDIGO PODEROSO
                                    SomeHelpers.AddImageExcel(ws2, Util.Global.DIRECTORIO_IMAGENES + @"\"
                                                              + Path.GetFileName(list[h].imagen_name), (float)GetRangeImageEpp(ws2, 8, i).Left + 1,
                                                              (float)GetRangeImageEpp(ws2, 8, i).Top + 1, 62, 48);

                                    FillCell(ws2, 9, i, list[h].herramienta.ToString());
                                }

                                h++;
                            }
                        }

                        System.Windows.Forms.Application.DoEvents();

                        for (int i = 0; i < listPasos.Count; i++)
                        {
                            if (i == 0)
                            {
                                //PASO A PASO
                                FillCell(ws2, 12, 1, ": " + listPasos[i].desc);
                                //IMAGEN
                                SomeHelpers.AddImageExcel(ws2, Util.Global.DIRECTORIO_IMAGENES + @"\"
                                                          + dt_pasos.Rows[i][5].ToString(), (float)GetRangeImageEpp(ws2, 13, 1).Left + 1, (float)GetRangeImageEpp(ws2, 13, 1).Top + 1, 380, 228);
                                //HERRAMIENTA
                                FillCell(ws2, 14, 1, listPasos[i].herramienta);
                                //DURACION
                                FillCell(ws2, 14, 4, listPasos[i].duracion);
                            }

                            if (i == 1)
                            {
                                //PASO A PASO
                                FillCell(ws2, 12, 7, ": " + listPasos[i].desc);
                                //IMAGEN
                                SomeHelpers.AddImageExcel(ws2, Util.Global.DIRECTORIO_IMAGENES + @"\"
                                                          + dt_pasos.Rows[i][5].ToString(), (float)GetRangeImageEpp(ws2, 13, 7).Left + 1, (float)GetRangeImageEpp(ws2, 13, 7).Top + 1, 330, 228);
                                //HERRAMIENTA
                                FillCell(ws2, 14, 7, listPasos[i].herramienta);
                                //DURACION
                                FillCell(ws2, 14, 9, listPasos[i].duracion);
                            }

                            if (i == 2)
                            {
                                //PASO A PASO
                                FillCell(ws2, 12, 11, ": " + listPasos[i].desc);
                                //IMAGEN
                                SomeHelpers.AddImageExcel(ws2, Util.Global.DIRECTORIO_IMAGENES + @"\"
                                                          + dt_pasos.Rows[i][5].ToString(), (float)GetRangeImageEpp(ws2, 13, 11).Left + 1, (float)GetRangeImageEpp(ws2, 13, 11).Top + 1, 403, 228);
                                //HERRAMIENTA
                                FillCell(ws2, 14, 11, listPasos[i].herramienta);
                                //DURACION
                                FillCell(ws2, 14, 13, listPasos[i].duracion);
                            }


                            if (i == 3)
                            {
                                //PASO A PASO
                                FillCell(ws2, 15, 1, ": " + listPasos[i].desc);
                                //IMAGEN
                                SomeHelpers.AddImageExcel(ws2, Util.Global.DIRECTORIO_IMAGENES + @"\"
                                                          + dt_pasos.Rows[i][5].ToString(), (float)GetRangeImageEpp(ws2, 16, 1).Left + 1, (float)GetRangeImageEpp(ws2, 16, 1).Top + 1, 380, 228);
                                //HERRAMIENTA
                                FillCell(ws2, 17, 1, listPasos[i].herramienta);
                                //DURACION
                                FillCell(ws2, 17, 4, listPasos[i].duracion);
                            }

                            if (i == 4)
                            {
                                //PASO A PASO
                                FillCell(ws2, 15, 7, ": " + listPasos[i].desc);
                                //IMAGEN
                                SomeHelpers.AddImageExcel(ws2, Util.Global.DIRECTORIO_IMAGENES + @"\"
                                                          + dt_pasos.Rows[i][5].ToString(), (float)GetRangeImageEpp(ws2, 16, 7).Left + 1, (float)GetRangeImageEpp(ws2, 16, 7).Top + 1, 330, 228);
                                //HERRAMIENTA
                                FillCell(ws2, 17, 7, listPasos[i].herramienta);
                                //DURACION
                                FillCell(ws2, 17, 9, listPasos[i].duracion);
                            }

                            if (i == 5)
                            {
                                //PASO A PASO
                                FillCell(ws2, 15, 11, ": " + listPasos[i].desc);
                                //IMAGEN
                                SomeHelpers.AddImageExcel(ws2, Util.Global.DIRECTORIO_IMAGENES + @"\"
                                                          + dt_pasos.Rows[i][5].ToString(), (float)GetRangeImageEpp(ws2, 16, 11).Left + 1, (float)GetRangeImageEpp(ws2, 16, 11).Top + 1, 403, 228);
                                //HERRAMIENTA
                                FillCell(ws2, 17, 11, listPasos[i].herramienta);
                                //DURACION
                                FillCell(ws2, 17, 13, listPasos[i].duracion);
                            }

                            if (i == 6)
                            {
                                //PASO A PASO
                                FillCell(ws2, 18, 1, ": " + listPasos[i].desc);
                                //IMAGEN
                                SomeHelpers.AddImageExcel(ws2, Util.Global.DIRECTORIO_IMAGENES + @"\"
                                                          + dt_pasos.Rows[i][5].ToString(), (float)GetRangeImageEpp(ws2, 19, 1).Left + 1, (float)GetRangeImageEpp(ws2, 19, 1).Top + 1, 380, 228);
                                //HERRAMIENTA
                                FillCell(ws2, 20, 1, listPasos[i].herramienta);
                                //DURACION
                                FillCell(ws2, 20, 4, listPasos[i].duracion);
                            }

                            if (i == 7)
                            {
                                //PASO A PASO
                                FillCell(ws2, 18, 7, ": " + listPasos[i].desc);
                                //IMAGEN
                                SomeHelpers.AddImageExcel(ws2, Util.Global.DIRECTORIO_IMAGENES + @"\"
                                                          + dt_pasos.Rows[i][5].ToString(), (float)GetRangeImageEpp(ws2, 19, 7).Left + 1, (float)GetRangeImageEpp(ws2, 19, 7).Top + 1, 330, 228);
                                //HERRAMIENTA
                                FillCell(ws2, 20, 7, listPasos[i].herramienta);
                                //DURACION
                                FillCell(ws2, 20, 9, listPasos[i].duracion);
                            }

                            if (i == 8)
                            {
                                //PASO A PASO
                                FillCell(ws2, 18, 11, ": " + listPasos[i].desc);
                                //IMAGEN
                                SomeHelpers.AddImageExcel(ws2, Util.Global.DIRECTORIO_IMAGENES + @"\"
                                                          + dt_pasos.Rows[i][5].ToString(), (float)GetRangeImageEpp(ws2, 19, 11).Left + 1, (float)GetRangeImageEpp(ws2, 19, 11).Top + 1, 403, 228);
                                //HERRAMIENTA
                                FillCell(ws2, 20, 11, listPasos[i].herramienta);
                                //DURACION
                                FillCell(ws2, 20, 13, listPasos[i].duracion);
                            }
                        }

                        //int limit = inicio_paso + paso_cant;
                        ////CONFIGURANDO AREA DE IMPRESIÓN
                        //ws2.PageSetup.PrintArea = "$A$1:$AP$" + limit;

                        //GUARDAR FORMATO PDF
                        if (chkPDF.Checked)
                        {
                            wb.ExportAsFixedFormat(XlFixedFormatType.xlTypePDF,
                                                   Util.Global.DIRECTORIO_FORMATOS + "\\SOP.pdf");
                        }

                        wb.Save();
                        wb.Close();
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.ToString());
                    splash.Hide();
                }
            });
        }
Ejemplo n.º 17
0
        public async Task <ActionResult> PostCalibraciones(IFormCollection data)
        {
            int    code;
            string message;

            try
            {
                //Obtener la imagen de los datos recibidos
                var formFile = data.Files.FirstOrDefault();

                //Verificar que la imagen sea valida
                if (formFile != null)
                {
                    //Gestionar imagen
                    //Ruta de la imagen
                    var webRoot            = _env.WebRootPath;
                    var PathWithFolderName = Path.Combine(webRoot, "Calibraciones");

                    //Crear carpeta si no existe
                    if (!Directory.Exists(PathWithFolderName))
                    {
                        // Try to create the directory.
                        Directory.CreateDirectory(PathWithFolderName);
                    }

                    //Combinar la ubicación destino y el nombre de la imagen
                    string filePath = PathWithFolderName + "/" + Path.GetFileNameWithoutExtension(formFile.FileName) + "_" + SomeHelpers.GetDateString() + Path.GetExtension(formFile.FileName);

                    //Guardar imagen en el directorio dado
                    using (var stream = new FileStream(filePath, FileMode.Create))
                    {
                        await formFile.CopyToAsync(stream);
                    }
                }

                //Guardar objeto en la base de datos
                Calibraciones c = new Calibraciones()
                {
                    IdEquipo            = long.Parse(data["idEquipo"]),
                    IdUsuario           = long.Parse(data["idUsuario"]),
                    Fecha               = DateTime.Now,
                    CalibrationFilePath = Path.GetFileNameWithoutExtension(formFile.FileName) + "_" + SomeHelpers.GetDateString() + Path.GetExtension(formFile.FileName),
                    Observaciones       = data["observaciones"],
                    Tipo = data["tipo"]
                };

                _context.Calibraciones.Add(c);
                await _context.SaveChangesAsync();

                code    = 1;
                message = "OK";

                return(Ok(new { code, message }));
            }
            catch (Exception ex)
            {
                code    = 1;
                message = "ERROR " + ex.Message;
                return(Ok(new { code, message }));
            }
        }