コード例 #1
0
ファイル: CertificadoController.cs プロジェクト: PoloRdz/cfdi
 public IActionResult PostCertArchivo(int id, [FromForm] ArchivoCertificado archivos)
 {
     try
     {
         string mensaje            = "";
         var    certificadoService = new CertificadoService();
         if (!certificadoService.procesarArchivos(id, archivos))
         {
             mensaje = "Uno o mas archivos no fueron procesados correctamente";
         }
         else
         {
             mensaje = "Archivo(s) procesado(s) correctamente";
         }
         return(Ok(new { Message = mensaje }));
     }
     catch (Exception e)
     {
         if (e is InvalidCertificateExtensionType)
         {
             return(BadRequest(new { Message = e.Message }));
         }
         return(StatusCode(500, new { Message = "Error en el servidor" }));
     }
 }
コード例 #2
0
ファイル: CertificadoService.cs プロジェクト: PoloRdz/cfdi
        public bool procesarArchivos(int idCertificado, ArchivoCertificado archivos)
        {
            bool valorRetorno   = true;
            var  certificadoDAO = new CertificadoDAO();
            var  certificado    = certificadoDAO.GetCertificado(idCertificado);

            try
            {
                if (!Directory.Exists(certificado.rutaCert))
                {
                    Directory.CreateDirectory(certificado.rutaCert);
                }
                if (archivos.certificado != null)
                {
                    valorRetorno = procesarArchivo(certificado.rutaCert, certificado.cert, archivos.certificado, ".cer");
                    if (valorRetorno)
                    {
                        var firmaSatService = new FirmaSatService(certificado.rutaCert + "\\", certificado.cert, "", "");
                        certificado.fechaExpiracion = firmaSatService.GetCertificateExpiryDate();
                        certificadoDAO.UpdateCertificado(certificado);
                    }
                }
                if (archivos.llave != null)
                {
                    valorRetorno = procesarArchivo(certificado.rutaCert, certificado.key, archivos.llave, ".key");
                }
                if (archivos.logo != null)
                {
                    valorRetorno = procesarArchivo(certificado.rutaCert, "logo_" + certificado.cert.Substring(0, certificado.cert.Length - 4) + ".jpg", archivos.logo, ".jpg");
                }
            }
            catch (Exception e)
            {
                logger.Error(e, e.Message);
            }
            return(valorRetorno);
        }