summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIT Fixcomart <it@fixcomart.co.id>2025-06-24 03:58:01 +0000
committerIT Fixcomart <it@fixcomart.co.id>2025-06-24 03:58:01 +0000
commitb6ec1d3c1b12a637d7c4ec9c6818167e77d3d3cc (patch)
tree024ac570778e483e277e8d630af98c54ae398fe8
parentedbad751e9f370285baa221ca26a683d202e8541 (diff)
parent6ae8ac2d0a560d850e7e8dc2ce87157f3e5a9669 (diff)
Merged in cust_comm (pull request #342)
Cust comm
-rw-r--r--indoteknik_custom/models/commision.py51
-rw-r--r--indoteknik_custom/views/customer_commision.xml8
-rw-r--r--indoteknik_custom/views/ir_sequence.xml32
3 files changed, 74 insertions, 17 deletions
diff --git a/indoteknik_custom/models/commision.py b/indoteknik_custom/models/commision.py
index 03d32d2d..199aa106 100644
--- a/indoteknik_custom/models/commision.py
+++ b/indoteknik_custom/models/commision.py
@@ -148,6 +148,7 @@ class CustomerCommision(models.Model):
_order = 'id desc'
_inherit = ['mail.thread']
_rec_name = 'number'
+ _description = 'Customer Benefits'
number = fields.Char(string='Document No', index=True, copy=False, readonly=True)
date_from = fields.Date(string='Date From', required=True)
@@ -175,10 +176,19 @@ class CustomerCommision(models.Model):
('approved', 'Approved'),
('reject', 'Rejected'),
], string='Status')
- commision_percent = fields.Float(string='Commision %', tracking=3)
- commision_amt = fields.Float(string='Commision Amount', tracking=3)
- cashback = fields.Float(string='Cashback', compute="compute_cashback")
- total_commision = fields.Float(string='Total Commision', compute="compute_cashback")
+
+ # commision_percent = fields.Float(string='Commision %', tracking=3)
+ commision_percent = fields.Float(string='Cashback %', tracking=3)
+
+ # commision_amt = fields.Float(string='Commision Amount', tracking=3)
+ commision_amt = fields.Float(string='Cashback', tracking=3)
+
+ # cashback = fields.Float(string='Cashback', compute="compute_cashback")
+ cashback = fields.Float(string='PPh Cashback', compute="compute_cashback")
+
+ # total_commision = fields.Float(string='Total Commision', compute="compute_cashback")
+ total_commision = fields.Float(string='Cashback yang dibayarkan', 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')
@@ -348,14 +358,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/customer_commision.xml b/indoteknik_custom/views/customer_commision.xml
index 4be0840f..d5fb1d70 100644
--- a/indoteknik_custom/views/customer_commision.xml
+++ b/indoteknik_custom/views/customer_commision.xml
@@ -70,7 +70,7 @@
statusbar_visible="draft,pengajuan1,pengajuan2,pengajuan3,pengajuan4,approved"
statusbar_colors='{"reject":"red"}'/>
</header>
- <sheet string="Customer Commision">
+ <sheet string="Customer Benefits">
<div class="oe_button_box" name="button_box"/>
<group>
<group>
@@ -173,7 +173,7 @@
</record>
<record id="customer_commision_action" model="ir.actions.act_window">
- <field name="name">Customer Commision</field>
+ <field name="name">Customer Benefits</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">customer.commision</field>
<field name="search_view_id" ref="view_customer_commision_filter"/>
@@ -181,14 +181,14 @@
</record>
<menuitem id="menu_customer_commision_acct"
- name="Customer Commision"
+ name="Customer Benefits"
action="customer_commision_action"
parent="account.menu_finance_entries"
sequence="113"
/>
<menuitem id="menu_customer_commision_sales"
- name="Customer Commision"
+ name="Customer Benefits"
action="customer_commision_action"
parent="sale.product_menu_catalog"
sequence="101"
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">