From 578312170618aefb1dd8e7afe423da9de29997af Mon Sep 17 00:00:00 2001 From: Nicolas Martinelli Date: Mon, 10 Sep 2018 13:56:35 +0200 Subject: [PATCH 001/128] Add link to Technical Training for Odoo 16.0 --- .gitignore | 0 README.md | 5 ++++- estate/__init__.py | 1 + estate/__manifest__.py | 11 +++++++++++ estate/models.py | 0 5 files changed, 16 insertions(+), 1 deletion(-) mode change 100644 => 100755 .gitignore create mode 100644 estate/__init__.py create mode 100644 estate/__manifest__.py create mode 100644 estate/models.py diff --git a/.gitignore b/.gitignore old mode 100644 new mode 100755 diff --git a/README.md b/README.md index 2e6514bff10..29e1a840775 100644 --- a/README.md +++ b/README.md @@ -1 +1,4 @@ -# Odoo 12.0 - Technical Training +# Odoo 16.0 - Technical Training + +The Technical Training of Odoo 16.0 is available on the +[Tutorial](https://www.odoo.com/documentation/master/developer/howtos/rdtraining.html) diff --git a/estate/__init__.py b/estate/__init__.py new file mode 100644 index 00000000000..0650744f6bc --- /dev/null +++ b/estate/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/estate/__manifest__.py b/estate/__manifest__.py new file mode 100644 index 00000000000..1f345fe6a75 --- /dev/null +++ b/estate/__manifest__.py @@ -0,0 +1,11 @@ +{ + "name": "Estate", # The name that will appear in the App list + "version": "16.0", # Version + "application": True, # This line says the module is an App, and not a module + "depends": ["base"], # dependencies + "data": [ + + ], + "installable": True, + 'license': 'LGPL-3', +} diff --git a/estate/models.py b/estate/models.py new file mode 100644 index 00000000000..e69de29bb2d From 6a14b598b52b19273e406f54e230fda8b555e79a Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 10:26:23 +0100 Subject: [PATCH 002/128] new model --- estate/models.py | 0 estate/models/__init__.py | 1 + estate/models/estate_property.py | 23 +++++++++++++++++++++++ 3 files changed, 24 insertions(+) delete mode 100644 estate/models.py create mode 100644 estate/models/__init__.py create mode 100644 estate/models/estate_property.py diff --git a/estate/models.py b/estate/models.py deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/estate/models/__init__.py b/estate/models/__init__.py new file mode 100644 index 00000000000..f4c8fd6db6d --- /dev/null +++ b/estate/models/__init__.py @@ -0,0 +1 @@ +from . import estate_property \ No newline at end of file diff --git a/estate/models/estate_property.py b/estate/models/estate_property.py new file mode 100644 index 00000000000..4c76c43f201 --- /dev/null +++ b/estate/models/estate_property.py @@ -0,0 +1,23 @@ +from odoo import fields, models + + +class EstateProperty(models.Model): + _name = "estate.property" + _description = "Estate Property" + + name = fields.Char() + description = fields.Text() + postcode = fields.Char() + date_availability = fields.Date() + expected_price = fields.Float() + selling_price = fields.Float() + bedrooms = fields.Integer() + living_area = fields.Integer() + facades = fields.Integer() + garage = fields.Boolean() + garden = fields.Boolean() + garden_area = fields.Integer() + garden_orientation = fields.Selection( + string='Type', + selection=[('north', 'North'), ('south', 'South'), ('east', 'East'), ('west', 'West') ], + help="") From e250921ae49787d7e4969da2edcb1e089f4f997a Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 10:34:12 +0100 Subject: [PATCH 003/128] ... test --- estate/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/estate/__manifest__.py b/estate/__manifest__.py index 1f345fe6a75..ce8e6874610 100644 --- a/estate/__manifest__.py +++ b/estate/__manifest__.py @@ -1,5 +1,5 @@ { - "name": "Estate", # The name that will appear in the App list + "name": "EstateTEST", # The name that will appear in the App list "version": "16.0", # Version "application": True, # This line says the module is an App, and not a module "depends": ["base"], # dependencies From fef90a9c30b702c3017a42e6474a9252acb7441a Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 10:35:49 +0100 Subject: [PATCH 004/128] ... ... test --- estate/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/estate/__manifest__.py b/estate/__manifest__.py index ce8e6874610..1f345fe6a75 100644 --- a/estate/__manifest__.py +++ b/estate/__manifest__.py @@ -1,5 +1,5 @@ { - "name": "EstateTEST", # The name that will appear in the App list + "name": "Estate", # The name that will appear in the App list "version": "16.0", # Version "application": True, # This line says the module is an App, and not a module "depends": ["base"], # dependencies From cebcd805b1945e30d291a31cbec18697c922c4f3 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 10:55:59 +0100 Subject: [PATCH 005/128] CAP 5 : Access Rights --- estate/ir.model.access.csv | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 estate/ir.model.access.csv diff --git a/estate/ir.model.access.csv b/estate/ir.model.access.csv new file mode 100644 index 00000000000..e69de29bb2d From 3b50f024c7b92bb9de76f691d4d1cc9c87c8cabc Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 10:56:11 +0100 Subject: [PATCH 006/128] CAP 5 : Access Rights --- estate/ir.model.access.csv | 2 ++ 1 file changed, 2 insertions(+) diff --git a/estate/ir.model.access.csv b/estate/ir.model.access.csv index e69de29bb2d..9887afa5347 100644 --- a/estate/ir.model.access.csv +++ b/estate/ir.model.access.csv @@ -0,0 +1,2 @@ +id,name,model_id/id,group_id/id,perm_read,perm_write,perm_create,perm_unlink +access_estate_model,access_estate_model,model_estate_model,base.group_user,1,0,0,0 \ No newline at end of file From f0ffe4354b0aa64d94cc44d09bef654c110c0be6 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 11:01:11 +0100 Subject: [PATCH 007/128] CAP 5 : Access Rights --- estate/{ => security}/ir.model.access.csv | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename estate/{ => security}/ir.model.access.csv (100%) diff --git a/estate/ir.model.access.csv b/estate/security/ir.model.access.csv similarity index 100% rename from estate/ir.model.access.csv rename to estate/security/ir.model.access.csv From cb105e4e9cfb289004468652394c1d55331901a8 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 11:01:17 +0100 Subject: [PATCH 008/128] CAP 5 : Access Rights --- estate/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/estate/__manifest__.py b/estate/__manifest__.py index 1f345fe6a75..f73c17858c2 100644 --- a/estate/__manifest__.py +++ b/estate/__manifest__.py @@ -4,7 +4,7 @@ "application": True, # This line says the module is an App, and not a module "depends": ["base"], # dependencies "data": [ - + "security/ir.model.access.csv" ], "installable": True, 'license': 'LGPL-3', From 735f2b6b16351ae9a253293e73cdce9e4e6e997d Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 11:02:33 +0100 Subject: [PATCH 009/128] CAP 5 : Access Rights --- estate/security/ir.model.access.csv | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/estate/security/ir.model.access.csv b/estate/security/ir.model.access.csv index 9887afa5347..5d1790bcba9 100644 --- a/estate/security/ir.model.access.csv +++ b/estate/security/ir.model.access.csv @@ -1,2 +1,2 @@ id,name,model_id/id,group_id/id,perm_read,perm_write,perm_create,perm_unlink -access_estate_model,access_estate_model,model_estate_model,base.group_user,1,0,0,0 \ No newline at end of file +access_estate_model,access_estate_model,model_estate_model,base.group_user,1,1,1,1 \ No newline at end of file From c81c74ec5438aa67af5629e0ba93666d7ad1fccc Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 11:08:41 +0100 Subject: [PATCH 010/128] CAP 5 : Access Rights --- estate/security/ir.model.access.csv | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/estate/security/ir.model.access.csv b/estate/security/ir.model.access.csv index 5d1790bcba9..ab63520e22b 100644 --- a/estate/security/ir.model.access.csv +++ b/estate/security/ir.model.access.csv @@ -1,2 +1,2 @@ -id,name,model_id/id,group_id/id,perm_read,perm_write,perm_create,perm_unlink -access_estate_model,access_estate_model,model_estate_model,base.group_user,1,1,1,1 \ No newline at end of file +id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink +estate.access_estate_property,access_estate_property,estate.model_estate_property,base.group_user,1,1,1,1 \ No newline at end of file From 3bb3903c4a3078212c20a1d25667227b5c906149 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 11:20:36 +0100 Subject: [PATCH 011/128] CAP 6 : Views --- estate/views/estate_property.xml | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 estate/views/estate_property.xml diff --git a/estate/views/estate_property.xml b/estate/views/estate_property.xml new file mode 100644 index 00000000000..e69de29bb2d From d4776ed2a82c6f9d9cdd6e6fbc11c7f5e4bb8520 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 11:20:42 +0100 Subject: [PATCH 012/128] CAP 6 : Views --- estate/__manifest__.py | 2 +- estate/views/estate_property.xml | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/estate/__manifest__.py b/estate/__manifest__.py index f73c17858c2..b580f28f841 100644 --- a/estate/__manifest__.py +++ b/estate/__manifest__.py @@ -1,5 +1,5 @@ { - "name": "Estate", # The name that will appear in the App list + "name": "Real Estate", # The name that will appear in the App list "version": "16.0", # Version "application": True, # This line says the module is an App, and not a module "depends": ["base"], # dependencies diff --git a/estate/views/estate_property.xml b/estate/views/estate_property.xml index e69de29bb2d..4f90e279a2c 100644 --- a/estate/views/estate_property.xml +++ b/estate/views/estate_property.xml @@ -0,0 +1,5 @@ + + Test action + estate_property + tree,form + \ No newline at end of file From 6eba645be1dade7e73534167234dc742f09fb889 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 11:23:53 +0100 Subject: [PATCH 013/128] CAP 6 : Views --- estate/__manifest__.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/estate/__manifest__.py b/estate/__manifest__.py index b580f28f841..b4501b4173a 100644 --- a/estate/__manifest__.py +++ b/estate/__manifest__.py @@ -4,7 +4,8 @@ "application": True, # This line says the module is an App, and not a module "depends": ["base"], # dependencies "data": [ - "security/ir.model.access.csv" + "security/ir.model.access.csv", + "views/estate_property.xml" ], "installable": True, 'license': 'LGPL-3', From e98e20264f4eb02ca0a8e5da0c95dfb960980ae9 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 11:26:26 +0100 Subject: [PATCH 014/128] CAP 6 : Views --- estate/views/estate_property.xml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/estate/views/estate_property.xml b/estate/views/estate_property.xml index 4f90e279a2c..78df25b891e 100644 --- a/estate/views/estate_property.xml +++ b/estate/views/estate_property.xml @@ -1,5 +1,7 @@ - - Test action - estate_property - tree,form - \ No newline at end of file + + + Test action + estate_property + tree,form + + From d3f2f324f116c42e52d6a81442377abd335dbe2f Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 11:28:03 +0100 Subject: [PATCH 015/128] CAP 6 : Views --- estate/views/estate_property.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/estate/views/estate_property.xml b/estate/views/estate_property.xml index 78df25b891e..f7d96880625 100644 --- a/estate/views/estate_property.xml +++ b/estate/views/estate_property.xml @@ -1,7 +1,7 @@ Test action - estate_property + estate.property tree,form From 33f5055257c84a2c6d37b613b630c831bbb018dc Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 11:31:07 +0100 Subject: [PATCH 016/128] CAP 6 : Views --- estate/views/{estate_property.xml => estate_property_views.xml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename estate/views/{estate_property.xml => estate_property_views.xml} (100%) diff --git a/estate/views/estate_property.xml b/estate/views/estate_property_views.xml similarity index 100% rename from estate/views/estate_property.xml rename to estate/views/estate_property_views.xml From c687ef10fa49fa6d661dff76e72e0e600459061c Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 11:31:15 +0100 Subject: [PATCH 017/128] CAP 6 : Views --- estate/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/estate/__manifest__.py b/estate/__manifest__.py index b4501b4173a..d4c93446a19 100644 --- a/estate/__manifest__.py +++ b/estate/__manifest__.py @@ -5,7 +5,7 @@ "depends": ["base"], # dependencies "data": [ "security/ir.model.access.csv", - "views/estate_property.xml" + "views/estate_property_views.xml" ], "installable": True, 'license': 'LGPL-3', From 61ebad798e7ba12ff0a2342145ddbc565da352b2 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 11:48:31 +0100 Subject: [PATCH 018/128] CAP 6 : Views / Menus --- estate/views/estate_menus.xml | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 estate/views/estate_menus.xml diff --git a/estate/views/estate_menus.xml b/estate/views/estate_menus.xml new file mode 100644 index 00000000000..e69de29bb2d From 655a30df5ca8e2befb012d2a5deaca485fa562a2 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 11:48:36 +0100 Subject: [PATCH 019/128] CAP 6 : Views / Menus --- estate/__manifest__.py | 3 ++- estate/views/estate_menus.xml | 8 ++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/estate/__manifest__.py b/estate/__manifest__.py index d4c93446a19..74dc777fb6e 100644 --- a/estate/__manifest__.py +++ b/estate/__manifest__.py @@ -5,7 +5,8 @@ "depends": ["base"], # dependencies "data": [ "security/ir.model.access.csv", - "views/estate_property_views.xml" + "views/estate_property_views.xml", + "views/estate_menus.xml" ], "installable": True, 'license': 'LGPL-3', diff --git a/estate/views/estate_menus.xml b/estate/views/estate_menus.xml index e69de29bb2d..ad21d58bf91 100644 --- a/estate/views/estate_menus.xml +++ b/estate/views/estate_menus.xml @@ -0,0 +1,8 @@ + + + + + + + + From 0a4151253f94dd4ef820615587f4d17397df93aa Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 11:57:09 +0100 Subject: [PATCH 020/128] CAP 6 : Views / Menus --- estate/views/estate_menus.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/estate/views/estate_menus.xml b/estate/views/estate_menus.xml index ad21d58bf91..34cd14ea70e 100644 --- a/estate/views/estate_menus.xml +++ b/estate/views/estate_menus.xml @@ -1,5 +1,5 @@ - + From eb75686ca76a7f6c068c22c8e03c3289517494d7 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 12:10:53 +0100 Subject: [PATCH 021/128] CAP 6 : Views / setup defaults --- estate/models/estate_property.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/estate/models/estate_property.py b/estate/models/estate_property.py index 4c76c43f201..8f00468dfd9 100644 --- a/estate/models/estate_property.py +++ b/estate/models/estate_property.py @@ -1,3 +1,4 @@ +from dateutil.relativedelta import relativedelta from odoo import fields, models @@ -8,10 +9,10 @@ class EstateProperty(models.Model): name = fields.Char() description = fields.Text() postcode = fields.Char() - date_availability = fields.Date() + date_availability = fields.Date(default=lambda self: fields.Date.today() + relativedelta(months=+3)) expected_price = fields.Float() selling_price = fields.Float() - bedrooms = fields.Integer() + bedrooms = fields.Integer(default=2) living_area = fields.Integer() facades = fields.Integer() garage = fields.Boolean() From 0d012e43c613dbc6185ec0e6e5528a3779f792f5 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 12:16:25 +0100 Subject: [PATCH 022/128] CAP 6 : Views / add active and status --- estate/models/estate_property.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/estate/models/estate_property.py b/estate/models/estate_property.py index 8f00468dfd9..5590416e099 100644 --- a/estate/models/estate_property.py +++ b/estate/models/estate_property.py @@ -22,3 +22,8 @@ class EstateProperty(models.Model): string='Type', selection=[('north', 'North'), ('south', 'South'), ('east', 'East'), ('west', 'West') ], help="") + active = fields.Boolean() + state = fields.Selection( + string='Type', + selection=[('new', 'New'), ('offer_received', 'Offer Received'), ('offer_accepted', 'Offer Accepted'), ('sold', 'Sold'), ('canceled', 'Canceled') ], + help="") \ No newline at end of file From 3e7fa08a9c536855668c2799a1b600dfc24915a8 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 12:18:56 +0100 Subject: [PATCH 023/128] CAP 6 : Views / add active and status --- estate/models/estate_property.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/estate/models/estate_property.py b/estate/models/estate_property.py index 5590416e099..8e40eadeb50 100644 --- a/estate/models/estate_property.py +++ b/estate/models/estate_property.py @@ -24,6 +24,6 @@ class EstateProperty(models.Model): help="") active = fields.Boolean() state = fields.Selection( - string='Type', + string='State', selection=[('new', 'New'), ('offer_received', 'Offer Received'), ('offer_accepted', 'Offer Accepted'), ('sold', 'Sold'), ('canceled', 'Canceled') ], help="") \ No newline at end of file From d47126ade584628700f2b6c3b8c558b93901a63e Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 12:21:02 +0100 Subject: [PATCH 024/128] CAP 6 : Views / add active and status --- estate/models/estate_property.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/estate/models/estate_property.py b/estate/models/estate_property.py index 8e40eadeb50..d470c44abf8 100644 --- a/estate/models/estate_property.py +++ b/estate/models/estate_property.py @@ -22,8 +22,8 @@ class EstateProperty(models.Model): string='Type', selection=[('north', 'North'), ('south', 'South'), ('east', 'East'), ('west', 'West') ], help="") - active = fields.Boolean() state = fields.Selection( string='State', selection=[('new', 'New'), ('offer_received', 'Offer Received'), ('offer_accepted', 'Offer Accepted'), ('sold', 'Sold'), ('canceled', 'Canceled') ], - help="") \ No newline at end of file + help="") + active = fields.Boolean() From 6785300b46865cbb90880f39f3a31e8a12388f28 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 13:48:45 +0100 Subject: [PATCH 025/128] ... --- estate/views/estate_property_views.xml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/estate/views/estate_property_views.xml b/estate/views/estate_property_views.xml index f7d96880625..d4238587279 100644 --- a/estate/views/estate_property_views.xml +++ b/estate/views/estate_property_views.xml @@ -4,4 +4,9 @@ estate.property tree,form + + + + + From 332d1c793e9bf28041ff8b7b87dd71a4de4feffb Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 13:58:44 +0100 Subject: [PATCH 026/128] Chapter 7: Basic Views | tree and form --- estate/views/estate_property_views.xml | 60 +++++++++++++++++++++++--- 1 file changed, 55 insertions(+), 5 deletions(-) diff --git a/estate/views/estate_property_views.xml b/estate/views/estate_property_views.xml index d4238587279..8a23072fbef 100644 --- a/estate/views/estate_property_views.xml +++ b/estate/views/estate_property_views.xml @@ -4,9 +4,59 @@ estate.property tree,form - - - - - + + + estate.property.tree + estate.property + + + + + + + + + + + + + estate.property.tree + estate.property + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ From 4fa429a966f95c4a2caf9d0fde6cc2a0a5a14af5 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 14:02:24 +0100 Subject: [PATCH 027/128] Chapter 7: Basic Views | tree and form --- estate/views/estate_property_views.xml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/estate/views/estate_property_views.xml b/estate/views/estate_property_views.xml index 8a23072fbef..f72b8b4044a 100644 --- a/estate/views/estate_property_views.xml +++ b/estate/views/estate_property_views.xml @@ -28,13 +28,16 @@ + - +
TEST ...
+ -
From d835fa2152ccfeb7d339ed4553b9544812bbc9b3 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 14:13:02 +0100 Subject: [PATCH 030/128] Chapter 7: Basic Views | tree and form --- estate/views/estate_property_views.xml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/estate/views/estate_property_views.xml b/estate/views/estate_property_views.xml index 2b88ed67a33..d62b044c27c 100644 --- a/estate/views/estate_property_views.xml +++ b/estate/views/estate_property_views.xml @@ -70,4 +70,20 @@ + + estate.property.search + estate.property + + + + + + + + + + + + + From 94a58827711a3914fe0ece7050f8265f86e84367 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 14:15:16 +0100 Subject: [PATCH 031/128] Chapter 7: Basic Views | tree and form --- estate/views/estate_property_views.xml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/estate/views/estate_property_views.xml b/estate/views/estate_property_views.xml index d62b044c27c..00b01a1e587 100644 --- a/estate/views/estate_property_views.xml +++ b/estate/views/estate_property_views.xml @@ -28,15 +28,16 @@

- +

+
+
+
- -
TEST ...
-
From 918a9fd826af59069244dc7d4af10e3d8d175b49 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 14:19:34 +0100 Subject: [PATCH 032/128] Chapter 7: Basic Views | tree and form --- estate/views/estate_property_views.xml | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/estate/views/estate_property_views.xml b/estate/views/estate_property_views.xml index 00b01a1e587..6b611a8d7ba 100644 --- a/estate/views/estate_property_views.xml +++ b/estate/views/estate_property_views.xml @@ -28,15 +28,12 @@

-

-
-
+
From 96ea9623417906ff80453b9571f870791fb484fa Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 14:22:56 +0100 Subject: [PATCH 033/128] Chapter 7: Basic Views | tree and form --- estate/views/estate_property_views.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/estate/views/estate_property_views.xml b/estate/views/estate_property_views.xml index 6b611a8d7ba..8ac1b98d71f 100644 --- a/estate/views/estate_property_views.xml +++ b/estate/views/estate_property_views.xml @@ -27,12 +27,12 @@ + - From addd5ec2feadad1ed4a571ddfb89a539c143398b Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 14:27:22 +0100 Subject: [PATCH 034/128] ... Chapter 7: Basic Views | tree and form --- estate/views/estate_property_views.xml | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/estate/views/estate_property_views.xml b/estate/views/estate_property_views.xml index 8ac1b98d71f..ba69f682fa8 100644 --- a/estate/views/estate_property_views.xml +++ b/estate/views/estate_property_views.xml @@ -38,17 +38,19 @@ - - - - - - - - - - - + + + + + + + + + + + + + From c720f340e5ff4f7421558b2ce20aa5a4183c4c88 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 15:08:03 +0100 Subject: [PATCH 035/128] ... Chapter 7: Basic Views | tree and form --- estate/views/estate_property_views.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/estate/views/estate_property_views.xml b/estate/views/estate_property_views.xml index ba69f682fa8..b3c84db1cc8 100644 --- a/estate/views/estate_property_views.xml +++ b/estate/views/estate_property_views.xml @@ -61,7 +61,7 @@ - + From 584e635a05715d7e8e30d3f3df4f6838292ec530 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 15:10:13 +0100 Subject: [PATCH 036/128] ... Chapter 7: Basic Views | tree and form --- estate/views/estate_property_views.xml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/estate/views/estate_property_views.xml b/estate/views/estate_property_views.xml index b3c84db1cc8..d0536c39e29 100644 --- a/estate/views/estate_property_views.xml +++ b/estate/views/estate_property_views.xml @@ -61,8 +61,10 @@ - - +
+ + +
From 1fae4715aa5f54e3798c474b518fe97b0cd8378f Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 15:35:58 +0100 Subject: [PATCH 037/128] Chapter 8 --- estate/models/estate_property_type.py | 29 +++++++ estate/views/estate_property_type_views.xml | 91 +++++++++++++++++++++ 2 files changed, 120 insertions(+) create mode 100644 estate/models/estate_property_type.py create mode 100644 estate/views/estate_property_type_views.xml diff --git a/estate/models/estate_property_type.py b/estate/models/estate_property_type.py new file mode 100644 index 00000000000..d470c44abf8 --- /dev/null +++ b/estate/models/estate_property_type.py @@ -0,0 +1,29 @@ +from dateutil.relativedelta import relativedelta +from odoo import fields, models + + +class EstateProperty(models.Model): + _name = "estate.property" + _description = "Estate Property" + + name = fields.Char() + description = fields.Text() + postcode = fields.Char() + date_availability = fields.Date(default=lambda self: fields.Date.today() + relativedelta(months=+3)) + expected_price = fields.Float() + selling_price = fields.Float() + bedrooms = fields.Integer(default=2) + living_area = fields.Integer() + facades = fields.Integer() + garage = fields.Boolean() + garden = fields.Boolean() + garden_area = fields.Integer() + garden_orientation = fields.Selection( + string='Type', + selection=[('north', 'North'), ('south', 'South'), ('east', 'East'), ('west', 'West') ], + help="") + state = fields.Selection( + string='State', + selection=[('new', 'New'), ('offer_received', 'Offer Received'), ('offer_accepted', 'Offer Accepted'), ('sold', 'Sold'), ('canceled', 'Canceled') ], + help="") + active = fields.Boolean() diff --git a/estate/views/estate_property_type_views.xml b/estate/views/estate_property_type_views.xml new file mode 100644 index 00000000000..d0536c39e29 --- /dev/null +++ b/estate/views/estate_property_type_views.xml @@ -0,0 +1,91 @@ + + + Test action + estate.property + tree,form + + + + estate.property.tree + estate.property + + + + + + + + + + + + + estate.property.tree + estate.property + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+
+
+
+
+
+ + + estate.property.search + estate.property + + + + + + + + + + + + + +
From c65e20412f7d2c6122b7412755ba8c3aefc3f827 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 15:36:12 +0100 Subject: [PATCH 038/128] Chapter 8 : add property type --- estate/__manifest__.py | 1 + estate/models/__init__.py | 3 +- estate/models/estate_property.py | 1 + estate/models/estate_property_type.py | 29 +------ estate/views/estate_menus.xml | 9 ++- estate/views/estate_property_type_views.xml | 90 +-------------------- 6 files changed, 17 insertions(+), 116 deletions(-) diff --git a/estate/__manifest__.py b/estate/__manifest__.py index 74dc777fb6e..e3cebd97360 100644 --- a/estate/__manifest__.py +++ b/estate/__manifest__.py @@ -6,6 +6,7 @@ "data": [ "security/ir.model.access.csv", "views/estate_property_views.xml", + "views/estate_property_type_views.xml", "views/estate_menus.xml" ], "installable": True, diff --git a/estate/models/__init__.py b/estate/models/__init__.py index f4c8fd6db6d..97aee757823 100644 --- a/estate/models/__init__.py +++ b/estate/models/__init__.py @@ -1 +1,2 @@ -from . import estate_property \ No newline at end of file +from . import estate_property +from . import estate_property_type \ No newline at end of file diff --git a/estate/models/estate_property.py b/estate/models/estate_property.py index d470c44abf8..52766d7c231 100644 --- a/estate/models/estate_property.py +++ b/estate/models/estate_property.py @@ -27,3 +27,4 @@ class EstateProperty(models.Model): selection=[('new', 'New'), ('offer_received', 'Offer Received'), ('offer_accepted', 'Offer Accepted'), ('sold', 'Sold'), ('canceled', 'Canceled') ], help="") active = fields.Boolean() + property_type_id = fields.Many2one("estate.property.type") diff --git a/estate/models/estate_property_type.py b/estate/models/estate_property_type.py index d470c44abf8..9fa9fac88ab 100644 --- a/estate/models/estate_property_type.py +++ b/estate/models/estate_property_type.py @@ -1,29 +1,8 @@ -from dateutil.relativedelta import relativedelta from odoo import fields, models -class EstateProperty(models.Model): - _name = "estate.property" - _description = "Estate Property" +class EstatePropertyType(models.Model): + _name = "estate.property.type" + _description = "Estate Property Type" - name = fields.Char() - description = fields.Text() - postcode = fields.Char() - date_availability = fields.Date(default=lambda self: fields.Date.today() + relativedelta(months=+3)) - expected_price = fields.Float() - selling_price = fields.Float() - bedrooms = fields.Integer(default=2) - living_area = fields.Integer() - facades = fields.Integer() - garage = fields.Boolean() - garden = fields.Boolean() - garden_area = fields.Integer() - garden_orientation = fields.Selection( - string='Type', - selection=[('north', 'North'), ('south', 'South'), ('east', 'East'), ('west', 'West') ], - help="") - state = fields.Selection( - string='State', - selection=[('new', 'New'), ('offer_received', 'Offer Received'), ('offer_accepted', 'Offer Accepted'), ('sold', 'Sold'), ('canceled', 'Canceled') ], - help="") - active = fields.Boolean() + name = fields.Char() \ No newline at end of file diff --git a/estate/views/estate_menus.xml b/estate/views/estate_menus.xml index 34cd14ea70e..377b210bbe2 100644 --- a/estate/views/estate_menus.xml +++ b/estate/views/estate_menus.xml @@ -1,7 +1,10 @@ - - - + + + + + + diff --git a/estate/views/estate_property_type_views.xml b/estate/views/estate_property_type_views.xml index d0536c39e29..c96cca45aba 100644 --- a/estate/views/estate_property_type_views.xml +++ b/estate/views/estate_property_type_views.xml @@ -1,91 +1,7 @@ - - Test action - estate.property + + Estate Property Types + estate.property.type tree,form - - - estate.property.tree - estate.property - - - - - - - - - - - - - estate.property.tree - estate.property - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
-
-
-
-
-
- - - estate.property.search - estate.property - - - - - - - - - - - - -
From 7c60352e28a13064d332ef48f5dd19ce8c65fae6 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 15:39:04 +0100 Subject: [PATCH 039/128] ... Chapter 8 : add property type --- estate/views/estate_property_type_views.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/estate/views/estate_property_type_views.xml b/estate/views/estate_property_type_views.xml index c96cca45aba..010d8e81e0c 100644 --- a/estate/views/estate_property_type_views.xml +++ b/estate/views/estate_property_type_views.xml @@ -1,5 +1,5 @@ - + Estate Property Types estate.property.type tree,form From dafa8a62fc9971173846c67c7eb0ad6f16d200fa Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 15:41:04 +0100 Subject: [PATCH 040/128] ... Chapter 8 : add property type --- estate/security/ir.model.access.csv | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/estate/security/ir.model.access.csv b/estate/security/ir.model.access.csv index ab63520e22b..0dd057dc8cf 100644 --- a/estate/security/ir.model.access.csv +++ b/estate/security/ir.model.access.csv @@ -1,2 +1,3 @@ id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink -estate.access_estate_property,access_estate_property,estate.model_estate_property,base.group_user,1,1,1,1 \ No newline at end of file +estate.access_estate_property,access_estate_property,estate.model_estate_property,base.group_user,1,1,1,1 +estate.access_estate_property_type,access_estate_property_type,estate.model_estate_property_type,base.group_user,1,1,1,1 \ No newline at end of file From 600ad6120c72a2659b6a1141f3286264ed914760 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 15:57:42 +0100 Subject: [PATCH 041/128] ... Chapter 8 : add property type --- estate/views/estate_property_views.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/estate/views/estate_property_views.xml b/estate/views/estate_property_views.xml index d0536c39e29..8de9e53c6e3 100644 --- a/estate/views/estate_property_views.xml +++ b/estate/views/estate_property_views.xml @@ -62,7 +62,9 @@
+
From 3df9efcb3e891ef48ccc181ee9818a92244631b2 Mon Sep 17 00:00:00 2001 From: _goEko_ Date: Mon, 6 Nov 2023 16:01:20 +0100 Subject: [PATCH 042/128] ... Chapter 8 : add seller & buyer --- estate/models/estate_property.py | 2 ++ estate/views/estate_property_views.xml | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/estate/models/estate_property.py b/estate/models/estate_property.py index 52766d7c231..6b73727a2d3 100644 --- a/estate/models/estate_property.py +++ b/estate/models/estate_property.py @@ -28,3 +28,5 @@ class EstateProperty(models.Model): help="") active = fields.Boolean() property_type_id = fields.Many2one("estate.property.type") + seller_id = fields.Many2one("res.partner", string="Partner") + buyer_id = fields.Many2one("res.partner", string="Partner") diff --git a/estate/views/estate_property_views.xml b/estate/views/estate_property_views.xml index 8de9e53c6e3..c08afa53b4f 100644 --- a/estate/views/estate_property_views.xml +++ b/estate/views/estate_property_views.xml @@ -59,6 +59,14 @@