Update demostrativos

brabo avatar
brabo
python
03/17/2026 8:00 PM
4.8 KB
16
Indexable
# InfoIrComplem
# InfoIrCr campo info_ircr_tp_cr
# PrevidCompl


from esocial.models import *
from rh.models import *
from rh.gfp.dirf.models import *
from esocial.scripts.generate_income_statement import *
from contrib.middleware import set_current_user
from decimal import Decimal


#CASO APOSENTADOS DUPLO VINCULO RRA
# MATRICULAS= [17151,17152,17153,17154.17155]
# MATRICULA_ATIVOS = [15965,15931,15921,15911,15920]

# CASOS RPC
# MATRICULAS = [10069,411,10049,10059,10038,420,10067,
#     10060,10061,10064,10030,10070,16342,10062,10058,10065,
#     10047,10050,421,10057,16599,10052,16331,10068,10055,10042,10053,10046]

#CASO RODRIGO ROPPI
MATRICULAS = [16599]

def get_s5002_valid(servidor,mes,ano):
    return S5002.objects.valids_by_status().filter(
            competence_year=ano,
            competence_month=mes,
            has_exclusion_cache=False,
            is_invalid_cache=False,
            registry_person=servidor.pessoa_fisica.cpf
        )

def teste_rpc():

    s = Servidor.objects.get(matricula=420)

    pcs = PrevidCompl.objects.filter(registry_person=s.pessoa_fisica.cpf).exclude(previd_compl_vlr_ded_pc_13=None)

    for pc in pcs:
        print(pc)


    
    info_ir_prd = s5002.info_ir_complem.first()
    info_cr_prd = info_ir_prd.info_ir_cr.first()
    prev_compl_prd = info_cr_prd.previd_compl.first()

    prev_compl_prd

def update_demonstrativos_aposentados():
    servidores_ativos = Servidor.objects.filter(matricula__in=MATRICULA_ATIVOS)
    for servidor in servidores_ativos:
        print(servidor)

def get_demonstrativos_aposentados():
    declaracao_id = 4
    s = Servidor.objects.get(matricula=17151)
    dms = Demonstrativo.objects.filter(declaracao_id=declaracao_id,pessoa_fisica=s.pessoa_fisica)
    for dm in dms:
        print(dm)
        Demonstrativo.objects.filter(id=dm.id).update()


def update_declaracoes_rpc():
    MATRICULAS = [10069,411,10049,10059,10038,420,10067,
    10060,10061,10064,10030,10070,16342,10062,10058,10065,
    10047,10050,421,10057,16599,10052,16331,10068,10055,10042,10053,10046]

    s = Servidor.objects.get(matricula=420)
    s5002 = get_s5002_valid(s,12,2025)

    tots = s5002.filter().aggregate(
            previd_compl_vlr_ded_pc_13_total=Coalesce(
                models.Sum("event_connection__info_ir_complem__info_ir_cr__previd_compl__previd_compl_vlr_ded_pc_13"),
                Decimal("0.00"),
            ),
    )
    print(s5002)

def block_rodrigo_roppi():
    MATRICULAS = [16599]
    s = Servidor.objects.get(matricula__in=MATRICULAS)
    declaracao_id= 4
    dms = Demonstrativo.objects.filter(declaracao_id=declaracao_id,pessoa_fisica=s.pessoa_fisica)

    for dm in dms:
        print('deletando : dm')
        print(dm,dm.natureza,dm.decimoterceiro)
        set_current_user('athenas')
        dm.delete()

def update_values_rodrigo_roppi():
    s = Servidor.objects.get(matricula__in=MATRICULAS)
    declaracao_id= 4
    dms = Demonstrativo.objects.filter(
        declaracao_id=declaracao_id,
        pessoa_fisica=s.pessoa_fisica,
        natureza__codigo='0561'
        )

    dm = dms.first()
    print(f'ATUALIZANDO OS DADOS DE {dm}')
    resultado = Demonstrativo.objects.filter(id=dm.id).update(decimoterceiro=Decimal("28207.36"),previdencia_privada=Decimal("11453.96"))




def update_demostrativos():
    for matricula in MATRICULAS:        
        s = Servidor.objects.filter(matricula=matricula).first()
        print(s,'------------------------------------------------------->')
        main(cpf=s.pessoa_fisica.cpf,year=2025,rectify=1,published=True,user='athenas')

update_demostrativos()
update_values_rodrigo_roppi()
Editor is loading...
Leave a Comment