# -*- coding: utf-8 -*-
from baseapi import BaseApi


class Client(BaseApi):
    dataservername = 'FinCFODataBR'
    def create(self,**kwargs):
        codcoligada_contexto = kwargs.get('codcoligada_contexto')
        if not codcoligada_contexto:
            codcoligada_contexto =  kwargs.get('codcoligada')

        return super(Client, self).create({
            'NewDataSet': {
                'FCFO': {
                    'CODEXTERNO': kwargs.get('codexterno'),
                    'CODCOLIGADA': kwargs.get('codcoligada'),
                    'CODCFO': -1,
                    'CATEGORIA': kwargs.get('categoria'),
                    'CGCCFO': kwargs.get('cpf'),
                    'TIPORUA': kwargs.get('tipo_rua'),
                    'TIPOBAIRRO': kwargs.get('tipo_bairro'),
                    'BAIRRO': kwargs.get('bairro'),
                    'RUA': kwargs.get('rua'),
                    'NUMERO': kwargs.get('numero'),
                    'ESTADO': kwargs.get('estado'),
                    'CODMUNICIPIO': kwargs.get('codigo_municipio'),
                    'PAIS': 1,
                    'DTNASCIMENTO': '{:%Y-%m-%d}T03:00:00.000'.format(kwargs.get('data_nascimento')),
                    'NOME': kwargs.get('nome'),
                    'NOMEFANTASIA': kwargs.get('nome'),
                    'PAGREC': kwargs.get('classificacao'),
                    'ATIVO': True,
                    'PESSOAFISOUJUR': 'f',
                    'IDCFO': -1
                }
            }
        }, 'CODCOLIGADA={}'.format(codcoligada_contexto))

@@ -137,16 +137,83 @@
 wargs):%0A
+        # codigo de coligada para o contexto, diferente do dataset%0A
         
@@ -493,17 +493,12 @@
    '
-CODEXTERN
+ATIV
 O': 
@@ -513,17 +513,12 @@
 et('
-codextern
+ativ
 o'),
@@ -542,49 +542,61 @@
     
-'CODCOLIGADA': kwargs.get('codcoligada'),
+# enviar -1 para que sej%C3%A1 criado de forma incremental
 %0A   
@@ -651,40 +651,137 @@
    '
-CATEGORIA': kwargs.get('categori
+IDCFO': -1,%0A                    'CODEXTERNO': kwargs.get('codexterno'),%0A                    'CODCOLIGADA': kwargs.get('codcoligad
 a'),
@@ -826,16 +826,21 @@
 get('cpf
+_cnpj
 '),%0A    
@@ -1249,17 +1249,38 @@
 'PAIS': 
-1
+kwargs.get('cod_pais')
 ,%0A      
@@ -1563,96 +1563,49 @@
    '
-ATIVO': True,%0A                    'PESSOAFISOUJUR': 'f',%0A                    'IDCFO': -1
+PESSOAFISOUJUR': kwargs.get('categoria'),
 %0A   

improve field names