-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ADD] estate: Create an estate app #332
Draft
maap-odoo
wants to merge
24
commits into
odoo:18.0
Choose a base branch
from
odoo-dev:18.0-tutorials-maap
base: 18.0
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Created an estate application for Odoo - Added access rights in `ir.model.access.csv` for `estate.property` - Created XML data files for actions and menus in the estate module - Defined three-level menu structure for property management - Implemented default values and field attributes for `estate.property` - Added `active` and `state` fields with predefined behaviors
sami-odoo
reviewed
Feb 7, 2025
estate/__manifest__.py
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ordering does not look proper. Take the help of code base to check the order in which we specify the keys of manifest
• Implemented list view to display key property details in a structured manner. • Designed form view with grouped fields and a notebook for better organization. • Created search view with availability filter and postcode grouping.
…tate app • Created Property Type, Property Tag, and Property Offer models. • Added `Many2one`, `Many2many`, and `One2many` relations between models. • Updated property views to include types, tags, and offers with widgets.
…tate app • Created Property Type, Property Tag, and Property Offer models. • Added `Many2one`, `Many2many`, and `One2many` relations between models. • Updated property views to include types, tags, and offers with widgets.
• Added action buttons to trigger business logic in the estate module • Implemented 'Sold' and 'Cancel' actions for properties with state validation • Added 'Accept' and 'Refuse' actions for property offers • Ensured 'Accept' action updates buyer and selling price for property
• Added a custom form view for property offers page. • Removed the property name field from the form view of the offer. • Improved error handling for invalid transitions. • Ensured only one offer can be accepted per property. • Prevented selling a property unless an offer is accepted.
• Ensured `expected_price`, `selling_price`, and `offer_price` are positive. • Added unique constraints for `property type` and `property tag` names. • Added a constraint to prevent selling a property below 90% of expected price.
• Introduced inline list view for property types. • Added status bar widget for property state visualization. • Set default and manual ordering for multiple models. • Included sequence field for property types to enable manual ordering. • Prevented property type editing directly from the property form. • Enabled color picker for property tags. • Adjusted button visibility based on property state. • Made garden-related fields invisible when no garden exists. • Restricted offer submissions when property is in specific states. • Made list views for offers and tags editable. • Set availability date as optional and hidden by default. • Applied visual decorations for various property and offer states. • Implemented default filter to display available properties. • Enhanced search filter for living area. • Added stat button to property types to monitor associated offers. • Filtered stat button results to display only relevant offers.
Change the sequence of 'estate_property_offer_views.xml' in the manifest file
• Restricted deletion of properties to when state is “New” or “Cancelled” using @api.ondelete. • Updated property state to “Offer Received” upon new offer creation and blocked offers lower than the best existing offer. • Extended the Users form view to show the salesperson’s associated properties.
• Created estate_account module linking real estate and accounting. • Override action_sold() to trigger customer invoice creation. • Added invoice lines: 6% of price + 100.00 admin fee. • Used Command.create() for One2many invoice lines.
• Implemented a Kanban view displaying property details. • Ensured best price is shown only when an offer is received and selling price only when an offer is accepted. • Applied default grouping by property type. • Disabled drag-and-drop for structured data representation. • Added a custom house icon for the Real Estate module.
…ices • Ensured compliance with Odoo guidelines and best practices. • Refactored models to enhance data integrity and maintainability.
• Defined security groups and record rules to restrict access based on roles. • Restricted property visibility to company-specific agents. • Included demo data for properties, offers, and tags. • Ensured offer dates are dynamically set relative to installation. • Formatted code to align with Odoo coding guidelines.
…tatements • Added a chatter to the Property Form. • Refactored the import statements to match the coding guidelines.
• Changed the main template of Kanban view from kanban-box to card.
• Previously, an exception could be created before validating the user's access rights, leading to unintended behavior. • Now, the `check_access('write')` is executed first, and only if it succeeds does the system proceed with creating the invoice. • If the user lacks the necessary permissions, an `AccessError` is raised immediately, preventing any unintended record creation.
• Created a 'Properties' website to list available properties. • Added a new field image to the estate property and added demo images. • Added Website button in the Estate menu. • Implemented a grid layout for property listings with images. • Added pagination to display a maximum of 6 properties per page.
bc42f4c
to
75020d0
Compare
• Created property offers report with templates. • Added sub-templates for reuse across reports. • Implemented inheritance in estate_account module.
…tion • Previously, agents could modify the salesperson field, which was unintended. Now, only managers have write access. • The error message is wrapped in `_()`, ensuring it appears in the user's language if a translation is available.
• Added test cases for following. • Properties cannot be sold if no offer is accepted • Offers cannot be accepted on already sold properties • Garden area and orientation automatically reset when garden checkbox is unchecked • Best price is correctly calculated from multiple offers • Lower offers are rejected when higher ones exist
• Added estate.offer.wizard TransientModel for bulk offer creation • Added wizard form view with price, validity and buyer fields • Added action to create offers on multiple properties simultaneously
• Created an initial Counter component inside Playground to track state. • Extracted Counter logic into a separate component for reusability. • Created a reusable Card component with title and content props.
0f1ff8b
to
7a3c500
Compare
• Updated Card component to use `t-out` instead of `t-esc` for rendering HTML. • Introduced markup() in Playground to handle HTML content.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
ir.model.access.csv
forestate.property
estate.property
active
andstate
fields with predefined behaviors