diff --git a/pms_base/models/pms_property.py b/pms_base/models/pms_property.py
index 79ebf297b..37da8c503 100644
--- a/pms_base/models/pms_property.py
+++ b/pms_base/models/pms_property.py
@@ -265,3 +265,24 @@ class PmsProperty(models.Model):
def create(self, vals):
vals.update({"is_property": True})
return super(PmsProperty, self).create(vals)
+
+ def name_get(self):
+ # Prefetch the fields used by the `name_get`, so `browse` doesn't fetch other fields
+ self.browse(self.ids).read(["name", "ref"])
+ return [
+ (
+ property.id,
+ "%s%s" % (property.ref and "[%s] " % property.ref or "", property.name),
+ )
+ for property in self
+ ]
+
+ @api.model
+ def _name_search(
+ self, name, args=None, operator="ilike", limit=100, name_get_uid=None
+ ):
+ args = args or []
+ domain = []
+ if name:
+ domain = ["|", ("name", operator, name), ("ref", operator, name)]
+ return self._search(domain + args, limit=limit, access_rights_uid=name_get_uid)
diff --git a/pms_base/views/pms_property.xml b/pms_base/views/pms_property.xml
index 4638baf1e..37bc244a4 100644
--- a/pms_base/views/pms_property.xml
+++ b/pms_base/views/pms_property.xml
@@ -34,6 +34,7 @@
+
@@ -187,7 +188,10 @@
pms.property
-
+
+