From a5b907e32926aaa77ae1dce31d5fd8808c985cba Mon Sep 17 00:00:00 2001 From: "Ronaldo S.A. Batista" Date: Wed, 7 Aug 2024 20:04:48 +0900 Subject: [PATCH] feat: Add 'entidade_da_inspecao' field to various field groups MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This change adds the 'entidade_da_inspecao' field to several field groups in the FIELDS dictionary: - Medição de CEMRF (RNI) - Outorga - Aspectos não Técnicos - Outorga - Aspectos Técnicos - Uso do Espectro - Interferência - Uso do Espectro - Monitoração Additionally, it updates the 'irregularidade' field options to include 'Entidade não outorgada' for the 'Uso do Espectro - Não Outorgado' inspection type. These changes ensure that the 'entidade_da_inspecao' field is available in the relevant field groups and that the 'irregularidade' field options are properly configured based on the inspection type. --- fiscaliza/attrs.py | 5 +++++ fiscaliza/datatypes.py | 2 +- fiscaliza/main.py | 8 ++++++-- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/fiscaliza/attrs.py b/fiscaliza/attrs.py index 3c78a46..ee7ba03 100644 --- a/fiscaliza/attrs.py +++ b/fiscaliza/attrs.py @@ -353,6 +353,7 @@ "Medição de CEMRF (RNI)": [ "campo_eletrico__pico_vm", "campo_eletrico_rms_vm", + "entidade_da_inspecao", "entidade_outorgada", "frequencia_final", "frequencia_inicial", @@ -368,6 +369,7 @@ "utilizou_tecnicas_amostrais", ], "Outorga - Aspectos não Técnicos": [ + "entidade_da_inspecao", "irregularidade", "observacao_tecnica_amostral", "pai_instaurado_pela_anatel", @@ -378,6 +380,7 @@ "Outorga - Aspectos Técnicos": [ "altura_do_sistema_irradiante", "documento_instaurador_do_pado", + "entidade_da_inspecao", "entidade_outorgada", "esta_em_operacao", "frequencias", @@ -398,6 +401,7 @@ "utilizou_tecnicas_amostrais", ], "Uso do Espectro - Interferência": [ + "entidade_da_inspecao", "foi_constatada_interferencia", "observacao_tecnica_amostral", "observacoes", @@ -405,6 +409,7 @@ ], "Uso do Espectro - Monitoração": [ "acao_de_risco_a_vida_criada", + "entidade_da_inspecao", "frequencia_final", "frequencia_inicial", "latitude_coordenadas", diff --git a/fiscaliza/datatypes.py b/fiscaliza/datatypes.py index 3507143..d3e138e 100644 --- a/fiscaliza/datatypes.py +++ b/fiscaliza/datatypes.py @@ -161,7 +161,7 @@ def __call__(self, value: str | list) -> dict[str, str | list]: value = [self.options[v] for v in value] else: value = str(value) - if self.options is not None and value not in self.options: + if self.options and value not in self.options: raise ValueError( f"The value {value} must be one of the valid options: {self.options} for field {self.name}" ) diff --git a/fiscaliza/main.py b/fiscaliza/main.py index 068af90..710e23b 100644 --- a/fiscaliza/main.py +++ b/fiscaliza/main.py @@ -309,7 +309,9 @@ def _append_irregularity_options( """ Appends the options of the 'irregularidade' field to the editable_fields dictionary. """ - if editable_fields.get("irregularidade"): + if ( + "irregularidade" in editable_fields + ): # checking only the existence of the key, because it can be an empty list match tipo_de_inspecao: case "Certificação": options = [ @@ -329,6 +331,8 @@ def _append_irregularity_options( "Outras irregularidades técnicas (especificar)", "Potência diversa da autorizada", ] + case "Uso do Espectro - Não Outorgado": + options = ["Entidade não outorgada"] case __: options = [] @@ -648,7 +652,7 @@ def update(self, dados: dict) -> str: else: data = self._parse_value_dict(dados) self.client.issue.update(self.id, status_id=status_id, **data) - message = f'A Inspeção nº {self.id} foi atualizada. O seu estado atual é "{new_status}".' + message = f'A Inspeção nº {self.id} foi atualizada. O seu estado atual é "{new_status}".' self.refresh() return message