diff options
| author | stephanchrst <stephanchrst@gmail.com> | 2024-05-20 16:35:38 +0700 |
|---|---|---|
| committer | stephanchrst <stephanchrst@gmail.com> | 2024-05-20 16:35:38 +0700 |
| commit | b88662f880bfcc03d8de4c4e272054a35acf1e4a (patch) | |
| tree | c9699f57f9040b82a0166bbd288d89a4e6572c70 /indoteknik_custom/models/ged.py | |
| parent | 92f33f2851a76bf391c0cfdee8fc0d4047e22a1d (diff) | |
refactor code dunning run to ged class
Diffstat (limited to 'indoteknik_custom/models/ged.py')
| -rw-r--r-- | indoteknik_custom/models/ged.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/indoteknik_custom/models/ged.py b/indoteknik_custom/models/ged.py index 4502ce0b..b63caf86 100644 --- a/indoteknik_custom/models/ged.py +++ b/indoteknik_custom/models/ged.py @@ -229,3 +229,32 @@ class GedApi(models.Model): return header_last_status + +class DunningRunGed(models.Model): + _inherit = 'dunning.run' + + def _get_tracking_history(self, test_awb_number): + if test_awb_number: + query = [ + ('last_status', '!=', 'POD Return'), + ('resi_tukar_faktur', '=', test_awb_number), + ('shipper_faktur_id', '=', 123) + ] + else: + query = [ + ('last_status', '!=', 'POD Return'), + ('resi_tukar_faktur', '!=', False), + ('shipper_faktur_id', '=', 123) + ] + dunnings = self.env['dunning.run'].search(query) + + for dunning in dunnings: + current_tracking = self.env['ged.tracking'].search([('awb_no', '=', dunning.resi_tukar_faktur)], limit=1) + if current_tracking: + current_tracking.unlink() + else: + ged_api = self.env['ged.api'] + last_status = ged_api.get_tracking_awb(dunning.id) + if not last_status: + dunning.last_status_awb = last_status + return |
