diff options
| author | Rafi Zadanly <zadanlyr@gmail.com> | 2023-01-25 11:13:47 +0700 |
|---|---|---|
| committer | Rafi Zadanly <zadanlyr@gmail.com> | 2023-01-25 11:13:47 +0700 |
| commit | 3883fef482c5c4cd13a6fc9dd73e51de82223b50 (patch) | |
| tree | ab54291b759d44473e0000ff7ae7f28d469f0eb1 /indoteknik_api/controllers/api_v1 | |
| parent | 93d049139c2be8a70d32145a89e8b6e34732d56d (diff) | |
Sale Order Detail
Diffstat (limited to 'indoteknik_api/controllers/api_v1')
| -rw-r--r-- | indoteknik_api/controllers/api_v1/content.py | 4 | ||||
| -rw-r--r-- | indoteknik_api/controllers/api_v1/sale_order.py | 24 |
2 files changed, 25 insertions, 3 deletions
diff --git a/indoteknik_api/controllers/api_v1/content.py b/indoteknik_api/controllers/api_v1/content.py index 32828244..3e175dc4 100644 --- a/indoteknik_api/controllers/api_v1/content.py +++ b/indoteknik_api/controllers/api_v1/content.py @@ -6,8 +6,8 @@ from odoo.http import request class WebsiteContent(controller.Controller): prefix = '/api/v1/' - @http.route(prefix + 'banner', auth='public', methods=['GET', 'OPTIONS']) - def get_banner(self, **kw): + @http.route(prefix + 'banner/category', auth='public', methods=['GET', 'OPTIONS']) + def get_banner_by_category(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') diff --git a/indoteknik_api/controllers/api_v1/sale_order.py b/indoteknik_api/controllers/api_v1/sale_order.py index d69f40a4..425c4b44 100644 --- a/indoteknik_api/controllers/api_v1/sale_order.py +++ b/indoteknik_api/controllers/api_v1/sale_order.py @@ -55,9 +55,31 @@ class SaleOrder(controller.Controller): ('id', '=', params['value']['id']), ('partner_id', 'in', partner_child_ids) ] + data = {} sale_order = request.env['sale.order'].search(domain) + if sale_order: + res_users = request.env['res.users'] + data = { + 'id': sale_order.id, + 'name': sale_order.name, + 'payment_term': sale_order.payment_term_id.name or '', + 'sales': sale_order.user_id.name or '', + 'date_order': self.time_to_str(sale_order.date_order, '%d/%m/%Y %H:%M:%S'), + 'purchase_order_name': sale_order.partner_purchase_order_name, + 'products': [], + 'amount_total': sale_order.amount_total, + 'address': { + 'customer': res_users.api_address_response(sale_order.partner_id), + 'invoice': res_users.api_address_response(sale_order.partner_invoice_id), + 'shipping': res_users.api_address_response(sale_order.partner_shipping_id) + } + } + for line in sale_order.order_line: + product = request.env['product.product'].api_single_response(line.product_id) + product['quantity'] = line.product_uom_qty + data['products'].append(product) - return + return self.response(data) @http.route(PREFIX_PARTNER + 'sale_order/checkout', auth='public', method=['POST', 'OPTIONS'], csrf=False) def create_partner_sale_order(self, **kw): |
