diff options
| author | it-fixcomart <it@fixcomart.co.id> | 2025-05-31 08:56:21 +0700 |
|---|---|---|
| committer | it-fixcomart <it@fixcomart.co.id> | 2025-05-31 08:56:21 +0700 |
| commit | deba962d7368a5c4e30441b5a640102608e3dde6 (patch) | |
| tree | 66a5215405800189ab83383241982f8123e82e1b /indoteknik_api | |
| parent | f0f414383b3bd34e6fce12e68e171014c08d2a55 (diff) | |
<hafid> fix repeat order
Diffstat (limited to 'indoteknik_api')
| -rw-r--r-- | indoteknik_api/controllers/api_v1/sale_order.py | 45 |
1 files changed, 30 insertions, 15 deletions
diff --git a/indoteknik_api/controllers/api_v1/sale_order.py b/indoteknik_api/controllers/api_v1/sale_order.py index 39fa0e13..e87b357e 100644 --- a/indoteknik_api/controllers/api_v1/sale_order.py +++ b/indoteknik_api/controllers/api_v1/sale_order.py @@ -136,24 +136,39 @@ class SaleOrder(controller.Controller): ('partner_id.site_id.name', 'ilike', '%' + site + '%') ] - if params['value']['status']: - if params['value']['status'] == 'quotation': + status = params['value'].get('status') + if status: + if status == 'quotation': domain += [('state', '=', 'draft')] - elif params['value']['status'] == 'cancel': + domain += [('approval_status', '=', False)] + + elif 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': + + elif status == 'diterima': + domain += [ + ('state', '=', 'draft'), + ('approval_status', 'in', ['pengajuan1', 'pengajuan2']), + ] + + elif status == 'dikirim': + domain += [ + ('state', '=', 'sale'), + ('picking_ids.state', 'in', ['done']) + ] + + elif status == 'diproses': + domain += [ + ('state', '=', 'sale'), + ('picking_ids.state', 'in', ['draft', 'waiting', 'confirmed', 'assigned']) + ] + + elif status == 'selesai': domain += [('state', '=', 'done')] + elif status == 'all': + domain += [] + # Sorting order = None if params['value']['sort']: @@ -190,7 +205,7 @@ class SaleOrder(controller.Controller): def partner_get_sale_order_detail(self, **kw): params = self.get_request_params(kw, { 'partner_id': ['number'], - 'id': ['number'] + 'id': ['number'], }) if not params['valid']: return self.response(code=400, description=params) |
