diff options
| -rw-r--r-- | indoteknik_api/controllers/api_v1/sale_order.py | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/indoteknik_api/controllers/api_v1/sale_order.py b/indoteknik_api/controllers/api_v1/sale_order.py index a7e027c8..b73798b0 100644 --- a/indoteknik_api/controllers/api_v1/sale_order.py +++ b/indoteknik_api/controllers/api_v1/sale_order.py @@ -85,7 +85,8 @@ class SaleOrder(controller.Controller): 'site': [], 'limit': ['default:0', 'number'], 'offset': ['default:0', 'number'], - 'context': [] + 'context': [], + 'status': [] }) limit = params['value']['limit'] offset = params['value']['offset'] @@ -116,7 +117,23 @@ class SaleOrder(controller.Controller): domain += [ ('partner_id.site_id.name', 'ilike', '%' + site + '%') ] - + if params['value']['status']: + if params['value']['status'] == 'quotation': + domain += [('state', '=', 'draft')] + elif params['value']['status'] == 'cancel': + domain += [('state', '=', 'cancel')] + elif params['value']['status'] == 'diterima': + domain += [('state', '=', 'draft')] + domain += [('is_continue_transaction', '=', True)] + domain += [('approval_status', 'in', ['pengajuan1', 'pengajuan2'])] + elif params['value']['status'] == 'diproses': + domain += [('state', '=', 'sale')] + domain += [('picking_ids.state', 'in', ['draft', 'waiting', 'confirmed', 'assigned'])] + elif params['value']['status'] == 'dikirim': + domain += [('state', '=', 'sale')] + domain += [('picking_ids.state', 'not in', ['draft', 'waiting', 'confirmed', 'assigned', 'cancel'])] + elif params['value']['status'] == 'selesai': + domain += [('state', '=', 'done')] sale_orders = request.env['sale.order'].search( domain, offset=offset, limit=limit) data = { |
