summaryrefslogtreecommitdiff
path: root/indoteknik_custom/models/commision.py
diff options
context:
space:
mode:
authorAzka Nathan <darizkyfaz@gmail.com>2025-03-05 14:02:13 +0700
committerAzka Nathan <darizkyfaz@gmail.com>2025-03-05 14:02:13 +0700
commit006c1171970a3ade5033d8bb112b7f6094b35d11 (patch)
treeff11743c553ebb6682b0640171318d9b322d427c /indoteknik_custom/models/commision.py
parent660913a45a1efe08f308d405e1011efc9744c553 (diff)
parent92b6da28414fed56732f86e1f04ea2fac3464d7d (diff)
Merge branch 'odoo-production' into dev/wms
# Conflicts: # indoteknik_custom/models/__init__.py # indoteknik_custom/models/stock_immediate_transfer.py # indoteknik_custom/models/stock_picking.py
Diffstat (limited to 'indoteknik_custom/models/commision.py')
-rw-r--r--indoteknik_custom/models/commision.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/indoteknik_custom/models/commision.py b/indoteknik_custom/models/commision.py
index 48f1c7f6..6920154a 100644
--- a/indoteknik_custom/models/commision.py
+++ b/indoteknik_custom/models/commision.py
@@ -153,6 +153,10 @@ class CustomerCommision(models.Model):
bank_account = fields.Char(string='Account No', tracking=3)
note_transfer = fields.Char(string='Keterangan')
brand_ids = fields.Many2many('x_manufactures', string='Brands')
+ payment_status = fields.Selection([
+ ('pending', 'Pending'),
+ ('payment', 'Payment'),
+ ], string='Payment Status', copy=False, readonly=True, tracking=3, default='pending')
# add status for type of commision, fee, rebate / cashback
# include child or not?
@@ -228,6 +232,20 @@ class CustomerCommision(models.Model):
raise UserError('Harus di approved oleh yang bersangkutan')
return
+ def action_confirm_customer_payment(self):
+ if self.status != 'approved':
+ raise UserError('Commision harus di approve terlebih dahulu sebelum di konfirmasi pembayarannya')
+
+ if self.payment_status == 'payment':
+ raise UserError('Customer Commision sudah berstatus Payment')
+ group_id = self.env.ref('indoteknik_custom.group_role_fat').id
+ users_in_group = self.env['res.users'].search([('groups_id', 'in', [group_id])])
+ if self.env.user.id not in users_in_group.mapped('id'):
+ raise UserError('Hanya bisa dikonfirmasi oleh FAT')
+ else:
+ self.payment_status = 'payment'
+ return
+
def generate_customer_commision(self):
if self.commision_lines:
raise UserError('Line sudah ada, tidak bisa di generate ulang')