Skip to content

Commit 2e499ad

Browse files
committed
[IMP] estate: Kanban view
1 parent 30a5051 commit 2e499ad

File tree

2 files changed

+45
-3
lines changed

2 files changed

+45
-3
lines changed

estate/models/estate_property.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,8 @@ def _compute_total_area(self):
7979
@api.depends('offer_ids')
8080
def _compute_best_price(self):
8181
for record in self:
82-
record.best_price = max(record.offer_ids.mapped('price')) if self.offer_ids else 0
82+
offers = record.offer_ids or []
83+
record.best_price = max(offers.mapped('price')) if len(offers) else 0
8384

8485
@api.onchange('garden')
8586
def _onchange_garden(self):

estate/views/estate_property_views.xml

Lines changed: 43 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<odoo>
2-
<record id="estate_property_view_tree" model="ir.ui.view">
2+
<record id="estate_property_list_view" model="ir.ui.view">
33
<field name="name">estate.property.list</field>
44
<field name="model">estate.property</field>
55
<field name="arch" type="xml">
@@ -141,10 +141,51 @@
141141
</field>
142142
</record>
143143

144+
<record id="estate_property_kanban_view" model="ir.ui.view">
145+
<field name="name">estate.property.kanban.view</field>
146+
<field name="model">estate.property</field>
147+
<field name="arch" type="xml">
148+
<kanban
149+
default_group_by="property_type_id"
150+
records_draggable="False"
151+
>
152+
<templates>
153+
<t t-name="card">
154+
<div>
155+
<strong>
156+
<field name="name"/>
157+
<field name="state" invisible="true"/>
158+
</strong>
159+
</div>
160+
<div>
161+
<span>Expected Price: </span>
162+
<field name="expected_price"/>
163+
</div>
164+
<div t-if="record.state.raw_value == 'offer_received'">
165+
<span>Best Price: </span>
166+
<field name="best_price"/>
167+
</div>
168+
<div t-if="record.state.raw_value == 'offer_accepted'">
169+
<span>Selling Price: </span>
170+
<field name="selling_price"/>
171+
</div>
172+
<div>
173+
<field
174+
name="tag_ids"
175+
widget="many2many_tags"
176+
options="{'color_field': 'color'}"
177+
/>
178+
</div>
179+
</t>
180+
</templates>
181+
</kanban>
182+
</field>
183+
</record>
184+
144185
<record id="estate_property_action" model="ir.actions.act_window">
145186
<field name="name">Properties</field>
146187
<field name="res_model">estate.property</field>
147-
<field name="view_mode">list,form</field>
188+
<field name="view_mode">list,form,kanban</field>
148189
<field name="context">{'search_default_available': True}</field>
149190
</record>
150191
</odoo>

0 commit comments

Comments
 (0)