[WIP] Fix Room Type Listener and Binding external_id

This commit is contained in:
Pablo
2018-11-09 18:43:38 +01:00
parent ceadc2fefd
commit 3d53dbf3ee
4 changed files with 12 additions and 10 deletions

View File

@@ -68,7 +68,7 @@ class NodeRoomTypeAdapter(Component):
class NodeBindingRoomTypeListener(Component):
_name = 'node.binding.room.type.listener'
_inherit = 'base.connector.listener'
_apply_on = ['node.hotel.room.type']
_apply_on = ['node.room.type']
@skip_if(lambda self, record, **kwargs: self.no_connector_export(record))
def on_record_create(self, record, fields=None):

View File

@@ -15,14 +15,14 @@ class NodeRoomTypeExporter(Component):
@api.model
def modify_room_type(self, binding):
return self.backend_adapter.modify_room_type(
binding.room_type_id,
binding.external_id,
binding.name,
binding.room_ids
)
@api.model
def delete_room_type(self, binding):
return self.backend_adapter.delete_room_type(binding.room_type_id)
return self.backend_adapter.delete_room_type(binding.external_id)
@api.model
def create_room_type(self, binding):

View File

@@ -23,12 +23,13 @@ class HotelRoomTypeImporter(Component):
node_room_type_obj = self.env['node.room.type']
for rec in results:
map_record = room_type_mapper.map_record(rec)
room_bind = node_room_type_obj.search([('external_id', '=', rec['id'])],
room_type = node_room_type_obj.search([('external_id', '=', rec['id'])],
limit=1)
if room_bind:
room_bind.write(map_record.values())
# NEED REVIEW Import a record triggers a room_type.write / room_type.create back to the node
if room_type:
room_type.write(map_record.values())
else:
room_bind.create(map_record.values(for_create=True))
room_type.create(map_record.values(for_create=True))
class NodeRoomTypeImportMapper(Component):