package com.ejie.ab04b.model;

import com.ejie.ab04b.model.nora.Municipio;
import com.ejie.ab04b.model.nora.Provincia;
import com.ejie.x38.serialization.JsonDateDeserializer;
import com.ejie.x38.serialization.JsonDateSerializer;
import java.util.Date;
import org.codehaus.jackson.map.annotate.JsonDeserialize;
import org.codehaus.jackson.map.annotate.JsonSerialize;

/**
 * Ab0485s00 generated by UDA, 21-feb-2017 13:23:32.
 * 
 * @author UDA
 */

public class Promotor implements java.io.Serializable {

	private static final long serialVersionUID = 1L;
	// Clave compuesta
	private String terexp085;
	private String anoexp085;
	private Integer numexp085;
	private String tipdoc085;
	private String numdoc085;
	private java.util.Date fecalt085;
	private String tipoprm085;
	private Long codobra085;
	private Date fecbaj085;
	private String nomprm085;
	private String paisprm085;
	private String prvprm085;
	private String munprm085;
	private String dmunprm085;
	private String dirprm085;
	private String cpoprm085;
	private Long ordexp085;
	private String usualt085;
	private Date fecmod085;
	private String usumod085;
	private String descprm085;

	private String tlfprm085;
	private String emailprm085;

	// añadidos
	private Provincia provincia;
	private Municipio municipio;

	/**
	 * Method 'Ab0485s00'.
	 */
	public Promotor() {
	}

	/**
	 * Method 'Ab0485s00'.
	 * 
	 *  terexp085
	 *            String
	 *  anoexp085
	 *            String
	 *  numexp085
	 *            Integer
	 *  tipdoc085
	 *            String
	 *  numdoc085
	 *            String
	 *  fecalt085
	 *            Date
	 *  tipoprm085
	 *            String
	 *
	 * @param terexp085 the terexp 085
	 * @param anoexp085 the anoexp 085
	 * @param numexp085 the numexp 085
	 * @param tipdoc085 the tipdoc 085
	 * @param numdoc085 the numdoc 085
	 * @param fecalt085 the fecalt 085
	 * @param tipoprm085 the tipoprm 085
	 */
	public Promotor(String terexp085, String anoexp085, Integer numexp085,
			String tipdoc085, String numdoc085, Date fecalt085,
			String tipoprm085) {
		this.terexp085 = terexp085;
		this.anoexp085 = anoexp085;
		this.numexp085 = numexp085;
		this.tipdoc085 = tipdoc085;
		this.numdoc085 = numdoc085;
		this.fecalt085 = fecalt085;
		this.tipoprm085 = tipoprm085;
	}

	/**
	 * Method 'Ab0485s00'.
	 * 
	 *  terexp085            String
	 *  anoexp085            String
	 *  numexp085            Integer
	 *  tipdoc085            String
	 *  numdoc085            String
	 *  fecalt085            Date
	 *  tipoprm085            String
	 *  codobra085            Long
	 *  fecbaj085            Date
	 *  nomprm085            String
	 *  paisprm085            String
	 *  prvprm085            String
	 *  munprm085            String
	 *  dmunprm085            String
	 *  dirprm085            String
	 *  cpoprm085            String
	 *  ordexp085            Long
	 *  usualt085            String
	 *  fecmod085            Date
	 *  usumod085            String
	 *  descprm085            String
	 *  tlfprm085 the tlfprm 085
	 *  emailprm085 the emailprm 085
	 *
	 * @param terexp085 the terexp 085
	 * @param anoexp085 the anoexp 085
	 * @param numexp085 the numexp 085
	 * @param tipdoc085 the tipdoc 085
	 * @param numdoc085 the numdoc 085
	 * @param fecalt085 the fecalt 085
	 * @param tipoprm085 the tipoprm 085
	 * @param codobra085 the codobra 085
	 * @param fecbaj085 the fecbaj 085
	 * @param nomprm085 the nomprm 085
	 * @param paisprm085 the paisprm 085
	 * @param prvprm085 the prvprm 085
	 * @param munprm085 the munprm 085
	 * @param dmunprm085 the dmunprm 085
	 * @param dirprm085 the dirprm 085
	 * @param cpoprm085 the cpoprm 085
	 * @param ordexp085 the ordexp 085
	 * @param usualt085 the usualt 085
	 * @param fecmod085 the fecmod 085
	 * @param usumod085 the usumod 085
	 * @param descprm085 the descprm 085
	 * @param tlfprm085 the tlfprm 085
	 * @param emailprm085 the emailprm 085
	 */
	public Promotor(String terexp085, String anoexp085, Integer numexp085,
			String tipdoc085, String numdoc085, Date fecalt085,
			String tipoprm085, Long codobra085, Date fecbaj085,
			String nomprm085, String paisprm085, String prvprm085,
			String munprm085, String dmunprm085, String dirprm085,
			String cpoprm085, Long ordexp085, String usualt085, Date fecmod085,
			String usumod085, String descprm085, String tlfprm085,
			String emailprm085) {

		this.terexp085 = terexp085;
		this.anoexp085 = anoexp085;
		this.numexp085 = numexp085;
		this.tipdoc085 = tipdoc085;
		this.numdoc085 = numdoc085;
		this.fecalt085 = fecalt085;
		this.tipoprm085 = tipoprm085;
		this.codobra085 = codobra085;
		this.fecbaj085 = fecbaj085;
		this.nomprm085 = nomprm085;
		this.paisprm085 = paisprm085;
		this.prvprm085 = prvprm085;
		this.munprm085 = munprm085;
		this.dmunprm085 = dmunprm085;
		this.dirprm085 = dirprm085;
		this.cpoprm085 = cpoprm085;
		this.ordexp085 = ordexp085;
		this.usualt085 = usualt085;
		this.fecmod085 = fecmod085;
		this.usumod085 = usumod085;
		this.descprm085 = descprm085;
		this.tlfprm085 = tlfprm085;
		this.emailprm085 = emailprm085;
	}

	/**
	 * Method 'getProvincia'.
	 * 
	 *  String
	 *
	 * @return the provincia
	 */
	public Provincia getProvincia() {
		if (this.provincia != null) {
			return this.provincia;
		} else {
			return null;
		}
	}

	/**
	 * Method 'getMunicipio'.
	 * 
	 *  String
	 *
	 * @return the municipio
	 */
	public Municipio getMunicipio() {
		if (this.municipio != null) {
			return this.municipio;
		} else {
			return null;
		}
	}

	/**
	 * Method 'getProvincia'.
	 * 
	 *  String
	 *
	 * @return the desc provincia
	 */
	public String getDescProvincia() {
		if (this.provincia != null) {
			return this.provincia.getDescripcion();
		} else {
			return null;
		}
	}

	/**
	 * Method 'getMunicipio'.
	 * 
	 *  String
	 *
	 * @return the desc municipio
	 */
	public String getDescMunicipio() {
		if (this.municipio != null) {
			return this.municipio.getDescripcion();
		} else {
			return null;
		}
	}

	/**
	 * Method 'getProvincia'.
	 * 
	 *  String
	 *
	 * @return the cod provincia
	 */
	public String getCodProvincia() {
		if (this.provincia != null) {
			return this.provincia.getCodProvincia();
		} else {
			return null;
		}
	}

	/**
	 * Method 'getMunicipio'.
	 * 
	 *  String
	 *
	 * @return the cod municipio
	 */
	public String getCodMunicipio() {
		if (this.municipio != null) {
			return this.municipio.getCodMunicipio();
		} else {
			return null;
		}
	}

	/**
	 * Method 'getTerexp085'.
	 * 
	 *  String
	 *
	 * @return the terexp 085
	 */

	public String getTerexp085() {
		return this.terexp085;
	}

	/**
	 * Method 'setTerexp085'.
	 * 
	 *  terexp085            String
	 *
	 * @param terexp085 the new terexp 085
	 */

	public void setTerexp085(String terexp085) {
		this.terexp085 = terexp085;
	}

	/**
	 * Method 'getAnoexp085'.
	 * 
	 *  String
	 *
	 * @return the anoexp 085
	 */

	public String getAnoexp085() {
		return this.anoexp085;
	}

	/**
	 * Method 'setAnoexp085'.
	 * 
	 *  anoexp085            String
	 *
	 * @param anoexp085 the new anoexp 085
	 */

	public void setAnoexp085(String anoexp085) {
		this.anoexp085 = anoexp085;
	}

	/**
	 * Method 'getNumexp085'.
	 * 
	 *  Integer
	 *
	 * @return the numexp 085
	 */

	public Integer getNumexp085() {
		return this.numexp085;
	}

	/**
	 * Method 'setNumexp085'.
	 * 
	 *  numexp085            Integer
	 *
	 * @param numexp085 the new numexp 085
	 */

	public void setNumexp085(Integer numexp085) {
		this.numexp085 = numexp085;
	}

	/**
	 * Method 'getTipdoc085'.
	 * 
	 *  String
	 *
	 * @return the tipdoc 085
	 */

	public String getTipdoc085() {
		return this.tipdoc085;
	}

	/**
	 * Method 'setTipdoc085'.
	 * 
	 *  tipdoc085            String
	 *
	 * @param tipdoc085 the new tipdoc 085
	 */

	public void setTipdoc085(String tipdoc085) {
		this.tipdoc085 = tipdoc085;
	}

	/**
	 * Method 'getNumdoc085'.
	 * 
	 *  String
	 *
	 * @return the numdoc 085
	 */

	public String getNumdoc085() {
		return this.numdoc085;
	}

	/**
	 * Method 'setNumdoc085'.
	 * 
	 *  numdoc085            String
	 *
	 * @param numdoc085 the new numdoc 085
	 */

	public void setNumdoc085(String numdoc085) {
		this.numdoc085 = numdoc085;
	}

	/**
	 * Method 'getFecalt085'.
	 * 
	 *  Date
	 *
	 * @return the fecalt 085
	 */

	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getFecalt085() {
		return this.fecalt085;
	}

	/**
	 * Method 'setFecalt085'.
	 * 
	 *  fecalt085            Date
	 *
	 * @param fecalt085 the new fecalt 085
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFecalt085(Date fecalt085) {
		this.fecalt085 = fecalt085;
	}

	/**
	 * Method 'getTipoprm085'.
	 * 
	 *  String
	 *
	 * @return the tipoprm 085
	 */

	public String getTipoprm085() {
		return this.tipoprm085;
	}

	/**
	 * Method 'setTipoprm085'.
	 * 
	 *  tipoprm085            String
	 *
	 * @param tipoprm085 the new tipoprm 085
	 */

	public void setTipoprm085(String tipoprm085) {
		this.tipoprm085 = tipoprm085;
	}

	/**
	 * Method 'getCodobra085'.
	 * 
	 *  Long
	 *
	 * @return the codobra 085
	 */

	public Long getCodobra085() {
		return this.codobra085;
	}

	/**
	 * Method 'setCodobra085'.
	 * 
	 *  codobra085            Long
	 *
	 * @param codobra085 the new codobra 085
	 */

	public void setCodobra085(Long codobra085) {
		this.codobra085 = codobra085;
	}

	/**
	 * Method 'getFecbaj085'.
	 * 
	 *  java.util.Date
	 *
	 * @return the fecbaj 085
	 */

	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getFecbaj085() {
		return this.fecbaj085;
	}

	/**
	 * Method 'setFecbaj085'.
	 * 
	 *  fecbaj085            java.util.Date
	 *
	 * @param fecbaj085 the new fecbaj 085
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFecbaj085(Date fecbaj085) {
		this.fecbaj085 = fecbaj085;
	}

	/**
	 * Method 'getNomprm085'.
	 * 
	 *  String
	 *
	 * @return the nomprm 085
	 */

	public String getNomprm085() {
		return this.nomprm085;
	}

	/**
	 * Method 'setNomprm085'.
	 * 
	 *  nomprm085            String
	 *
	 * @param nomprm085 the new nomprm 085
	 */

	public void setNomprm085(String nomprm085) {
		this.nomprm085 = nomprm085;
	}

	/**
	 * Method 'getPaisprm085'.
	 * 
	 *  String
	 *
	 * @return the paisprm 085
	 */

	public String getPaisprm085() {
		return this.paisprm085;
	}

	/**
	 * Method 'setPaisprm085'.
	 * 
	 *  paisprm085            String
	 *
	 * @param paisprm085 the new paisprm 085
	 */

	public void setPaisprm085(String paisprm085) {
		this.paisprm085 = paisprm085;
	}

	/**
	 * Method 'getPrvprm085'.
	 * 
	 *  String
	 *
	 * @return the prvprm 085
	 */

	public String getPrvprm085() {
		return this.prvprm085;
	}

	/**
	 * Method 'setPrvprm085'.
	 * 
	 *  prvprm085            String
	 *
	 * @param prvprm085 the new prvprm 085
	 */

	public void setPrvprm085(String prvprm085) {
		this.prvprm085 = prvprm085;
	}

	/**
	 * Method 'getMunprm085'.
	 * 
	 *  String
	 *
	 * @return the munprm 085
	 */

	public String getMunprm085() {
		return this.munprm085;
	}

	/**
	 * Method 'setMunprm085'.
	 * 
	 *  munprm085            String
	 *
	 * @param munprm085 the new munprm 085
	 */

	public void setMunprm085(String munprm085) {
		this.munprm085 = munprm085;
	}

	/**
	 * Method 'getDmunprm085'.
	 * 
	 *  String
	 *
	 * @return the dmunprm 085
	 */

	public String getDmunprm085() {
		return this.dmunprm085;
	}

	/**
	 * Method 'setDmunprm085'.
	 * 
	 *  dmunprm085            String
	 *
	 * @param dmunprm085 the new dmunprm 085
	 */

	public void setDmunprm085(String dmunprm085) {
		this.dmunprm085 = dmunprm085;
	}

	/**
	 * Method 'getDirprm085'.
	 * 
	 *  String
	 *
	 * @return the dirprm 085
	 */

	public String getDirprm085() {
		return this.dirprm085;
	}

	/**
	 * Method 'setDirprm085'.
	 * 
	 *  dirprm085            String
	 *
	 * @param dirprm085 the new dirprm 085
	 */

	public void setDirprm085(String dirprm085) {
		this.dirprm085 = dirprm085;
	}

	/**
	 * Method 'getCpoprm085'.
	 * 
	 *  String
	 *
	 * @return the cpoprm 085
	 */

	public String getCpoprm085() {
		return this.cpoprm085;
	}

	/**
	 * Method 'setCpoprm085'.
	 * 
	 *  cpoprm085            String
	 *
	 * @param cpoprm085 the new cpoprm 085
	 */

	public void setCpoprm085(String cpoprm085) {
		this.cpoprm085 = cpoprm085;
	}

	/**
	 * Method 'getOrdexp085'.
	 * 
	 *  Long
	 *
	 * @return the ordexp 085
	 */

	public Long getOrdexp085() {
		return this.ordexp085;
	}

	/**
	 * Method 'setOrdexp085'.
	 * 
	 *  ordexp085            Long
	 *
	 * @param ordexp085 the new ordexp 085
	 */

	public void setOrdexp085(Long ordexp085) {
		this.ordexp085 = ordexp085;
	}

	/**
	 * Method 'getUsualt085'.
	 * 
	 *  String
	 *
	 * @return the usualt 085
	 */

	public String getUsualt085() {
		return this.usualt085;
	}

	/**
	 * Method 'setUsualt085'.
	 * 
	 *  usualt085            String
	 *
	 * @param usualt085 the new usualt 085
	 */

	public void setUsualt085(String usualt085) {
		this.usualt085 = usualt085;
	}

	/**
	 * Method 'getFecmod085'.
	 * 
	 *  java.util.Date
	 *
	 * @return the fecmod 085
	 */

	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getFecmod085() {
		return this.fecmod085;
	}

	/**
	 * Method 'setFecmod085'.
	 * 
	 *  fecmod085            java.util.Date
	 *
	 * @param fecmod085 the new fecmod 085
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFecmod085(Date fecmod085) {
		this.fecmod085 = fecmod085;
	}

	/**
	 * Method 'getUsumod085'.
	 * 
	 *  String
	 *
	 * @return the usumod 085
	 */

	public String getUsumod085() {
		return this.usumod085;
	}

	/**
	 * Method 'setUsumod085'.
	 * 
	 *  usumod085            String
	 *
	 * @param usumod085 the new usumod 085
	 */

	public void setUsumod085(String usumod085) {
		this.usumod085 = usumod085;
	}

	/**
	 * Method 'getDescprm085'.
	 * 
	 *  String
	 *
	 * @return the descprm 085
	 */

	public String getDescprm085() {
		return this.descprm085;
	}

	/**
	 * Method 'setDescprm085'.
	 * 
	 *  descprm085            String
	 *
	 * @param descprm085 the new descprm 085
	 */

	public void setDescprm085(String descprm085) {
		this.descprm085 = descprm085;
	}

	/**
	 * Gets the tlfprm 085.
	 * 
	 *  the tlfprm 085
	 *
	 * @return the tlfprm 085
	 */
	public String getTlfprm085() {
		return tlfprm085;
	}

	/**
	 * Sets the tlfprm 085.
	 * 
	 *  tlfprm085 the new tlfprm 085
	 *
	 * @param tlfprm085 the new tlfprm 085
	 */
	public void setTlfprm085(String tlfprm085) {
		this.tlfprm085 = tlfprm085;
	}

	/**
	 * Gets the emailprm 085.
	 * 
	 *  the emailprm 085
	 *
	 * @return the emailprm 085
	 */
	public String getEmailprm085() {
		return emailprm085;
	}

	/**
	 * Sets the emailprm 085.
	 * 
	 *  emailprm085 the new emailprm 085
	 *
	 * @param emailprm085 the new emailprm 085
	 */
	public void setEmailprm085(String emailprm085) {
		this.emailprm085 = emailprm085;
	}

	/**
	 * Sets the provincia.
	 * 
	 *  provincia            the provincia to set
	 *
	 * @param provincia the new provincia
	 */
	public void setProvincia(Provincia provincia) {
		this.provincia = provincia;
	}

	/**
	 * Sets the municipio.
	 * 
	 *  municipio            the municipio to set
	 *
	 * @param municipio the new municipio
	 */
	public void setMunicipio(Municipio municipio) {
		this.municipio = municipio;
	}

	/**
	 * Sets the apertura.
	 * 
	 *  apertura            ComunicacionApertura
	 *
	 * @param apertura the new apertura
	 */
	public void setApertura(ComunicacionApertura apertura) {
		this.terexp085 = apertura.getTerape056();
		this.anoexp085 = apertura.getAnoape056();
		this.numexp085 = apertura.getNumape056().intValue();
	}

	/**
	 * Intended only for logging and debugging.
	 * 
	 * Here, the contents of every main field are placed into the result.
	 * 
	 *  String
	 *
	 * @return the string
	 */
	@Override
	public String toString() {
		StringBuilder result = new StringBuilder();
		result.append(this.getClass().getName()).append(" Object { ");
		// Clave compuesta

		result.append("[ terexp085: ").append(this.terexp085).append(" ]");

		result.append(", [ anoexp085: ").append(this.anoexp085).append(" ]");

		result.append(", [ numexp085: ").append(this.numexp085).append(" ]");

		result.append(", [ tipdoc085: ").append(this.tipdoc085).append(" ]");

		result.append(", [ numdoc085: ").append(this.numdoc085).append(" ]");

		result.append(", [ fecalt085: ").append(this.fecalt085).append(" ]");

		result.append(", [ tipoprm085: ").append(this.tipoprm085).append(" ]");
		result.append(", [ codobra085: ").append(this.codobra085).append(" ]");
		result.append(", [ fecbaj085: ").append(this.fecbaj085).append(" ]");
		result.append(", [ nomprm085: ").append(this.nomprm085).append(" ]");
		result.append(", [ paisprm085: ").append(this.paisprm085).append(" ]");
		result.append(", [ prvprm085: ").append(this.prvprm085).append(" ]");
		result.append(", [ munprm085: ").append(this.munprm085).append(" ]");
		result.append(", [ dmunprm085: ").append(this.dmunprm085).append(" ]");
		result.append(", [ dirprm085: ").append(this.dirprm085).append(" ]");
		result.append(", [ cpoprm085: ").append(this.cpoprm085).append(" ]");
		result.append(", [ ordexp085: ").append(this.ordexp085).append(" ]");
		result.append(", [ usualt085: ").append(this.usualt085).append(" ]");
		result.append(", [ fecmod085: ").append(this.fecmod085).append(" ]");
		result.append(", [ usumod085: ").append(this.usumod085).append(" ]");
		result.append(", [ descprm085: ").append(this.descprm085).append(" ]");
		result.append("}");
		return result.toString();
	}

}
