summaryrefslogtreecommitdiff
path: root/indoteknik_api/controllers/api_v1
diff options
context:
space:
mode:
authorRafi Zadanly <zadanlyr@gmail.com>2023-08-01 16:16:24 +0700
committerRafi Zadanly <zadanlyr@gmail.com>2023-08-01 16:16:24 +0700
commitf371d548f434fac43595dffd9125f1d63f978157 (patch)
tree66f276000d8f8e7d51799e6721788eb579dc5ef2 /indoteknik_api/controllers/api_v1
parenta58a6148cb903cab6f34a4b5084df98436819c85 (diff)
Add sequence and for_week on banner
Diffstat (limited to 'indoteknik_api/controllers/api_v1')
-rw-r--r--indoteknik_api/controllers/api_v1/banner.py17
1 files changed, 13 insertions, 4 deletions
diff --git a/indoteknik_api/controllers/api_v1/banner.py b/indoteknik_api/controllers/api_v1/banner.py
index 1bd0fea6..79aa5fa5 100644
--- a/indoteknik_api/controllers/api_v1/banner.py
+++ b/indoteknik_api/controllers/api_v1/banner.py
@@ -1,6 +1,7 @@
from .. import controller
from odoo import http
from odoo.http import request
+from datetime import datetime
class Banner(controller.Controller):
@@ -13,14 +14,17 @@ class Banner(controller.Controller):
type = kw.get('type')
limit = int(kw.get('limit', 0))
offset = int(kw.get('offset', 0))
- order = kw.get('order')
- if not order:
- order = 'write_date DESC'
+ order = kw.get('order', 'write_date DESC')
query = [('x_status_banner', '=', 'tayang')]
if type:
query += [('x_banner_category.x_studio_field_KKVl4', '=', type)]
+ week_number = self.get_week_number_of_current_month()
+ if type == 'index-a-1':
+ order = 'sequence ASC'
+ query += [('for_week', 'in', [week_number, False])]
+
if manufacture_id:
query += [('x_relasi_manufacture', '=', int(manufacture_id))]
@@ -35,4 +39,9 @@ class Banner(controller.Controller):
'image': request.env['ir.attachment'].api_image('x_banner.banner', 'x_banner_image', banner.id),
})
- return self.response(data, headers=[('Cache-Control', 'max-age=3600, public')]) \ No newline at end of file
+ return self.response(data, headers=[('Cache-Control', 'max-age=3600, public')])
+
+ def get_week_number_of_current_month(self):
+ today = datetime.now().day
+ week_number = (today - 1) // 7 + 1
+ return min(week_number, 4) \ No newline at end of file