From 27380e8bbb8be5d0a81a4c5e0410686ce1ae5997 Mon Sep 17 00:00:00 2001 From: stephanchrst Date: Wed, 22 May 2024 10:14:55 +0700 Subject: fix error param and add some validation for date kirim --- indoteknik_custom/models/ged.py | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) (limited to 'indoteknik_custom/models/ged.py') diff --git a/indoteknik_custom/models/ged.py b/indoteknik_custom/models/ged.py index a2e8bc3c..d1f70f1d 100644 --- a/indoteknik_custom/models/ged.py +++ b/indoteknik_custom/models/ged.py @@ -235,6 +235,10 @@ class GedApi(models.Model): status_detail = line['status_detail'] status = line['status'] + if status == 'Received At Warehouse' and not dunning_run.date_kirim_tukar_faktur: + dunning_run.date_kirim_tukar_faktur = line.created_at + dunning_run.copy_date_faktur() + param_line = { 'ged_tracking_id': ged_tracking_id, 'user_input': user_input, @@ -257,20 +261,21 @@ class DunningRunGed(models.Model): ged_tracking = fields.One2many('ged.tracking', 'dunning_id', string='GED Tracking', auto_join=True) ged_tracking_line = fields.One2many('ged.tracking.line', 'dunning_id', string='GED Tracking Line', auto_join=True) - def _get_tracking_history(self, test_awb_number): - if test_awb_number > 0: + def _get_tracking_history(self, awb_number='all_data'): + if awb_number == 'all_data': query = [ ('last_status_awb', '!=', 'POD Return'), - ('resi_tukar_faktur', '=', test_awb_number), - ('shipper_faktur_id', '=', 123) + ('resi_tukar_faktur', '!=', False), + ('shipper_faktur_id', '=', 123), + ('date_terima_tukar_faktur', '=', False) ] else: query = [ ('last_status_awb', '!=', 'POD Return'), - ('resi_tukar_faktur', '!=', False), - ('shipper_faktur_id', '=', 123), - ('date_terima_tukar_faktur', '=', False) + ('resi_tukar_faktur', '=', awb_number), + ('shipper_faktur_id', '=', 123) ] + dunnings = self.env['dunning.run'].search(query, limit=50) for dunning in dunnings: -- cgit v1.2.3 From c0bc0039928cdb7e2eef8e39dc5daad6e5ecfc28 Mon Sep 17 00:00:00 2001 From: stephanchrst Date: Thu, 30 May 2024 08:54:30 +0700 Subject: increase limit of tracking ged --- indoteknik_custom/models/ged.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indoteknik_custom/models/ged.py') diff --git a/indoteknik_custom/models/ged.py b/indoteknik_custom/models/ged.py index d1f70f1d..2abfb425 100644 --- a/indoteknik_custom/models/ged.py +++ b/indoteknik_custom/models/ged.py @@ -276,7 +276,7 @@ class DunningRunGed(models.Model): ('shipper_faktur_id', '=', 123) ] - dunnings = self.env['dunning.run'].search(query, limit=50) + dunnings = self.env['dunning.run'].search(query, limit=100) for dunning in dunnings: current_tracking = self.env['ged.tracking'].search([('awb_no', '=', dunning.resi_tukar_faktur)], limit=1) -- cgit v1.2.3 From a43bd9bf10855e4340bb0711d423dd517ee688b1 Mon Sep 17 00:00:00 2001 From: stephanchrst Date: Tue, 4 Jun 2024 10:25:06 +0700 Subject: add logging status --- indoteknik_custom/models/ged.py | 40 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) (limited to 'indoteknik_custom/models/ged.py') diff --git a/indoteknik_custom/models/ged.py b/indoteknik_custom/models/ged.py index 2abfb425..ef7b422a 100644 --- a/indoteknik_custom/models/ged.py +++ b/indoteknik_custom/models/ged.py @@ -124,6 +124,27 @@ class GedApi(models.Model): self.env['token.storage'].create([param]) return token + def get_tracking_awb_log(self, dunning_run): + token = self._get_token() + headers = { + 'Content-Type': 'application/json', + 'Accept': 'application/json', + 'X-Ged-Key': x_ged_key, + 'X-Ged-Password': x_ged_password, + 'Authorization': 'Bearer ' + token + } + json_data = { + 'data': { + 'awb': dunning_run.resi_tukar_faktur + } + } + response = requests.post(url_tracking, headers=headers, json=json_data) + log = { + 'body': str(json_data), + 'responses': str(response.json()) + } + self.env['ged.tracking.log'].create(log) + def get_tracking_awb(self, dunning_run): # current_time = datetime.now() # current_time = current_time.strftime('%Y-%m-%d %H:%M:%S') @@ -292,5 +313,22 @@ class DunningRunGed(models.Model): dunning.copy_date_faktur() return + def _get_tracking_history_log(self, awb_number='all_data'): + query = [ + ('last_status_awb', '!=', 'POD Return'), + ('resi_tukar_faktur', '=', awb_number), + ('shipper_faktur_id', '=', 123) + ] + + dunnings = self.env['dunning.run'].search(query, limit=1) + + for dunning in dunnings: + ged_api = self.env['ged.api'] + ged_api.get_tracking_awb_log(dunning) + return + def get_tracking_history_by_awb(self): - self._get_tracking_history(self.resi_tukar_faktur) \ No newline at end of file + self._get_tracking_history(self.resi_tukar_faktur) + + def get_tracking_history_by_awb_log(self): + self._get_tracking_history_log(self.resi_tukar_faktur) -- cgit v1.2.3