summaryrefslogtreecommitdiff
path: root/fixco_custom
diff options
context:
space:
mode:
Diffstat (limited to 'fixco_custom')
-rwxr-xr-xfixco_custom/models/detail_order.py23
1 files changed, 10 insertions, 13 deletions
diff --git a/fixco_custom/models/detail_order.py b/fixco_custom/models/detail_order.py
index aec9ef5..54d3a0a 100755
--- a/fixco_custom/models/detail_order.py
+++ b/fixco_custom/models/detail_order.py
@@ -123,11 +123,9 @@ class DetailOrder(models.Model):
def process_queue_item_detail(self, limit=100):
domain = [('execute_status', '=', 'detail_order')]
- records = self.search(domain, limit=limit)
+ records = self.search(domain, order='create_date asc', limit=limit)
for rec in records:
rec.execute_queue_detail()
-
- return True
def prepare_data_so(self, json_data):
data = {
@@ -180,38 +178,37 @@ class DetailOrder(models.Model):
sale_order.order_reference = order_id
sale_order.action_confirm()
+
self.picking_id = sale_order.picking_ids[0].id
+
self.picking_id.order_reference = order_id
+
self.execute_status = 'so_confirm'
-
else:
sale_orders = self.env['sale.order'].search([('order_reference', '=', order_id)])
if not sale_orders:
data['order_line'] = order_lines
+
sale_order = self.env['sale.order'].create(data)
- self.sale_id = sale_order.id if sale_order else False
+
+ self.sale_id = sale_order.id
sale_order.order_reference = order_id
sale_order.action_confirm()
+
self.picking_id = sale_order.picking_ids[0].id
self.picking_id.order_reference = order_id
+
self.execute_status = 'so_confirm'
else:
self.sale_id = sale_orders.id
self.execute_status = 'already_so'
-
- # Commit only after all operations succeed
- self.env.cr.commit()
-
+
except Exception as e:
- # Rollback on error
- self.env.cr.rollback()
self.write({
'message_error': json.dumps({
'error': str(e)
})
})
- # Optionally re-raise if you want the caller to know about the error
- raise
def sign_request(self):
signData = '$'.join(['POST', Request_URI]) + '$'