Created
November 30, 2016 21:43
-
-
Save leandrob13/c212f808e040732c23f01fbd8e8c343c to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
protected val driver = com.typesafe.slick.driver.oracle.OracleDriver | |
import TperTiposPersonasRegistro._ | |
import driver.api._ | |
class TperTiposPersonas( _tableTag: Tag ) extends Table[TperTiposPersonasRegistro]( _tableTag, None, "TPER_TIPOS_PERSONAS" ) { | |
val cdtipoPersona: Rep[String] = column[String]( "CDTIPO_PERSONA", O.PrimaryKey, O.Length( 2, varying = true ) ) | |
val dstipoPersona: Rep[Option[String]] = column[Option[String]]( "DSTIPO_PERSONA", O.Length( 30, varying = true ) ) | |
val febaja: Rep[Option[Timestamp]] = column[Option[Timestamp]]( "FEBAJA" ) | |
val snnumerico: Rep[Option[Char]] = column[Option[Char]]( "SNNUMERICO" ) | |
val snnatural: Rep[Option[Char]] = column[Option[Char]]( "SNNATURAL" ) | |
val snvalidarDni: Rep[Option[Char]] = column[Option[Char]]( "SNVALIDAR_DNI" ) | |
val snvalidarNombre: Rep[Option[Char]] = column[Option[Char]]( "SNVALIDAR_NOMBRE" ) | |
val sncopiar: Rep[Option[Char]] = column[Option[Char]]( "SNCOPIAR" ) | |
val sntipoInterno: Rep[Option[Char]] = column[Option[Char]]( "SNTIPO_INTERNO" ) | |
val fealta: Rep[Timestamp] = column[Timestamp]( "FEALTA" ) | |
val dsobservaciones: Rep[Option[String]] = column[Option[String]]( "DSOBSERVACIONES", O.Length( 100, varying = true ) ) | |
val cdgrupoIden: Rep[Option[Char]] = column[Option[Char]]( "CDGRUPO_IDEN" ) | |
val cdtipoEquivTercerProve: Rep[Option[Char]] = column[Option[Char]]( "CDTIPO_EQUIV_TERCER_PROVE" ) | |
val nmminimoCaracteres: Rep[Option[String]] = column[Option[String]]( "NMMINIMO_CARACTERES", O.Length( 2, varying = true ) ) | |
val nmmaximoCaracteres: Rep[Option[String]] = column[Option[String]]( "NMMAXIMO_CARACTERES", O.Length( 2, varying = true ) ) | |
val nmedadMinimaPermitida: Rep[Option[String]] = column[Option[String]]( "NMEDAD_MINIMA_PERMITIDA", O.Length( 3, varying = true ) ) | |
val nmedadMaximaPermitida: Rep[Option[String]] = column[Option[String]]( "NMEDAD_MAXIMA_PERMITIDA", O.Length( 3, varying = true ) ) | |
val cdtipoPersonaDian: Rep[Option[String]] = column[Option[String]]( "CDTIPO_PERSONA_DIAN", O.Length( 5, varying = true ) ) | |
val cdpaisOrigenTipoPersona: Rep[Option[BigDecimal]] = column[Option[BigDecimal]]( "CDPAIS_ORIGEN_TIPO_PERSONA" ) | |
val nmlongitudCdtipoPersona: Rep[Option[String]] = column[Option[String]]( "NMLONGITUD_CDTIPO_PERSONA", O.Length( 2, varying = true ) ) | |
val cdtipoEquivAgricola: Rep[Option[String]] = column[Option[String]]( "CDTIPO_EQUIV_AGRICOLA", O.Length( 2, varying = true ) ) | |
val cdtipoEquivSusalud: Rep[Option[String]] = column[Option[String]]( "CDTIPO_EQUIV_SUSALUD", O.Length( 5, varying = true ) ) | |
val cdtipoEquivArpsura: Rep[Option[String]] = column[Option[String]]( "CDTIPO_EQUIV_ARPSURA", O.Length( 2, varying = true ) ) | |
def * = cdtipoPersona :: dstipoPersona :: febaja :: snnumerico :: snnatural :: snvalidarDni :: snvalidarNombre :: | |
sncopiar :: sntipoInterno :: fealta :: dsobservaciones :: cdgrupoIden :: cdtipoEquivTercerProve :: | |
nmminimoCaracteres :: nmmaximoCaracteres :: nmedadMinimaPermitida :: nmedadMaximaPermitida :: cdtipoPersonaDian :: | |
cdpaisOrigenTipoPersona :: nmlongitudCdtipoPersona :: cdtipoEquivAgricola :: cdtipoEquivSusalud :: | |
cdtipoEquivArpsura :: HNil | |
/** Index over (snnatural) (database name TPER_TIPOS_PERSONAS_I02) */ | |
val index1 = index( "TPER_TIPOS_PERSONAS_I02", snnatural :: HNil ) | |
} | |
object TperTiposPersonasRegistro { | |
/** Row type of table TperTiposPersonas */ | |
type TperTiposPersonasRegistro = HCons[String, HCons[Option[String], HCons[Option[Timestamp], HCons[Option[Char], HCons[Option[Char], HCons[Option[Char], HCons[Option[Char], HCons[Option[Char], HCons[Option[Char], HCons[Timestamp, HCons[Option[String], HCons[Option[Char], HCons[Option[Char], HCons[Option[String], HCons[Option[String], HCons[Option[String], HCons[Option[String], HCons[Option[String], HCons[Option[BigDecimal], HCons[Option[String], HCons[Option[String], HCons[Option[String], HCons[Option[String], HNil]]]]]]]]]]]]]]]]]]]]]]] | |
def apply( cdtipoPersona: String, dstipoPersona: Option[String], febaja: Option[Timestamp], | |
snnumerico: Option[Char], snnatural: Option[Char], snvalidarDni: Option[Char], | |
snvalidarNombre: Option[Char], sncopiar: Option[Char], sntipoInterno: Option[Char], | |
fealta: Timestamp, dsobservaciones: Option[String], cdgrupoIden: Option[Char], | |
cdtipoEquivTercerProve: Option[Char], nmminimoCaracteres: Option[String], | |
nmmaximoCaracteres: Option[String], nmedadMinimaPermitida: Option[String], | |
nmedadMaximaPermitida: Option[String], cdtipoPersonaDian: Option[String], | |
cdpaisOrigenTipoPersona: Option[BigDecimal], nmlongitudCdtipoPersona: Option[String], | |
cdtipoEquivAgricola: Option[String], cdtipoEquivSusalud: Option[String], | |
cdtipoEquivArpsura: Option[String] ): TperTiposPersonasRegistro = { | |
cdtipoPersona :: dstipoPersona :: febaja :: snnumerico :: snnatural :: snvalidarDni :: snvalidarNombre :: | |
sncopiar :: sntipoInterno :: fealta :: dsobservaciones :: cdgrupoIden :: cdtipoEquivTercerProve :: | |
nmminimoCaracteres :: nmmaximoCaracteres :: nmedadMinimaPermitida :: nmedadMaximaPermitida :: cdtipoPersonaDian :: | |
cdpaisOrigenTipoPersona :: nmlongitudCdtipoPersona :: cdtipoEquivAgricola :: cdtipoEquivSusalud :: | |
cdtipoEquivArpsura :: HNil | |
} | |
} | |
object Transformador { | |
implicit def tipoPersona( t: TperTiposPersonasRegistro ): TipoDocumento = { | |
val id: String = t( 0 ) | |
val descripcion: Option[String] = t( 1 ) | |
val esPersonaNatural: Option[Char] = t( 4 ) | |
val codigoPaisOrigen: Option[BigDecimal] = t( 18 ) | |
val tipoPersona: Option[TipoPersona] = esPersonaNatural.map( c => if ( c == 'S' ) Natural else Juridica ) | |
val codigoGrupo: Option[Char] = t( 11 ) | |
TipoDocumento( id, descripcion, tipoPersona, codigoPaisOrigen, codigoGrupo ) | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment