575 lines
16 KiB
Plaintext
Executable File
575 lines
16 KiB
Plaintext
Executable File
package com.fp.persistence.pgeneral.gene;
|
||
|
||
import java.io.Serializable;
|
||
import java.lang.reflect.Field;
|
||
import java.math.BigDecimal;
|
||
import java.sql.Date;
|
||
import java.sql.Timestamp;
|
||
|
||
import javax.persistence.Column;
|
||
import javax.persistence.EmbeddedId;
|
||
import javax.persistence.Entity;
|
||
import javax.persistence.EntityManager;
|
||
import javax.persistence.NoResultException;
|
||
import javax.persistence.Query;
|
||
import javax.persistence.Table;
|
||
import javax.persistence.Transient;
|
||
|
||
import org.hibernate.SQLQuery;
|
||
import org.hibernate.Session;
|
||
|
||
import com.fp.common.helper.Constant;
|
||
import com.fp.dto.hb.HibernateBean;
|
||
import com.fp.teller.exception.TellerException;
|
||
|
||
/** Clase que implementa la entidad de Hibernate que hace referencia a la tabla TGENETELLERTRANSFERHEADER */
|
||
@Entity(name = "TgeneTellerTransferHeader")
|
||
@Table(name = "TGENETELLERTRANSFERHEADER")
|
||
public class TgeneTellerTransferHeader 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 TgeneTellerTransferHeader
|
||
*/
|
||
@EmbeddedId
|
||
private TgeneTellerTransferHeaderKey pk;
|
||
@Column(name = "DATEFROM", nullable = true)
|
||
/**
|
||
* Numero de mensaje con el que se procersa el financiero.
|
||
*/
|
||
private Timestamp datefrom;
|
||
|
||
@Column(name = "CURRENCYCODE", nullable = false)
|
||
/**
|
||
* Codigo de moneda
|
||
*/
|
||
private String currencycode;
|
||
|
||
@Column(name = "OFFICECODE", nullable = false)
|
||
/**
|
||
* Codigo de oficina origen
|
||
*/
|
||
private Integer officecode;
|
||
|
||
@Column(name = "BRANCHCODE", nullable = false)
|
||
/**
|
||
* Codigo de sucursal origen
|
||
*/
|
||
private Integer branchcode;
|
||
|
||
@Column(name = "COMPANYCODE", nullable = false)
|
||
/**
|
||
* Codigo de compania al que pertenece la oficina
|
||
*/
|
||
private Integer companycode;
|
||
|
||
@Column(name = "DESTINYUSERCODE", nullable = true)
|
||
/**
|
||
* Codigo de usuario destino
|
||
*/
|
||
private String destinyusercode;
|
||
|
||
@Column(name = "DESTINYOFFICECODE", nullable = true)
|
||
/**
|
||
* Codigo de oficina destino
|
||
*/
|
||
private Integer destinyofficecode;
|
||
|
||
@Column(name = "DESTINYBRANCHCODE", nullable = true)
|
||
/**
|
||
* Codigo de sucursal destino
|
||
*/
|
||
private Integer destinybranchcode;
|
||
|
||
@Column(name = "STATUSCATALOG", nullable = true)
|
||
/**
|
||
* Codigo de catalogo 01 Natural, 02 Juridico
|
||
*/
|
||
private String statuscatalog;
|
||
|
||
@Column(name = "STATUSCATALOGCODE", nullable = true)
|
||
/**
|
||
* Codigo de tabla de catalogo 01 Codigo de tabla de tipos de persona
|
||
*/
|
||
private String statuscatalogcode;
|
||
|
||
@Column(name = "ISVAULT", nullable = true)
|
||
/**
|
||
* Y indica que la transferencia de saldos en de Boveda
|
||
*/
|
||
private String isvault;
|
||
|
||
@Column(name = "TOTAL", nullable = true)
|
||
/**
|
||
* Monto total de la transaccion
|
||
*/
|
||
private BigDecimal total;
|
||
|
||
@Column(name = "JOURNALID", nullable = true)
|
||
/**
|
||
* Numero de mensaje con el que se procersa el financiero.
|
||
*/
|
||
private String journalid;
|
||
|
||
@Column(name = "OLDJOURNALID", nullable = true)
|
||
/**
|
||
* Numero de mensaje anterior se utiliza en los reversos.
|
||
*/
|
||
private String oldjournalid;
|
||
|
||
|
||
/** Contructor por defecto */
|
||
public TgeneTellerTransferHeader() {
|
||
}
|
||
/**
|
||
* Contructor de TgeneTellerTransferHeader
|
||
*
|
||
* @param pPk Clave Primaria del entity
|
||
* @param pCurrencycode Codigo de moneda
|
||
* @param pOfficecode Codigo de oficina origen
|
||
* @param pBranchcode Codigo de sucursal origen
|
||
* @param pCompanycode Codigo de compania al que pertenece la oficina
|
||
*/
|
||
public TgeneTellerTransferHeader(TgeneTellerTransferHeaderKey pPk, String pCurrencycode, Integer pOfficecode,
|
||
Integer pBranchcode, Integer pCompanycode) {
|
||
this();
|
||
pk = pPk;
|
||
currencycode = pCurrencycode;
|
||
officecode = pOfficecode;
|
||
branchcode = pBranchcode;
|
||
companycode = pCompanycode;
|
||
}
|
||
/**
|
||
* 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 TgeneTellerTransferHeader
|
||
*/
|
||
public static TgeneTellerTransferHeader find(EntityManager pEntityManager, TgeneTellerTransferHeaderKey pKey)
|
||
throws Exception {
|
||
TgeneTellerTransferHeader obj = pEntityManager.find(TgeneTellerTransferHeader.class, pKey);
|
||
return obj;
|
||
}
|
||
/**
|
||
* Entrega la Clave primaria de TgeneTellerTransferHeader
|
||
*
|
||
* @return El objeto que referencia a la Clave primaria de TgeneTellerTransferHeader
|
||
*/
|
||
public TgeneTellerTransferHeaderKey getPk() {
|
||
return pk;
|
||
}
|
||
/**
|
||
* Fija un nuevo valor a la Clave primaria de TgeneTellerTransferHeader
|
||
*
|
||
* @param pPk El objeto que referencia a la nueva Clave primaria de TgeneTellerTransferHeader
|
||
*/
|
||
public void setPk(TgeneTellerTransferHeaderKey pPk) {
|
||
pk = pPk;
|
||
}
|
||
/**
|
||
* Obtiene el valor de datefrom
|
||
*
|
||
* @return valor de datefrom
|
||
*/
|
||
public Timestamp getDatefrom() {
|
||
return datefrom;
|
||
}
|
||
/**
|
||
* Fija el valor de datefrom
|
||
*
|
||
* @param pDatefrom nuevo Valor de datefrom
|
||
*/
|
||
public void setDatefrom(Timestamp pDatefrom) {
|
||
datefrom = pDatefrom;
|
||
}
|
||
|
||
/**
|
||
* Obtiene el valor de currencycode
|
||
*
|
||
* @return valor de currencycode
|
||
*/
|
||
public String getCurrencycode() {
|
||
return currencycode;
|
||
}
|
||
/**
|
||
* Fija el valor de currencycode
|
||
*
|
||
* @param pCurrencycode nuevo Valor de currencycode
|
||
*/
|
||
public void setCurrencycode(String pCurrencycode) {
|
||
currencycode = pCurrencycode;
|
||
}
|
||
|
||
/**
|
||
* Obtiene el valor de officecode
|
||
*
|
||
* @return valor de officecode
|
||
*/
|
||
public Integer getOfficecode() {
|
||
return officecode;
|
||
}
|
||
/**
|
||
* Fija el valor de officecode
|
||
*
|
||
* @param pOfficecode nuevo Valor de officecode
|
||
*/
|
||
public void setOfficecode(Integer pOfficecode) {
|
||
officecode = pOfficecode;
|
||
}
|
||
|
||
/**
|
||
* Obtiene el valor de branchcode
|
||
*
|
||
* @return valor de branchcode
|
||
*/
|
||
public Integer getBranchcode() {
|
||
return branchcode;
|
||
}
|
||
/**
|
||
* Fija el valor de branchcode
|
||
*
|
||
* @param pBranchcode nuevo Valor de branchcode
|
||
*/
|
||
public void setBranchcode(Integer pBranchcode) {
|
||
branchcode = pBranchcode;
|
||
}
|
||
|
||
/**
|
||
* Obtiene el valor de companycode
|
||
*
|
||
* @return valor de companycode
|
||
*/
|
||
public Integer getCompanycode() {
|
||
return companycode;
|
||
}
|
||
/**
|
||
* Fija el valor de companycode
|
||
*
|
||
* @param pCompanycode nuevo Valor de companycode
|
||
*/
|
||
public void setCompanycode(Integer pCompanycode) {
|
||
companycode = pCompanycode;
|
||
}
|
||
|
||
/**
|
||
* Obtiene el valor de destinyusercode
|
||
*
|
||
* @return valor de destinyusercode
|
||
*/
|
||
public String getDestinyusercode() {
|
||
return destinyusercode;
|
||
}
|
||
/**
|
||
* Fija el valor de destinyusercode
|
||
*
|
||
* @param pDestinyusercode nuevo Valor de destinyusercode
|
||
*/
|
||
public void setDestinyusercode(String pDestinyusercode) {
|
||
destinyusercode = pDestinyusercode;
|
||
}
|
||
|
||
/**
|
||
* Obtiene el valor de destinyofficecode
|
||
*
|
||
* @return valor de destinyofficecode
|
||
*/
|
||
public Integer getDestinyofficecode() {
|
||
return destinyofficecode;
|
||
}
|
||
/**
|
||
* Fija el valor de destinyofficecode
|
||
*
|
||
* @param pDestinyofficecode nuevo Valor de destinyofficecode
|
||
*/
|
||
public void setDestinyofficecode(Integer pDestinyofficecode) {
|
||
destinyofficecode = pDestinyofficecode;
|
||
}
|
||
|
||
/**
|
||
* Obtiene el valor de destinybranchcode
|
||
*
|
||
* @return valor de destinybranchcode
|
||
*/
|
||
public Integer getDestinybranchcode() {
|
||
return destinybranchcode;
|
||
}
|
||
/**
|
||
* Fija el valor de destinybranchcode
|
||
*
|
||
* @param pDestinybranchcode nuevo Valor de destinybranchcode
|
||
*/
|
||
public void setDestinybranchcode(Integer pDestinybranchcode) {
|
||
destinybranchcode = pDestinybranchcode;
|
||
}
|
||
|
||
/**
|
||
* Obtiene el valor de statuscatalog
|
||
*
|
||
* @return valor de statuscatalog
|
||
*/
|
||
public String getStatuscatalog() {
|
||
return statuscatalog;
|
||
}
|
||
/**
|
||
* Fija el valor de statuscatalog
|
||
*
|
||
* @param pStatuscatalog nuevo Valor de statuscatalog
|
||
*/
|
||
public void setStatuscatalog(String pStatuscatalog) {
|
||
statuscatalog = pStatuscatalog;
|
||
}
|
||
|
||
/**
|
||
* Obtiene el valor de statuscatalogcode
|
||
*
|
||
* @return valor de statuscatalogcode
|
||
*/
|
||
public String getStatuscatalogcode() {
|
||
return statuscatalogcode;
|
||
}
|
||
/**
|
||
* Fija el valor de statuscatalogcode
|
||
*
|
||
* @param pStatuscatalogcode nuevo Valor de statuscatalogcode
|
||
*/
|
||
public void setStatuscatalogcode(String pStatuscatalogcode) {
|
||
statuscatalogcode = pStatuscatalogcode;
|
||
}
|
||
|
||
/**
|
||
* Obtiene el valor de isvault
|
||
*
|
||
* @return valor de isvault
|
||
*/
|
||
public String getIsvault() {
|
||
return isvault;
|
||
}
|
||
/**
|
||
* Fija el valor de isvault
|
||
*
|
||
* @param pIsvault nuevo Valor de isvault
|
||
*/
|
||
public void setIsvault(String pIsvault) {
|
||
isvault = pIsvault;
|
||
}
|
||
|
||
/**
|
||
* Obtiene el valor de total
|
||
*
|
||
* @return valor de total
|
||
*/
|
||
public BigDecimal getTotal() {
|
||
return total;
|
||
}
|
||
/**
|
||
* Fija el valor de total
|
||
*
|
||
* @param pTotal nuevo Valor de total
|
||
*/
|
||
public void setTotal(BigDecimal pTotal) {
|
||
total = pTotal;
|
||
}
|
||
|
||
/**
|
||
* Obtiene el valor de journalid
|
||
*
|
||
* @return valor de journalid
|
||
*/
|
||
public String getJournalid() {
|
||
return journalid;
|
||
}
|
||
/**
|
||
* Fija el valor de journalid
|
||
*
|
||
* @param pJournalid nuevo Valor de journalid
|
||
*/
|
||
public void setJournalid(String pJournalid) {
|
||
journalid = pJournalid;
|
||
}
|
||
|
||
/**
|
||
* Obtiene el valor de oldjournalid
|
||
*
|
||
* @return valor de oldjournalid
|
||
*/
|
||
public String getOldjournalid() {
|
||
return oldjournalid;
|
||
}
|
||
/**
|
||
* Fija el valor de oldjournalid
|
||
*
|
||
* @param pOldjournalid nuevo Valor de oldjournalid
|
||
*/
|
||
public void setOldjournalid(String pOldjournalid) {
|
||
oldjournalid = pOldjournalid;
|
||
}
|
||
|
||
public boolean equals(Object rhs) {
|
||
if (rhs == null)
|
||
return false;
|
||
if (!(rhs instanceof TgeneTellerTransferHeader))
|
||
return false;
|
||
TgeneTellerTransferHeader that = (TgeneTellerTransferHeader) 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 TgeneTellerTransferHeader
|
||
*
|
||
* @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 TgeneTellerTransferHeader */
|
||
public Object createInstance() {
|
||
TgeneTellerTransferHeader instance = new TgeneTellerTransferHeader();
|
||
instance.setPk(new TgeneTellerTransferHeaderKey());
|
||
return instance;
|
||
}
|
||
/**
|
||
* Clona la entidad TgeneTellerTransferHeader
|
||
*
|
||
* @see com.fp.dto.hb.HibernateBean#cloneMe()
|
||
*/
|
||
public Object cloneMe() throws CloneNotSupportedException {
|
||
TgeneTellerTransferHeader p = (TgeneTellerTransferHeader) this.clone();
|
||
p.setPk((TgeneTellerTransferHeaderKey) this.pk.cloneMe());
|
||
return p;
|
||
}
|
||
public Object getId() {
|
||
return this.pk;
|
||
}
|
||
|
||
// metodos manuales.
|
||
/** Sentencia que entrega la los datos de TgeneTellerTransferHeader */
|
||
private static final String HQL_TELLER_TRANSFER_HEADER_JID = " from TgeneTellerTransferHeader tgth"
|
||
+ " where tgth.pk.workingdate = :workingdate" + " and tgth.journalid = :journalid";
|
||
|
||
/**
|
||
* Metodo que entrega los datos de TgeneTellerTransferHeader, dada la fecha de trabajo y el journalid.
|
||
* @param pEntityManager Referecia a la session de la base de datos.
|
||
* @param pWorkingdate Fecha de trabajo.
|
||
* @param pJournalid Numero de journal.
|
||
* @param isold Indica si obtiene el registro de journalid o de oldjournalid.
|
||
* @return TgeneTellerTransferHeader
|
||
* @throws Exception
|
||
*/
|
||
public static TgeneTellerTransferHeader find(EntityManager pEntityManager,Date pWorkingdate, String pJournalid)
|
||
throws Exception {
|
||
TgeneTellerTransferHeader tgeneTellerTransferHeader = null;
|
||
Query qry = pEntityManager.createQuery(HQL_TELLER_TRANSFER_HEADER_JID);
|
||
qry.setParameter("workingdate", pWorkingdate);
|
||
qry.setParameter("journalid", pJournalid);
|
||
try {
|
||
tgeneTellerTransferHeader = (TgeneTellerTransferHeader)qry.getSingleResult();
|
||
} catch (NoResultException e) {
|
||
return tgeneTellerTransferHeader;
|
||
}
|
||
return tgeneTellerTransferHeader;
|
||
}
|
||
|
||
|
||
|
||
/**sentencia que elimina TgeneTellerTransferHeader*/
|
||
private static final String DEL_TRANSF_HEAD =
|
||
" delete from TGENETELLERTRANSFERHEADER t "
|
||
+ " where t.WORKINGDATE = :workingdate "
|
||
+ " and t.USERCODE = :usercode "
|
||
+ " and t.TRANSFERNUMBER = :transfernumber";
|
||
|
||
/**
|
||
* Elimina un registro de la tabla para el usuario, fecha de trabajo y numero de transferencia.
|
||
* @param pEntityManager Referencia la session de la base de datos.
|
||
* @param pWorkingdate Fecha de trabajo.
|
||
* @param pUser Codigo de usuario.
|
||
* @param pTransfernumber Numero de transferencia.
|
||
* @throws Exception
|
||
*/
|
||
public static void delete(EntityManager pEntityManager,Date pWorkingdate,String pUser,Integer pTransfernumber) throws Exception {
|
||
//Elimina TgeneTellerTransferHeader
|
||
Session s = (Session)pEntityManager.getDelegate();
|
||
SQLQuery sqldet = s.createSQLQuery(DEL_TRANSF_HEAD);
|
||
sqldet.setDate("workingdate", pWorkingdate);
|
||
sqldet.setString("usercode", pUser);
|
||
sqldet.setInteger("transfernumber", pTransfernumber);
|
||
sqldet.executeUpdate();
|
||
}
|
||
|
||
|
||
|
||
/**Sentencia que entrega la los datos de TgeneTellerTransferHeader*/
|
||
private static final String JPQL_TELLER_TRANSFER_HEADER =
|
||
" from TgeneTellerTransferHeader tgth"
|
||
+ " where tgth.pk.workingdate = :workingdate"
|
||
+ " and tgth.pk.usercode = :usercode"
|
||
+ " and tgth.pk.transfernumber = :transfernumber";
|
||
/**
|
||
* Metodo que entrega los datos de TgeneTellerTransferHeader, dada la fecha de trabajo, usuario y numero de transferencia.<2E>
|
||
*
|
||
* @param pEntityManager Session de la base de datos.
|
||
* @param workingdate Fecha de trabajo.
|
||
* @param usercode Codigo de usuario.
|
||
* @param transfernumber Numero de transferencia.
|
||
* @return TgeneTellerTransferHeader
|
||
* @throws Exception
|
||
*/
|
||
public static TgeneTellerTransferHeader find(EntityManager pEntityManager, Date workingdate, String usercode, Integer transfernumber) throws Exception{
|
||
TgeneTellerTransferHeader tgeneTellerTransferHeader = null;
|
||
Query qry = pEntityManager.createQuery(TgeneTellerTransferHeader.JPQL_TELLER_TRANSFER_HEADER);
|
||
qry.setParameter(Constant.VWORKINGDATE, workingdate);
|
||
qry.setParameter("usercode", usercode);
|
||
qry.setParameter("transfernumber", transfernumber);
|
||
try {
|
||
tgeneTellerTransferHeader = (TgeneTellerTransferHeader) qry.getSingleResult();
|
||
} catch (NoResultException e) {
|
||
throw new TellerException("TELLER-0001", "TRANSFERENCIA NO DEFINIDA EN TGENETELLERTRANSFERHEADER TRANSFERNUMBER:{0} USERCODE:{1} WORKINGDATE:{2}", transfernumber, usercode, workingdate);
|
||
}
|
||
return tgeneTellerTransferHeader;
|
||
}
|
||
|
||
}
|