269 lines
7.5 KiB
Plaintext
Executable File
269 lines
7.5 KiB
Plaintext
Executable File
package com.fp.persistence.pgeneral.auth;
|
||
|
||
import java.io.Serializable;
|
||
import java.lang.reflect.Field;
|
||
import java.math.BigDecimal;
|
||
import java.util.List;
|
||
|
||
import javax.persistence.Column;
|
||
import javax.persistence.EmbeddedId;
|
||
import javax.persistence.Entity;
|
||
import javax.persistence.EntityManager;
|
||
import javax.persistence.Query;
|
||
import javax.persistence.Table;
|
||
import javax.persistence.Transient;
|
||
|
||
import com.fp.dto.hb.HibernateBean;
|
||
|
||
/**Clase que implementa la entidad de Hibernate que hace referencia a la tabla TGENEEXCEPTIONS*/
|
||
@Entity(name="TgeneExceptions")
|
||
@Table(name="TGENEEXCEPTIONS")
|
||
public class TgeneExceptions extends com.fp.dto.AbstractDataTransport implements Serializable,HibernateBean,Cloneable{
|
||
/**
|
||
* HashCode asociado con la Instancia
|
||
*/
|
||
@Transient
|
||
private int hashValue = 0;
|
||
/**
|
||
* Version de la Clase
|
||
*/
|
||
private static final long serialVersionUID = 1L;
|
||
/**
|
||
* Clave primaria de la Entidad TgeneExceptions
|
||
*/
|
||
@EmbeddedId
|
||
private TgeneExceptionsKey pk;
|
||
@Column(name="PROFILECODE", nullable=true)
|
||
|
||
/**
|
||
* Codigo de perfil de usuario
|
||
*/
|
||
private String profilecode;
|
||
|
||
@Column(name="CONDITION", nullable=true)
|
||
|
||
/**
|
||
* Condicion a evaluar
|
||
*/
|
||
private String condition;
|
||
|
||
@Column(name="STRINGVALUE", nullable=true)
|
||
|
||
/**
|
||
* Valor a compar con el dato del campo
|
||
*/
|
||
private String stringvalue;
|
||
|
||
@Column(name="NUMERICVALUE", nullable=true)
|
||
|
||
/**
|
||
* Valor a compar con el dato del campo
|
||
*/
|
||
private BigDecimal numericvalue;
|
||
|
||
@Column(name="TITLE", nullable=true)
|
||
|
||
/**
|
||
* Titulo de la condicion a generar, ejemplo MONTO > 100
|
||
*/
|
||
private String title;
|
||
|
||
@Column(name="COMMAND", nullable=true)
|
||
|
||
/**
|
||
* Clase que genera una condicion especial, ejemplo nacionalidad = ECUATORIANA
|
||
*/
|
||
private String command;
|
||
|
||
/**Contructor por defecto*/
|
||
public TgeneExceptions(){
|
||
}
|
||
/**Contructor de TgeneExceptions
|
||
@param pPk Clave Primaria del entity
|
||
*/
|
||
public TgeneExceptions(TgeneExceptionsKey pPk){
|
||
this();
|
||
pk=pPk;
|
||
}
|
||
/**
|
||
* Metodo que entrega datos de la tabla dada la clave primaria.
|
||
* @param pEntityManager referencia de la session a obtener datos del bean.
|
||
* @param pKey Caleve primaria del bean.
|
||
* @return TgeneExceptions
|
||
*/
|
||
public static TgeneExceptions find(EntityManager pEntityManager,TgeneExceptionsKey pKey) throws Exception{
|
||
TgeneExceptions obj = pEntityManager.find(TgeneExceptions.class,pKey);
|
||
return obj;
|
||
}
|
||
/**Entrega la Clave primaria de TgeneExceptions
|
||
@return El objeto que referencia a la Clave primaria de TgeneExceptions
|
||
*/
|
||
public TgeneExceptionsKey getPk(){
|
||
return pk;
|
||
}
|
||
/**Fija un nuevo valor a la Clave primaria de TgeneExceptions
|
||
@param pPk El objeto que referencia a la nueva Clave primaria de TgeneExceptions
|
||
*/
|
||
public void setPk(TgeneExceptionsKey pPk){
|
||
pk=pPk;
|
||
}
|
||
/**Obtiene el valor de profilecode
|
||
@return valor de profilecode*/
|
||
public String getProfilecode(){
|
||
return profilecode;
|
||
}
|
||
/**Fija el valor de profilecode
|
||
@param pProfilecode nuevo Valor de profilecode*/
|
||
public void setProfilecode(String pProfilecode){
|
||
profilecode=pProfilecode;
|
||
}
|
||
|
||
/**Obtiene el valor de condition
|
||
@return valor de condition*/
|
||
public String getCondition(){
|
||
return condition;
|
||
}
|
||
/**Fija el valor de condition
|
||
@param pCondition nuevo Valor de condition*/
|
||
public void setCondition(String pCondition){
|
||
condition=pCondition;
|
||
}
|
||
|
||
/**Obtiene el valor de stringvalue
|
||
@return valor de stringvalue*/
|
||
public String getStringvalue(){
|
||
return stringvalue;
|
||
}
|
||
/**Fija el valor de stringvalue
|
||
@param pStringvalue nuevo Valor de stringvalue*/
|
||
public void setStringvalue(String pStringvalue){
|
||
stringvalue=pStringvalue;
|
||
}
|
||
|
||
/**Obtiene el valor de numericvalue
|
||
@return valor de numericvalue*/
|
||
public BigDecimal getNumericvalue(){
|
||
return numericvalue;
|
||
}
|
||
/**Fija el valor de numericvalue
|
||
@param pNumericvalue nuevo Valor de numericvalue*/
|
||
public void setNumericvalue(BigDecimal pNumericvalue){
|
||
numericvalue=pNumericvalue;
|
||
}
|
||
|
||
/**Obtiene el valor de title
|
||
@return valor de title*/
|
||
public String getTitle(){
|
||
return title;
|
||
}
|
||
/**Fija el valor de title
|
||
@param pTitle nuevo Valor de title*/
|
||
public void setTitle(String pTitle){
|
||
title=pTitle;
|
||
}
|
||
|
||
/**Obtiene el valor de command
|
||
@return valor de command*/
|
||
public String getCommand(){
|
||
return command;
|
||
}
|
||
/**Fija el valor de command
|
||
@param pCommand nuevo Valor de command*/
|
||
public void setCommand(String pCommand){
|
||
command=pCommand;
|
||
}
|
||
|
||
public boolean equals(Object rhs){
|
||
if (rhs == null)return false;
|
||
if (! (rhs instanceof TgeneExceptions))return false;
|
||
TgeneExceptions that = (TgeneExceptions) rhs;
|
||
if (this.getPk() == null || that.getPk() == null)
|
||
return false;
|
||
return (this.getPk().equals(that.getPk()));
|
||
}
|
||
/**Implementaci<63>n del metodo hashCode de la la entidad TgeneExceptions
|
||
@return el hashCode la instancia
|
||
*/
|
||
public int hashCode() {
|
||
if (this.hashValue == 0){
|
||
int result = 17;
|
||
if (this.getPk() == null){
|
||
result = super.hashCode();
|
||
}else{
|
||
result = this.getPk().hashCode();
|
||
}
|
||
this.hashValue = result;
|
||
}
|
||
return this.hashValue;
|
||
}
|
||
/**Implementaci<63>n toString
|
||
*/
|
||
public String toString() {
|
||
Field[]fs=this.getClass().getDeclaredFields();
|
||
String data="";
|
||
for(Field f:fs){
|
||
try{
|
||
String name=f.getName();
|
||
if(f.getType().getName().compareTo("java.util.Set")==0)continue;
|
||
if(name.compareTo("hashValue")==0||name.compareTo("serialVersionUID")==0)continue;
|
||
data+=name+"="+f.get(this)+";";
|
||
}catch(Exception e){
|
||
continue;
|
||
}
|
||
}
|
||
if(data.compareTo("")==0){
|
||
data=super.toString();
|
||
}
|
||
return data;
|
||
}
|
||
/**Implementaci<63>n de la creaci<63>n de un bean en blanco TgeneExceptions
|
||
*/
|
||
public Object createInstance(){
|
||
TgeneExceptions instance=new TgeneExceptions();
|
||
instance.setPk(new TgeneExceptionsKey());
|
||
return instance;
|
||
}
|
||
/**Clona la entidad TgeneExceptions
|
||
@see com.fp.dto.hb.HibernateBean#cloneMe()
|
||
*/
|
||
public Object cloneMe() throws CloneNotSupportedException{
|
||
TgeneExceptions p=(TgeneExceptions)this.clone();
|
||
p.setPk((TgeneExceptionsKey)this.pk.cloneMe());
|
||
return p;
|
||
}
|
||
|
||
//Metodos manuales.
|
||
/**Sentencia que devuelve la definicion de excepciones que requieren autorizacion, por subproducto moneda.*/
|
||
private static final String HQL_EXCEPTIONS =
|
||
"from TgeneExceptions texception " +
|
||
" where texception.pk.modulecode = :modulecode "+
|
||
" and texception.pk.productcode = :productcode "+
|
||
" and texception.pk.subproductcode = :subproductcode "+
|
||
" and texception.pk.currencycode = :currencycode "+
|
||
" order by texception.pk.exceptionorder ";
|
||
|
||
/**
|
||
* Entrega una lista de excepciones de solicitud definidas por subproducto moneda, con la cual
|
||
* se generan excepciones a autorizar en una solicitud.
|
||
* @param pModuleCode Codigo de modulo.
|
||
* @param pProductCode Codigo de product.
|
||
* @param pSubproductCode Codigo de subproducto.
|
||
* @param pCurrencyCode Codigo de moneda.
|
||
* @return List<TgeneExceptions>
|
||
* @throws Exception
|
||
*/
|
||
@SuppressWarnings("unchecked")
|
||
public static List<TgeneExceptions> find(EntityManager pEntityManager,String pModuleCode,String pProductCode,
|
||
String pSubproductCode,String pCurrencyCode) throws Exception {
|
||
List<TgeneExceptions> lObjects = null;
|
||
Query qry = pEntityManager.createQuery(HQL_EXCEPTIONS);
|
||
qry.setParameter("modulecode", pModuleCode);
|
||
qry.setParameter("productcode", pProductCode);
|
||
qry.setParameter("subproductcode", pSubproductCode);
|
||
qry.setParameter("currencycode", pCurrencyCode);
|
||
lObjects = qry.getResultList();
|
||
return lObjects;
|
||
}
|
||
|
||
}
|