/// <summary> /// Algoritmo que calcula la valoracion de la necesidad /// </summary> /// <param name="necesidad"></param> /// <returns>Necesidades</returns> public Necesidades calcularValoracion(Necesidades necesidad) { ServicioNecesidadValoraciones servicioNecesidadValoraciones = new ServicioNecesidadValoraciones(); List <NecesidadesValoraciones> valoracionesObtenidas = servicioNecesidadValoraciones.obtenerValoracionesPorIDNecesidad(necesidad.IdNecesidad); decimal cantidadLikes = 0; decimal cantidadDeVotaciones = valoracionesObtenidas.Count; foreach (var item in valoracionesObtenidas) { if (item.Valoracion == "Like") { cantidadLikes++; } } decimal valoracion = cantidadLikes * cantidadDeVotaciones / 100; necesidad.Valoracion = valoracion; NecesidadesDAO necesidadesDAO = new NecesidadesDAO(); Necesidades necesidadBD = necesidadesDAO.Actualizar(necesidad); if (necesidadBD == null) { return(null); } return(necesidadBD); }
public ServicioNecesidadValoraciones(TpDBContext context) { usuarioDao = new UsuarioDao(context); necesidadesDAO = new NecesidadesDAO(context); necesidadValoracionesDao = new NecesidadValoracionesDao(context); servicioNecesidad = new ServicioNecesidad(context); }
public ServicioNecesidad(TpDBContext context) { necesidadesDAO = new NecesidadesDAO(context); contexto = context; necesidadesReferenciasDao = new NecesidadesReferenciasDao(context); necesidadesDonacionesInsumosDao = new NecesidadesDonacionesInsumosDAO(context); necesidadesDonacionesMonetariasDAO = new NecesidadesDonacionesMonetariasDAO(context); }
public bool necesidadEvaluada(int idNecesidad, bool estado) { ServicioNecesidad servicioNecesidad = new ServicioNecesidad(); NecesidadesDAO necesidadesDAO = new NecesidadesDAO(); if (estado) //True es para dejarla bloqueada/Inactiva a la Necesidad { Denuncias denunciaObtenida = denunciasDao.obtenerDenunciaPorIdNecesidad(idNecesidad); if (denunciaObtenida == null) { return(false); } //Pongo la necesidad en estado inactivo denunciaObtenida.Necesidades.Estado = 0; //Actualizo el estado Denuncias denunciaActualizada = denunciasDao.Actualizar(denunciaObtenida); //Elimino la denuncia realizada denunciasDao.Eliminar(denunciaObtenida); if (denunciaActualizada == null) { return(false); } } else //Al ser false, esta necesidad no le deberia volver a aparecer al Administrador { Denuncias denunciaObtenida = denunciasDao.obtenerDenunciaPorIdNecesidad(idNecesidad); if (denunciaObtenida == null) { return(false); } denunciasDao.Eliminar(denunciaObtenida); } return(true); }
public ServicioNecesidadesMonetarias(TpDBContext context) { necesidadesDAO = new NecesidadesDAO(context); MonetariasDAO = new NecesidadesDonacionesMonetariasDAO(context); servicioNecesidad = new ServicioNecesidad(context); }
public ServicioDenuncia(TpDBContext context) { denunciasDao = new DenunciasDao(context); servicioNecesidad = new ServicioNecesidad(context); necesidadesDAO = new NecesidadesDAO(context); }
// ServicioNecesidadValoraciones servicioNecesidadValoraciones; public ServicioNecesidad(TpDBContext context) { necesidadesDAO = new NecesidadesDAO(context); contexto = context; // servicioNecesidadValoraciones = new ServicioNecesidadValoraciones(context); }
public bool guardarValoracion(int idUsuario, int idNecesidad, string botonRecibido) { UsuarioDao usuarioDao = new UsuarioDao(); NecesidadesDAO necesidadesDAO = new NecesidadesDAO(); NecesidadValoracionesDao necesidadValoracionesDao = new NecesidadValoracionesDao(); //Obtengo Usuario y Necesidad Usuarios usuarioObtenido = usuarioDao.ObtenerPorID(idUsuario); Necesidades necesidadObtenida = necesidadesDAO.ObtenerPorID(idNecesidad); //Valido si es que antes le dio Like or Dislike NecesidadesValoraciones necesidadRegistrada = necesidadValoracionesDao.obtenerNecesidadValoracionPor_IDUsuario_e_IdNecesidad(idUsuario, idNecesidad); if (necesidadRegistrada != null) { NecesidadesValoraciones valoracionObtenidaBD = new NecesidadesValoraciones(); if (botonRecibido == "Like") { if (necesidadRegistrada.IdNecesidad == idNecesidad) { if (necesidadRegistrada.Valoracion == "Like") //Si el estado en la BD tenia su MG, se lo remueve para que no quede el boton seleccionado { necesidadRegistrada.Valoracion = "Undefined"; valoracionObtenidaBD = necesidadValoracionesDao.Actualizar(necesidadRegistrada); if (valoracionObtenidaBD == null) { return(false); } } else if (necesidadRegistrada.Valoracion != "Like") //Si el estado en la BD tenia su MG removido, se lo vuelve a poner en MG, para que quede el boton seleccionado { necesidadRegistrada.Valoracion = "Like"; valoracionObtenidaBD = necesidadValoracionesDao.Actualizar(necesidadRegistrada); if (valoracionObtenidaBD == null) { return(false); } } } } else if (botonRecibido == "Dislike") { if (necesidadRegistrada.IdNecesidad == idNecesidad) { if (necesidadRegistrada.Valoracion == "Dislike") //Si el estado en la BD tenia su Dislike, se lo remueve para que no quede el boton seleccionado { necesidadRegistrada.Valoracion = "Undefined"; valoracionObtenidaBD = necesidadValoracionesDao.Actualizar(necesidadRegistrada); if (valoracionObtenidaBD == null) { return(false); } } else if (necesidadRegistrada.Valoracion != "Dislike") //Si el estado en la BD tenia su MG removido, se lo vuelve a poner en MG, para que quede el boton seleccionado { necesidadRegistrada.Valoracion = "Dislike"; valoracionObtenidaBD = necesidadValoracionesDao.Actualizar(necesidadRegistrada); if (valoracionObtenidaBD == null) { return(false); } } } } } else //Es decir, nunca le habia dado MG a esa publicacion { //Asigno datos al objeto Necesidad Valoraciones NecesidadesValoraciones necesidadesValoraciones = new NecesidadesValoraciones(); necesidadesValoraciones.IdUsuario = usuarioObtenido.IdUsuario; necesidadesValoraciones.IdNecesidad = necesidadObtenida.IdNecesidad; // necesidadesValoraciones.Usuarios = usuarioObtenido; //necesidadesValoraciones.Necesidades = necesidadObtenida; necesidadesValoraciones.Valoracion = (botonRecibido == "Like") ? "Like" : (botonRecibido == "Dislike") ? "Dislike" : null; NecesidadesValoraciones valoracionObtenida = necesidadValoracionesDao.Crear(necesidadesValoraciones); // NecesidadesValoraciones valoracionObtenida = necesidadValoracionesDao.Crear(usuarioObtenido, necesidadObtenida); if (valoracionObtenida == null) { return(false); } } ServicioNecesidad servicioNecesidad = new ServicioNecesidad(); Necesidades necesidadValorada = servicioNecesidad.calcularValoracion(necesidadObtenida); if (necesidadValorada == null) { return(false); } return(true); }
public ServicioUsuario(TpDBContext context) { usuarioDao = new UsuarioDao(context); necesidadesDAO = new NecesidadesDAO(context); denunciasDao = new DenunciasDao(context); }
public ServicioNecesidadesInsumos(TpDBContext context) { insumosDAO = new NecesidadesDonacionesInsumosDAO(context); necesidadesDAO = new NecesidadesDAO(context); servicioNecesidad = new ServicioNecesidad(context); }