public static void Crear(CoordenadaApi coordenada)
 {
     using (TeloBuscoEntities db = new TeloBuscoEntities())
     {
         string IdDelivery = AspNetUsersServicio.obtenerIdPorEmail(coordenada.Email);
         if (!string.IsNullOrEmpty(IdDelivery))
         {
             var posicionUsuario = db.PosicionesDeliverys.Where(x => x.idDelivery == IdDelivery).FirstOrDefault();
             if (posicionUsuario != null)
             {
                 //Si el delivery ya tiene alguna posición almacenada, la actualizo
                 posicionUsuario.lat = coordenada.Lat;
                 posicionUsuario.lng = coordenada.Lng;
                 posicionUsuario.FechaHoraUltimaPos = DateTime.Now;
                 db.SaveChanges();
             }
             else
             {
                 //Si el delivery no tiene alguna posición almacenada, la creo
                 PosicionesDeliverys posicionDelivery = new PosicionesDeliverys()
                 {
                     idDelivery         = IdDelivery != null ? IdDelivery : "",
                     lat                = coordenada.Lat,
                     lng                = coordenada.Lng,
                     FechaHoraUltimaPos = DateTime.Now
                 };
                 db.PosicionesDeliverys.Add(posicionDelivery);
                 db.SaveChanges();
             }
         }
     }
 }
 public void AlmacenarLocalizacion(CoordenadaApi coordenada)
 {
     if (coordenada != null)
     {
         var user = AspNetUsersServicio.obtenerPorEmail(coordenada.Email);
         if (user != null)
         {
             if (user.JWT == coordenada.JWT)
             {
                 Servicios.AccesoDatos.PosicionesDeliverysService.Crear(coordenada);
             }
         }
     }
 }
        public IEnumerable <PedidoMapa> ObtenerPendientes(string emailDelivery, string JWT)
        {
            var user = AspNetUsersServicio.obtenerPorEmail(emailDelivery);

            if (user != null)
            {
                if (user.JWT == JWT)
                {
                    var pedidosPendientes = PedidosServicio.ObtenerPendientesApi();
                    return(pedidosPendientes);
                }
            }
            List <PedidoMapa> listaVacia = new List <PedidoMapa>();

            return(listaVacia);
        }
        public static bool Crear(Postulacion postulacion)
        {
            using (TeloBuscoEntities db = new TeloBuscoEntities())
            {
                try
                {
                    int           idTipoActividad      = TiposActividadesServicio.obtenerIdPorDescripcion("Postulación");
                    int           idEstadoPostulacion  = EstadosServicio.obtenerIdEstadoPostulacionPorDescripcion("Postulado");
                    Postulaciones postulacionAlmacenar = new Postulaciones
                    {
                        IdTipoActividad     = idTipoActividad,
                        IdPedido            = postulacion.IdPedido,
                        IdUsuarioPostulado  = postulacion.IdUsuarioPostulado,
                        IdEstadoPostulacion = idEstadoPostulacion,
                        TiempoEstimado      = postulacion.TiempoEstimado,
                        Precio = postulacion.Precio
                    };

                    db.Postulaciones.Add(postulacionAlmacenar);
                    db.SaveChanges();

                    // Crear notificacion
                    int    idEstadoPostulacionNotificacion = EstadosServicio.obtenerIdEstadoPostulacionPorDescripcion("No vista");
                    string idUsuarioReceptor = PedidosServicio.ObtenerIdDueñoPedido(postulacion.IdPedido);
                    string nombrePostulado   = AspNetUsersServicio.ObtenerNombrePorId(postulacion.IdUsuarioPostulado);
                    nombrePostulado = nombrePostulado != null ? nombrePostulado : "";

                    Notificaciones notificacion = new Notificaciones()
                    {
                        IdTipoActividad      = idTipoActividad,
                        IdEstadoNotificacion = idEstadoPostulacionNotificacion,
                        Descripcion          = "Nueva postulación a su pedido: " + nombrePostulado,
                        IdUsuarioReceptor    = idUsuarioReceptor,
                        IdActividad          = postulacionAlmacenar.IdPostulacion
                    };

                    db.Notificaciones.Add(notificacion);
                    db.SaveChanges();

                    return(true);
                }
                catch (Exception ex)
                {
                    return(false);
                }
            }
        }
示例#5
0
        public IEnumerable <NotificacionApi> ObtenerPostulacionesAceptadas(string emailUsuario, string JWT)
        {
            var user = AspNetUsersServicio.obtenerPorEmail(emailUsuario);

            if (user != null)
            {
                if (user.JWT == JWT)
                {
                    var IdUsuario           = user.Id;
                    var listaNotificaciones = Servicios.AccesoDatos.NotificacionesServicio.ObtenerNotificacionesPostulacionesAceptadasApi(IdUsuario);
                    return(listaNotificaciones);
                }
            }
            List <NotificacionApi> listaVacia = new List <NotificacionApi>();

            return(listaVacia);
        }