diff --git a/models/acc_operation.py b/models/acc_operation.py index abe04d0a176c70bbcd83d189b31f0689d268641c..b10c25b0321eadcc3cb65c41738ffd3612b06e38 100644 --- a/models/acc_operation.py +++ b/models/acc_operation.py @@ -361,20 +361,18 @@ class AccOperation(models.Model): res = [ datetime.strptime(d, "%d-%m-%y") for d in list( - OrderedDict.fromkeys( - [h.strftime("%d-%m-%y") for h in date_list] - ) + OrderedDict.fromkeys([h.strftime("%d-%m-%y") for h in date_list]) ) ] - for date in res: - counter_period[date] = ( + for date_item in res: + counter_period[date_item] = ( self.env["acc.counter.period"] ._get_periods_from_date( [ ("acc_operation_id", "=", self.id), ("prm_type", "=", "delivery"), ], - date, + date_item, ) .mapped("acc_counter_id.name") ) diff --git a/models/acc_priority_group.py b/models/acc_priority_group.py index 6b1b99669fcf985c5713b2491b34bb1b578c0ffb..2da6651f2199a6ca8decb688c252d0ce9a6698b2 100644 --- a/models/acc_priority_group.py +++ b/models/acc_priority_group.py @@ -49,7 +49,6 @@ class AccPriorityGroup(models.Model): for prio_group in self: prio_group.display_name = f"Priorité {str(prio_group.sequence)}" - def _compute_counter_datas(self): for priority in self: priority.counter_datas = ( @@ -77,7 +76,6 @@ class AccPriorityGroup(models.Model): return res - @api.model def unlink(self, _id): self = self.env["acc.priority.group"].browse(_id) diff --git a/models/acc_priority_group_counter.py b/models/acc_priority_group_counter.py index c278219f7eef758bb1480bdc801c562b6dc54a70..3df09d7b25ade1130c4b721f7a80db25196765cc 100644 --- a/models/acc_priority_group_counter.py +++ b/models/acc_priority_group_counter.py @@ -98,4 +98,13 @@ class AccPriorityGroupCounter(models.Model): # ------------------------------------------------------ def _group_expand_acc_priority_group_id(self, groups, domain, order): - return self.env["acc.priority.group"].search(domain=domain, order=order) + operation_id = self.env.context.get("default_acc_operation_id") + if not operation_id: + group_ids = self.env["acc.priority.group"].search( + domain=[], order="sequence, id" + ) + else: + group_ids = self.env["acc.priority.group"].search( + domain=[("acc_operation_id", "=", operation_id)], order="sequence, id" + ) + return group_ids diff --git a/models/acc_repartition_counter.py b/models/acc_repartition_counter.py index 7a7e9db82a63c1670b9211bb3b713c585560944f..a6d0700c223a021a752516044d5449f11990e57a 100644 --- a/models/acc_repartition_counter.py +++ b/models/acc_repartition_counter.py @@ -9,9 +9,7 @@ class AccRepartitionCounter(models.Model): acc_repartition_id = fields.Many2one("acc.repartition.keys", "Clé", required=True) weight = fields.Float(string="Répartition en pourcentage", required=False) time_slot = fields.Datetime("Horodatage de la clé", required=True) - acc_counter_id = fields.Many2one( - "acc.counter", string="Compteur", required=True - ) + acc_counter_id = fields.Many2one("acc.counter", string="Compteur", required=True) acc_operation_id = fields.Many2one( comodel_name="acc.operation", compute="_compute_operation_id", store=True ) @@ -27,6 +25,7 @@ class AccRepartitionCounter(models.Model): """ ) + # ------------------------------------------------------ # SQL Constraints # ------------------------------------------------------ diff --git a/security/security.xml b/security/security.xml index 57a539b5b3ed4d03485f0f35a15b47519d060fb6..8a917fa6f13741035b12c3ad704d5950e8ae2b03 100644 --- a/security/security.xml +++ b/security/security.xml @@ -7,8 +7,8 @@ <field name="name">Groupes de priorité</field> <field ref="model_acc_priority_group" name="model_id" /> <field - name="domain_force" - >[('acc_operation_id', 'in', list(user.commercial_partner_id.acc_operation_admin_ids.ids))]</field> + name="domain_force" + >[('acc_operation_id', 'in', list(user.commercial_partner_id.acc_operation_admin_ids.ids))]</field> <field name="groups" eval="[(4, ref('oacc.group_operation_admin'))]" /> </record> @@ -23,8 +23,8 @@ <field name="name">Compteur pour repartition</field> <field ref="model_acc_priority_group_counter" name="model_id" /> <field - name="domain_force" - >[('acc_operation_id', 'in', list(user.commercial_partner_id.acc_operation_admin_ids.ids))]</field> + name="domain_force" + >[('acc_operation_id', 'in', list(user.commercial_partner_id.acc_operation_admin_ids.ids))]</field> <field name="groups" eval="[(4, ref('oacc.group_operation_admin'))]" /> </record> @@ -39,8 +39,8 @@ <field name="name">Clés de repartition par compteur</field> <field ref="model_acc_repartition_counter" name="model_id" /> <field - name="domain_force" - >[('acc_operation_id', 'in', list(user.commercial_partner_id.acc_operation_admin_ids.ids))]</field> + name="domain_force" + >[('acc_operation_id', 'in', list(user.commercial_partner_id.acc_operation_admin_ids.ids))]</field> <field name="groups" eval="[(4, ref('oacc.group_operation_admin'))]" /> </record> @@ -55,8 +55,8 @@ <field name="name">Ensemble des clés par operation</field> <field ref="model_acc_repartition_keys" name="model_id" /> <field - name="domain_force" - >[('operation_id', 'in', list(user.commercial_partner_id.acc_operation_admin_ids.ids))]</field> + name="domain_force" + >[('operation_id', 'in', list(user.commercial_partner_id.acc_operation_admin_ids.ids))]</field> <field name="groups" eval="[(4, ref('oacc.group_operation_admin'))]" /> </record> @@ -71,8 +71,8 @@ <field name="name">Fichier de clés de repartition</field> <field ref="model_acc_repartition_keys_file" name="model_id" /> <field - name="domain_force" - >[('operation_id', 'in', list(user.commercial_partner_id.acc_operation_admin_ids.ids))]</field> + name="domain_force" + >[('operation_id', 'in', list(user.commercial_partner_id.acc_operation_admin_ids.ids))]</field> <field name="groups" eval="[(4, ref('oacc.group_operation_admin'))]" /> </record> diff --git a/static/src/js/kanban_button.js b/static/src/js/kanban_button.js index cd3cf805d90dff1fc2c4621bdaa33f7de71e66f4..298414fa2cc17025a9513e25885382c5800becb7 100644 --- a/static/src/js/kanban_button.js +++ b/static/src/js/kanban_button.js @@ -9,23 +9,25 @@ export class PriorityGroupKanbanController extends KanbanController { async CreatePriorityGroupClick() { self = this; - this.actionService.doAction({ - type: "ir.actions.act_window", - res_model: "acc.priority.group", - name: "Creer un groupe de priorité", - view_mode: "form", - view_type: "form", - views: [[false, "form"]], - target: "new", - res_id: false, - context: this.props.context || {}, - }, - { - onClose: async () => { - await self.model.root.load(); - self.render(true); - } - }); + this.actionService.doAction( + { + type: "ir.actions.act_window", + res_model: "acc.priority.group", + name: "Creer un groupe de priorité", + view_mode: "form", + view_type: "form", + views: [[false, "form"]], + target: "new", + res_id: false, + context: this.props.context || {}, + }, + { + onClose: async () => { + await self.model.root.load(); + self.render(true); + }, + } + ); } }