Files
enterprise-addons/pos_order_tracking_display/controllers/main.py
T

40 lines
1.4 KiB
Python

# -*- coding: utf-8 -*-
import werkzeug
from odoo import http
from odoo.http import request
from odoo.tools import consteq
class PosOrderTrackingDisplay(http.Controller):
@http.route("/pos-order-tracking/", auth="public", type="http", website=True)
def pos_order_tracking_display(self, access_token):
preparation_display_sudo = (
request.env["pos.prep.display"]
.sudo()
.search([("access_token", "=", access_token)], limit=1)
)
if not preparation_display_sudo:
raise werkzeug.exceptions.NotFound()
return request.render(
"pos_order_tracking_display.index",
{
"session_info": {
**request.env["ir.http"].get_frontend_session_info(),
"preparation_display": preparation_display_sudo.read(["access_token", "auto_clear", "clear_time_interval"])[0],
"initial_data": preparation_display_sudo._get_pos_orders(),
"db": request.env.cr.dbname,
},
},
)
@http.route("/pos-order-tracking/get_orders", auth="public", type="jsonrpc")
def get_orders(self, id, access_token):
pdis_sudo = request.env["pos.prep.display"].sudo().browse(id)
if not pdis_sudo.exists() or not consteq(pdis_sudo.access_token, access_token):
raise werkzeug.exceptions.NotFound()
return {'orders': pdis_sudo._get_pos_orders()}