From 490607bded7c4bffe188a224abe5ea759ea0319e Mon Sep 17 00:00:00 2001 From: Mqdd Date: Sat, 13 Dec 2025 09:09:22 +0700 Subject: improve submit performance indoteknik delivery --- indoteknik_api/controllers/api_v1/stock_picking.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'indoteknik_api/controllers/api_v1') diff --git a/indoteknik_api/controllers/api_v1/stock_picking.py b/indoteknik_api/controllers/api_v1/stock_picking.py index c19812f5..50a20877 100644 --- a/indoteknik_api/controllers/api_v1/stock_picking.py +++ b/indoteknik_api/controllers/api_v1/stock_picking.py @@ -131,9 +131,9 @@ class StockPicking(controller.Controller): # ===== Cari picking by id / picking_code ===== picking = False if scanid.isdigit() and int(scanid) < 2147483646: - picking = request.env['stock.picking'].search([('id', '=', int(scanid))], limit=0) + picking = request.env['stock.picking'].search([('id', '=', int(scanid))], limit=1) if not picking: - picking = request.env['stock.picking'].search([('picking_code', '=', scanid)], limit=0) + picking = request.env['stock.picking'].search([('picking_code', '=', scanid)], limit=1) if not picking: return self.response(code=403, description='picking not found') @@ -306,4 +306,3 @@ class StockPicking(controller.Controller): "waybill_id": data.get("courier_waybill_id") } ) - -- cgit v1.2.3 From 6eca5f88ea835d1dbd96f53af4cfe5e6437fe47f Mon Sep 17 00:00:00 2001 From: Mqdd Date: Sat, 13 Dec 2025 09:19:34 +0700 Subject: improve submit performance indoteknik delivery --- indoteknik_api/controllers/api_v1/stock_picking.py | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'indoteknik_api/controllers/api_v1') diff --git a/indoteknik_api/controllers/api_v1/stock_picking.py b/indoteknik_api/controllers/api_v1/stock_picking.py index 50a20877..19d5fe11 100644 --- a/indoteknik_api/controllers/api_v1/stock_picking.py +++ b/indoteknik_api/controllers/api_v1/stock_picking.py @@ -130,11 +130,21 @@ class StockPicking(controller.Controller): # ===== Cari picking by id / picking_code ===== picking = False - if scanid.isdigit() and int(scanid) < 2147483646: - picking = request.env['stock.picking'].search([('id', '=', int(scanid))], limit=1) - if not picking: - picking = request.env['stock.picking'].search([('picking_code', '=', scanid)], limit=1) + # if scanid.isdigit() and int(scanid) < 2147483646: + # picking = request.env['stock.picking'].search([('id', '=', int(scanid))], limit=1) + # if not picking: + # picking = request.env['stock.picking'].search([('picking_code', '=', scanid)], limit=1) + + if scanid.isdigit(): + picking = request.env['stock.picking'].browse(int(scanid)) + if not picking.exists(): + picking = False + if not picking: + picking = request.env['stock.picking'].search( + [('picking_code', '=', scanid)], + limit=1 + ) return self.response(code=403, description='picking not found') # ===== Ambil MULTIPLE SJ dari form: sj_documentations=...&sj_documentations=... ===== -- cgit v1.2.3 From 28bbc495e76b6492935f7270888872135ae4d944 Mon Sep 17 00:00:00 2001 From: Mqdd Date: Sat, 13 Dec 2025 09:20:43 +0700 Subject: return eror response --- indoteknik_api/controllers/api_v1/stock_picking.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'indoteknik_api/controllers/api_v1') diff --git a/indoteknik_api/controllers/api_v1/stock_picking.py b/indoteknik_api/controllers/api_v1/stock_picking.py index 19d5fe11..def55435 100644 --- a/indoteknik_api/controllers/api_v1/stock_picking.py +++ b/indoteknik_api/controllers/api_v1/stock_picking.py @@ -145,7 +145,8 @@ class StockPicking(controller.Controller): [('picking_code', '=', scanid)], limit=1 ) - return self.response(code=403, description='picking not found') + if not picking: + return self.response(code=403, description='picking not found') # ===== Ambil MULTIPLE SJ dari form: sj_documentations=...&sj_documentations=... ===== form = request.httprequest.form or {} -- cgit v1.2.3