14.0 pms service price day (#57)

WIP: compute folio_sale_line without (5,0,0)
WIP: boardservices pricelist item sql search

* [IMP]pms: Service day with prices

* [ADD]pms: New Product price base type: Board Service

* [WIP]pms: pricelist item rule board service

* [WIP]pms: pricelist boardservice sql

* [WIP]pms: pricelist boardservice sql

* [IMP] service price per day

* [FIX] compute board_service reservation change

* [FIX] Views

* [IMP]pms: add default user_id on reservation and folio

* [IMP]pms: aler change prices reservation

* [FIX]pms: recompute reservation services board

* [DEL]pms: pricelist field on board_service_room_type

* [RFC] sale_line_ids model
This commit is contained in:
Darío Lodeiros
2021-03-30 19:34:53 +02:00
committed by GitHub
parent 5d29d69fa9
commit ec841374cf
33 changed files with 605 additions and 1143 deletions

View File

@@ -1,5 +1,3 @@
from odoo.exceptions import ValidationError
from .common import TestHotel
@@ -39,32 +37,3 @@ class TestPmsBoardServiceRoomType(TestHotel):
"class_id": self.room_type_class.id,
}
)
def test_room_type_property_integrity(self):
self._create_common_scenario()
self.room_type.pms_property_ids = [self.property1.id]
with self.assertRaises(ValidationError):
self.board_service_room_type = self.env[
"pms.board.service.room.type"
].create(
{
"pms_board_service_id": self.board_service.id,
"pms_room_type_id": self.room_type.id,
"pms_property_ids": self.property2,
}
)
def test_pricelist_property_integrity(self):
self._create_common_scenario()
self.pricelist = self.env["product.pricelist"].create(
{"name": "pricelist_1", "pms_property_ids": [self.property1.id]}
)
with self.assertRaises(ValidationError):
self.env["pms.board.service.room.type"].create(
{
"pms_board_service_id": self.board_service.id,
"pms_room_type_id": self.room_type.id,
"pricelist_id": self.pricelist.id,
"pms_property_ids": self.property2,
}
)

View File

@@ -726,51 +726,52 @@ class TestRoomTypeCodePropertyUniqueness(TestRoomType):
)
r.pms_property_ids = [(4, self.p1.id)]
def test_check_board_service_property_integrity(self):
self.company1 = self.env["res.company"].create(
{
"name": "Pms_Company_Test",
}
)
self.property1 = self.env["pms.property"].create(
{
"name": "Pms_property_test1",
"company_id": self.company1.id,
"default_pricelist_id": self.env.ref("product.list0").id,
}
)
self.property2 = self.env["pms.property"].create(
{
"name": "Pms_property_test2",
"company_id": self.company1.id,
"default_pricelist_id": self.env.ref("product.list0").id,
}
)
self.room_type_class = self.env["pms.room.type.class"].create(
{"name": "Room Type Class", "code_class": "SIN1"}
)
self.room_type = self.env["pms.room.type"].create(
{
"name": "Room Type",
"code_type": "Type1",
"pms_property_ids": self.property2,
"class_id": self.room_type_class.id,
}
)
self.board_service = self.env["pms.board.service"].create(
{
"name": "Board Service",
}
)
with self.assertRaises(ValidationError):
self.env["pms.board.service.room.type"].create(
{
"pms_board_service_id": self.board_service.id,
"pms_room_type_id": self.room_type.id,
"pricelist_id": self.env.ref("product.list0").id,
"pms_property_ids": self.property2,
}
)
# TODO: pending multi property PR
# def test_check_board_service_property_integrity(self):
# self.company1 = self.env["res.company"].create(
# {
# "name": "Pms_Company_Test",
# }
# )
# self.property1 = self.env["pms.property"].create(
# {
# "name": "Pms_property_test1",
# "company_id": self.company1.id,
# "default_pricelist_id": self.env.ref("product.list0").id,
# }
# )
# self.property2 = self.env["pms.property"].create(
# {
# "name": "Pms_property_test2",
# "company_id": self.company1.id,
# "default_pricelist_id": self.env.ref("product.list0").id,
# }
# )
# self.room_type_class = self.env["pms.room.type.class"].create(
# {"name": "Room Type Class", "code_class": "SIN1"}
# )
# self.room_type = self.env["pms.room.type"].create(
# {
# "name": "Room Type",
# "code_type": "Type1",
# "pms_property_ids": self.property2,
# "class_id": self.room_type_class.id,
# }
# )
# self.board_service = self.env["pms.board.service"].create(
# {
# "name": "Board Service",
# "pms_property_ids": self.property1,
# }
# )
# with self.assertRaises(ValidationError):
# self.env["pms.board.service.room.type"].create(
# {
# "pms_board_service_id": self.board_service.id,
# "pms_room_type_id": self.room_type.id,
# "pms_property_ids": self.property2,
# }
# )
def test_check_amenities_property_integrity(self):
self.company1 = self.env["res.company"].create(