/// <summary> /// Método para generar la imágen del CQR para el reporte PDF. /// </summary> /// <param name="idQR"></param> /// <returns></returns> public iTextSharp.text.Image GenerarImagenCQR(string idQR) { string[] auxCQR = idQR.Split('.'); GeneracionCQR objGeneracionQR = new GeneracionCQR(auxCQR[1]); Bitmap bitmap = objGeneracionQR.GenerarCodigoQR(idQR); byte[] bitmapBytes = objGeneracionQR.GenQRBytes(bitmap); System.Drawing.Image bitmapQRReporte = (Bitmap) new ImageConverter().ConvertFrom(bitmapBytes); return(iTextSharp.text.Image.GetInstance(bitmapQRReporte, System.Drawing.Imaging.ImageFormat.Jpeg)); }
/// <summary> /// Método para generar los bytes de un CQR determinado. /// </summary> /// <param name="idCQR"></param> /// <returns></returns> public static byte[] GenerarBytesQR([FromBody] string idCQR) { byte[] bytesQR = null; try { GeneracionCQR objGeneracionQR = new GeneracionCQR(); Bitmap bitmapQR = objGeneracionQR.GenerarCodigoQR(idCQR); bytesQR = objGeneracionQR.GenQRBytes(bitmapQR); } catch (Exception e) { Logs.Error(string.Format("No se ha podido generar el byte array para el código QR: {0}", e.Message)); } return(bytesQR); }
/// <summary> /// Método para mostrar el código QR en la vista /// </summary> /// <returns></returns> public ActionResult ObtenerImagenQR() { byte[] bytesQR = null; try { GeneracionCQR objGeneracionQR = new GeneracionCQR(Tipo_CQR); var bitmapQR = objGeneracionQR.GenerarCodigoQR(Id_CQR); bytesQR = objGeneracionQR.GenQRBytes(bitmapQR); } catch (Exception e) { Logs.Error(string.Format("No se ha podido generar el bitmap para el código QR: {0}", e.Message)); } return(File(bytesQR, "image/jpeg")); }
/// <summary> /// Método para registrar el QR del nuevo Activo en la base de datos. /// </summary> /// <returns></returns> public MensajesCQR NuevoCQR(string tipoQR) { GeneracionCQR objGeneracionQR = new GeneracionCQR(tipoQR); string IdCQR = objGeneracionQR.GenerarIdCodigoQR((string)Session["NickUsuario"]); var bitmap = objGeneracionQR.GenerarCodigoQR(IdCQR); var bitmapBytes = objGeneracionQR.GenQRBytes(bitmap); CQR infoCQR = new CQR { IdCqr = IdCQR, Impreso = false }; string mensajesCQR = string.Empty; MensajesCQR msjCQR = new MensajesCQR(); try { ActivosAccDatos objCQRAccDatos = new ActivosAccDatos((string)Session["NickUsuario"]); msjCQR = objCQRAccDatos.RegistrarCQR(infoCQR); if (msjCQR.OperacionExitosa) { mensajesCQR = string.Format("El CQR \"{0}\" ha sido registrado exitosamente.", infoCQR.IdCqr); msjCQR.ObjetoInventarios = infoCQR; Logs.Info(mensajesCQR); } else { mensajesCQR = string.Format("No se ha podido registrar el CQR \"{0}\": {1}", infoCQR.IdCqr, msjCQR.MensajeError); Logs.Error(mensajesCQR); } } catch (Exception e) { Logs.Error(string.Format("{0}: {1}", mensajesCQR, e.Message)); } return(msjCQR); }