odoo-addon-pms 16.0.0.15.0.10__py3-none-any.whl → 16.0.0.24.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- odoo/addons/pms/README.rst +1 -1
- odoo/addons/pms/__manifest__.py +1 -1
- odoo/addons/pms/i18n/de.po +21 -14
- odoo/addons/pms/i18n/es.po +14 -12
- odoo/addons/pms/i18n/it.po +24 -23
- odoo/addons/pms/i18n/pms.pot +11 -32
- odoo/addons/pms/models/account_move.py +1 -1
- odoo/addons/pms/models/pms_board_service_room_type.py +2 -0
- odoo/addons/pms/models/pms_folio.py +34 -5
- odoo/addons/pms/models/pms_property.py +0 -5
- odoo/addons/pms/models/pms_reservation.py +11 -16
- odoo/addons/pms/models/pms_reservation_line.py +2 -2
- odoo/addons/pms/models/pms_service.py +7 -15
- odoo/addons/pms/models/pms_service_line.py +2 -2
- odoo/addons/pms/models/res_company.py +0 -17
- odoo/addons/pms/static/description/index.html +1 -1
- odoo/addons/pms/tests/test_pms_folio.py +83 -0
- odoo/addons/pms/tests/test_pms_room_type.py +58 -0
- odoo/addons/pms/views/pms_folio_views.xml +9 -18
- odoo/addons/pms/views/pms_property_views.xml +1 -0
- odoo/addons/pms/views/pms_reservation_views.xml +44 -18
- odoo/addons/pms/views/res_users_views.xml +1 -1
- odoo/addons/pms/views/traveller_report_template.xml +0 -9
- {odoo_addon_pms-16.0.0.15.0.10.dist-info → odoo_addon_pms-16.0.0.24.0.dist-info}/METADATA +2 -2
- {odoo_addon_pms-16.0.0.15.0.10.dist-info → odoo_addon_pms-16.0.0.24.0.dist-info}/RECORD +27 -27
- {odoo_addon_pms-16.0.0.15.0.10.dist-info → odoo_addon_pms-16.0.0.24.0.dist-info}/WHEEL +0 -0
- {odoo_addon_pms-16.0.0.15.0.10.dist-info → odoo_addon_pms-16.0.0.24.0.dist-info}/top_level.txt +0 -0
odoo/addons/pms/README.rst
CHANGED
|
@@ -11,7 +11,7 @@ PMS (Property Management System)
|
|
|
11
11
|
!! This file is generated by oca-gen-addon-readme !!
|
|
12
12
|
!! changes will be overwritten. !!
|
|
13
13
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
14
|
-
!! source digest: sha256:
|
|
14
|
+
!! source digest: sha256:88334a9c85056b26b4f5f89e9ce6f476579984c113c68111c6d106f7c2ce2903
|
|
15
15
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
16
16
|
|
|
17
17
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
|
odoo/addons/pms/__manifest__.py
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
{
|
|
5
5
|
"name": "PMS (Property Management System)",
|
|
6
6
|
"summary": "A property management system",
|
|
7
|
-
"version": "16.0.0.
|
|
7
|
+
"version": "16.0.0.24.0",
|
|
8
8
|
"development_status": "Beta",
|
|
9
9
|
"category": "Generic Modules/Property Management System",
|
|
10
10
|
"website": "https://github.com/OCA/pms",
|
odoo/addons/pms/i18n/de.po
CHANGED
|
@@ -5895,6 +5895,11 @@ msgstr "Vollst. fakturiert"
|
|
|
5895
5895
|
msgid "Future"
|
|
5896
5896
|
msgstr "Zukunft"
|
|
5897
5897
|
|
|
5898
|
+
#. module: pms
|
|
5899
|
+
#: model:ir.model.fields,field_description:pms.field_pms_property__global_location_number
|
|
5900
|
+
msgid "GLN"
|
|
5901
|
+
msgstr ""
|
|
5902
|
+
|
|
5898
5903
|
#. module: pms
|
|
5899
5904
|
#: model:ir.model.fields,field_description:pms.field_pms_checkin_partner__gender
|
|
5900
5905
|
#: model:ir.model.fields,field_description:pms.field_pms_property__gender
|
|
@@ -5966,6 +5971,11 @@ msgid "Gives the different ways to package the same product."
|
|
|
5966
5971
|
msgstr ""
|
|
5967
5972
|
"Zeigt die verschiedenen Möglichkeiten, das gleiche Produkt zu verpacken."
|
|
5968
5973
|
|
|
5974
|
+
#. module: pms
|
|
5975
|
+
#: model:ir.model.fields,help:pms.field_pms_property__global_location_number
|
|
5976
|
+
msgid "Global Location Number"
|
|
5977
|
+
msgstr ""
|
|
5978
|
+
|
|
5969
5979
|
#. module: pms
|
|
5970
5980
|
#: model:pms.ubication,name:pms.pms_ubication_ground_floor
|
|
5971
5981
|
msgid "Ground floor"
|
|
@@ -8082,6 +8092,7 @@ msgstr "Nachtnummer, ab der die Regel nicht mehr gilt (optional)"
|
|
|
8082
8092
|
#: model:ir.model.fields,field_description:pms.field_folio_sale_line__reservation_line_ids
|
|
8083
8093
|
#: model:ir.model.fields,field_description:pms.field_pms_reservation__nights
|
|
8084
8094
|
#: model:ir.model.fields,field_description:pms.field_wizard_folio_changes__nights
|
|
8095
|
+
#: model_terms:ir.ui.view,arch_db:pms.pms_reservation_view_form
|
|
8085
8096
|
msgid "Nights"
|
|
8086
8097
|
msgstr "Nächte"
|
|
8087
8098
|
|
|
@@ -13115,20 +13126,6 @@ msgstr "Gesamtbetrag"
|
|
|
13115
13126
|
msgid "Total amount"
|
|
13116
13127
|
msgstr "Gesamtbetrag"
|
|
13117
13128
|
|
|
13118
|
-
#. module: pms
|
|
13119
|
-
#: model_terms:ir.ui.view,arch_db:pms.traveller_report
|
|
13120
|
-
msgid ""
|
|
13121
|
-
"Total amount\n"
|
|
13122
|
-
" (Reservation Card):"
|
|
13123
|
-
msgstr ""
|
|
13124
|
-
"Gesamtbetrag\n"
|
|
13125
|
-
" (Reservierungskarte):"
|
|
13126
|
-
|
|
13127
|
-
#. module: pms
|
|
13128
|
-
#: model_terms:ir.ui.view,arch_db:pms.traveller_report
|
|
13129
|
-
msgid "Total amount (Reservation Card):"
|
|
13130
|
-
msgstr "Gesamtbetrag (Reservierungskarte):"
|
|
13131
|
-
|
|
13132
13129
|
#. module: pms
|
|
13133
13130
|
#: model:ir.model.fields,help:pms.field_pms_property__credit
|
|
13134
13131
|
msgid "Total amount this customer owes you."
|
|
@@ -14064,6 +14061,16 @@ msgstr ""
|
|
|
14064
14061
|
msgid "{room_name}: No room available in {checkin} <-> {checkout}."
|
|
14065
14062
|
msgstr "{room_name}: Kein Zimmer verfügbar in {checkin} <-> {checkout}."
|
|
14066
14063
|
|
|
14064
|
+
#~ msgid ""
|
|
14065
|
+
#~ "Total amount\n"
|
|
14066
|
+
#~ " (Reservation Card):"
|
|
14067
|
+
#~ msgstr ""
|
|
14068
|
+
#~ "Gesamtbetrag\n"
|
|
14069
|
+
#~ " (Reservierungskarte):"
|
|
14070
|
+
|
|
14071
|
+
#~ msgid "Total amount (Reservation Card):"
|
|
14072
|
+
#~ msgstr "Gesamtbetrag (Reservierungskarte):"
|
|
14073
|
+
|
|
14067
14074
|
#, python-format
|
|
14068
14075
|
#~ msgid ""
|
|
14069
14076
|
#~ "The room %(room)s (type: %(room_type)s) is not\n"
|
odoo/addons/pms/i18n/es.po
CHANGED
|
@@ -5142,6 +5142,11 @@ msgstr "Totalmente Facturada"
|
|
|
5142
5142
|
msgid "Future"
|
|
5143
5143
|
msgstr "Futuro"
|
|
5144
5144
|
|
|
5145
|
+
#. module: pms
|
|
5146
|
+
#: model:ir.model.fields,field_description:pms.field_pms_property__global_location_number
|
|
5147
|
+
msgid "GLN"
|
|
5148
|
+
msgstr ""
|
|
5149
|
+
|
|
5145
5150
|
#. module: pms
|
|
5146
5151
|
#: model:ir.model.fields,field_description:pms.field_pms_checkin_partner__gender
|
|
5147
5152
|
#: model:ir.model.fields,field_description:pms.field_pms_property__gender
|
|
@@ -5212,6 +5217,11 @@ msgstr "Obtener el precio con descuento aplicado"
|
|
|
5212
5217
|
msgid "Gives the different ways to package the same product."
|
|
5213
5218
|
msgstr "Ofrece diferentes formas de empaquetar el mismo producto."
|
|
5214
5219
|
|
|
5220
|
+
#. module: pms
|
|
5221
|
+
#: model:ir.model.fields,help:pms.field_pms_property__global_location_number
|
|
5222
|
+
msgid "Global Location Number"
|
|
5223
|
+
msgstr ""
|
|
5224
|
+
|
|
5215
5225
|
#. module: pms
|
|
5216
5226
|
#: model:pms.ubication,name:pms.pms_ubication_ground_floor
|
|
5217
5227
|
msgid "Ground floor"
|
|
@@ -7299,6 +7309,7 @@ msgstr ""
|
|
|
7299
7309
|
#: model:ir.model.fields,field_description:pms.field_folio_sale_line__reservation_line_ids
|
|
7300
7310
|
#: model:ir.model.fields,field_description:pms.field_pms_reservation__nights
|
|
7301
7311
|
#: model:ir.model.fields,field_description:pms.field_wizard_folio_changes__nights
|
|
7312
|
+
#: model_terms:ir.ui.view,arch_db:pms.pms_reservation_view_form
|
|
7302
7313
|
msgid "Nights"
|
|
7303
7314
|
msgstr "Noches"
|
|
7304
7315
|
|
|
@@ -12230,18 +12241,6 @@ msgstr ""
|
|
|
12230
12241
|
msgid "Total amount"
|
|
12231
12242
|
msgstr "Importe total"
|
|
12232
12243
|
|
|
12233
|
-
#. module: pms
|
|
12234
|
-
#: model_terms:ir.ui.view,arch_db:pms.traveller_report
|
|
12235
|
-
msgid ""
|
|
12236
|
-
"Total amount\n"
|
|
12237
|
-
" (Reservation Card):"
|
|
12238
|
-
msgstr ""
|
|
12239
|
-
|
|
12240
|
-
#. module: pms
|
|
12241
|
-
#: model_terms:ir.ui.view,arch_db:pms.traveller_report
|
|
12242
|
-
msgid "Total amount (Reservation Card):"
|
|
12243
|
-
msgstr "Importe total (Tarjeta de Reserva):"
|
|
12244
|
-
|
|
12245
12244
|
#. module: pms
|
|
12246
12245
|
#: model:ir.model.fields,help:pms.field_pms_property__credit
|
|
12247
12246
|
msgid "Total amount this customer owes you."
|
|
@@ -13157,6 +13156,9 @@ msgstr ""
|
|
|
13157
13156
|
msgid "{room_name}: No room available in {checkin} <-> {checkout}."
|
|
13158
13157
|
msgstr ""
|
|
13159
13158
|
|
|
13159
|
+
#~ msgid "Total amount (Reservation Card):"
|
|
13160
|
+
#~ msgstr "Importe total (Tarjeta de Reserva):"
|
|
13161
|
+
|
|
13160
13162
|
#, python-format
|
|
13161
13163
|
#~ msgid "Room {} not available."
|
|
13162
13164
|
#~ msgstr "Habitación {} no disponible."
|
odoo/addons/pms/i18n/it.po
CHANGED
|
@@ -5384,8 +5384,8 @@ msgid ""
|
|
|
5384
5384
|
"Field that stores the number of checkin partners pending to checkin (with "
|
|
5385
5385
|
"the state = draft)"
|
|
5386
5386
|
msgstr ""
|
|
5387
|
-
"Campo che archivia il numero dei partner del check-in in attesa di check-in
|
|
5388
|
-
"con stato = bozza)"
|
|
5387
|
+
"Campo che archivia il numero dei partner del check-in in attesa di check-in "
|
|
5388
|
+
"(con stato = bozza)"
|
|
5389
5389
|
|
|
5390
5390
|
#. module: pms
|
|
5391
5391
|
#: model:ir.model.fields,help:pms.field_pms_reservation__avoid_mails
|
|
@@ -5871,6 +5871,11 @@ msgstr "Completamente fatturato"
|
|
|
5871
5871
|
msgid "Future"
|
|
5872
5872
|
msgstr "Futuro"
|
|
5873
5873
|
|
|
5874
|
+
#. module: pms
|
|
5875
|
+
#: model:ir.model.fields,field_description:pms.field_pms_property__global_location_number
|
|
5876
|
+
msgid "GLN"
|
|
5877
|
+
msgstr ""
|
|
5878
|
+
|
|
5874
5879
|
#. module: pms
|
|
5875
5880
|
#: model:ir.model.fields,field_description:pms.field_pms_checkin_partner__gender
|
|
5876
5881
|
#: model:ir.model.fields,field_description:pms.field_pms_property__gender
|
|
@@ -5941,6 +5946,11 @@ msgstr "Ottieni il prezzo con lo sconto applicato"
|
|
|
5941
5946
|
msgid "Gives the different ways to package the same product."
|
|
5942
5947
|
msgstr "Consente di imballare diversamente lo stesso prodotto."
|
|
5943
5948
|
|
|
5949
|
+
#. module: pms
|
|
5950
|
+
#: model:ir.model.fields,help:pms.field_pms_property__global_location_number
|
|
5951
|
+
msgid "Global Location Number"
|
|
5952
|
+
msgstr ""
|
|
5953
|
+
|
|
5944
5954
|
#. module: pms
|
|
5945
5955
|
#: model:pms.ubication,name:pms.pms_ubication_ground_floor
|
|
5946
5956
|
msgid "Ground floor"
|
|
@@ -6043,8 +6053,8 @@ msgid ""
|
|
|
6043
6053
|
"Hi ${object.firstname}, do your check-in now in ${object.pms_property_id."
|
|
6044
6054
|
"name}"
|
|
6045
6055
|
msgstr ""
|
|
6046
|
-
"Salve ${object.firstname}, esegui il check-in adesso in "
|
|
6047
|
-
"
|
|
6056
|
+
"Salve ${object.firstname}, esegui il check-in adesso in ${object."
|
|
6057
|
+
"pms_property_id.name}"
|
|
6048
6058
|
|
|
6049
6059
|
#. module: pms
|
|
6050
6060
|
#: model_terms:ir.ui.view,arch_db:pms.pms_checkin_partner_view_search
|
|
@@ -6334,8 +6344,8 @@ msgid ""
|
|
|
6334
6344
|
msgstr ""
|
|
6335
6345
|
"Nei prezzi standard & costi medi: valore del prodotto (calcolato "
|
|
6336
6346
|
"automaticamente nei costi medi).\n"
|
|
6337
|
-
" In FIFO: valore dell'unità successiva che lascerà il magazzino
|
|
6338
|
-
"calcolato automaticamente).\n"
|
|
6347
|
+
" In FIFO: valore dell'unità successiva che lascerà il magazzino "
|
|
6348
|
+
"(calcolato automaticamente).\n"
|
|
6339
6349
|
" Utilizzato per valutare il prodotto quando il costo di acquisto non "
|
|
6340
6350
|
"è noto (es. rettifiche di inventario).\n"
|
|
6341
6351
|
" Utilizzato per calcolare i margini negli ordini di vendita."
|
|
@@ -7671,7 +7681,8 @@ msgstr ""
|
|
|
7671
7681
|
#. module: pms
|
|
7672
7682
|
#: model:ir.model.fields,help:pms.field_pms_massive_changes_wizard__max_avail
|
|
7673
7683
|
msgid "Maximum simultaneous availability on own Booking Engine."
|
|
7674
|
-
msgstr "
|
|
7684
|
+
msgstr ""
|
|
7685
|
+
"Disponibilità contemporanea massima nel proprio motore di prenotazione."
|
|
7675
7686
|
|
|
7676
7687
|
#. module: pms
|
|
7677
7688
|
#: model:ir.model.fields,help:pms.field_pms_availability_plan_rule__max_stay
|
|
@@ -8037,6 +8048,7 @@ msgstr "Numero della notte dalla quale la regola non si applica (opzionale)"
|
|
|
8037
8048
|
#: model:ir.model.fields,field_description:pms.field_folio_sale_line__reservation_line_ids
|
|
8038
8049
|
#: model:ir.model.fields,field_description:pms.field_pms_reservation__nights
|
|
8039
8050
|
#: model:ir.model.fields,field_description:pms.field_wizard_folio_changes__nights
|
|
8051
|
+
#: model_terms:ir.ui.view,arch_db:pms.pms_reservation_view_form
|
|
8040
8052
|
msgid "Nights"
|
|
8041
8053
|
msgstr "Notti"
|
|
8042
8054
|
|
|
@@ -8219,7 +8231,8 @@ msgstr "Numero di partner al check-in in una prenotazione"
|
|
|
8219
8231
|
#. module: pms
|
|
8220
8232
|
#: model:ir.model.fields,help:pms.field_pms_reservation__checkin_partner_pending_count
|
|
8221
8233
|
msgid "Number of checkin partners pending to checkin in a reservation"
|
|
8222
|
-
msgstr "
|
|
8234
|
+
msgstr ""
|
|
8235
|
+
"Numero di partner al check-in in attesa di check-in in una prenotazione"
|
|
8223
8236
|
|
|
8224
8237
|
#. module: pms
|
|
8225
8238
|
#: model:ir.model.fields,help:pms.field_pms_reservation__children_occupying
|
|
@@ -8473,9 +8486,9 @@ msgid ""
|
|
|
8473
8486
|
"Optional Products are suggested whenever the customer hits *Add to Cart* "
|
|
8474
8487
|
"(cross-sell strategy, e.g. for computers: warranty, software, etc.)."
|
|
8475
8488
|
msgstr ""
|
|
8476
|
-
"I prodotti opzionali sono suggeriti quando il cliente fa clic su "
|
|
8477
|
-
"
|
|
8478
|
-
"
|
|
8489
|
+
"I prodotti opzionali sono suggeriti quando il cliente fa clic su \"Aggiungi "
|
|
8490
|
+
"al carrello\" (strategia cross-selling, es. per computer: garanzia, "
|
|
8491
|
+
"programmi, ecc.)."
|
|
8479
8492
|
|
|
8480
8493
|
#. module: pms
|
|
8481
8494
|
#: model_terms:ir.ui.view,arch_db:pms.report_folio_document
|
|
@@ -12825,18 +12838,6 @@ msgstr ""
|
|
|
12825
12838
|
msgid "Total amount"
|
|
12826
12839
|
msgstr ""
|
|
12827
12840
|
|
|
12828
|
-
#. module: pms
|
|
12829
|
-
#: model_terms:ir.ui.view,arch_db:pms.traveller_report
|
|
12830
|
-
msgid ""
|
|
12831
|
-
"Total amount\n"
|
|
12832
|
-
" (Reservation Card):"
|
|
12833
|
-
msgstr ""
|
|
12834
|
-
|
|
12835
|
-
#. module: pms
|
|
12836
|
-
#: model_terms:ir.ui.view,arch_db:pms.traveller_report
|
|
12837
|
-
msgid "Total amount (Reservation Card):"
|
|
12838
|
-
msgstr ""
|
|
12839
|
-
|
|
12840
12841
|
#. module: pms
|
|
12841
12842
|
#: model:ir.model.fields,help:pms.field_pms_property__credit
|
|
12842
12843
|
msgid "Total amount this customer owes you."
|
odoo/addons/pms/i18n/pms.pot
CHANGED
|
@@ -4750,6 +4750,11 @@ msgstr ""
|
|
|
4750
4750
|
msgid "Future"
|
|
4751
4751
|
msgstr ""
|
|
4752
4752
|
|
|
4753
|
+
#. module: pms
|
|
4754
|
+
#: model:ir.model.fields,field_description:pms.field_pms_property__global_location_number
|
|
4755
|
+
msgid "GLN"
|
|
4756
|
+
msgstr ""
|
|
4757
|
+
|
|
4753
4758
|
#. module: pms
|
|
4754
4759
|
#: model:ir.model.fields,field_description:pms.field_pms_checkin_partner__gender
|
|
4755
4760
|
#: model:ir.model.fields,field_description:pms.field_pms_property__gender
|
|
@@ -4820,6 +4825,11 @@ msgstr ""
|
|
|
4820
4825
|
msgid "Gives the different ways to package the same product."
|
|
4821
4826
|
msgstr ""
|
|
4822
4827
|
|
|
4828
|
+
#. module: pms
|
|
4829
|
+
#: model:ir.model.fields,help:pms.field_pms_property__global_location_number
|
|
4830
|
+
msgid "Global Location Number"
|
|
4831
|
+
msgstr ""
|
|
4832
|
+
|
|
4823
4833
|
#. module: pms
|
|
4824
4834
|
#: model:pms.ubication,name:pms.pms_ubication_ground_floor
|
|
4825
4835
|
msgid "Ground floor"
|
|
@@ -5976,11 +5986,6 @@ msgstr ""
|
|
|
5976
5986
|
msgid "Journal Items"
|
|
5977
5987
|
msgstr ""
|
|
5978
5988
|
|
|
5979
|
-
#. module: pms
|
|
5980
|
-
#: model:ir.model.fields,help:pms.field_res_company__self_billed_journal_id
|
|
5981
|
-
msgid "Journal used to create self billing"
|
|
5982
|
-
msgstr ""
|
|
5983
|
-
|
|
5984
5989
|
#. module: pms
|
|
5985
5990
|
#: model:ir.model.fields,help:pms.field_pms_property__journal_normal_invoice_id
|
|
5986
5991
|
msgid "Journal used to create the normal invoice"
|
|
@@ -6823,6 +6828,7 @@ msgstr ""
|
|
|
6823
6828
|
#: model:ir.model.fields,field_description:pms.field_folio_sale_line__reservation_line_ids
|
|
6824
6829
|
#: model:ir.model.fields,field_description:pms.field_pms_reservation__nights
|
|
6825
6830
|
#: model:ir.model.fields,field_description:pms.field_wizard_folio_changes__nights
|
|
6831
|
+
#: model_terms:ir.ui.view,arch_db:pms.pms_reservation_view_form
|
|
6826
6832
|
msgid "Nights"
|
|
6827
6833
|
msgstr ""
|
|
6828
6834
|
|
|
@@ -9728,16 +9734,6 @@ msgstr ""
|
|
|
9728
9734
|
msgid "Self"
|
|
9729
9735
|
msgstr ""
|
|
9730
9736
|
|
|
9731
|
-
#. module: pms
|
|
9732
|
-
#: model:ir.model.fields,field_description:pms.field_res_company__self_billed_journal_id
|
|
9733
|
-
msgid "Self billed journal"
|
|
9734
|
-
msgstr ""
|
|
9735
|
-
|
|
9736
|
-
#. module: pms
|
|
9737
|
-
#: model:ir.model.fields,field_description:pms.field_res_company__self_billed_tax_ids
|
|
9738
|
-
msgid "Self billed taxes"
|
|
9739
|
-
msgstr ""
|
|
9740
|
-
|
|
9741
9737
|
#. module: pms
|
|
9742
9738
|
#: model_terms:ir.ui.view,arch_db:pms.pms_reservation_view_form
|
|
9743
9739
|
msgid "Send Cancellation Email"
|
|
@@ -10494,11 +10490,6 @@ msgstr ""
|
|
|
10494
10490
|
msgid "Taxes used for deposits"
|
|
10495
10491
|
msgstr ""
|
|
10496
10492
|
|
|
10497
|
-
#. module: pms
|
|
10498
|
-
#: model:ir.model.fields,help:pms.field_res_company__self_billed_tax_ids
|
|
10499
|
-
msgid "Taxes used to create self billing"
|
|
10500
|
-
msgstr ""
|
|
10501
|
-
|
|
10502
10493
|
#. module: pms
|
|
10503
10494
|
#: model:ir.model.fields,field_description:pms.field_pms_property__user_id
|
|
10504
10495
|
#: model_terms:ir.ui.view,arch_db:pms.pms_property_views_form
|
|
@@ -11585,18 +11576,6 @@ msgstr ""
|
|
|
11585
11576
|
msgid "Total amount"
|
|
11586
11577
|
msgstr ""
|
|
11587
11578
|
|
|
11588
|
-
#. module: pms
|
|
11589
|
-
#: model_terms:ir.ui.view,arch_db:pms.traveller_report
|
|
11590
|
-
msgid ""
|
|
11591
|
-
"Total amount\n"
|
|
11592
|
-
" (Reservation Card):"
|
|
11593
|
-
msgstr ""
|
|
11594
|
-
|
|
11595
|
-
#. module: pms
|
|
11596
|
-
#: model_terms:ir.ui.view,arch_db:pms.traveller_report
|
|
11597
|
-
msgid "Total amount (Reservation Card):"
|
|
11598
|
-
msgstr ""
|
|
11599
|
-
|
|
11600
11579
|
#. module: pms
|
|
11601
11580
|
#: model:ir.model.fields,help:pms.field_pms_property__credit
|
|
11602
11581
|
msgid "Total amount this customer owes you."
|
|
@@ -130,7 +130,7 @@ class AccountMove(models.Model):
|
|
|
130
130
|
|
|
131
131
|
pay_term_lines = move.line_ids.filtered(
|
|
132
132
|
lambda line: line.account_id.account_type
|
|
133
|
-
in ("asset_receivable", "
|
|
133
|
+
in ("asset_receivable", "liability_payable")
|
|
134
134
|
)
|
|
135
135
|
|
|
136
136
|
payments_widget_vals = {
|
|
@@ -85,6 +85,8 @@ class PmsBoardServiceRoomType(models.Model):
|
|
|
85
85
|
@api.constrains("by_default")
|
|
86
86
|
def constrains_duplicated_board_default(self):
|
|
87
87
|
for record in self:
|
|
88
|
+
if not record.by_default:
|
|
89
|
+
continue
|
|
88
90
|
default_boards = (
|
|
89
91
|
record.pms_room_type_id.board_service_room_type_ids.filtered(
|
|
90
92
|
"by_default"
|
|
@@ -139,7 +139,7 @@ class PmsFolio(models.Model):
|
|
|
139
139
|
check_pms_properties=True,
|
|
140
140
|
compute="_compute_pricelist_id",
|
|
141
141
|
)
|
|
142
|
-
commission = fields.
|
|
142
|
+
commission = fields.Monetary(
|
|
143
143
|
readonly=True,
|
|
144
144
|
store=True,
|
|
145
145
|
compute="_compute_commission",
|
|
@@ -325,6 +325,10 @@ class PmsFolio(models.Model):
|
|
|
325
325
|
# )
|
|
326
326
|
fiscal_position_id = fields.Many2one(
|
|
327
327
|
string="Fiscal Position",
|
|
328
|
+
compute="_compute_fiscal_position_id",
|
|
329
|
+
store=True,
|
|
330
|
+
readonly=False,
|
|
331
|
+
domain="[('company_id', '=', company_id)]",
|
|
328
332
|
help="The fiscal position depends on the location of the client",
|
|
329
333
|
comodel_name="account.fiscal.position",
|
|
330
334
|
index=True,
|
|
@@ -566,6 +570,28 @@ class PmsFolio(models.Model):
|
|
|
566
570
|
readonly=False,
|
|
567
571
|
)
|
|
568
572
|
|
|
573
|
+
@api.depends("pms_property_id", "partner_id", "company_id")
|
|
574
|
+
def _compute_fiscal_position_id(self):
|
|
575
|
+
cache = {}
|
|
576
|
+
for folio in self:
|
|
577
|
+
if not folio.partner_id:
|
|
578
|
+
folio.fiscal_position_id = False
|
|
579
|
+
continue
|
|
580
|
+
key = (
|
|
581
|
+
folio.company_id.id,
|
|
582
|
+
folio.partner_id.id,
|
|
583
|
+
folio.pms_property_id.partner_id.id,
|
|
584
|
+
)
|
|
585
|
+
if key not in cache:
|
|
586
|
+
cache[key] = (
|
|
587
|
+
self.env["account.fiscal.position"]
|
|
588
|
+
.with_company(folio.company_id)
|
|
589
|
+
._get_fiscal_position(
|
|
590
|
+
folio.partner_id, folio.pms_property_id.partner_id
|
|
591
|
+
)
|
|
592
|
+
)
|
|
593
|
+
folio.fiscal_position_id = cache[key]
|
|
594
|
+
|
|
569
595
|
@api.model
|
|
570
596
|
def _get_lang_selection_options(self):
|
|
571
597
|
"""Gets the available languages for the selection."""
|
|
@@ -1481,6 +1507,9 @@ class PmsFolio(models.Model):
|
|
|
1481
1507
|
records = super().create(vals_list)
|
|
1482
1508
|
for record in records:
|
|
1483
1509
|
record.access_token = record._portal_ensure_token()
|
|
1510
|
+
if record.partner_id:
|
|
1511
|
+
partners = record.partner_id | record.partner_id.commercial_partner_id
|
|
1512
|
+
partners._increase_rank("customer_rank")
|
|
1484
1513
|
return records
|
|
1485
1514
|
|
|
1486
1515
|
def write(self, vals):
|
|
@@ -1491,6 +1520,9 @@ class PmsFolio(models.Model):
|
|
|
1491
1520
|
services_to_update = self.get_services_to_update_channel(vals)
|
|
1492
1521
|
|
|
1493
1522
|
res = super().write(vals)
|
|
1523
|
+
if vals.get("partner_id"):
|
|
1524
|
+
partners = self.partner_id | self.partner_id.commercial_partner_id
|
|
1525
|
+
partners._increase_rank("customer_rank")
|
|
1494
1526
|
if reservations_to_update:
|
|
1495
1527
|
reservations_to_update.sale_channel_origin_id = vals[
|
|
1496
1528
|
"sale_channel_origin_id"
|
|
@@ -2120,10 +2152,7 @@ class PmsFolio(models.Model):
|
|
|
2120
2152
|
"invoice_line_ids": [],
|
|
2121
2153
|
"company_id": self.company_id.id,
|
|
2122
2154
|
"payment_reference": self.name,
|
|
2123
|
-
"fiscal_position_id": self.
|
|
2124
|
-
.with_company(self.company_id.id)
|
|
2125
|
-
._get_fiscal_position(self.env["res.partner"].browse(partner_invoice_id))
|
|
2126
|
-
.id,
|
|
2155
|
+
"fiscal_position_id": self.fiscal_position_id.id,
|
|
2127
2156
|
}
|
|
2128
2157
|
return invoice_vals
|
|
2129
2158
|
|
|
@@ -978,11 +978,6 @@ class PmsProperty(models.Model):
|
|
|
978
978
|
self.ensure_one()
|
|
979
979
|
partner = self.env["res.partner"].browse(partner_invoice_id)
|
|
980
980
|
# For simplified invoices
|
|
981
|
-
if (
|
|
982
|
-
self.company_id.partner_id.id == partner.id
|
|
983
|
-
and self.company_id.self_billed_journal_id
|
|
984
|
-
):
|
|
985
|
-
return self.company_id.self_billed_journal_id
|
|
986
981
|
if (
|
|
987
982
|
not partner
|
|
988
983
|
or partner.id == self.env.ref("pms.various_pms_partner").id
|
|
@@ -243,7 +243,7 @@ class PmsReservation(models.Model):
|
|
|
243
243
|
compute="_compute_commission_percent",
|
|
244
244
|
tracking=True,
|
|
245
245
|
)
|
|
246
|
-
commission_amount = fields.
|
|
246
|
+
commission_amount = fields.Monetary(
|
|
247
247
|
string="Commission amount",
|
|
248
248
|
help="Amount corresponding to commission",
|
|
249
249
|
store=True,
|
|
@@ -573,7 +573,7 @@ class PmsReservation(models.Model):
|
|
|
573
573
|
compute="_compute_amount_reservation",
|
|
574
574
|
tracking=True,
|
|
575
575
|
)
|
|
576
|
-
price_tax = fields.
|
|
576
|
+
price_tax = fields.Monetary(
|
|
577
577
|
string="Taxes Amount",
|
|
578
578
|
help="Total of taxes in a reservation",
|
|
579
579
|
readonly=True,
|
|
@@ -594,7 +594,7 @@ class PmsReservation(models.Model):
|
|
|
594
594
|
store=True,
|
|
595
595
|
compute="_compute_price_room_services_set",
|
|
596
596
|
)
|
|
597
|
-
discount = fields.
|
|
597
|
+
discount = fields.Monetary(
|
|
598
598
|
help="Discount of total price in reservation",
|
|
599
599
|
readonly=False,
|
|
600
600
|
store=True,
|
|
@@ -603,7 +603,7 @@ class PmsReservation(models.Model):
|
|
|
603
603
|
tracking=True,
|
|
604
604
|
)
|
|
605
605
|
|
|
606
|
-
services_discount = fields.
|
|
606
|
+
services_discount = fields.Monetary(
|
|
607
607
|
help="Services discount",
|
|
608
608
|
readonly=False,
|
|
609
609
|
store=True,
|
|
@@ -1441,22 +1441,17 @@ class PmsReservation(models.Model):
|
|
|
1441
1441
|
record.checkin_partner_count = 0
|
|
1442
1442
|
record.checkin_partner_pending_count = 0
|
|
1443
1443
|
|
|
1444
|
-
@api.depends("room_type_id", "partner_id")
|
|
1444
|
+
@api.depends("room_type_id", "partner_id", "folio_id.fiscal_position_id")
|
|
1445
1445
|
def _compute_tax_ids(self):
|
|
1446
1446
|
for record in self:
|
|
1447
1447
|
record = record.with_company(record.company_id)
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
record.tax_ids = record.company_id.self_billed_tax_ids
|
|
1453
|
-
else:
|
|
1454
|
-
product = self.env["product.product"].browse(
|
|
1455
|
-
record.room_type_id.product_id.id
|
|
1456
|
-
)
|
|
1457
|
-
record.tax_ids = product.taxes_id.filtered(
|
|
1448
|
+
product = record.room_type_id.product_id
|
|
1449
|
+
fiscal_position = record.folio_id.fiscal_position_id
|
|
1450
|
+
record.tax_ids = fiscal_position.map_tax(
|
|
1451
|
+
product.taxes_id.filtered(
|
|
1458
1452
|
lambda t, r=record: t.company_id == r.env.company
|
|
1459
1453
|
)
|
|
1454
|
+
)
|
|
1460
1455
|
|
|
1461
1456
|
@api.depends("reservation_line_ids", "reservation_line_ids.room_id")
|
|
1462
1457
|
def _compute_rooms(self):
|
|
@@ -2500,7 +2495,7 @@ class PmsReservation(models.Model):
|
|
|
2500
2495
|
def _compute_tourist_tax_lines(self):
|
|
2501
2496
|
"""Return ORM commands to sync tourist tax services on this reservation."""
|
|
2502
2497
|
self.ensure_one()
|
|
2503
|
-
if self.reservation_type != "normal":
|
|
2498
|
+
if self.reservation_type != "normal" or not self.overnight_room:
|
|
2504
2499
|
return False
|
|
2505
2500
|
tax_products = self._get_tourist_tax_products(
|
|
2506
2501
|
pms_property_id=self.pms_property_id.id
|
|
@@ -73,7 +73,7 @@ class PmsReservationLine(models.Model):
|
|
|
73
73
|
pricelist_item_id = fields.Many2one(
|
|
74
74
|
comodel_name="product.pricelist.item", compute="_compute_pricelist_item_id"
|
|
75
75
|
)
|
|
76
|
-
price = fields.
|
|
76
|
+
price = fields.Monetary(
|
|
77
77
|
help="The price in a reservation line",
|
|
78
78
|
store=True,
|
|
79
79
|
readonly=False,
|
|
@@ -105,7 +105,7 @@ class PmsReservationLine(models.Model):
|
|
|
105
105
|
default=0.0,
|
|
106
106
|
digits=("Discount"),
|
|
107
107
|
)
|
|
108
|
-
price_day_total = fields.
|
|
108
|
+
price_day_total = fields.Monetary(
|
|
109
109
|
string="Final price",
|
|
110
110
|
help="Get the price with discount applied",
|
|
111
111
|
store=True,
|
|
@@ -183,7 +183,7 @@ class PmsService(models.Model):
|
|
|
183
183
|
store=True,
|
|
184
184
|
compute="_compute_amount_service",
|
|
185
185
|
)
|
|
186
|
-
price_tax = fields.
|
|
186
|
+
price_tax = fields.Monetary(
|
|
187
187
|
string="Taxes Amount",
|
|
188
188
|
help="Total of taxes in service",
|
|
189
189
|
readonly=True,
|
|
@@ -191,7 +191,7 @@ class PmsService(models.Model):
|
|
|
191
191
|
compute="_compute_amount_service",
|
|
192
192
|
)
|
|
193
193
|
|
|
194
|
-
discount = fields.
|
|
194
|
+
discount = fields.Monetary(
|
|
195
195
|
help="Discount of total price",
|
|
196
196
|
readonly=False,
|
|
197
197
|
store=True,
|
|
@@ -232,24 +232,16 @@ class PmsService(models.Model):
|
|
|
232
232
|
origin = record.reservation_id if record.reservation_id else record.folio_id
|
|
233
233
|
record.pricelist_id = origin.pricelist_id
|
|
234
234
|
|
|
235
|
-
@api.depends("product_id", "folio_id.
|
|
235
|
+
@api.depends("product_id", "folio_id.fiscal_position_id")
|
|
236
236
|
def _compute_tax_ids(self):
|
|
237
237
|
for service in self:
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
else service.folio_id.partner_id
|
|
242
|
-
)
|
|
243
|
-
if (
|
|
244
|
-
partner == service.company_id.partner_id
|
|
245
|
-
and service.company_id.self_billed_tax_ids
|
|
246
|
-
):
|
|
247
|
-
service.tax_ids = service.company_id.self_billed_tax_ids
|
|
248
|
-
else:
|
|
249
|
-
service.tax_ids = service.product_id.taxes_id.filtered(
|
|
238
|
+
fiscal_position = service.folio_id.fiscal_position_id
|
|
239
|
+
service.tax_ids = fiscal_position.map_tax(
|
|
240
|
+
service.product_id.taxes_id.filtered(
|
|
250
241
|
lambda r, s=service: not s.company_id
|
|
251
242
|
or r.company_id == s.company_id
|
|
252
243
|
)
|
|
244
|
+
)
|
|
253
245
|
|
|
254
246
|
@api.depends("service_line_ids", "service_line_ids.day_qty")
|
|
255
247
|
def _compute_product_qty(self):
|
|
@@ -70,7 +70,7 @@ class PmsServiceLine(models.Model):
|
|
|
70
70
|
string="Units",
|
|
71
71
|
help="Amount to be consumed per day",
|
|
72
72
|
)
|
|
73
|
-
price_unit = fields.
|
|
73
|
+
price_unit = fields.Monetary(
|
|
74
74
|
string="Unit Price",
|
|
75
75
|
help="Price per unit of service",
|
|
76
76
|
digits=("Product Price"),
|
|
@@ -89,7 +89,7 @@ class PmsServiceLine(models.Model):
|
|
|
89
89
|
store=True,
|
|
90
90
|
compute="_compute_day_amount_service",
|
|
91
91
|
)
|
|
92
|
-
price_day_tax = fields.
|
|
92
|
+
price_day_tax = fields.Monetary(
|
|
93
93
|
string="Taxes Amount",
|
|
94
94
|
help="",
|
|
95
95
|
readonly=True,
|
|
@@ -56,20 +56,3 @@ class ResCompany(models.Model):
|
|
|
56
56
|
index=True,
|
|
57
57
|
ondelete="restrict",
|
|
58
58
|
)
|
|
59
|
-
|
|
60
|
-
self_billed_journal_id = fields.Many2one(
|
|
61
|
-
string="Self billed journal",
|
|
62
|
-
help="Journal used to create self billing",
|
|
63
|
-
comodel_name="account.journal",
|
|
64
|
-
index=True,
|
|
65
|
-
ondelete="restrict",
|
|
66
|
-
)
|
|
67
|
-
self_billed_tax_ids = fields.Many2many(
|
|
68
|
-
string="Self billed taxes",
|
|
69
|
-
help="Taxes used to create self billing",
|
|
70
|
-
comodel_name="account.tax",
|
|
71
|
-
relation="company_autoinvoicing_tax_rel",
|
|
72
|
-
column1="company_id",
|
|
73
|
-
column2="tax_id",
|
|
74
|
-
domain="[('company_id', '=', id)]",
|
|
75
|
-
)
|
|
@@ -372,7 +372,7 @@ ul.auto-toc {
|
|
|
372
372
|
!! This file is generated by oca-gen-addon-readme !!
|
|
373
373
|
!! changes will be overwritten. !!
|
|
374
374
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
375
|
-
!! source digest: sha256:
|
|
375
|
+
!! source digest: sha256:88334a9c85056b26b4f5f89e9ce6f476579984c113c68111c6d106f7c2ce2903
|
|
376
376
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
|
377
377
|
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/license-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/pms/tree/16.0/pms"><img alt="OCA/pms" src="https://img.shields.io/badge/github-OCA%2Fpms-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/pms-16-0/pms-16-0-pms"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/pms&target_branch=16.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
|
|
378
378
|
<p>This module is an all-in-one property management system (PMS) focused on medium-sized properties
|
|
@@ -1479,3 +1479,86 @@ class TestPmsFolio(TestPms, AccountTestInvoicingCommon):
|
|
|
1479
1479
|
def test_pms_folio_form_creation(self):
|
|
1480
1480
|
folio_form = Form(self.env["pms.folio"])
|
|
1481
1481
|
self.assertFalse(folio_form.possible_existing_customer_ids)
|
|
1482
|
+
|
|
1483
|
+
def test_pms_folio_fiscal_position_id(self):
|
|
1484
|
+
"""
|
|
1485
|
+
Check that the fiscal_position_id field of the folio is correctly
|
|
1486
|
+
set when a partner is assigned to the folio.
|
|
1487
|
+
"""
|
|
1488
|
+
fiscal_position = self.env["account.fiscal.position"].create(
|
|
1489
|
+
{"name": "Fiscal Position Test"}
|
|
1490
|
+
)
|
|
1491
|
+
partner = (
|
|
1492
|
+
self.env["res.partner"]
|
|
1493
|
+
.with_company(self.pms_property1.company_id)
|
|
1494
|
+
.create(
|
|
1495
|
+
{
|
|
1496
|
+
"name": "Fiscal Partner",
|
|
1497
|
+
"property_account_position_id": fiscal_position.id,
|
|
1498
|
+
}
|
|
1499
|
+
)
|
|
1500
|
+
)
|
|
1501
|
+
folio = self.env["pms.folio"].create(
|
|
1502
|
+
{
|
|
1503
|
+
"pms_property_id": self.pms_property1.id,
|
|
1504
|
+
"partner_name": partner.name,
|
|
1505
|
+
"partner_id": partner.id,
|
|
1506
|
+
}
|
|
1507
|
+
)
|
|
1508
|
+
folio.env.invalidate_all()
|
|
1509
|
+
self.assertEqual(
|
|
1510
|
+
folio.fiscal_position_id.id,
|
|
1511
|
+
fiscal_position.id,
|
|
1512
|
+
"The fiscal_position_id of the folio was not "
|
|
1513
|
+
"set correctly from the partner",
|
|
1514
|
+
)
|
|
1515
|
+
|
|
1516
|
+
def test_pms_folio_priority_fiscal_position_property(self):
|
|
1517
|
+
"""
|
|
1518
|
+
Check that the fiscal_position_id field of the folio
|
|
1519
|
+
takes precedence from automatic assignation.
|
|
1520
|
+
"""
|
|
1521
|
+
fiscal_position_property = self.env["account.fiscal.position"].create(
|
|
1522
|
+
{"name": "Fiscal Position Property"}
|
|
1523
|
+
)
|
|
1524
|
+
# automatic fiscal position for US country
|
|
1525
|
+
self.env["account.fiscal.position"].create(
|
|
1526
|
+
{
|
|
1527
|
+
"name": "Automatic Fiscal Position",
|
|
1528
|
+
"auto_apply": True,
|
|
1529
|
+
"country_id": self.env.ref("base.us").id,
|
|
1530
|
+
}
|
|
1531
|
+
)
|
|
1532
|
+
pms_propert_1 = self.env["pms.property"].create(
|
|
1533
|
+
{
|
|
1534
|
+
"name": "Property with Fiscal Position",
|
|
1535
|
+
"company_id": self.env.ref("base.main_company").id,
|
|
1536
|
+
}
|
|
1537
|
+
)
|
|
1538
|
+
pms_propert_1.partner_id.property_account_position_id = (
|
|
1539
|
+
fiscal_position_property.id
|
|
1540
|
+
)
|
|
1541
|
+
partner = (
|
|
1542
|
+
self.env["res.partner"]
|
|
1543
|
+
.with_company(pms_propert_1.company_id)
|
|
1544
|
+
.create(
|
|
1545
|
+
{
|
|
1546
|
+
"name": "Fiscal Partner",
|
|
1547
|
+
"country_id": self.env.ref("base.us").id,
|
|
1548
|
+
}
|
|
1549
|
+
)
|
|
1550
|
+
)
|
|
1551
|
+
folio = self.env["pms.folio"].create(
|
|
1552
|
+
{
|
|
1553
|
+
"pms_property_id": pms_propert_1.id,
|
|
1554
|
+
"partner_name": partner.name,
|
|
1555
|
+
"partner_id": partner.id,
|
|
1556
|
+
}
|
|
1557
|
+
)
|
|
1558
|
+
folio.env.invalidate_all()
|
|
1559
|
+
self.assertEqual(
|
|
1560
|
+
folio.fiscal_position_id.id,
|
|
1561
|
+
fiscal_position_property.id,
|
|
1562
|
+
"The fiscal_position_id of the folio was not set "
|
|
1563
|
+
"correctly from the property",
|
|
1564
|
+
)
|
|
@@ -843,6 +843,64 @@ class TestRoomType(TestPms):
|
|
|
843
843
|
}
|
|
844
844
|
)
|
|
845
845
|
|
|
846
|
+
def test_room_type_board_service_by_default_constraint(self):
|
|
847
|
+
room_type = self.env["pms.room.type"].create(
|
|
848
|
+
{
|
|
849
|
+
"name": "Room Type",
|
|
850
|
+
"default_code": "Type1",
|
|
851
|
+
"pms_property_ids": self.pms_property1,
|
|
852
|
+
"class_id": self.room_type_class1.id,
|
|
853
|
+
}
|
|
854
|
+
)
|
|
855
|
+
board_service_default = self.env["pms.board.service"].create(
|
|
856
|
+
{
|
|
857
|
+
"name": "Board service 1",
|
|
858
|
+
"default_code": "c1",
|
|
859
|
+
"pms_property_ids": self.pms_property1,
|
|
860
|
+
}
|
|
861
|
+
)
|
|
862
|
+
board_service_not_default = self.env["pms.board.service"].create(
|
|
863
|
+
{
|
|
864
|
+
"name": "Board service 2",
|
|
865
|
+
"default_code": "c2",
|
|
866
|
+
"pms_property_ids": self.pms_property1,
|
|
867
|
+
}
|
|
868
|
+
)
|
|
869
|
+
board_service_second_default = self.env["pms.board.service"].create(
|
|
870
|
+
{
|
|
871
|
+
"name": "Board service 3",
|
|
872
|
+
"default_code": "c3",
|
|
873
|
+
"pms_property_ids": self.pms_property1,
|
|
874
|
+
}
|
|
875
|
+
)
|
|
876
|
+
self.env["pms.board.service.room.type"].create(
|
|
877
|
+
{
|
|
878
|
+
"pms_board_service_id": board_service_default.id,
|
|
879
|
+
"pms_room_type_id": room_type.id,
|
|
880
|
+
"pms_property_id": self.pms_property1.id,
|
|
881
|
+
"by_default": True,
|
|
882
|
+
}
|
|
883
|
+
)
|
|
884
|
+
self.env["pms.board.service.room.type"].create(
|
|
885
|
+
{
|
|
886
|
+
"pms_board_service_id": board_service_not_default.id,
|
|
887
|
+
"pms_room_type_id": room_type.id,
|
|
888
|
+
"pms_property_id": self.pms_property1.id,
|
|
889
|
+
}
|
|
890
|
+
)
|
|
891
|
+
with self.assertRaises(
|
|
892
|
+
UserError,
|
|
893
|
+
msg="Only can set one default board service",
|
|
894
|
+
):
|
|
895
|
+
self.env["pms.board.service.room.type"].create(
|
|
896
|
+
{
|
|
897
|
+
"pms_board_service_id": board_service_second_default.id,
|
|
898
|
+
"pms_room_type_id": room_type.id,
|
|
899
|
+
"pms_property_id": self.pms_property1.id,
|
|
900
|
+
"by_default": True,
|
|
901
|
+
}
|
|
902
|
+
)
|
|
903
|
+
|
|
846
904
|
def test_check_amenities_property_integrity(self):
|
|
847
905
|
self.amenity1 = self.env["pms.amenity"].create(
|
|
848
906
|
{"name": "Amenity", "pms_property_ids": self.pms_property1}
|
|
@@ -248,18 +248,11 @@
|
|
|
248
248
|
<group
|
|
249
249
|
class="oe_subtotal_footer oe_right oe_inline"
|
|
250
250
|
name="folio_total"
|
|
251
|
+
widget="monetary"
|
|
251
252
|
attrs="{'invisible':[('reservation_type', '!=', 'normal')]}"
|
|
252
253
|
>
|
|
253
|
-
<field
|
|
254
|
-
|
|
255
|
-
widget="monetary"
|
|
256
|
-
options="{'currency_field': 'currency_id'}"
|
|
257
|
-
/>
|
|
258
|
-
<field
|
|
259
|
-
name="amount_tax"
|
|
260
|
-
widget="monetary"
|
|
261
|
-
options="{'currency_field': 'currency_id'}"
|
|
262
|
-
/>
|
|
254
|
+
<field name="amount_untaxed" widget="monetary" />
|
|
255
|
+
<field name="amount_tax" widget="monetary" />
|
|
263
256
|
<div
|
|
264
257
|
class="oe_subtotal_footer_separator oe_inline o_td_label"
|
|
265
258
|
>
|
|
@@ -270,13 +263,8 @@
|
|
|
270
263
|
nolabel="1"
|
|
271
264
|
class="oe_subtotal_footer_separator"
|
|
272
265
|
widget="monetary"
|
|
273
|
-
options="{'currency_field': 'currency_id'}"
|
|
274
|
-
/>
|
|
275
|
-
<field
|
|
276
|
-
name="commission"
|
|
277
|
-
widget='monetary'
|
|
278
|
-
options="{'currency_field': 'currency_id'}"
|
|
279
266
|
/>
|
|
267
|
+
<field name="commission" widget='monetary' />
|
|
280
268
|
</group>
|
|
281
269
|
</group>
|
|
282
270
|
<group>
|
|
@@ -467,7 +455,7 @@
|
|
|
467
455
|
options='{"no_open": True}'
|
|
468
456
|
optional="hide"
|
|
469
457
|
/>
|
|
470
|
-
<field name="price_unit" />
|
|
458
|
+
<field name="price_unit" widget="monetary" />
|
|
471
459
|
<field
|
|
472
460
|
name="tax_ids"
|
|
473
461
|
widget="many2many_tags"
|
|
@@ -532,6 +520,9 @@
|
|
|
532
520
|
string="Invoicing"
|
|
533
521
|
attrs="{'invisible':[('reservation_type', '!=', 'normal')]}"
|
|
534
522
|
>
|
|
523
|
+
<group>
|
|
524
|
+
<field name="fiscal_position_id" />
|
|
525
|
+
</group>
|
|
535
526
|
<div
|
|
536
527
|
class="alert alert-info"
|
|
537
528
|
role="alert"
|
|
@@ -556,7 +547,7 @@
|
|
|
556
547
|
<field name="create_uid" />
|
|
557
548
|
<field name="date" />
|
|
558
549
|
<field name="payment_type" />
|
|
559
|
-
<field name="amount" />
|
|
550
|
+
<field name="amount" widget="monetary" />
|
|
560
551
|
<field name="partner_id" invisible="1" />
|
|
561
552
|
<field
|
|
562
553
|
name="state"
|
|
@@ -124,6 +124,7 @@
|
|
|
124
124
|
<field name="max_amount_simplified_invoice" />
|
|
125
125
|
<field name="avoid_simplified_max_amount_downpayment" />
|
|
126
126
|
<field name="invoice_reservation_note_template" />
|
|
127
|
+
<field name="property_account_position_id" />
|
|
127
128
|
</group>
|
|
128
129
|
</page>
|
|
129
130
|
<page string="Email Configuration">
|
|
@@ -498,16 +498,18 @@
|
|
|
498
498
|
</group>
|
|
499
499
|
<notebook>
|
|
500
500
|
<page name="detail" string="Detail">
|
|
501
|
+
<separator string="Nights" />
|
|
501
502
|
<field name="reservation_line_ids" nolabel="1">
|
|
502
503
|
<tree create="false" delete="false" editable="bottom">
|
|
504
|
+
<field name="currency_id" invisible="1" />
|
|
503
505
|
<field
|
|
504
506
|
name="room_id"
|
|
505
507
|
attrs="{'column_invisible': [('parent.splitted','=', False)]}"
|
|
506
508
|
/>
|
|
507
509
|
<field name="date" readonly="1" force_save="1" />
|
|
508
|
-
<field name="price" />
|
|
510
|
+
<field name="price" widget="monetary" />
|
|
509
511
|
<field name="discount" />
|
|
510
|
-
<field name="price_day_total" />
|
|
512
|
+
<field name="price_day_total" widget="monetary" />
|
|
511
513
|
<field name="cancel_discount" invisible="1" />
|
|
512
514
|
<field name="sale_channel_id" />
|
|
513
515
|
<field name="default_invoice_to" />
|
|
@@ -539,6 +541,7 @@
|
|
|
539
541
|
invisible="1"
|
|
540
542
|
readonly="1"
|
|
541
543
|
/>
|
|
544
|
+
<field name="currency_id" invisible="1" />
|
|
542
545
|
<field
|
|
543
546
|
name="pms_property_id"
|
|
544
547
|
invisible="1"
|
|
@@ -586,24 +589,38 @@
|
|
|
586
589
|
optional="show"
|
|
587
590
|
/>
|
|
588
591
|
<field name="board_service_line_id" invisible="1" />
|
|
589
|
-
<field
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
592
|
+
<field
|
|
593
|
+
name="price_subtotal"
|
|
594
|
+
optional="hide"
|
|
595
|
+
widget="monetary"
|
|
596
|
+
/>
|
|
597
|
+
<field
|
|
598
|
+
name="price_tax"
|
|
599
|
+
optional="hide"
|
|
600
|
+
widget="monetary"
|
|
601
|
+
/>
|
|
602
|
+
<field name="discount" widget="monetary" />
|
|
603
|
+
<field name="price_total" widget="monetary" />
|
|
593
604
|
<field
|
|
594
605
|
name="service_line_ids"
|
|
595
606
|
invisible="1"
|
|
596
607
|
readonly="1"
|
|
597
608
|
>
|
|
598
609
|
<tree name="Days">
|
|
599
|
-
<field name="date" />
|
|
610
|
+
<field name="date" widget="date" />
|
|
600
611
|
<field name="day_qty" />
|
|
601
612
|
<field
|
|
602
613
|
name="discount"
|
|
603
614
|
attrs="{'readonly':[('is_board_service','=', True)]}"
|
|
604
615
|
/>
|
|
605
|
-
<field
|
|
606
|
-
|
|
616
|
+
<field
|
|
617
|
+
name="price_unit"
|
|
618
|
+
widget="monetary"
|
|
619
|
+
/>
|
|
620
|
+
<field
|
|
621
|
+
name="price_day_total"
|
|
622
|
+
widget="monetary"
|
|
623
|
+
/>
|
|
607
624
|
<field
|
|
608
625
|
name="is_board_service"
|
|
609
626
|
invisible="1"
|
|
@@ -622,25 +639,21 @@
|
|
|
622
639
|
name="price_services"
|
|
623
640
|
string="Only Services"
|
|
624
641
|
widget="monetary"
|
|
625
|
-
options="{'currency_field': 'currency_id'}"
|
|
626
642
|
/>
|
|
627
643
|
<field
|
|
628
644
|
name="price_total"
|
|
629
645
|
string="Only Room"
|
|
630
646
|
widget="monetary"
|
|
631
|
-
options="{'currency_field': 'currency_id'}"
|
|
632
647
|
/>
|
|
633
648
|
<field
|
|
634
649
|
name="discount"
|
|
635
650
|
string="Discount Room"
|
|
636
651
|
widget="monetary"
|
|
637
|
-
options="{'currency_field': 'currency_id'}"
|
|
638
652
|
/>
|
|
639
653
|
<field
|
|
640
654
|
name="services_discount"
|
|
641
655
|
string="Discount Services"
|
|
642
656
|
widget="monetary"
|
|
643
|
-
options="{'currency_field': 'currency_id'}"
|
|
644
657
|
/>
|
|
645
658
|
<field name="price_subtotal" invisible="1" />
|
|
646
659
|
<div
|
|
@@ -656,7 +669,6 @@
|
|
|
656
669
|
nolabel="1"
|
|
657
670
|
class="oe_subtotal_footer_separator"
|
|
658
671
|
widget="monetary"
|
|
659
|
-
options="{'currency_field': 'currency_id'}"
|
|
660
672
|
/>
|
|
661
673
|
<field
|
|
662
674
|
name="commission_percent"
|
|
@@ -666,7 +678,6 @@
|
|
|
666
678
|
name="commission_amount"
|
|
667
679
|
string="Commission Amount"
|
|
668
680
|
widget='monetary'
|
|
669
|
-
options="{'currency_field': 'currency_id'}"
|
|
670
681
|
/>
|
|
671
682
|
<field name="invoice_status" invisible="1" />
|
|
672
683
|
<field name="currency_id" invisible="1" />
|
|
@@ -823,6 +834,7 @@
|
|
|
823
834
|
<field name="splitted" invisible="1" />
|
|
824
835
|
<field name="is_reselling" invisible="1" />
|
|
825
836
|
<field name="pricelist_id" invisible="1" />
|
|
837
|
+
<field name="currency_id" invisible="1" />
|
|
826
838
|
<field name="rooms" />
|
|
827
839
|
<field name="checkin" />
|
|
828
840
|
<field name="checkout" />
|
|
@@ -843,9 +855,23 @@
|
|
|
843
855
|
<field name="sale_channel_origin_id" optional="show" />
|
|
844
856
|
<field name="sale_channel_ids" optional="show" />
|
|
845
857
|
<field name="price_subtotal" invisible="1" />
|
|
846
|
-
<field
|
|
847
|
-
|
|
848
|
-
|
|
858
|
+
<field
|
|
859
|
+
name="price_total"
|
|
860
|
+
optional="hide"
|
|
861
|
+
sum="Total"
|
|
862
|
+
widget="monetary"
|
|
863
|
+
/>
|
|
864
|
+
<field
|
|
865
|
+
name="commission_amount"
|
|
866
|
+
optional="hide"
|
|
867
|
+
sum="Commission"
|
|
868
|
+
widget="monetary"
|
|
869
|
+
/>
|
|
870
|
+
<field
|
|
871
|
+
name="folio_pending_amount"
|
|
872
|
+
string="Folio Pending Amount"
|
|
873
|
+
widget="monetary"
|
|
874
|
+
/>
|
|
849
875
|
<field
|
|
850
876
|
name="state"
|
|
851
877
|
decoration-success="state == 'onboard'"
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<field name="model">res.users</field>
|
|
6
6
|
<field name="inherit_id" ref="base.view_users_form" />
|
|
7
7
|
<field name="arch" type="xml">
|
|
8
|
-
<xpath expr="//page[@name='access_rights']/group" position="
|
|
8
|
+
<xpath expr="//page[@name='access_rights']/group" position="after">
|
|
9
9
|
<group string="Multi Properties">
|
|
10
10
|
<field
|
|
11
11
|
string="Allowed Properties"
|
|
@@ -16,11 +16,6 @@
|
|
|
16
16
|
<span t-field="docs.identifier" />
|
|
17
17
|
</strong> / <span t-field="docs.reservation_id" />
|
|
18
18
|
</p>
|
|
19
|
-
<p class="amount"> Total amount
|
|
20
|
-
(Reservation Card): <strong>
|
|
21
|
-
<span t-field="docs.reservation_id.folio_id.amount_total" />
|
|
22
|
-
</strong>
|
|
23
|
-
</p>
|
|
24
19
|
<div class="property amount">
|
|
25
20
|
<strong>
|
|
26
21
|
<span t-field="docs.pms_property_id.name" />
|
|
@@ -182,10 +177,6 @@
|
|
|
182
177
|
<span t-field="docs.identifier" />
|
|
183
178
|
</strong> / <span t-field="docs.reservation_id" />
|
|
184
179
|
</p>
|
|
185
|
-
<p class="amount"> Total amount (Reservation Card): <strong>
|
|
186
|
-
<span t-field="docs.reservation_id.folio_id.amount_total" />
|
|
187
|
-
</strong>
|
|
188
|
-
</p>
|
|
189
180
|
<div class="property amount">
|
|
190
181
|
<strong>
|
|
191
182
|
<span t-field="docs.pms_property_id.name" />
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: odoo-addon-pms
|
|
3
|
-
Version: 16.0.0.
|
|
3
|
+
Version: 16.0.0.24.0
|
|
4
4
|
Summary: A property management system
|
|
5
5
|
Home-page: https://github.com/OCA/pms
|
|
6
6
|
Author: Commit [Sun], Odoo Community Association (OCA)
|
|
@@ -36,7 +36,7 @@ PMS (Property Management System)
|
|
|
36
36
|
!! This file is generated by oca-gen-addon-readme !!
|
|
37
37
|
!! changes will be overwritten. !!
|
|
38
38
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
39
|
-
!! source digest: sha256:
|
|
39
|
+
!! source digest: sha256:88334a9c85056b26b4f5f89e9ce6f476579984c113c68111c6d106f7c2ce2903
|
|
40
40
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
41
41
|
|
|
42
42
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
odoo/addons/pms/README.rst,sha256=
|
|
1
|
+
odoo/addons/pms/README.rst,sha256=NwZrq-MiqApYtX9kOakgwFQtZrYy0Qr6CK39O9_7XW4,3898
|
|
2
2
|
odoo/addons/pms/__init__.py,sha256=uCUbRxtCubFHrz65XPTEmSu2XU6tpojVZ8MYot9bPMg,171
|
|
3
|
-
odoo/addons/pms/__manifest__.py,sha256
|
|
3
|
+
odoo/addons/pms/__manifest__.py,sha256=-5VqIpFaY0UxL2folzy-uqggDtSNwpOuLzWthu_wu5s,4849
|
|
4
4
|
odoo/addons/pms/init_hook.py,sha256=2QMZH2wbC7SJxHUM1SQMqjdQqLITbt3w8vK5noEjIjw,518
|
|
5
5
|
odoo/addons/pms/controllers/__init__.py,sha256=ac3kwg8QNSm7JicAACF5d8vPmqDydqO8gEiPh7SIeks,25
|
|
6
6
|
odoo/addons/pms/controllers/pms_portal.py,sha256=Xkxi-vY16mSNQRhXokbLFaehb8Ni5qew_J7pDKEg-Gc,18528
|
|
@@ -21,10 +21,10 @@ odoo/addons/pms/demo/pms_folio.xml,sha256=IBTC503x2E80Z0DqhoMG6HyFy0JtbeoTplA1Hy
|
|
|
21
21
|
odoo/addons/pms/demo/pms_master_data.xml,sha256=rDgCymoZVCRJkZq40WdGs5NWg6Hd5coiJDidppDHpKA,14532
|
|
22
22
|
odoo/addons/pms/demo/pms_master_data_no_update.xml,sha256=nwjahlgP5HhiWQKmqHITO_ZdMkqL-7k2FJtTtSzbidc,234160
|
|
23
23
|
odoo/addons/pms/demo/pms_reservation.xml,sha256=R35eu4ADsBuWjopoJv1_fg_b4g8NzNYdU9t7vvCQhBA,80237
|
|
24
|
-
odoo/addons/pms/i18n/de.po,sha256=
|
|
25
|
-
odoo/addons/pms/i18n/es.po,sha256=
|
|
26
|
-
odoo/addons/pms/i18n/it.po,sha256=
|
|
27
|
-
odoo/addons/pms/i18n/pms.pot,sha256=
|
|
24
|
+
odoo/addons/pms/i18n/de.po,sha256=ziC1ii3bPSHf1eEOcLA3Fng0Y1vXrNKeaIan_bdggy4,552908
|
|
25
|
+
odoo/addons/pms/i18n/es.po,sha256=sZu-rBAd_3r5Ns7R4ud3733Tjzkv-BXzpsWz7AC53SQ,589660
|
|
26
|
+
odoo/addons/pms/i18n/it.po,sha256=mA22NAynlLrlW4C_qEddzsg7LHVAED-W3XRffzRkPHs,514020
|
|
27
|
+
odoo/addons/pms/i18n/pms.pot,sha256=wg4Qwt3Dm0o-nduQTeUGW79de65rGuci_4z5LhOMaho,433329
|
|
28
28
|
odoo/addons/pms/migrations/16.0.0.1.0/pre-migration.py,sha256=9vggjeCFTw8IGpvRlB15ltRogJpI3lHazERyb_wxYOY,2236
|
|
29
29
|
odoo/addons/pms/migrations/16.0.0.2.0/post-migration.py,sha256=AFl41LcMw2-drTltLY6L4pV2GStl5hcx0kKTYYwQ8oU,2049
|
|
30
30
|
odoo/addons/pms/migrations/16.0.0.3.0/pre-migration.py,sha256=U-EIyeKdu_pkSgUbIgzwWGizAMZXHG1ZAWt8qef2wgc,505
|
|
@@ -33,7 +33,7 @@ odoo/addons/pms/models/account_analytic_line.py,sha256=PDMCE41O3jNykfOLMrKrEnEU5
|
|
|
33
33
|
odoo/addons/pms/models/account_bank_statement.py,sha256=x3twvY5dlGhGoaGd5KacH4-2DZxufRLRKUm_rlmLT64,917
|
|
34
34
|
odoo/addons/pms/models/account_bank_statement_line.py,sha256=LCdgwgPKB7zcqvdveZOw0IU3KlXGlV_7_4X17o-xEr0,2196
|
|
35
35
|
odoo/addons/pms/models/account_journal.py,sha256=rKRrGg-mF8zikzoamEUpu1fA53d-GIQmXeTUmIRG5rU,3856
|
|
36
|
-
odoo/addons/pms/models/account_move.py,sha256=
|
|
36
|
+
odoo/addons/pms/models/account_move.py,sha256=C98kPfkjSdYb3CHGCwc619f7Vq-XGkpShNV9rAAuKkc,16727
|
|
37
37
|
odoo/addons/pms/models/account_move_line.py,sha256=spN3q7_C1qCazAUwzJ7a0qECV0vbUzXAq-UdxaZ5sq4,7371
|
|
38
38
|
odoo/addons/pms/models/account_payment.py,sha256=qEla5djD1qU5PaKKgaqQxDl9z8jBcdWl9HeyL34qQqk,8680
|
|
39
39
|
odoo/addons/pms/models/folio_sale_line.py,sha256=0F5K_1OrcBDM97gcpFB9sx8gm1naiY77-1aXIa-jA04,46045
|
|
@@ -51,28 +51,28 @@ odoo/addons/pms/models/pms_availability_plan.py,sha256=fcbazTAaAU481CE46W8y7IooP
|
|
|
51
51
|
odoo/addons/pms/models/pms_availability_plan_rule.py,sha256=DG3lNzNZiWN_Y1IcOXN_U4n8fSoaSdxFeLvEOGA3Jgk,6378
|
|
52
52
|
odoo/addons/pms/models/pms_board_service.py,sha256=QwrzILTsijuPmtReLSXtaE18kCGDV2kI-TkLfyymGFk,4976
|
|
53
53
|
odoo/addons/pms/models/pms_board_service_line.py,sha256=_E4SckqTskSuVlxAtYNnNCE8iAkN1_yjIhKFleaWC3I,3250
|
|
54
|
-
odoo/addons/pms/models/pms_board_service_room_type.py,sha256=
|
|
54
|
+
odoo/addons/pms/models/pms_board_service_room_type.py,sha256=PbDrVf50bwN49yKQDi8Sf92kxg0X3IHRLgfUzylSvt4,5783
|
|
55
55
|
odoo/addons/pms/models/pms_board_service_room_type_line.py,sha256=Xt78_qJPn4wIxiQaloPBKpIAIncBY0bjIQ6FdsxMQqk,2028
|
|
56
56
|
odoo/addons/pms/models/pms_cancelation_rule.py,sha256=G6IoM_h4XYJUqx8SlgFB7lPmwy7LBefJ4Gzreg0QUCA,3038
|
|
57
57
|
odoo/addons/pms/models/pms_checkin_partner.py,sha256=1lF0hkwwtjQMQdEi4PKfB6f_FHt1MQ9mqw7e1qh9C38,39521
|
|
58
|
-
odoo/addons/pms/models/pms_folio.py,sha256=
|
|
59
|
-
odoo/addons/pms/models/pms_property.py,sha256=
|
|
60
|
-
odoo/addons/pms/models/pms_reservation.py,sha256=
|
|
61
|
-
odoo/addons/pms/models/pms_reservation_line.py,sha256=
|
|
58
|
+
odoo/addons/pms/models/pms_folio.py,sha256=LIROpXxnBZmp6sI-n761Z5Et_E5txl4Bw-HrimpGHbM,108019
|
|
59
|
+
odoo/addons/pms/models/pms_property.py,sha256=v42QM9A9xULsSd770pRRUrLgPBwg46U4mtlO6kyBQeI,45832
|
|
60
|
+
odoo/addons/pms/models/pms_reservation.py,sha256=qNPGAUXL8BfRHQHXg_U4XGq2yjZJEz8_HxrcLYWqLCk,104476
|
|
61
|
+
odoo/addons/pms/models/pms_reservation_line.py,sha256=HIVtAHiDT4GU9c1A9r2xuuCViqDZen1qJAIQBSR0ukE,27669
|
|
62
62
|
odoo/addons/pms/models/pms_room.py,sha256=QsTK1yaG9VfLZHDKPXzJ5HpljqD0brBnNi17zt_v7pc,12081
|
|
63
63
|
odoo/addons/pms/models/pms_room_closure_reason.py,sha256=juZVeR1DgrpNfJEcRsDh5KSvoqM58bFGuyumeTqJWRw,903
|
|
64
64
|
odoo/addons/pms/models/pms_room_type.py,sha256=8A1t8x0eVV1kch6oSSwL_0VsVxaesnoBXN2OFOmXQMc,8796
|
|
65
65
|
odoo/addons/pms/models/pms_room_type_class.py,sha256=1xpkkTEjDVKIC-Uas70J-THszmfjmLsGEhByL40yvSU,4746
|
|
66
66
|
odoo/addons/pms/models/pms_sale_channel.py,sha256=pSvRETRwwjCUR-i2rcinpl2k_XmDij3R5YK7jTxbdYA,1653
|
|
67
|
-
odoo/addons/pms/models/pms_service.py,sha256=
|
|
68
|
-
odoo/addons/pms/models/pms_service_line.py,sha256=
|
|
67
|
+
odoo/addons/pms/models/pms_service.py,sha256=gNFuwW_iH4TipMx_-r3TDHYVJH2H41yi-wnTer9Me5Q,25344
|
|
68
|
+
odoo/addons/pms/models/pms_service_line.py,sha256=Ut7tIfNZvwase1S3z1MqtitK1W7hBXqm_n6Vc2p-wWs,8331
|
|
69
69
|
odoo/addons/pms/models/pms_team_member.py,sha256=jAV0VoIdK7EmAR9HL6Eq_jgWzcRq66dsAVnpqn0zCmQ,1095
|
|
70
70
|
odoo/addons/pms/models/pms_ubication.py,sha256=aXrbS-VO8OGULPW-W28wd9U5N1TwOgY6H34uNWasqkY,1602
|
|
71
71
|
odoo/addons/pms/models/product_pricelist.py,sha256=eim9Zg8GMFP7G2nsSxDQrRduhtwdKi-wvkQShc2vF84,7942
|
|
72
72
|
odoo/addons/pms/models/product_pricelist_item.py,sha256=TOBShwU2Hh3ni2JpqydlLDmg5WJeQGcyV4l6dVIYppE,10433
|
|
73
73
|
odoo/addons/pms/models/product_product.py,sha256=kN8LSMtu-nHV-EN5SSd63mBtFm0_qqFpoXT1jqeIjxA,1963
|
|
74
74
|
odoo/addons/pms/models/product_template.py,sha256=IJ7zw2-GfepoOuSXV9yHAGNXwfmVlEOc0wfwuewwIYs,5255
|
|
75
|
-
odoo/addons/pms/models/res_company.py,sha256=
|
|
75
|
+
odoo/addons/pms/models/res_company.py,sha256=vkwuusDYau9a5Srh0w6So2SxxSSzeyXoGkxLSCfwG9A,1885
|
|
76
76
|
odoo/addons/pms/models/res_country.py,sha256=xo0BuKE1ZYTd-CNLi1Owh-qGF4krai7hmPUy2sBjIdM,196
|
|
77
77
|
odoo/addons/pms/models/res_partner.py,sha256=ruGbPxfjRxRpWa5J5bmqng8hp_GepwOJk-qVeJyOv9A,31799
|
|
78
78
|
odoo/addons/pms/models/res_partner_category.py,sha256=OQvfUDY8tSk-2KeKtSLuC0pZHH5DarR8kSmqRW2bh2A,179
|
|
@@ -94,7 +94,7 @@ odoo/addons/pms/security/ir.model.access.csv,sha256=yLqMoKZR8eAuUWOm9Fys0JCeCZlo
|
|
|
94
94
|
odoo/addons/pms/security/pms_security.xml,sha256=ojrBeQtkn1D7EPnaVLRf4hT60JB4K2ma00hr9vv-LTo,13646
|
|
95
95
|
odoo/addons/pms/static/description/avatar.png,sha256=CWIs64cZDPrrZVmRCyV_cD_h03lWUoQikvCllgrsELY,4370
|
|
96
96
|
odoo/addons/pms/static/description/icon.png,sha256=_y1zF9kLND2nIpLMurvkkyiMfUq53JN26oN7_h-PfH0,24626
|
|
97
|
-
odoo/addons/pms/static/description/index.html,sha256=
|
|
97
|
+
odoo/addons/pms/static/description/index.html,sha256=gW7Rwf9PCFzPGFLMmbqx1wqFQis41EyHsdbfNe-U1zI,14070
|
|
98
98
|
odoo/addons/pms/static/img/icon-door.svg,sha256=Vt62k1RKXIt7zha9_uZJKPrlgdEUto9d2q_IEbxRigI,1514
|
|
99
99
|
odoo/addons/pms/static/img/icon-mail.svg,sha256=H0NQ5fACCKoJ7KLfPQvaHMwhD2qNk6-T7FEkoW9r0Vo,950
|
|
100
100
|
odoo/addons/pms/static/img/icon-phone.svg,sha256=T03z7if6caEBtf_F_3HnRi6AgNeZxbgCGWeGzMMjZlw,1340
|
|
@@ -108,7 +108,7 @@ odoo/addons/pms/tests/test_pms_availability_plan_rules.py,sha256=yukdmwgYJuDy1G3
|
|
|
108
108
|
odoo/addons/pms/tests/test_pms_board_service.py,sha256=GEXYxLAEj4QG8rZjg-PPZMEwEE2Xe17JibjodCILclA,15364
|
|
109
109
|
odoo/addons/pms/tests/test_pms_booking_engine.py,sha256=2Rxxl6NWI6w3ZBBu8BNEGKyQlDrvipO_JCVtyW8q3A0,32268
|
|
110
110
|
odoo/addons/pms/tests/test_pms_checkin_partner.py,sha256=RFt5-dJqnfL1RgaFJ-6m8myQ-5SMDk8It3ApoDYK4Fw,58387
|
|
111
|
-
odoo/addons/pms/tests/test_pms_folio.py,sha256=
|
|
111
|
+
odoo/addons/pms/tests/test_pms_folio.py,sha256=ZLAuXCyDUX1D2rCl5EUfJmDKngcegXLg6QTwtBsJbXk,55589
|
|
112
112
|
odoo/addons/pms/tests/test_pms_folio_invoice.py,sha256=BcrPyBWfjCWy5YTdh4RUEaKLS2UHQv1WJTMbq2vhyeg,35219
|
|
113
113
|
odoo/addons/pms/tests/test_pms_folio_prices.py,sha256=tBqz6AyowOMStRM3-trLbkLpO3RoFvq3_U6zO3pxJQM,288
|
|
114
114
|
odoo/addons/pms/tests/test_pms_folio_sale_line.py,sha256=2ulz1TfCtaANlKI3MqNWuhrOREJ90BgX1uJnhptfPug,52316
|
|
@@ -121,7 +121,7 @@ odoo/addons/pms/tests/test_pms_res_users.py,sha256=J0JBA4s_Mz4yh6huw88lfNFdZk4kr
|
|
|
121
121
|
odoo/addons/pms/tests/test_pms_reservation.py,sha256=ikjk8ii4cRIRTaA0DvzQ8Y5UWISi11xu_BvrxeJ7sig,131487
|
|
122
122
|
odoo/addons/pms/tests/test_pms_reservation_line.py,sha256=XMTYVRrJNl90GVHy9Vnct2YIehU_yeBXaFkSGhaCCz4,7547
|
|
123
123
|
odoo/addons/pms/tests/test_pms_room.py,sha256=BDqylLF77gCs4au7JrWVXjcFZjlDQipS5pa_P0hmOrM,15773
|
|
124
|
-
odoo/addons/pms/tests/test_pms_room_type.py,sha256=
|
|
124
|
+
odoo/addons/pms/tests/test_pms_room_type.py,sha256=mjRZuWcf8dgR4STTGODC-dJEuEq7_Tn7XejSKut_GB4,35185
|
|
125
125
|
odoo/addons/pms/tests/test_pms_room_type_class.py,sha256=exoUeuOCVrvycQh_A1OZDImdcrMsIqMonPRS-jLzDE4,13547
|
|
126
126
|
odoo/addons/pms/tests/test_pms_sale_channel.py,sha256=K44NzC2Rye6vMYhAttplV1P5mhAChFwVMM954sPwnqc,4181
|
|
127
127
|
odoo/addons/pms/tests/test_pms_service.py,sha256=Hx_s7dzygxjR8uxCcrCy_i0g3pOsYTaZlNyEGMt2SaA,38679
|
|
@@ -152,9 +152,9 @@ odoo/addons/pms/views/pms_board_service_room_type_views.xml,sha256=GQHsAROcA1crZ
|
|
|
152
152
|
odoo/addons/pms/views/pms_board_service_views.xml,sha256=3Vy3p87HgnvjAyC1M8GZma_YVEzEmRRBS8K5EYX_Rnc,2293
|
|
153
153
|
odoo/addons/pms/views/pms_cancelation_rule_views.xml,sha256=dyyvG86ti1KGRi8q9qf_RUDWbtiomn08n7po2overUs,3127
|
|
154
154
|
odoo/addons/pms/views/pms_checkin_partner_views.xml,sha256=-BudQeFfeo8No_uDwdsmee7jEWiGNFHEDdAbrr0gdM4,30965
|
|
155
|
-
odoo/addons/pms/views/pms_folio_views.xml,sha256=
|
|
156
|
-
odoo/addons/pms/views/pms_property_views.xml,sha256=
|
|
157
|
-
odoo/addons/pms/views/pms_reservation_views.xml,sha256=
|
|
155
|
+
odoo/addons/pms/views/pms_folio_views.xml,sha256=g-Lzqs3lodmx8GazUlTi38S9DCwCeZvM62925wST5iQ,42942
|
|
156
|
+
odoo/addons/pms/views/pms_property_views.xml,sha256=OB4guPEs6ckD57LU6vD60MD6lNNcka6j4rJnN-57ciQ,14781
|
|
157
|
+
odoo/addons/pms/views/pms_reservation_views.xml,sha256=GmOng51r7jmPJQKLc85vMS62zWStm8hxqF8CDUDQsPE,59390
|
|
158
158
|
odoo/addons/pms/views/pms_room_closure_reason_views.xml,sha256=Z5UvC02tvgS9TRI0zTG7J83_MKSDOw47tuGSCdMwuJ8,1643
|
|
159
159
|
odoo/addons/pms/views/pms_room_type_class_views.xml,sha256=kzJHj6Bze6jjGeqwSbFEq-TSTgadx1p6bQgryRx3Wms,2763
|
|
160
160
|
odoo/addons/pms/views/pms_room_type_views.xml,sha256=v0yKCLjPTObsD3lBgojiPzNTYPQOFcN9TPfMpg2m-fE,5848
|
|
@@ -172,9 +172,9 @@ odoo/addons/pms/views/res_partner_category.xml,sha256=PQ5bKkTCH0vCPdSK3SVAWJB4-F
|
|
|
172
172
|
odoo/addons/pms/views/res_partner_id_category_views.xml,sha256=x5wngO1hD-idPO4HwZpwVQ_Xds7F8LWoaDo89g8D53M,1185
|
|
173
173
|
odoo/addons/pms/views/res_partner_id_number_views.xml,sha256=I8SJAFC-B0z8vRWJYR0oZ53OBbkS8xeJ1Vbu-O00R18,1117
|
|
174
174
|
odoo/addons/pms/views/res_partner_views.xml,sha256=MjOCL5SiavJq-Kk-5iqCf-aR0OTsii6Y-h_6WmpAJ70,8695
|
|
175
|
-
odoo/addons/pms/views/res_users_views.xml,sha256=
|
|
175
|
+
odoo/addons/pms/views/res_users_views.xml,sha256=bkNhDj75dnK93YnCfl1ELNvobE-Xhg3SoiFZKn5OByc,927
|
|
176
176
|
odoo/addons/pms/views/reservation_portal_templates.xml,sha256=i6Bz8mrMHbzy1vx9AbqG4uwr91OtX6cX37TZVLzS3eE,13530
|
|
177
|
-
odoo/addons/pms/views/traveller_report_template.xml,sha256=
|
|
177
|
+
odoo/addons/pms/views/traveller_report_template.xml,sha256=2MkRo0TsmmR-3vZvg_X4Hnad3QBLN6IV6SLmS8Qggec,15466
|
|
178
178
|
odoo/addons/pms/wizards/__init__.py,sha256=GW9sc4cVPs-3swCnUa8pOdcmdQbGzKDrhpSxALLaZ9A,375
|
|
179
179
|
odoo/addons/pms/wizards/folio_make_invoice_advance.py,sha256=37oO_pj3QHrj4VxVpgzsvoNuPJiL-Al9IzPRZXOGjCc,13354
|
|
180
180
|
odoo/addons/pms/wizards/folio_make_invoice_advance_views.xml,sha256=5lWRyW7C_h2y6lkNG2gled_l40eUP2hnjqjA-tQfp_A,6308
|
|
@@ -196,7 +196,7 @@ odoo/addons/pms/wizards/wizard_several_partners.py,sha256=nOYHInUyT7bV4opyk03_i-
|
|
|
196
196
|
odoo/addons/pms/wizards/wizard_several_partners.xml,sha256=tuSIYJiqN_EprlwI7cBrteMPblHoybcHBDrHO1di0DY,1382
|
|
197
197
|
odoo/addons/pms/wizards/wizard_split_join_swap_reservation.py,sha256=D0AFrimn4lViWSnQ0sgM1msVniUudbgqvS0hRIBkXfQ,13751
|
|
198
198
|
odoo/addons/pms/wizards/wizard_split_join_swap_reservation.xml,sha256=MDyXIdQfumI7WnXqO5E4fCqM4BW32CIwS97tF66gBy8,5940
|
|
199
|
-
odoo_addon_pms-16.0.0.
|
|
200
|
-
odoo_addon_pms-16.0.0.
|
|
201
|
-
odoo_addon_pms-16.0.0.
|
|
202
|
-
odoo_addon_pms-16.0.0.
|
|
199
|
+
odoo_addon_pms-16.0.0.24.0.dist-info/METADATA,sha256=DlY8vwzNfabDrvQYC_jET2O8sNMkSe8cCYkYbwHLiLQ,5023
|
|
200
|
+
odoo_addon_pms-16.0.0.24.0.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
|
|
201
|
+
odoo_addon_pms-16.0.0.24.0.dist-info/top_level.txt,sha256=qBj40grFkGOfDZ2WDSw3y1RnDlgG0u8rP8pvGNdbz4w,5
|
|
202
|
+
odoo_addon_pms-16.0.0.24.0.dist-info/RECORD,,
|
|
File without changes
|
{odoo_addon_pms-16.0.0.15.0.10.dist-info → odoo_addon_pms-16.0.0.24.0.dist-info}/top_level.txt
RENAMED
|
File without changes
|