diff options
| author | Indoteknik . <it@fixcomart.co.id> | 2025-06-20 10:04:01 +0700 |
|---|---|---|
| committer | Indoteknik . <it@fixcomart.co.id> | 2025-06-20 10:04:01 +0700 |
| commit | 8a3717c34e0968f3f6ddd7d0cc4fb18aeb218bfe (patch) | |
| tree | 2daa4062bc95db76a661f572000df65dac9f1e21 /indoteknik_custom | |
| parent | 06afce2162894ef23163062092daf00882de8a85 (diff) | |
(andri) ganti no dokumen yang lama (CC) sesuai dengan commision type yang dipilih (RB/FE/CB)
Diffstat (limited to 'indoteknik_custom')
| -rw-r--r-- | indoteknik_custom/models/commision.py | 35 | ||||
| -rw-r--r-- | indoteknik_custom/views/ir_sequence.xml | 32 |
2 files changed, 57 insertions, 10 deletions
diff --git a/indoteknik_custom/models/commision.py b/indoteknik_custom/models/commision.py index 215e2ded..46718397 100644 --- a/indoteknik_custom/models/commision.py +++ b/indoteknik_custom/models/commision.py @@ -175,7 +175,7 @@ class CustomerCommision(models.Model): ('approved', 'Approved'), ('reject', 'Rejected'), ], string='Status') - + # commision_percent = fields.Float(string='Commision %', tracking=3) commision_percent = fields.Float(string='Cashback %', tracking=3) @@ -357,14 +357,31 @@ class CustomerCommision(models.Model): @api.model def create(self, vals): - vals['number'] = self.env['ir.sequence'].next_by_code('customer.commision') or '0' - # if vals['commision_amt'] > 0: - # commision_amt = vals['commision_amt'] - # total_dpp = vals['total_dpp'] - # commision_percent = commision_amt / total_dpp * 100 - # vals['commision_percent'] = commision_percent - result = super(CustomerCommision, self).create(vals) - return result + commision_type = vals.get('commision_type') + + if commision_type == 'cashback': + sequence_code = 'customer.commision.cashback' + elif commision_type == 'fee': + sequence_code = 'customer.commision.fee' + elif commision_type == 'rebate': + sequence_code = 'customer.commision.rebate' + else: + raise UserError('Tipe komisi tidak dikenal!') + + vals['number'] = self.env['ir.sequence'].next_by_code(sequence_code) or '0' + + return super(CustomerCommision, self).create(vals) + + # @api.model + # def create(self, vals): + # vals['number'] = self.env['ir.sequence'].next_by_code('customer.commision') or '0' + # # if vals['commision_amt'] > 0: + # # commision_amt = vals['commision_amt'] + # # total_dpp = vals['total_dpp'] + # # commision_percent = commision_amt / total_dpp * 100 + # # vals['commision_percent'] = commision_percent + # result = super(CustomerCommision, self).create(vals) + # return result def action_confirm_customer_commision(self): jakarta_tz = pytz.timezone('Asia/Jakarta') diff --git a/indoteknik_custom/views/ir_sequence.xml b/indoteknik_custom/views/ir_sequence.xml index 97bf40bb..bb8848c4 100644 --- a/indoteknik_custom/views/ir_sequence.xml +++ b/indoteknik_custom/views/ir_sequence.xml @@ -131,7 +131,7 @@ <field name="number_increment">1</field> </record> - <record id="sequence_commision_customer" model="ir.sequence"> + <!-- <record id="sequence_commision_customer" model="ir.sequence"> <field name="name">Customer Commision</field> <field name="code">customer.commision</field> <field name="active">TRUE</field> @@ -139,6 +139,36 @@ <field name="padding">5</field> <field name="number_next">1</field> <field name="number_increment">1</field> + </record> --> + + <record id="sequence_commision_cashback" model="ir.sequence"> + <field name="name">Customer Commision Cashback</field> + <field name="code">customer.commision.cashback</field> + <field name="prefix">CB/%(year)s/</field> + <field name="padding">5</field> + <field name="number_next">1</field> + <field name="number_increment">1</field> + <field name="active">True</field> + </record> + + <record id="sequence_commision_fee" model="ir.sequence"> + <field name="name">Customer Commision Fee</field> + <field name="code">customer.commision.fee</field> + <field name="prefix">FE/%(year)s/</field> + <field name="padding">5</field> + <field name="number_next">1</field> + <field name="number_increment">1</field> + <field name="active">True</field> + </record> + + <record id="sequence_commision_rebate" model="ir.sequence"> + <field name="name">Customer Commision Rebate</field> + <field name="code">customer.commision.rebate</field> + <field name="prefix">RB/%(year)s/</field> + <field name="padding">5</field> + <field name="number_next">1</field> + <field name="number_increment">1</field> + <field name="active">True</field> </record> <record id="sequence_automatic_purchase" model="ir.sequence"> |
