summaryrefslogtreecommitdiff
path: root/indoteknik_api/controllers/api_v1
diff options
context:
space:
mode:
authorRafi Zadanly <zadanlyr@gmail.com>2023-05-08 16:52:53 +0700
committerRafi Zadanly <zadanlyr@gmail.com>2023-05-08 16:52:53 +0700
commit89066f660811621afae78946c6a15751cfbdcedb (patch)
tree02622cdfa18bb72af12d6b32d274aca93409f378 /indoteknik_api/controllers/api_v1
parent6fa5de951abc02884eb37cdc6786c0f3d141ccc5 (diff)
add delivery order line on sale order api
Diffstat (limited to 'indoteknik_api/controllers/api_v1')
-rw-r--r--indoteknik_api/controllers/api_v1/sale_order.py19
1 files changed, 17 insertions, 2 deletions
diff --git a/indoteknik_api/controllers/api_v1/sale_order.py b/indoteknik_api/controllers/api_v1/sale_order.py
index 425dd296..b199ba63 100644
--- a/indoteknik_api/controllers/api_v1/sale_order.py
+++ b/indoteknik_api/controllers/api_v1/sale_order.py
@@ -65,9 +65,9 @@ class SaleOrder(controller.Controller):
context = params['value']['context']
if context == 'quotation':
- domain += [('approval_status', '=', False)]
+ domain += ["|","|",("state","=","draft"),("state","=","sent"),("state","=","cancel")]
if not context:
- domain += [('approval_status', '!=', False)]
+ domain += ["|",("state","=","sale"),("state","=","done")]
if params['value']['name']:
name = params['value']['name'].replace(' ', '%')
@@ -235,6 +235,7 @@ class SaleOrder(controller.Controller):
'po_number': [],
'po_file': [],
'type': [],
+ 'delivery_amount': ['number', 'default:0']
})
if not params['valid']:
@@ -257,6 +258,9 @@ class SaleOrder(controller.Controller):
'partner_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'],
+ 'shipping_cost_covered': 'customer',
+ 'shipping_paid_by': 'customer'
}
if params['value']['type'] == 'sale_order':
parameters['approval_status'] = 'pengajuan1'
@@ -294,6 +298,17 @@ class SaleOrder(controller.Controller):
'price_unit': product._get_website_price_exclude_tax(),
'discount': discount
})
+
+ # Static order line for delivery
+ parameters.append({
+ 'company_id': 1,
+ 'order_id': sale_order.id,
+ 'product_id': 81384,
+ 'product_uom_qty': 1,
+ 'price_unit': params['value']['delivery_amount'],
+ 'discount': 0,
+ 'tax_id': False
+ })
request.env['sale.order.line'].create(parameters)
return self.response({
'id': sale_order.id,