public void VinculacionUsuarioDistribuidora(Entidad.UsuarioDistribuidora usuarioDistribuidora) { Negocio.Administracion.Usuario boUsuario = new Negocio.Administracion.Usuario(); Negocio.Administracion.Distribuidora boDistribuidora = new Negocio.Administracion.Distribuidora(); Negocio.Administracion.UsuarioDistribuidora boUD = new Negocio.Administracion.UsuarioDistribuidora(); if (usuarioDistribuidora.Usuario?.Id == 0) { List <Entidad.Usuario> usuarios; boUsuario.ObtenerUsuario(new Entidad.FiltroUsuario() { Cedula = usuarioDistribuidora.Usuario.Cedula }, out usuarios); usuarioDistribuidora.IdUsuario = usuarios.FirstOrDefault().Id; } if (usuarioDistribuidora.Distribuidora?.Id == 0) { List <Entidad.Distribuidora> distribuidoras; boDistribuidora.ObtenerDistribuidora(new Entidad.FiltroDistribuidora() { Identificador = usuarioDistribuidora.Distribuidora.Identificador }, out distribuidoras); usuarioDistribuidora.IdDistribuidora = distribuidoras.FirstOrDefault().Id; } usuarioDistribuidora.FechaCreacion = DateTime.Now; usuarioDistribuidora.EsNuevo = true; if (usuarioDistribuidora.AceptaUsuario && usuarioDistribuidora.AceptaDistribuidora) { usuarioDistribuidora.FechaAceptacion = DateTime.Now; } boUD.GuardarUsuarioDistribuidora(new List <Entidad.UsuarioDistribuidora> { usuarioDistribuidora }); }
public void ProcesoPush(Entidad.UsuarioDistribuidora entidad) { Message message; List <Entidad.UsuarioDistribuidora> duenioDistribuidora; List <Entidad.Usuario> trabajador; Negocio.Administracion.UsuarioDistribuidora boUsuarioDistribuidora = new Negocio.Administracion.UsuarioDistribuidora(); Negocio.Administracion.Usuario boUsuario = new Negocio.Administracion.Usuario(); string para, titulo, mensaje = string.Empty; switch (entidad.Proceso) { case Entidad.Enums.ProcesoUsuarioDistribuidora.TrabajadorLeeQR: //-Admin de la distribuidora(Notificacion: Title: Configurar Privilegios, Body: Debe asignar privilegios a "el trabajador") // (CargaUtil * *Pendiente * * { Nombre Pagina, IdUsuarioDistribuidora}) //**Busco al dueño de la distribuidora duenioDistribuidora = new List <Entidad.UsuarioDistribuidora>(); boUsuarioDistribuidora.ObtenerUsuarioDistribuidora(new Entidad.FiltroUsuarioDistribuidora() { EsAdmin = true, IdDistribuidora = entidad.IdDistribuidora, Includes = new string[] { "Usuario" } }, out duenioDistribuidora); //**Busco al trabajador trabajador = new List <Entidad.Usuario>(); boUsuario.ObtenerUsuario(new Entidad.FiltroUsuario() { Id = entidad.IdUsuario }, out trabajador); titulo = "Configurar Privilegios"; mensaje = $"Debe asignar privilegios a {trabajador.FirstOrDefault().Nombre} {trabajador.FirstOrDefault().Apellido}"; message = new Message() { Token = duenioDistribuidora.FirstOrDefault().Usuario.PushToken, Notification = new Notification() { Title = titulo, Body = mensaje } }; System.Threading.Tasks.Task.Run(() => SendPushAsync(message)); break; case Entidad.Enums.ProcesoUsuarioDistribuidora.TrabajadorEnviaSolicitud: //-Admin de la distribuidora(Notificacion: Title: Solicitud de Vinculación, Body: tiene una nueva solicitud) // (CargaUtil * *Pendiente * * { Nombre Pagina, IdUsuarioDistribuidora}) //**Busco al dueño de la distribuidora duenioDistribuidora = new List <Entidad.UsuarioDistribuidora>(); boUsuarioDistribuidora.ObtenerUsuarioDistribuidora(new Entidad.FiltroUsuarioDistribuidora() { EsAdmin = true, IdDistribuidora = entidad.IdDistribuidora, Includes = new string[] { "Usuario" } }, out duenioDistribuidora); titulo = "Solicitud de Vinculación"; mensaje = "tiene una nueva solicitud"; message = new Message() { Token = duenioDistribuidora.FirstOrDefault().Usuario.PushToken, Notification = new Notification() { Title = titulo, Body = mensaje } }; System.Threading.Tasks.Task.Run(() => SendPushAsync(message)); break; case Entidad.Enums.ProcesoUsuarioDistribuidora.DistribuidoraLeeQR: //-Trabajador(Notificacion: Title: Vinculación relizada, Body: Se realizo una vinculacion a "Nombre distribuidora", toca acá para actualizar la información.) // (CargaUtil { Nombre Pagina}) //**Busco al trabajador trabajador = new List <Entidad.Usuario>(); boUsuario.ObtenerUsuario(new Entidad.FiltroUsuario() { Id = entidad.IdUsuario }, out trabajador); titulo = "Vinculación relizada"; mensaje = $"Se realizo una vinculacion a {entidad.Distribuidora.RazonSocial}, toca acá para actualizar la información"; message = new Message() { Token = trabajador.FirstOrDefault().PushToken, Notification = new Notification() { Title = titulo, Body = mensaje } }; System.Threading.Tasks.Task.Run(() => SendPushAsync(message)); break; case Entidad.Enums.ProcesoUsuarioDistribuidora.DistribuidoraEnviaSolicitud: //-Trabajador(Notificacion: Title: Solicitud de Vinculación Body: La "Nombre distribuidora" solicito tu vinculación.) // (CargaUtil { Nombre Pagina, IdUsuarioDistribuidora}) //**Busco al trabajador trabajador = new List <Entidad.Usuario>(); boUsuario.ObtenerUsuario(new Entidad.FiltroUsuario() { Id = entidad.IdUsuario }, out trabajador); titulo = "Solicitud de Vinculación"; mensaje = $"La {entidad.Distribuidora.RazonSocial} solicito tu vinculación"; message = new Message() { Token = trabajador.FirstOrDefault().PushToken, Notification = new Notification() { Title = titulo, Body = mensaje } }; System.Threading.Tasks.Task.Run(() => SendPushAsync(message)); break; } }