Пример #1
0
        /// <summary>
        /// Método para ver el archivo
        /// </summary>
        /// <param name="id_archivo"></param>
        private async void verArchivo()
        {
            DialogService dialog = new DialogService();

            if (SelectedDocumento != null)
            {
                //obtenemos el id del documento
                int id_documento = SelectedDocumento.id_documento;

                //obtenemos la version del documento
                int            VersionDocumento = DataManagerControlDocumentos.GetVersionDocumento(id_documento);
                List <Archivo> lista            = DataManagerControlDocumentos.GetArchivo(VersionDocumento);

                //mostramos el archivo
                foreach (Archivo item in lista)
                {
                    //se asigna el nombre del archivo temporal, se concatena el nombre del archivo, la posicion de la lista y la extensión.
                    string filename = GetPathTempFile(item);

                    File.WriteAllBytes(filename, item.archivo);
                    //Se inicializa el programa para visualizar el archivo.
                    Process.Start(filename);
                }
            }
            else
            {
                await dialog.SendMessage(StringResources.ttlAlerta, StringResources.msgSeleccioneNumero);
            }
        }
Пример #2
0
        static void saveFilesControlDocumentos()
        {
            try
            {
                Console.WriteLine("Starting...");

                int idMin = 10331;
                int idMax = idMin + 10;

                while (idMin <= 25350)
                {
                    Console.WriteLine("Get 10 next documents...");
                    ObservableCollection <Archivo> lista = DataManagerControlDocumentos.GetArchivo(idMin, idMax);
                    Console.WriteLine("The list has " + lista.Count + " files.");
                    Console.WriteLine("Starting to create folders...");
                    foreach (var archivo in lista)
                    {
                        string pathFile = getFolderControlDocumentos(archivo);
                        File.WriteAllBytes(pathFile, archivo.archivo);
                        Console.WriteLine("File saved: " + archivo.nombre + archivo.ext);
                    }
                    idMin += 11;
                    idMax  = idMin + 10;
                    lista  = null;
                }
            }
            catch (Exception er)
            {
                Console.WriteLine("Error" + er.Message);
            }
        }
        private string SaveFile()
        {
            List <Archivo> Lista = DataManagerControlDocumentos.GetArchivo(SelectedDocumento.version.id_version);
            string         nombre_tipo;

            try
            {
                if (SelectedDocumento.id_tipo_documento == 1003 || SelectedDocumento.id_tipo_documento == 1005 || SelectedDocumento.id_tipo_documento == 1006 || SelectedDocumento.id_tipo_documento == 1012 || SelectedDocumento.id_tipo_documento == 1013 || SelectedDocumento.id_tipo_documento == 1014 || SelectedDocumento.id_tipo_documento == 1011)
                {
                    string path = @"\\MXAGSQLSRV01\documents__\POR_APROBAR";

                    switch (SelectedDocumento.id_tipo_documento)
                    {
                    case 1003:
                    case 1013:
                        nombre_tipo = "OHSAS";
                        path        = string.Concat(path, @"\", nombre_tipo, @"\", SelectedDocumento.nombre, SelectedDocumento.version.no_version);
                        break;

                    case 1005:
                    case 1012:
                    case 1011:
                        nombre_tipo = "ESPECIFICOS";
                        path        = string.Concat(path, @"\", nombre_tipo, @"\", SelectedDocumento.nombre, SelectedDocumento.version.no_version);
                        break;

                    case 1006:
                    case 1014:
                        nombre_tipo = "ISO14001";
                        path        = string.Concat(path, @"\", nombre_tipo, @"\", SelectedDocumento.nombre, SelectedDocumento.version.no_version);
                        break;
                    }

                    path = string.Concat(path, SelectedDocumento.version.archivo.ext);

                    File.WriteAllBytes(path, SelectedDocumento.version.archivo.archivo);

                    DataManagerControlDocumentos.UpdateFilePath(SelectedDocumento.version.archivo.id_archivo, path);
                }

                return(null);
            }
            catch (Exception er)
            {
                return(er.ToString());
            }
        }
Пример #4
0
        public void etiquetar()
        {
            List <DO_SolicitudEtiquetado> solicitudes = DataManagerControlDocumentos.GetSolicitudEtiquetar(0);

            Console.WriteLine("Hay " + solicitudes.Count + " Solicitudes pendientes para etiquetar.");

            foreach (var solicitud in solicitudes)
            {
                Console.Beep(5000, 1000);

                List <Archivo> archivos = DataManagerControlDocumentos.GetArchivo(solicitud.IdVersion);
                BaseFont       bfTimes  = BaseFont.CreateFont(BaseFont.HELVETICA, BaseFont.CP1252, false);

                DO_ClassificationLevel classificationLevel = DataManagerControlDocumentos.GetClassificationLevel(solicitud.IdClasificationLevel);

                foreach (var archivo in archivos)
                {
                    int noCopias = DataManagerControlDocumentos.GetCopias(solicitud.IdVersion);

                    DO_Respuesta respuesta         = setCLJES(archivo.archivo, bfTimes, classificationLevel.ClassificationLevel, noCopias);
                    byte[]       archivoEtiquetado = respuesta.Archivo;

                    if (respuesta.idRespuesta == 1)
                    {
                        File.WriteAllBytes(archivo.ruta, archivoEtiquetado);

                        DataManagerControlDocumentos.UpdateVersion(solicitud.IdVersion, solicitud.IdClasificationLevel, solicitud.IdUsuario);

                        DataManagerControlDocumentos.UpdateSolicitudEtiquetar(solicitud.IdSolicitud, 1);

                        DataManagerControlDocumentos.UpdateNoCopias(solicitud.IdVersion, 0);

                        Documento objDocumento = DataManagerControlDocumentos.GetDocumento(solicitud.IdVersion);

                        Version version = DataManagerControlDocumentos.GetVersion(solicitud.IdVersion);
                        String  title   = "Control de documentos - Etiquetado de documento : " + objDocumento.nombre;
                        string  correoUsuarioElaboro = DataManager.GetUsuario(solicitud.IdUsuario).Correo;

                        ServiceEmail SO_Email = new ServiceEmail();

                        string[] correos = new string[2];
                        correos[0] = correoUsuarioElaboro;
                        correos[1] = "*****@*****.**";
                        string body;
                        body  = "<HTML>";
                        body += "<head>";
                        body += "<meta http-equiv=\"Content - Type\" content=\"text / html; charset = utf - 8\"/>";
                        body += "</head>";
                        body += "<body text=\"white\">";
                        body += "<p><font font=\"verdana\" size=\"3\" color=\"black\">" + definirSaludo() + "</font> </p>";
                        body += "<ul>";
                        body += "<li><font font=\"verdana\" size=\"3\" color=\"black\">Para notificar que la JES con el número <b> " + objDocumento.nombre + "</b> versión <b> " + version.no_version + ".0" + " </b> fué etiquetada con la clasificación de seguridad: <b>" + classificationLevel.ClassificationLevel + " </b></font> </li>";
                        body += "<li><font font=\"verdana\" size=\"3\" color=\"black\">Adicionalmente informo que el documento a partir de este momento pasa a su nombre y queda actualizado en sistema.</font></li>";
                        body += "<br/>";
                        body += "</ul>";
                        body += "<p><font font=\"verdana\" size=\"3\" color=\"black\">Cualquier duda quedo a sus órdenes</font> </p>";
                        body += "<br/>";
                        body += "<br/>";
                        body += "<p><font font=\"default Sans Serif\" size=\"3\" color=\"black\">Saludos / Kind regards</font> </p>";
                        body += "</body>";
                        body += "</HTML>";

                        //Ejecutamos el método para notificar por correo
                        bool respuestaCorreo = SO_Email.SendEmailLotusCustom(correos, title, body, "CONTROL_DOCUMENTOS_ETIQUETADO", 0);
                        if (respuestaCorreo)
                        {
                            Console.WriteLine("El correo se envió perron!!");
                        }
                        else
                        {
                            Console.WriteLine("Hubo un error al enviar el correo");
                        }
                        //bool respuesta = SO_Email.SendEmailOutlook(correos, title, body, new List<string>());


                        Console.WriteLine("Se etiqueto la versión " + solicitud.IdVersion);
                    }
                    else
                    {
                        //TODO: No se pudo etiquetar tu documento.
                        Console.WriteLine("No se pudo etiquetar el documento " + solicitud.IdVersion);

                        DataManagerControlDocumentos.UpdateSolicitudEtiquetar(solicitud.IdSolicitud, 1);

                        string correoUsuarioElaboro = DataManager.GetUsuario(solicitud.IdUsuario).Correo;

                        Documento objDocumento = DataManagerControlDocumentos.GetDocumento(solicitud.IdVersion);
                        Version   version      = DataManagerControlDocumentos.GetVersion(solicitud.IdVersion);

                        ServiceEmail SO_Email = new ServiceEmail();

                        string[] correos = new string[2];
                        correos[0] = correoUsuarioElaboro;
                        correos[1] = "*****@*****.**";
                        string body;
                        body  = "<HTML>";
                        body += "<head>";
                        body += "<meta http-equiv=\"Content - Type\" content=\"text / html; charset = utf - 8\"/>";
                        body += "</head>";
                        body += "<body text=\"white\">";
                        body += "<p><font font=\"verdana\" size=\"3\" color=\"black\">" + definirSaludo() + "</font> </p>";
                        body += "<ul>";
                        body += "<li><font font=\"verdana\" size=\"3\" color=\"black\">Para notificar que la JES con el número <b> " + objDocumento.nombre + "</b> versión <b> " + version.no_version + ".0" + " </b>  <b>NO</b> fué etiquetada con la clasificación de seguridad: <b>" + classificationLevel.ClassificationLevel + " </b></font> </li>";
                        body += "<li><font font=\"verdana\" size=\"3\" color=\"black\">Para mas información favor de contactar al administrador de Control de documentos</font></li>";
                        body += "<br/>";
                        body += "</ul>";
                        body += "<p><font font=\"verdana\" size=\"3\" color=\"black\">Cualquier duda quedo a sus órdenes</font> </p>";
                        body += "<br/>";
                        body += "<br/>";
                        body += "<p><font font=\"default Sans Serif\" size=\"3\" color=\"black\">Saludos / Kind regards</font> </p>";
                        body += "</body>";
                        body += "</HTML>";
                        String title           = "Control de documentos - Solicitud no dispobible : " + objDocumento.nombre;
                        bool   respuestaCorreo = SO_Email.SendEmailLotusCustom(correos, title, body, "CONTROL_DOCUMENTOS_ETIQUETADO", 0);

                        if (respuestaCorreo)
                        {
                            Console.WriteLine("El correo se envió perron!!");
                        }
                        else
                        {
                            Console.WriteLine("Hubo un error al enviar el correo");
                        }
                    }
                }
            }
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="codigoDocumento"></param>
        /// <param name="noVersion"></param>
        /// <param name="idVersion"></param>
        /// <param name="emailUsuario"></param>
        /// <returns></returns>
        private bool enviarCorreoAprobarRechazar(string codigoDocumento, string noVersion, int idVersion, string idUsuarioAutorizo, string idUsuarioDueno)
        {
            string email = DataManagerControlDocumentos.GetCorreoUsuario(idUsuarioAutorizo);

            Usuario usuarioDueno = DataManager.GetUsuario(idUsuarioDueno);

            List <Archivo> listFiles = DataManagerControlDocumentos.GetArchivo(idVersion);

            string link = string.Empty;

            if (listFiles.Count > 0)
            {
                link = "<a href =\" " + listFiles[0].ruta + " \"> Clic aquí para ver el archivo</a>";
            }

            ServiceEmail serviceEmail = new ServiceEmail();
            string       body;

            body  = "<HTML>";
            body += "<head>";
            body += "<meta http-equiv=\"Content - Type\" content=\"text / html; charset = utf - 8\"/>";
            body += "</head>";
            body += "<body text=\"white\">";
            body += "<p><font font=\"verdana\" size=\"3\" color=\"black\">" + definirSaludo() + "</font> </p>";
            body += "<p><font font=\"verdana\" size=\"3\" color=\"black\"></font> </p>";
            body += "<ul>";
            body += "<li><font font=\"verdana\" size=\"3\" color=\"black\">El usuario <b>" + usuarioDueno.Nombre + " " + usuarioDueno.ApellidoPaterno + "</b> a dado de alta una nueva versión del documento <b>" + codigoDocumento + "</b> versión <b> " + noVersion + ".0" + " </b> para lo cual requiero su autorización para poderlo liberar en el sistema </font> </li>";
            body += "<li><font font=\"verdana\" size=\"3\" color=\"black\">" + link + "</font> </li>";
            body += "<li><font font=\"verdana\" size=\"3\" color=\"black\">Para <b> APROBAR</b> el documento favor de dar click en el siguiente link:</font> <a href=\"http://" + ipServidor + ":3000/api/aprobardocumento/id:" + idVersion + " \">Aprobar</a></li>";
            body += "<br/><br/>";
            body += "<li><font font=\"verdana\" size=\"3\" color=\"black\">Para <b> RECHAZAR</b> el documento favor de dar click en el siguiente link:</font> <a href=\"http://" + ipServidor + ":3000/api/viewnoaprobar/id:" + idVersion + " \">No Aprobar</a> </li>";
            body += "<br/>";
            body += "</ul>";
            body += "<p><font font=\"verdana\" size=\"3\" color=\"black\"></font> </p>";
            body += "<br/>";
            body += "<p><font font=\"verdana\" size=\"3\" color=\"black\"></font> </p>";
            body += "<br/>";
            body += "<p><font font=\"default Sans Serif\" size=\"3\" color=\"black\">Saludos / Kind regards</font> </p>";
            body += "<ul>";
            body += "<li><font font=\"default Sans Serif\" size=\"3\" color=\"black\">" + _usuarioLogueado.Nombre + " " + _usuarioLogueado.ApellidoPaterno + "</font> </li>";
            body += "<li><font font=\"default Sans Serif\" size=\"3\" color=\"black\">MAHLE Componentes de Motor de México, S. de R.L. de C.V.</font></li>";
            body += "<li><font font=\"default Sans Serif\" size=\"3\" color=\"black\">Engineering (ENG)</font> </li>";
            body += "<li></li>";
            body += "<li><font font=\"default Sans Serif\" size=\"3\" color=\"black\">Km. 0.3 Carr. Maravillas-Jesús María , 20900 Aguascalientes, Mexico</font> </li>";
            body += "<li><font font=\"default Sans Serif\" size=\"3\" color=\"black\">Teléfono: +52 449 910 8200-82 90, Fax: +52 449 910 8200 - 267</font> </li>";
            body += "<li><font font=\"default Sans Serif\" size=\"3\" color=\"black\">" + _usuarioLogueado.Correo + ",</font> <a href=\"http://www.mx.mahle.com\">http://www.mx.mahle.com</a>  </li>";
            body += "</ul>";
            body += "</body>";
            body += "</HTML>";

            string[] recepents = new string[2];
            recepents[0] = "*****@*****.**";
            recepents[1] = email;

            recepents = Module.EliminarCorreosDuplicados(recepents);

            return(serviceEmail.SendEmailLotusCustom(recepents, "Control de documentos -  Solicitud de aprobación de documento: " + codigoDocumento, body, "CONTROL_DOCUMENTOS"));

            //List<string> attachments = new List<string>();

            //foreach (var item in files)
            //{
            //    attachments.Add(item);
            //}
            //return serviceEmail.SendEmailOutlook(recepents, "Control de documentos -  Solicitud de aprobación de documento: " + codigoDocumento, body, attachments);
        }