diff options
| author | IT Fixcomart <it@fixcomart.co.id> | 2023-07-15 06:18:06 +0000 |
|---|---|---|
| committer | IT Fixcomart <it@fixcomart.co.id> | 2023-07-15 06:18:06 +0000 |
| commit | 884524fc6d8edebb0a4cbcb03c3038bdb46b45c5 (patch) | |
| tree | 863e5c637ea589771859072c350f3c63b3faefed /indoteknik_custom/models/sale_order.py | |
| parent | b496b7907c60d8b262ddba42e55dd8485f718fce (diff) | |
| parent | 855f63e1c39ba1ff4d84360845949bc260462c83 (diff) | |
Merged in receipt-bill (pull request #52)
Receipt bill
Diffstat (limited to 'indoteknik_custom/models/sale_order.py')
| -rwxr-xr-x | indoteknik_custom/models/sale_order.py | 43 |
1 files changed, 23 insertions, 20 deletions
diff --git a/indoteknik_custom/models/sale_order.py b/indoteknik_custom/models/sale_order.py index e54b9ae2..3d0dfc17 100755 --- a/indoteknik_custom/models/sale_order.py +++ b/indoteknik_custom/models/sale_order.py @@ -8,6 +8,7 @@ import string import requests import math import json +from datetime import timedelta, date _logger = logging.getLogger(__name__) @@ -390,26 +391,28 @@ class SaleOrder(models.Model): if self.due_id and self.due_id.is_approve == False: raise UserError('Document Over Due Yang Anda Buat Belum Di Approve') - if not self.env.user.is_leader and not self.env.user.is_sales_manager: - query = [ - ('partner_id', '=', parent_id), - ('state', '=', 'posted'), - ('move_type', '=', 'out_invoice'), - ('amount_residual_signed', '>', 0) - ] - invoices = self.env['account.move'].search(query, order='invoice_date') - due_extension = self.env['due.extension'].create([{ - 'partner_id': parent_id, - 'day_extension': '3', - 'order_id': self.id, - }]) - due_extension.generate_due_line() - self.due_id = due_extension.id - if len(self.due_id.due_line) > 0: - return True - else: - due_extension.unlink() - return False + query = [ + ('partner_id', '=', parent_id), + ('state', '=', 'posted'), + ('move_type', '=', 'out_invoice'), + ('amount_residual_signed', '>', 0) + ] + invoices = self.env['account.move'].search(query, order='invoice_date') + + if invoices: + if not self.env.user.is_leader and not self.env.user.is_sales_manager: + due_extension = self.env['due.extension'].create([{ + 'partner_id': parent_id, + 'day_extension': '3', + 'order_id': self.id, + }]) + due_extension.generate_due_line() + self.due_id = due_extension.id + if len(self.due_id.due_line) > 0: + return True + else: + due_extension.unlink() + return False def _notification_margin_leader(self): if self.total_percent_margin <= 15 and not self.env.user.is_leader: |
