from marshmallow import Schema, fields


class EndesaSipsSchema(Schema):
    name = fields.String(position=0)
    distri = fields.String(position=1)
    cod_distri = fields.String(position=2)
    direccio = fields.String(position=3)
    poblacio = fields.String(position=4)
    codi_postal = fields.String(position=5)
    provincia = fields.String(position=6)
    data_alta = fields.String(position=7)
    tarifa = fields.String(position=8)
    des_tarifa = fields.String(position=9)
    tensio = fields.String(position=10)
    pot_max_bie = fields.String(position=11)
    pot_max_puesta = fields.String(position=12)
    tipo_pm = fields.String(position=13)
    indicatiu_icp = fields.String(position=14)
    perfil_consum = fields.String(position=15)
    der_extensio = fields.String(position=16)
    der_acces_llano = fields.String(position=17)
    der_acces_valle = fields.String(position=18)
    propietat_equip_mesura = fields.String(position=19)
    propietat_icp = fields.String(position=20)
    pot_cont_p1 = fields.String(position=21)
    pot_cont_p2 = fields.String(position=22)
    pot_cont_p3 = fields.String(position=23)
    pot_cont_p4 = fields.String(position=24)
    pot_cont_p5 = fields.String(position=25)
    pot_cont_p6 = fields.String(position=26)
    data_ulti_mov = fields.String(position=27)
    data_ult_canv = fields.String(position=28)
    data_lim_exten = fields.String(position=29)
    data_ult_lect = fields.String(position=30)
    talls = fields.String(position=31)
    fianza = fields.String(position=32)
    persona_fj = fields.String(position=33)
    nom = fields.String(position=34)
    cognom = fields.String(position=35)
    direccio_titular = fields.String(position=36)
    municipi_titular = fields.String(position=37)
    codi_postal_titular = fields.String(position=38)
    provincia_titular = fields.String(position=39)
    primera_vivenda = fields.String(position=40)
    facturacio = fields.String(position=41)
    salt = fields.String(position=42)


class EndesaMeasuresSchema(Schema):
    name = fields.String(position=0)
    data_final = fields.String(position=1)
    real_estimada = fields.String(position=2)
    tipo_a1 = fields.String(position=3)
    activa_1 = fields.Integer(position=4)
    tipo_a2 = fields.String(position=5)
    activa_2 = fields.Integer(position=6)
    tipo_a3 = fields.String(position=7)
    activa_3 = fields.Integer(position=8)
    tipo_a4 = fields.String(position=9)
    activa_4 = fields.Integer(position=10)
    tipo_a5 = fields.String(position=11)
    activa_5 = fields.Integer(position=12)
    tipo_a6 = fields.String(position=13)
    activa_6 = fields.Integer(position=14)
    tipo_r1 = fields.String(position=15)
    reactiva_1 = fields.Integer(position=16)
    tipo_r2 = fields.String(position=17)
    reactiva_2 = fields.Integer(position=18)
    tipo_r3 = fields.String(position=19)
    reactiva_3 = fields.Integer(position=20)
    tipo_r4 = fields.String(position=21)
    reactiva_4 = fields.Integer(position=22)
    tipo_r5 = fields.String(position=23)
    reactiva_5 = fields.Integer(position=24)
    tipo_r6 = fields.String(position=25)
    reactiva_6 = fields.Integer(position=26)
    tipo_p1 = fields.String(position=27)
    potencia_1 = fields.Integer(position=28)
    tipo_p2 = fields.String(position=29)
    potencia_2 = fields.Integer(position=30)
    tipo_p3 = fields.String(position=31)
    potencia_3 = fields.Integer(position=32)
    tipo_p4 = fields.String(position=33)
    potencia_4 = fields.Integer(position=34)
    tipo_p5 = fields.String(position=35)
    potencia_5 = fields.Integer(position=36)
    tipo_p6 = fields.String(position=37)
    potencia_6 = fields.Integer(position=38)