Initial commit: Odoo 18.0-20251222 extra-addons
Some checks failed
pre-commit / pre-commit (push) Has been cancelled
tests / Detect unreleased dependencies (push) Has been cancelled
tests / test with OCB (push) Has been cancelled
tests / test with Odoo (push) Has been cancelled

This commit is contained in:
tocmo0nlord
2026-03-13 20:43:25 +00:00
parent 36e847a7df
commit adbe430761
9472 changed files with 1265727 additions and 0 deletions

View File

@@ -0,0 +1,2 @@
from . import maintenance_request
from . import maintenance_team

View File

@@ -0,0 +1,24 @@
# Copyright 2019 Creu Blanca
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
from odoo import api, fields, models
class MaintenanceRequest(models.Model):
_inherit = "maintenance.request"
_rec_names_search = ["code"]
code = fields.Char(readonly=True, copy=False, default="/")
@api.model_create_multi
def create(self, vals_list):
for vals in vals_list:
if vals.get("code", "/") == "/":
team_id = vals.get("maintenance_team_id")
sequence = self.env["maintenance.team"].browse(
team_id
).sequence_id or self.env.ref(
"maintenance_request_sequence.seq_maintenance_request_auto"
)
vals["code"] = sequence.next_by_id()
return super().create(vals_list)

View File

@@ -0,0 +1,57 @@
# Copyright 2019 Creu Blanca
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
from odoo import api, fields, models
class MaintenanceTeam(models.Model):
_inherit = "maintenance.team"
code_prefix = fields.Char(
string="Prefix for Team Reference",
help="Prefix used to generate the internal reference for re "
"created with this category. If blank the "
"default sequence will be used.",
)
sequence_id = fields.Many2one(
comodel_name="ir.sequence",
string="Team Sequence",
copy=False,
readonly=True,
)
@api.model
def _prepare_ir_sequence(self, prefix):
"""Prepare the vals for creating the sequence
:param prefix: a string with the prefix of the sequence.
:return: a dict with the values.
"""
vals = {
"name": "Maintenance Request " + prefix,
"code": "maintenance.request - " + prefix,
"padding": 5,
"prefix": prefix,
"company_id": False,
}
return vals
def write(self, vals):
prefix = vals.get("code_prefix")
if prefix:
for rec in self:
if rec.sequence_id:
rec.sudo().sequence_id.prefix = prefix
else:
seq_vals = self._prepare_ir_sequence(prefix)
rec.sequence_id = self.env["ir.sequence"].create(seq_vals)
return super().write(vals)
@api.model_create_multi
def create(self, vals_list):
for vals in vals_list:
prefix = vals.get("code_prefix")
if prefix:
seq_vals = self._prepare_ir_sequence(prefix)
sequence = self.env["ir.sequence"].create(seq_vals)
vals["sequence_id"] = sequence.id
return super().create(vals_list)