summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xfixco_custom/models/detail_order.py15
-rw-r--r--fixco_custom/models/stock_picking_return.py2
2 files changed, 11 insertions, 6 deletions
diff --git a/fixco_custom/models/detail_order.py b/fixco_custom/models/detail_order.py
index 674f11a..847c41e 100755
--- a/fixco_custom/models/detail_order.py
+++ b/fixco_custom/models/detail_order.py
@@ -5,7 +5,7 @@ import requests
import json
import hmac
import base64
-from datetime import datetime
+from datetime import datetime, timezone
from hashlib import sha256
import logging
@@ -68,7 +68,7 @@ class DetailOrder(models.Model):
# rec.execute_queue()
def process_queue_item(self, limit=100):
- domain = [('execute_status', '=', False)]
+ domain = [('execute_status', '=', False), ('source', '=', 'webhook')]
records = self.search(domain, order='create_date asc', limit=limit)
for rec in records:
rec.execute_queue()
@@ -324,12 +324,14 @@ class DetailOrder(models.Model):
create_at_str = json_data.get('data', [{}])[0].get('createAt')
if create_at_str:
- create_at = datetime.strptime(create_at_str, "%Y-%m-%dT%H:%M:%SZ")
+ create_at = datetime.strptime(
+ create_at_str,
+ "%Y-%m-%dT%H:%M:%SZ"
+ ).replace(tzinfo=timezone.utc)
- cutoff = datetime(2026, 1, 1) # 1 Jan 2026 UTC
+ cutoff = datetime(2026, 1, 1, 0, 0, tzinfo=timezone.utc)
if create_at >= cutoff:
-
if order_status == 'CANCELLED':
external_order_id = json_data.get('data', [{}])[0].get('externalOrderId')
order_id = json_data.get('data', [{}])[0].get('orderId')
@@ -420,6 +422,9 @@ class DetailOrder(models.Model):
self.execute_status = 'so_confirm'
else:
self.execute_status = 'so_draft'
+ else:
+ self.execute_status = 'failed'
+ self.message_error = "Tanggal order di bawah 1 januari 2026"
except Exception as e:
self.write({
diff --git a/fixco_custom/models/stock_picking_return.py b/fixco_custom/models/stock_picking_return.py
index 2e57241..625f84d 100644
--- a/fixco_custom/models/stock_picking_return.py
+++ b/fixco_custom/models/stock_picking_return.py
@@ -10,7 +10,7 @@ class ReturnPicking(models.TransientModel):
def create_returns(self):
if (
- self.env.user.id not in [12, 10, 2, 15,]
+ self.env.user.id not in [12, 10, 2, 15, 22]
and 'BU/IN' in self.picking_id.name
and 'PO/' in self.picking_id.origin
and self.picking_id.picking_type_code == 'incoming'