diff options
| author | Azka Nathan <darizkyfaz@gmail.com> | 2025-06-18 10:51:56 +0700 |
|---|---|---|
| committer | Azka Nathan <darizkyfaz@gmail.com> | 2025-06-18 10:52:19 +0700 |
| commit | 587547a2689b4d089302dfb50feb2f876f2633d0 (patch) | |
| tree | e4becf36f2aa3fbb40256ef1750340e1caf43a49 | |
| parent | e2678c3729217dc3f6d3fe9053b53c06c6890fbb (diff) | |
push
| -rw-r--r-- | indoteknik_custom/models/commision.py | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/indoteknik_custom/models/commision.py b/indoteknik_custom/models/commision.py index d3392a0c..03d32d2d 100644 --- a/indoteknik_custom/models/commision.py +++ b/indoteknik_custom/models/commision.py @@ -177,8 +177,9 @@ class CustomerCommision(models.Model): ], string='Status') commision_percent = fields.Float(string='Commision %', tracking=3) commision_amt = fields.Float(string='Commision Amount', tracking=3) - cashback = fields.Float(string='Cashback', tracking=3) - total_commision = fields.Float(string='Total Commision', tracking=3) + cashback = fields.Float(string='Cashback', compute="compute_cashback") + total_commision = fields.Float(string='Total Commision', compute="compute_cashback") + total_cashback = fields.Float(string='Total Cashback') commision_amt_text = fields.Char(string='Commision Amount Text', compute='compute_delivery_amt_text') total_dpp = fields.Float(string='Total DPP', compute='_compute_total_dpp') commision_type = fields.Selection([ @@ -318,9 +319,6 @@ class CustomerCommision(models.Model): if self.commision_amt == 0: self.commision_amt = self.commision_percent * self.total_dpp // 100 - if self.commision_type == 'cashback': - self.cashback = self.commision_amt * 0.15 - self.total_commision = self.commision_amt * 0.85 @api.constrains('commision_amt') def _onchange_commision_amt(self): @@ -333,11 +331,13 @@ class CustomerCommision(models.Model): if self.total_dpp > 0 and self.commision_percent == 0: self.commision_percent = (self.commision_amt / self.total_dpp) * 100 - @api.constrains('commision_type') - def _onchange_commision_amt(self): + def compute_cashback(self): if self.commision_type == 'cashback' and self.commision_amt > 0: self.cashback = self.commision_amt * 0.15 self.total_commision = self.commision_amt * 0.85 + else: + self.cashback = 0 + self.total_commision = 0 def _compute_total_dpp(self): for data in self: |
