diff options
| author | Azka Nathan <darizkyfaz@gmail.com> | 2024-09-12 10:35:01 +0700 |
|---|---|---|
| committer | Azka Nathan <darizkyfaz@gmail.com> | 2024-09-12 10:35:01 +0700 |
| commit | 16acaa437f203ccfa52aba132225b2bb82ac1c79 (patch) | |
| tree | d4ce062668f1f6d2642e5280f979e60d0acf05a0 /indoteknik_api | |
| parent | f03e6dc2ee2f3cd34eca15e81cd8964c07089ef4 (diff) | |
| parent | a8e539c92236453ce7aad06d23cf117f4b7239fc (diff) | |
Merge branch 'production' into unreserved_permission
# Conflicts:
# indoteknik_api/controllers/api_v1/cart.py
# indoteknik_custom/models/sale_order.py
Diffstat (limited to 'indoteknik_api')
| -rw-r--r-- | indoteknik_api/controllers/api_v1/cart.py | 29 | ||||
| -rw-r--r-- | indoteknik_api/controllers/api_v1/category_management.py | 3 | ||||
| -rw-r--r-- | indoteknik_api/controllers/api_v1/sale_order.py | 9 |
3 files changed, 24 insertions, 17 deletions
diff --git a/indoteknik_api/controllers/api_v1/cart.py b/indoteknik_api/controllers/api_v1/cart.py index a2fd6286..6bbb812c 100644 --- a/indoteknik_api/controllers/api_v1/cart.py +++ b/indoteknik_api/controllers/api_v1/cart.py @@ -17,25 +17,28 @@ class Cart(controller.Controller): query = [('user_id', '=', user_id)] carts = user_cart.search(query, limit=limit, offset=offset, order='create_date desc') carts.write({'source': 'add_to_cart'}) - data = [] + products = [] + products_inactive = [] for cart in carts: if cart.product_id: price = cart.product_id._v2_get_website_price_include_tax() if cart.product_id.active and price > 0: - data.append({ - 'products': cart.with_context(price_for="web").get_products() - }) + product = cart.with_context(price_for="web").get_products() + for product_active in product: + products.append(product_active) else: - data.append({ - 'product_inactive': cart.with_context(price_for="web").get_products() - }) + product_inactives = cart.with_context(price_for="web").get_products() + for inactives in product_inactives: + products_inactive.append(inactives) else: - data.append({ - 'products': cart.with_context(price_for="web").get_products() - }) - data.append({ - 'product_total': user_cart.search_count(query) - }) + program = cart.with_context(price_for="web").get_products() + for programs in program: + products.append(programs) + data = { + 'product_total': user_cart.search_count(query), + 'products': products, + 'products_inactive': products_inactive + } return self.response(data) @http.route(PREFIX_USER + 'cart/count', auth='public', methods=['GET', 'OPTIONS']) diff --git a/indoteknik_api/controllers/api_v1/category_management.py b/indoteknik_api/controllers/api_v1/category_management.py index 836f4493..c0ecc6b9 100644 --- a/indoteknik_api/controllers/api_v1/category_management.py +++ b/indoteknik_api/controllers/api_v1/category_management.py @@ -2,6 +2,7 @@ from odoo import http from odoo.http import request from .. import controller + class CategoryManagement(controller.Controller): prefix = '/api/v1/' @@ -42,5 +43,3 @@ class CategoryManagement(controller.Controller): 'categories': category_id2_data, }) return self.response(data, headers=[('Cache-Control', 'max-age=3600, public')]) - - diff --git a/indoteknik_api/controllers/api_v1/sale_order.py b/indoteknik_api/controllers/api_v1/sale_order.py index 1b7c1af4..e8d18366 100644 --- a/indoteknik_api/controllers/api_v1/sale_order.py +++ b/indoteknik_api/controllers/api_v1/sale_order.py @@ -407,7 +407,7 @@ class SaleOrder(controller.Controller): 'real_invoice_id': params['value']['partner_invoice_id'], 'partner_purchase_order_name': params['value']['po_number'], 'partner_purchase_order_file': params['value']['po_file'], - 'delivery_amt': params['value']['delivery_amount'], + 'delivery_amt': params['value']['delivery_amount'] * 1.10, 'estimated_arrival_days': params['value']['estimated_arrival_days'], 'shipping_cost_covered': 'customer', 'shipping_paid_by': 'customer', @@ -460,11 +460,16 @@ class SaleOrder(controller.Controller): sale_order.apply_promotion_program() voucher_code = params['value']['voucher'] - voucher = request.env['voucher'].search([('code', '=', voucher_code)]) + voucher = request.env['voucher'].search([('code', '=', voucher_code),('apply_type', 'in', ['all', 'brand'])], limit=1) + voucher_shipping = request.env['voucher'].search([('code', '=', voucher_code),('apply_type', 'in', ['shipping'])], limit=1) if voucher and len(promotions) == 0: sale_order.voucher_id = voucher.id sale_order.apply_voucher() + if voucher_shipping and len(promotions) == 0: + sale_order.voucher_shipping_id = voucher_shipping.id + sale_order.apply_voucher_shipping() + cart_ids = [x['cart_id'] for x in carts] if sale_order._requires_approval_margin_leader(): #jika ada error tambahkan kondisi if params['value']['type'] == 'sale_order': sale_order.approval_status = 'pengajuan2' |
