Skip to content

[ADD] estate: initial module setup#1330

Draft
dhsri-odoo wants to merge 10 commits into
odoo:19.0from
odoo-dev:19.0-tutorials-dhsri
Draft

[ADD] estate: initial module setup#1330
dhsri-odoo wants to merge 10 commits into
odoo:19.0from
odoo-dev:19.0-tutorials-dhsri

Conversation

@dhsri-odoo

Copy link
Copy Markdown

Add the basic structure for the estate module as part of the Odoo Server Framework 101 training.

@robodoo

robodoo commented Jun 5, 2026

Copy link
Copy Markdown

Pull request status dashboard

@bit-odoo bit-odoo left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello @dhsri-odoo
Good Work!

Can you please follwe the proper commit message guidelines and also improve your pr description?

Thanks

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Comment thread estate/security/ir.model.access.csv Outdated
@@ -0,0 +1,2 @@
id,name,model_id/id,group_id/id,perm_read,perm_write,perm_create,perm_unlink
access_estate_property,estate.property,model_estate_property,base.group_user,1,1,1,1 No newline at end of file

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be one empty line at the end of the file.

Comment thread estate/views/estate_form_views.xml Outdated
</search>
</field>
</record>
</odoo> No newline at end of file

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be one empty line at the end of the file.

Comment thread estate/views/estate_menus.xml Outdated


</menuitem>
</odoo> No newline at end of file

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be one empty line at the end of the file.

Comment thread estate/views/estate_form_views.xml Outdated
</form>
</field>
</record>
<record id="estate_property_search" model="ir.ui.view">

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is good to have one empty line before it for better visibility.

@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unneccary diff.


<menuitem id="estate_property_menu" name="real estate" action="estate_property_action"
web_icon="estate,static/description/icon.png">

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unneccary diff.


<menuitem name="sales" id="estate_sales_property" action="estate_property_action" />
<menuitem name="crm" id="estate_crm_property" action="estate_property_action"/>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unneccary diff.

Comment thread estate/views/estate_property_views.xml Outdated
<record id="estate_list_property" model="ir.ui.view">
<field name="name">estate</field>
<field name="model">estate.property</field>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unneccary diff.

@dhsri-odoo

Copy link
Copy Markdown
Author

Got it. I will follow the guidelines and improve the PR description on the next push.
Thanks!

@bit-odoo bit-odoo left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello,
Can you please follwe the coding guidelines?
You haven't made any changes to my last review. Please adapt that suggestion.

Thanks

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

indentation issue.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

indentation issue.

from odoo import models, fields
from dateutil.relativedelta import relativedelta

class EstateProperty(models.Model):

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should be 2 empty lines before it.

Comment thread estate/models/estate_property.py Outdated
Comment on lines +28 to +31




Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unneccary empty lines.

Comment thread estate/models/estate_property.py Outdated
date_availability = fields.Date(
copy=False, default=fields.Date.today() + relativedelta(months=3)
)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unneccary empty line.

Comment thread estate/models/estate_property.py Outdated

expected_price = fields.Float(required=True)
selling_price = fields.Float(readonly=True, copy=False)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unneccary empty line.

Comment thread estate/models/estate_property.py Outdated
facades = fields.Integer()
garage = fields.Boolean()
garden = fields.Boolean()

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unneccary empty line.

Comment thread estate/models/estate_property.py Outdated
garden = fields.Boolean()

garden_area = fields.Integer()

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unneccary empty line.

("cancelled", "Cancelled"),
]
)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unneccary empty line.

Comment thread estate/models/estate_property.py Outdated

language= fields.selection([
('language','Language'),('hindi','Hindi')
]) No newline at end of file

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be one empty line at the end of the file.

Add the basic structure for the estate module as part of
the Odoo Server Framework 101 training.
@dhsri-odoo dhsri-odoo force-pushed the 19.0-tutorials-dhsri branch from 4ba0bea to 122a6df Compare July 2, 2026 04:44
The estate module metadata did not follow the expected manifest format.
This update corrects the author and license values and adjusts the module
definition so the module can be loaded consistently.
Add'Estate properties need a clear lifecycle to reflect their progress from
creation to sale or cancellation.

Add a required state field with a default value and prevent it from being
copied when duplicating a property.s a state field to estate properties with lifecycle stages
Configure default value, required constraint, and disable copying.
Estate properties need a dedicated interface to make their information
easier to create, review, and filter.

Add a form view to organize property details and a search view to filter
available properties and group them by postcode. Update the property action
and manifest to load the new views.
…o data EM

This commit introduces dedicated offer and tag models with the
necessary views, actions, menus, and access rights. Properties can
now be associated with multiple tags and offers
Implement computed fields and onchange support to keep derived property
values synchronized automatically and improve the user experience during
data entry.

This change introduces computed fields for total area and best offer
price, an inverse method for offer validity and onchange logic to populate
garden defaults.
Remove the custom search implementation to keep the estate module
aligned with the tutorial implementation and avoid maintaining
unnecessary search logic for computed fields.
Undo changes of estate form view
@dhsri-odoo dhsri-odoo force-pushed the 19.0-tutorials-dhsri branch from 122a6df to 0a841e7 Compare July 2, 2026 05:09
Add a kanban view for the estate properties so that users can visually
manage and track properties along their sales pipeline.

The properties are grouped by their status (New, Offer Received, Offer
Accepted, Sold, Cancelled). To ensure all status columns are displayed
even when empty, a custom `_read_group_stage_ids` expander is added to
the state selection field.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants