public async Task CreateAsync(Usuario usuario) { try { var c = crudUsuario.Exists <Usuario>(usuario); if (c != null) { // Ya existe un usuario con esos datos throw new BussinessException(10); } crudUsuario.Create(usuario); var mng = new Rol_UsuarioManager(); foreach (string rol in usuario.Roles) { var rolUsuario = new Rol_Usuario { IdRol = rol, IdUsuario = usuario.Identificacion }; mng.Create(rolUsuario); } Response response = await EnviarCorreoManager.GetInstance().ExecuteVerificacionUsuario(usuario); } catch (Exception ex) { ExceptionManager.GetInstance().Process(ex); } }
public async Task RestablecerContrasennaAsync(Usuario usuario) { try { Usuario us = crudUsuario.Retrieve <Usuario>(usuario); if (us == null) { //El usuario no existe throw new BussinessException(12); } else if (!usuario.Correo.Equals(us.Correo)) { //Datos incorrectos throw new BussinessException(6); } else { string nuevaContrasenna = RandomString(8); us.Contrasenna = nuevaContrasenna; crudUsuario.UpdateContrasenna(us); Response response = await EnviarCorreoManager.GetInstance().ExecuteRestablecerContrasenna(us); } } catch (Exception ex) { ExceptionManager.GetInstance().Process(ex); } }
public static EnviarCorreoManager GetInstance() { if (instance == null) { instance = new EnviarCorreoManager(); } return(instance); }
public async Task UpdateAsync(SolicitudHotel solicitudHotel) { //valores a modificar var estadoCambio = solicitudHotel.Estado; decimal membrecia = 0; if (solicitudHotel.Membrecia > 0) { membrecia = solicitudHotel.Membrecia; } var hotelEnviado = new SolicitudHotel { CodigoSolicitud = solicitudHotel.CodigoSolicitud }; SolicitudHotel c = null; c = crudSolicitudHotel.Retrieve <SolicitudHotel>(hotelEnviado); if (c != null)//si la solicitud del id existe quiero que le cambie el estado { if (estadoCambio.Equals("Aprobada")) { if (c.Estado.Equals("Pendiente")) { c.Estado = "Aprobada"; c.Membrecia = membrecia; var respuesta = await EnviarCorreoManager.GetInstance().ExecuteCorreoSolicitudAprobada(c.CorreoUsuario, c); } } else if (estadoCambio.Equals("Rechazada")) { if (c.Estado.Equals("Pendiente")) { c.Estado = "Rechazada"; c.Membrecia = 0; var respuesta = await EnviarCorreoManager.GetInstance().ExecuteCorreoSolicitudRechazada(c.CorreoUsuario, c); } } else { } crudSolicitudHotel.Update(c); } else { throw new BussinessException(55); } }
public async Task CreatePdfAsync() { var hotel = new Hotel() { Nombre = "Marriott los sueños", CedulaJuridica = "12345678945", Correo = "*****@*****.**", Direccion = "200 mtrs al norte de la escuela de San Pedro, posfhksf kjsadhfk sjh fksh dflsjdl" }; var cliente = new Usuario() { PrimerNombre = "Daniel", PrimerApellido = "Herrera", SegundoApellido = "Peraza", Identificacion = "115800345", Correo = "*****@*****.**", DireccionExacta = "Frente a la municipalidad" }; var detalles = new ArrayList() { new LineaDetalleFactura() { Nombre = "Inscripción hotel", Precio = 2500, Cantidad = 1, SubTotal = 2500, Impuesto = 10, Total = 2750 }, new LineaDetalleFactura() { Nombre = "Servicio al cuarto", Precio = 500, Cantidad = 2, SubTotal = 1000, Impuesto = 10, Total = 1100 } }; var numeroFactura = "17"; var descripcionFactura = "Inscripción de hotel"; await PdfManager.Create(numeroFactura, descripcionFactura, detalles, hotel, cliente); await EnviarCorreoManager.GetInstance().ExecuteEnviarFactura(cliente.Correo, numeroFactura); }
public static async Task Create(string numeroFactura, string descripcion, ArrayList detalles, Hotel hotel, Usuario cliente) { var writer = new PdfWriter(DEST + numeroFactura + ".pdf"); var pdf = new PdfDocument(writer); var document = new Document(pdf); var font = PdfFontFactory.CreateFont(StandardFonts.TIMES_ROMAN); var bold = PdfFontFactory.CreateFont(StandardFonts.TIMES_BOLD, true); string numFactura = "Factura " + numeroFactura; // Header document.Add( new Paragraph() .SetTextAlignment(TextAlignment.RIGHT) .SetMultipliedLeading(1) .Add(new Text(String.Format("{0} \n", numFactura)) .SetFont(bold).SetFontSize(14)) .Add(DateTime.Now.ToString("dd/MM/yyyy")) ); var logo = new Image(ImageDataFactory.Create("https://res.cloudinary.com/datatek/image/upload/v1565550484/Imagenes%20default/WhatsApp_Image_2019-08-11_at_1.02.53_PM_s8xxeq.jpg")) .SetHorizontalAlignment(HorizontalAlignment.CENTER); document.Add(logo); // Motivo de factura document.Add(new Paragraph(String.Format("Factura por {0}", descripcion)) .SetFont(bold).SetFontSize(16) .SetTextAlignment(TextAlignment.CENTER)); // Partes document.Add(GetAddressTable(hotel, cliente, bold)); // Detalles document.Add(GetLineItemTable(detalles, bold)); // Total float total = 0; foreach (LineaDetalleFactura item in detalles) { total += item.Total; } document.Add(GetTotalsTable(total, bold)); document.Close(); await EnviarCorreoManager.GetInstance().ExecuteEnviarFactura(cliente.Correo, numeroFactura); }
public async Task Create(LlaveQR llave) { try { var QR = new LlaveQR(); do { llave.CodigoQR = RandomString(8); QR = crudLlaveQR.Retrieve <LlaveQR>(llave); } while (QR != null); llave.ImagenQR = getImagenQR(llave.CodigoQR); crudLlaveQR.Create(llave); await EnviarCorreoManager.GetInstance().ExecuteCorreoCodigoQR(llave.IdUsuario, llave); } catch (Exception ex) { ExceptionManager.GetInstance().Process(ex); } }
public async Task CreateYEnviar(LlaveQR llave, Usuario usuario) { try { UsuarioManager mngU = new UsuarioManager(); Usuario u = null; try { u = mngU.RetrieveAll().FindAll(FindCorreo).First <Usuario>(); } catch (Exception ex) { throw new BussinessException(12); } //validar si existe if (u != null) { //validar estado del usuario switch (u.ValorEstado) { case "3": //El usuario existe pero aún no ha verificado su cuenta throw new BussinessException(8); case "2": //El usuario existe pero su contraseña ha expirado throw new BussinessException(9); case "0": //El usuario existe pero se encuentra inactivo throw new BussinessException(9); } var mngRoles = new Rol_UsuarioManager(); var rolUsuario = new Rol_Usuario { IdUsuario = u.Identificacion, IdRol = "CLT" }; var roles = mngRoles.RetrieveAllById(rolUsuario); //validar que el usuario sea un cliente foreach (Rol_Usuario rol in roles) { if (rol.IdRol.Equals("CLT") == false) { throw new Exception("El usuario no es válido"); } } var QR = new LlaveQR(); do { llave.CodigoQR = RandomString(8); QR = crudLlaveQR.Retrieve <LlaveQR>(llave); } while (QR != null); llave.ImagenQR = getImagenQR(llave.CodigoQR); crudLlaveQR.Create(llave); await EnviarCorreoManager.GetInstance().ExecuteCorreoCodigoQR(u.Correo, llave); } else { //no existe ese usuario throw new BussinessException(12); } bool FindCorreo(Usuario usu) { if (usu.Correo == usuario.Correo) { return(true); } else { return(false); } } } catch (Exception ex) { ExceptionManager.GetInstance().Process(ex); } }