From 69b6a8f3eaa6f4169a22a7111e1ac4a01c693c36 Mon Sep 17 00:00:00 2001 From: Suherdy Yacob Date: Thu, 4 Jun 2026 14:55:14 +0700 Subject: [PATCH] refactor: restrict POS paid order history to the current day instead of including yesterday --- models/pos_order.py | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/models/pos_order.py b/models/pos_order.py index 6841452..23ce404 100644 --- a/models/pos_order.py +++ b/models/pos_order.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- from odoo import fields, models, api from odoo.osv import expression -from datetime import timedelta, datetime +from datetime import datetime import pytz @@ -10,7 +10,7 @@ class PosOrder(models.Model): @api.model def search_paid_order_ids(self, config_id, domain, limit, offset): - """Limit paid orders list loaded on POS frontend to today and the day before.""" + """Limit paid orders list loaded on POS frontend to the current day.""" user_tz_name = self.env.context.get('tz') or self.env.user.tz or 'UTC' try: user_tz = pytz.timezone(user_tz_name) @@ -18,13 +18,12 @@ class PosOrder(models.Model): user_tz = pytz.UTC today_local = fields.Date.to_date(fields.Date.context_today(self)) - yesterday_local = today_local - timedelta(days=1) - yesterday_start_local = datetime.combine(yesterday_local, datetime.min.time()) - yesterday_start_tz = user_tz.localize(yesterday_start_local) - yesterday_start_utc = yesterday_start_tz.astimezone(pytz.UTC).replace(tzinfo=None) + today_start_local = datetime.combine(today_local, datetime.min.time()) + today_start_tz = user_tz.localize(today_start_local) + today_start_utc = today_start_tz.astimezone(pytz.UTC).replace(tzinfo=None) - # Restrict domain so only orders from today and yesterday (local timezone start) are returned - domain = expression.AND([domain, [('date_order', '>=', yesterday_start_utc)]]) + # Restrict domain so only orders from the current day (local timezone start) are returned + domain = expression.AND([domain, [('date_order', '>=', today_start_utc)]]) return super(PosOrder, self).search_paid_order_ids(config_id, domain, limit, offset)