summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAzka Nathan <darizkyfaz@gmail.com>2024-07-31 10:38:10 +0700
committerAzka Nathan <darizkyfaz@gmail.com>2024-07-31 10:38:10 +0700
commit01b2fc531d349418ea4b53170688b909c7ea6e8c (patch)
treef050c3090ec63a2dcc3950b1f5f47c9d3db599e0
parent102d8c691a231aa7a15a522deb44b4eb2b0f4e31 (diff)
add margin validation
-rw-r--r--indoteknik_api/controllers/api_v1/sale_order.py15
-rwxr-xr-xindoteknik_custom/models/sale_order.py4
-rw-r--r--indoteknik_custom/views/mail_template_efaktur.xml2
3 files changed, 16 insertions, 5 deletions
diff --git a/indoteknik_api/controllers/api_v1/sale_order.py b/indoteknik_api/controllers/api_v1/sale_order.py
index b35da7a2..ee173d29 100644
--- a/indoteknik_api/controllers/api_v1/sale_order.py
+++ b/indoteknik_api/controllers/api_v1/sale_order.py
@@ -163,7 +163,11 @@ class SaleOrder(controller.Controller):
data = {}
sale_order = request.env['sale.order'].search(domain)
if sale_order:
- sale_order.approval_status = 'pengajuan1'
+ if sale_order._requires_approval_margin_leader():
+ sale_order.approval_status = 'pengajuan2'
+ elif sale_order._requires_approval_margin_manager():
+ sale_order.approval_status = 'pengajuan1'
+
data = request.env['sale.order'].api_v1_single_response(
sale_order, context='with_detail')
@@ -198,7 +202,10 @@ class SaleOrder(controller.Controller):
sale_order.web_approval = 'cust_%s' % partner.web_role
if sale_order.web_approval in ['cust_procurement', 'cust_director']:
- sale_order.approval_status = 'pengajuan1'
+ if sale_order._requires_approval_margin_leader():
+ sale_order.approval_status = 'pengajuan2'
+ elif sale_order._requires_approval_margin_manager():
+ sale_order.approval_status = 'pengajuan1'
return self.response('success')
@@ -448,6 +455,10 @@ class SaleOrder(controller.Controller):
sale_order.apply_voucher()
cart_ids = [x['cart_id'] for x in carts]
+ if sale_order._requires_approval_margin_leader(): #jika ada error tambahkan kondisi if params['value']['type'] == 'sale_order':
+ sale_order.approval_status = 'pengajuan2'
+ elif sale_order._requires_approval_margin_manager():
+ sale_order.approval_status = 'pengajuan1'
# user_cart.browse(cart_ids).unlink()
return self.response({
'id': sale_order.id,
diff --git a/indoteknik_custom/models/sale_order.py b/indoteknik_custom/models/sale_order.py
index 3f23f65d..376ae20a 100755
--- a/indoteknik_custom/models/sale_order.py
+++ b/indoteknik_custom/models/sale_order.py
@@ -661,10 +661,10 @@ class SaleOrder(models.Model):
return False
def _requires_approval_margin_leader(self):
- return self.total_percent_margin <= 15 and not self.env.user.is_leader
+ return self.total_percent_margin <= 13 and not self.env.user.is_leader
def _requires_approval_margin_manager(self):
- return self.total_percent_margin <= 22 and not self.env.user.is_leader and not self.env.user.is_sales_manager
+ return self.total_percent_margin <= 20 and not self.env.user.is_leader and not self.env.user.is_sales_manager
def _create_approval_notification(self, approval_role):
title = 'Warning'
diff --git a/indoteknik_custom/views/mail_template_efaktur.xml b/indoteknik_custom/views/mail_template_efaktur.xml
index d0e7b39a..b0637691 100644
--- a/indoteknik_custom/views/mail_template_efaktur.xml
+++ b/indoteknik_custom/views/mail_template_efaktur.xml
@@ -7,7 +7,7 @@
<field name="subject">Faktur Pajak Invoice ${object.name}</field>
<field name="email_from">pajak@indoteknik.co.id</field>
<field name="reply_to">pajak@indoteknik.co.id</field>
- <field name="email_cc">sales@indoteknik.com</field>
+ <field name="email_cc">sales@indoteknik.com,pajak@indoteknik.co.id</field>
<field name="email_to">${object.partner_id.email|safe}</field>
<field name="body_html" type="html">
<p>Dengan Hormat Bpk/Ibu ${object.partner_id.name},</p>