com.fenalco.entities
Class PriceScale

java.lang.Object
  extended by com.fenalco.entities.PriceScale

public class PriceScale
extends java.lang.Object

Esta clase representa la tabla escala_precio_producto de la base de datos y encapsula cada una de las operaciones que sobre esta se puedan realizar : inserción, actualización, eliminación, consulta. De forma lógica hace referencia a la escala de precios que esta asociada con el producto de un proveedor.

Author:
Mario Linares Vásquez

Field Summary
private  int communityId
          Identificador de la comunidad para la cual aplica esta escala de precios
private  int supplierProductId
          Identificador del producto-proveedor para el cual aplica esta escala
private  java.util.Vector values
          Hashtable de la escala de precios.
 
Constructor Summary
PriceScale()
          Constructor por omisión de la clase
PriceScale(int supplierProduct, int community)
          Constructor que recibe el identificador del producto-proveedor y el de la comunidad para cargar todas las escalas de precios asociadas con estos datos.
 
Method Summary
 boolean addToScale(int minQuantity, int maxQuantity, double price)
          Este método agrega un rango nuevo a la escala de precios.
 boolean delete(Transaction transaction)
          Realiza una consulta SQL de tipo delete con el fin de eliminar la escala de la base de datos cuando se creo la instancia con el constructor que recibe el id como parámetro.Para eliminar los datos en la tabla escala_precio_producto debe construir una consulta SQL de tipo deletete y la adiciona a la transacción con el método addSql
 boolean deleteRow(int scaleId, Transaction transaction)
          Este método permite eliminar una entrada de la escala de precios, recibe el identificador de la entrada y una transacción.
static boolean existScale(int supplierProductId, int supplierId)
           
 int getCommunityId()
          Getter for property communityId.
 int getNextMin()
           
 int getSupplierProductId()
          Getter for property supplierProductId.
 java.util.Vector getValues()
          Getter for property values.
 boolean loadData(int supplierProduct, int community)
          Carga la información de la base de datos a partir del producto-proveedor y la comunidad.
 boolean saveData(Transaction transaction)
          Este método guarda los atributos de la escala de precios en la base de datos.
 void setCommunityId(int communityId)
          Setter for property communityId.
 void setSupplierProductId(int supplierProductId)
          Setter for property supplierProductId.
 void setValues(java.util.Vector values)
          Setter for property values.
 boolean update(Transaction transaction)
          Realiza una consulta SQL de tipo update con el fin de actualizar los campos de la escala de precios modificados a través de los métodos setter o el método addToScale.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

communityId

private int communityId
Identificador de la comunidad para la cual aplica esta escala de precios


supplierProductId

private int supplierProductId
Identificador del producto-proveedor para el cual aplica esta escala


values

private java.util.Vector values
Hashtable de la escala de precios. Este Hashtable está construido de la siguiente forma, la llave es el id de la tabla y el value un vector cuyos valores son: - id del rango (tabla escala_precio_producto) - cantidad minima - cantidad maxima - precio

Constructor Detail

PriceScale

public PriceScale()
Constructor por omisión de la clase


PriceScale

public PriceScale(int supplierProduct,
                  int community)
Constructor que recibe el identificador del producto-proveedor y el de la comunidad para cargar todas las escalas de precios asociadas con estos datos.

Parameters:
supplierProduct - int que representa el id de la relación producto-proveedor a la cual esta asociada la escala
community - representa la comunidad para la cual aplica la escala
Method Detail

loadData

public boolean loadData(int supplierProduct,
                        int community)
Carga la información de la base de datos a partir del producto-proveedor y la comunidad.

Parameters:
supplierProduct - int que representa el id de la relación producto-proveedor a la cual esta asociada la escala
community - comunidad para la que aplica la escala de precios
Returns:
boolean que representa el exito del proceso de carga de los datos

saveData

public boolean saveData(Transaction transaction)
Este método guarda los atributos de la escala de precios en la base de datos. Se debe usar solo cuando se desee crear una nueva escala de precios en la escala. Para almacenar los datos en la tabla escala_precio_producto debe construir una consulta SQL de tipo insert y la adiciona a la transacción con el método addSql

Parameters:
transaction - la transacción que se está ejecutando
Returns:
boolean que representa el exito del proceso de inserción

update

public boolean update(Transaction transaction)
Realiza una consulta SQL de tipo update con el fin de actualizar los campos de la escala de precios modificados a través de los métodos setter o el método addToScale. Para actualizar los datos en la tabla escala_precio_producto debe construir una consulta SQL de tipo updatey la adiciona a la transacción con el método addSql

Parameters:
transaction - la transacción que se está ejecutando
Returns:
boolean que representa el exito del proceso de actualización

delete

public boolean delete(Transaction transaction)
Realiza una consulta SQL de tipo delete con el fin de eliminar la escala de la base de datos cuando se creo la instancia con el constructor que recibe el id como parámetro.Para eliminar los datos en la tabla escala_precio_producto debe construir una consulta SQL de tipo deletete y la adiciona a la transacción con el método addSql

Parameters:
transaction - la transacción que se está ejecutando
Returns:
boolean que representa el exito del proceso de borrado

deleteRow

public boolean deleteRow(int scaleId,
                         Transaction transaction)
Este método permite eliminar una entrada de la escala de precios, recibe el identificador de la entrada y una transacción.

Parameters:
scaleId - Identificador de la entrada de la escala de precios
transaction - Transacción que se está ejecutando
Returns:
Valor booleano que indica si la operación tuvo éxito o no.

addToScale

public boolean addToScale(int minQuantity,
                          int maxQuantity,
                          double price)
Este método agrega un rango nuevo a la escala de precios. Para tal efecto debe ejecutar una consulta insert sobre la tabla escala_precio_producto con los parámetros minQuantity, maxQuantity, discount con el mismo supplierProductId de la clase. Luego debe llamar el método loadData para actualizar el Hashtable de la clase

Parameters:
minQuantity - cantidad mínima del rango
maxQuantity - cantidad máxima del rango
price - precio aplicable sobre el rango
Returns:
boolean que repreenta el exito de la inserción

getNextMin

public int getNextMin()

existScale

public static boolean existScale(int supplierProductId,
                                 int supplierId)

getCommunityId

public int getCommunityId()
Getter for property communityId.

Returns:
Value of property communityId.

setCommunityId

public void setCommunityId(int communityId)
Setter for property communityId.

Parameters:
communityId - New value of property communityId.

getSupplierProductId

public int getSupplierProductId()
Getter for property supplierProductId.

Returns:
Value of property supplierProductId.

setSupplierProductId

public void setSupplierProductId(int supplierProductId)
Setter for property supplierProductId.

Parameters:
supplierProductId - New value of property supplierProductId.

getValues

public java.util.Vector getValues()
Getter for property values.

Returns:
Value of property values.

setValues

public void setValues(java.util.Vector values)
Setter for property values.

Parameters:
values - New value of property values.