Skip to content
Extraits de code Groupes Projets
Valider d6f85d44 rédigé par Benjamin - Le Filament's avatar Benjamin - Le Filament
Parcourir les fichiers

[ADD] DDETS check

parent 5cd1ffb0
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -48,6 +48,11 @@ class ScopListeMinistere(models.Model):
# CHAMPS LISTE MINISTERE
# -----
active = fields.Boolean(default=True, tracking=True)
is_wrong_ddets = fields.Boolean(
string="Incohérence DDETS",
compute="_compute_is_wrong_ddets",
search="_search_is_wrong_ddets"
)
partner_id = fields.Many2one(
"res.partner",
string="Coopérative",
......@@ -673,6 +678,28 @@ class ScopListeMinistere(models.Model):
# ------------------------------------------------------
# Computed fields
# ------------------------------------------------------
def _compute_is_wrong_ddets(self):
for lm in self:
lm.is_wrong_ddets = False
if lm.partner_id and lm.direccte_id and lm.status not in ["6_transmis", "7_cloture"]:
if lm.partner_id.zip_departement != lm.direccte_id.zip_departement:
lm.is_wrong_ddets = True
def _search_is_wrong_ddets(self, operator, value):
if operator not in ('=', '!='):
raise UserError(_('Opérateur invalide %s', operator))
lm_ids = self.search([("status", "not in", ["6_transmis", "7_cloture"])])
wrong_lm_ids = lm_ids.filtered(
lambda lm: lm.partner_id and lm.direccte_id and lm.partner_id.zip_departement != lm.direccte_id.zip_departement
)
if (operator == '=' and value is True) or (operator in ('<>', '!=') and value is False):
values = wrong_lm_ids
else:
values = lm_ids - wrong_lm_ids
return [('id', 'in', values.ids)]
@api.depends(
"scop_liasse_fiscale_id",
"scop_liasse_fiscale_id.L2050_DCLO",
......
......@@ -70,6 +70,12 @@
domain="[('is_dead', '=', False)]"
/>
<separator />
<filter
name="is_wrong_ddets_filter"
string="Incohérence affectation DDETS"
domain="[('is_wrong_ddets', '=', True)]"
/>
<separator />
<filter
name="is_jo_published"
string="Publié au J.O."
......@@ -532,6 +538,15 @@
name="direccte_id"
options="{'no_create': 1, 'no_edit': 1}"
/>
<field name="is_wrong_ddets" invisible="1" />
<div
class="alert alert-danger"
role="alert"
colspan="2"
attrs="{'invisible': [('is_wrong_ddets', '!=', True)]}"
>
La DDETS ne semble pas être affectée correctement !
</div>
</group>
<group string="Pointage des documents">
<field name="pointage_lettre_agrement" />
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter