From ab9fabaff8d3ec573f80c774b14407e75942d30d Mon Sep 17 00:00:00 2001 From: clementmbr Date: Mon, 4 Mar 2024 22:19:02 -0300 Subject: [PATCH] [IMP] changes on sale_import_base for sale_import_amazon --- sale_import_base/models/sale_channel_importer.py | 8 +++++++- sale_import_base/models/schemas.py | 2 ++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/sale_import_base/models/sale_channel_importer.py b/sale_import_base/models/sale_channel_importer.py index 25a01cf..f11a913 100644 --- a/sale_import_base/models/sale_channel_importer.py +++ b/sale_import_base/models/sale_channel_importer.py @@ -13,6 +13,11 @@ class SaleChannelImporter(models.TransientModel): chunk_id = fields.Many2one("queue.job.chunk", "Chunk") + def _get_formatted_data(self): + """Override if you need to translate the Chunk's raw data into the current + SaleOrder schemas""" + return self.chunk_id._get_data() + def _get_existing_so(self, data): ref = data["name"] return self.env["sale.order"].search( @@ -24,7 +29,8 @@ def _get_existing_so(self, data): def run(self): # Get validated sale order - data = SaleOrder(**self.chunk_id._get_data()).model_dump() + formatted_data = self._get_formatted_data() + data = SaleOrder(**formatted_data).model_dump() existing_so = self._get_existing_so(data) if existing_so: raise ValidationError( diff --git a/sale_import_base/models/schemas.py b/sale_import_base/models/schemas.py index 1d3064e..f522892 100644 --- a/sale_import_base/models/schemas.py +++ b/sale_import_base/models/schemas.py @@ -63,3 +63,5 @@ class SaleOrder(BaseModel, metaclass=ExtendableModelMeta): payment: Optional[Payment] = None pricelist_id: Optional[int] = None date_order: Optional[date] = None + is_fulfilled_by_amazon: Optional[bool] = False + state: Optional[str] = None