Class DescuentoModel

java.lang.Object
giis.demo.descuento.DescuentoModel

public class DescuentoModel extends Object
Acceso a los datos de descuentos, utilizado como modelo para el ejemplo de swing y para las pruebas unitarias y de interfaz de usuario.
En los metodos de este ejemplo toda la logica de negocio se realiza mediante una unica query sql por lo que siempre se utilizan los metodos de utilidad en la clase Database que usan apache commons-dbutils y controlan la conexion. En caso de que en un mismo metodo se realicen diferentes queries se deberia controlar la conexion desde esta clase (ver como ejemplo la implementacion en Database).
Si utilizase algún otro framework para manejar la persistencia, la funcionalidad proporcionada por esta clase sería la asignada a los Servicios, Repositorios y DAOs.
  • Constructor Details

    • DescuentoModel

      public DescuentoModel()
  • Method Details

    • getDescuento

      public int getDescuento(boolean nuevo, boolean cupon, boolean tarjeta)
      Obtencion de descuento para un usuario en funcion los parametros.
      Parameters:
      nuevo - indica si es nuevo cliente, si no, es habitual
      cupon - indica si tiene cupon descuento
      tarjeta - indica si tiene tarjeta de fidelizacion
      Returns:
      el porcentaje de descuento aplicable segun los parametros anteriores
    • getListaDescuentos

      public List<DescuentoDisplayDTO> getListaDescuentos(int edad)
      Obtiene una fila por cada usuario de la base de datos junto con el descuento aplicable (se omiten las conbinaciones invalidas)
      Parameters:
      edad - filtro que oculta los resultados de aquellos con edad menor que la especificada (se supone no negativo)
      Returns:
      lista de objetos con el id de usuario y descuento aplicable
    • getListaDescuentos

      public List<DescuentoDisplayDTO> getListaDescuentos()
      Obtiene una fila por cada usuario de la base de datos junto con el descuento aplicable (se omiten las conbinaciones invalidas) sin aplicar ningun filtro
      Returns:
      lista de objetos con el id de usuario y descuento aplicable