package com.ejie.m62fb.dao.registroVPP;

import com.ejie.m62fb.dao.SQLGenericas;
import com.ejie.m62fb.utils.constants.BDConstantes;

public class ContratoViviendaDaoSql {

	/**
	 * StringBuilder initilization value
	 */
	public static final int STRING_BUILDER_INIT = 4096;
	public static final String SEQUENCE_NAME = "";
	public static final String TABLA = BDConstantes.CONTRATO_VIVIENDA;
	public static final String VISTA = BDConstantes.VIS_CONTRATO_VIVIENDA;
	public static final String ALIAS_CONTRATOVIV = " CONTRATOVIV";
	public static final String PK1 = "NUM_VIVIENDA";
	public static final String PK2 = "NUM_PROPIETARIO";
	public static final String PK = "ID_CONTRATO";
	// Vista de actualizacion Masiva
	public static final String ALIAS_CONTRATOVIVACTMASIVA = " CONTRATOVIVACT";
	public static final String VISTA_ACTMASIVA = BDConstantes.CONTR_COMPRA_VIV_ACT;

	public static final String SQL_INSERT = "INSERT INTO"
			+ ContratoViviendaDaoSql.TABLA
			+ "(NUM_VIVIENDA, NUM_PROPIETARIO, NUM_EXPEDIENTE, COD_TIPO_TRANS, IND_RENUNCIA, "
			+ "IND_REVOCACION, FEC_TRANSMISION, FEC_ESCRITURA, FEC_EMPADRON, "
			+ "IND_VISADO, FEC_VISADO, ID_CONTRATO, FEC_ENT_CONTRATO, "
			+ "TEX_OBSERVACIONES, IND_SOLICITA_AYUDA, IND_VIV_ADAPTADA, FEC_RENUNCIA, FEC_REVOCACION "
			+ SQLGenericas.INSERT_DIRECCION_CLASS_SQL
			+ SQLGenericas.INSERT_ABSTRACT_CLASS_SQL
			+ ") VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?"
			+ SQLGenericas.INSERT_DIRECCION_CLASS_QUESTION_TAGS
			+ SQLGenericas.INSERT_ABSTRACT_CLASS_QUESTION_TAGS + ")";

	public static final String SQL_UPDATE = "UPDATE"
			+ ContratoViviendaDaoSql.TABLA
			+ "SET NUM_EXPEDIENTE=?, COD_TIPO_TRANS=?, IND_RENUNCIA=?, IND_REVOCACION=?, FEC_TRANSMISION=?, "
			+ "FEC_ESCRITURA=?, FEC_EMPADRON=?, IND_VISADO=?, FEC_VISADO=?, ID_CONTRATO=?, FEC_ENT_CONTRATO=?, "
			+ "TEX_OBSERVACIONES=?, IND_SOLICITA_AYUDA=?, IND_VIV_ADAPTADA=?, FEC_RENUNCIA=?, FEC_REVOCACION=? "
			+ SQLGenericas.UPDATE_DIRECCION_CLASS_SQL
			+ SQLGenericas.UPDATE_ABSTRACT_CLASS_SQL
			+ "WHERE ID_CONTRATO=? ";

	public static final String SQL_DELETE = "DELETE FROM"
			+ ContratoViviendaDaoSql.TABLA
			+ "WHERE NUM_VIVIENDA=? AND NUM_PROPIETARIO=?";

	public static final String SQL_SELECT_ACT_MASIVA = "SELECT  "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIVACTMASIVA
			+ ".NUM_VIVIENDA NUMVIVIENDA, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIVACTMASIVA
			+ ".FEC_EMPADRON FECEMPADRON, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIVACTMASIVA
			+ ".IND_VISADO INDVISADO, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIVACTMASIVA
			+ ".FEC_VISADO FECVISADO, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIVACTMASIVA
			+ ".NUM_CONTRATO NUMCONTRATO, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIVACTMASIVA
			+ ".FEC_TRANSMISION FECTRANSMISION, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIVACTMASIVA
			+ ".FEC_ESCRITURA FECESCRITURA, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIVACTMASIVA
			+ ".COMPRADORES COMPRADORES ";

	public static final String SQL_SELECT = "SELECT  "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".NUM_VIVIENDA NUMVIVIENDA, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".NUM_PROPIETARIO NUMPROPIETARIO, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".NUM_EXPEDIENTE NUMEXPEDIENTE, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".COD_TIPO_TRANS CODTIPOTRANS, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".IND_RENUNCIA INDRENUNCIA, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".IND_REVOCACION INDREVOCACION, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".FEC_TRANSMISION FECTRANSMISION, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".ID_M62ED4T0 IDM62ED4T0, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".FEC_ESCRITURA FECESCRITURA, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".FEC_EMPADRON FECEMPADRON, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".IND_VISADO INDVISADO, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".FEC_VISADO FECVISADO, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".ID_CONTRATO IDCONTRATO, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".FEC_ENT_CONTRATO FECENTCONTRATO, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".TEX_OBSERVACIONES TEXOBSERVACIONES, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".IND_SOLICITA_AYUDA INDSOLICITAAYUDA, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".IND_VIV_ADAPTADA INDVIVADAPTADA, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".FEC_RENUNCIA FECRENUNCIA, "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".FEC_REVOCACION FECREVOCACION "
			// Direccion
			+ SQLGenericas.getSqlCamposDireccionCompleta(
					ContratoViviendaDaoSql.ALIAS_CONTRATOVIV, null)
			// AbstractClass
			+ SQLGenericas
					.getSqlCamposAbstractClass(ContratoViviendaDaoSql.ALIAS_CONTRATOVIV);

	public static final String SQL_SELECT_COUNT = "SELECT COUNT(1)";

	public static final String SQL_FROM_VISTA = " FROM"
			+ ContratoViviendaDaoSql.VISTA
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV;

	public static final String SQL_FROM_VISTA_ACT_MASIVA = " FROM"
			+ ContratoViviendaDaoSql.VISTA_ACTMASIVA
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIVACTMASIVA;

	public static final String SQL_FROM_TABLA = " FROM"
			+ ContratoViviendaDaoSql.TABLA
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV;

	public static final String SQL_WHERE_ALL = " WHERE 1=1 ";
	public static final String SQL_WHERE_SOLPLATEA = " WHERE ID_M62ED4T0 IS NOT NULL ";

//	public static final String SQL_WHERE_ID = SQL_WHERE_ALL + " AND "
//			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
//			+ ".NUM_VIVIENDA = ? AND "
//			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV + ".NUM_PROPIETARIO = ?";
	
	public static final String SQL_WHERE_ID = SQL_WHERE_ALL + " AND "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".ID_CONTRATO = ?";

	public static final String SQL_WHERE_NOT_ID = " AND "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".NUM_VIVIENDA != ? AND "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".NUM_PROPIETARIO != ?";

	public static final String SQL_WHERE_PRIMERTIPOTRANS = SQL_WHERE_ALL
			+ " AND " + ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".NUM_VIVIENDA = ? AND "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".COD_TIPO_TRANS = 1 AND "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".IND_RENUNCIA ='N' AND "
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV + ".IND_REVOCACION ='N'";

	public static final String SQL_WHERE_FOR_UPDATE = SQL_WHERE_ID + " AND"
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV + ".FEH_ULT_MODIF = ?";

	public static final String SQL_FIND = SQL_SELECT + SQL_FROM_VISTA
			+ SQL_WHERE_ID;
	public static final String SQL_FIND_FOR_UPDATE = SQL_SELECT
			+ SQL_FROM_VISTA + SQL_WHERE_FOR_UPDATE;
	public static final String SQL_FIND_ALL = SQL_SELECT + SQL_FROM_VISTA;
	public static final String SQL_FIND_ALL_ACT_MASIVA = SQL_SELECT_ACT_MASIVA
			+ SQL_FROM_VISTA_ACT_MASIVA;

	public static final String SQL_FIND_ALL_COUNT = SQL_SELECT_COUNT
			+ SQL_FROM_VISTA;

	public static final String SQL_FIND_NUMPROP_MAX = "SELECT NVL(MAX("
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV
			+ ".NUM_PROPIETARIO), 0) + 1" + SQL_FROM_TABLA + " WHERE"
			+ ContratoViviendaDaoSql.ALIAS_CONTRATOVIV + ".NUM_VIVIENDA = ?";

	public static final String SQL_FIND_PRIMERTIPOTRANS = SQL_SELECT_COUNT
			+ SQL_FROM_VISTA + SQL_WHERE_PRIMERTIPOTRANS;
}
