summaryrefslogtreecommitdiff
path: root/indoteknik_custom/models/commision.py
diff options
context:
space:
mode:
authorRafi Zadanly <zadanlyr@gmail.com>2024-02-26 09:18:48 +0700
committerRafi Zadanly <zadanlyr@gmail.com>2024-02-26 09:18:48 +0700
commite24d74a1ca5af90086060374dddc309e102579ea (patch)
treedf345eae2f13877ff8c56036a00ccafb70b0f486 /indoteknik_custom/models/commision.py
parentddf1dda97c1f502cbcfeb310ba106c2774b9f484 (diff)
parent6887a85d0e5aa30b6274360480eeac544a97248b (diff)
Merge branch 'production' of bitbucket.org:altafixco/indoteknik-addons into production
# Conflicts: # indoteknik_custom/security/ir.model.access.csv
Diffstat (limited to 'indoteknik_custom/models/commision.py')
-rw-r--r--indoteknik_custom/models/commision.py19
1 files changed, 16 insertions, 3 deletions
diff --git a/indoteknik_custom/models/commision.py b/indoteknik_custom/models/commision.py
index 955d1634..fe65de84 100644
--- a/indoteknik_custom/models/commision.py
+++ b/indoteknik_custom/models/commision.py
@@ -156,7 +156,17 @@ class CustomerCommision(models.Model):
# add status for type of commision, fee, rebate / cashback
# include child or not?
- @api.constrains('commision_percent')
+ @api.constrains('partner_ids')
+ def _onchange_partner_ids(self):
+ commision = self.env['cust.commision'].search([
+ ('partner_id', 'in', [rec.id for rec in self.partner_ids]),
+ ])
+
+ if commision:
+ max_commision = max(commision.mapped('commision_percent'))
+ self.commision_percent = max_commision
+
+ # @api.constrains('commision_percent', 'partner_ids')
def _onchange_commision_percent(self):
print('masuk onchange commision percent')
if self.commision_amt == 0:
@@ -165,8 +175,8 @@ class CustomerCommision(models.Model):
@api.constrains('commision_amt')
def _onchange_commision_amt(self):
print('masuk onchange commision amt')
- if self.commision_percent == 0:
- self.commision_percent = (self.commision_amt / self.total_dpp * 100)
+ if self.total_dpp > 0:
+ self.commision_percent = (self.commision_amt / self.total_dpp) * 100
def _compute_total_dpp(self):
for data in self:
@@ -208,6 +218,9 @@ class CustomerCommision(models.Model):
else:
self._generate_customer_commision_rebate()
+ self._onchange_commision_percent()
+ self._onchange_commision_amt()
+
def _generate_customer_commision_rebate(self):
for rec in self:
# partners = rec.partner_ids.child_ids + rec.partner_ids