from .. import controller from odoo import http from odoo.http import request import ast class Promotion(controller.Controller): prefix = '/api/v1/' @http.route(prefix + 'promotion/', auth='public', methods=['GET']) def get_promotion_by_id(self, **kw): if not self.authenticate(): return self.response(code=401, description='Unauthorized') base_url = request.env['ir.config_parameter'].get_param('web.base.url') id = kw.get('id') if not id: return self.response(code=400, description='id is required') data = {} id = int(id) coupon_program = request.env['coupon.program'].search([('id', '=', id)]) if coupon_program: data = { 'banner': base_url + 'api/image/coupon.program/x_studio_banner_promo/' + str(coupon_program.id) if coupon_program.x_studio_banner_promo else '', 'image': base_url + 'api/image/coupon.program/x_studio_image_promo/' + str(coupon_program.id) if coupon_program.x_studio_image_promo else '', 'name': coupon_program.name, } return self.response(data)