summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIT Fixcomart <it@fixcomart.co.id>2023-07-17 05:57:34 +0000
committerIT Fixcomart <it@fixcomart.co.id>2023-07-17 05:57:34 +0000
commit5b1c2054e3ca176a3705c6d0a84e33867ad1c945 (patch)
treea9d46660db72cf98f8292cc774fe9393b984eb45
parent94ff2a962740492614b5f1f09e690ef8dd0b2874 (diff)
parent4170cd7bd55232de0a66880351421b054a97849b (diff)
Merged in hotfix/revisi-due-extension (pull request #53)
Hotfix/revisi due extension
-rw-r--r--indoteknik_custom/models/account_move.py13
-rw-r--r--indoteknik_custom/models/account_move_due_extension.py21
-rw-r--r--indoteknik_custom/views/account_move.xml13
3 files changed, 47 insertions, 0 deletions
diff --git a/indoteknik_custom/models/account_move.py b/indoteknik_custom/models/account_move.py
index 99439915..bc6061ee 100644
--- a/indoteknik_custom/models/account_move.py
+++ b/indoteknik_custom/models/account_move.py
@@ -1,6 +1,9 @@
from odoo import models, api, fields
from odoo.exceptions import AccessError, UserError, ValidationError
from datetime import timedelta, date
+import logging
+
+_logger = logging.getLogger(__name__)
class AccountMove(models.Model):
@@ -15,6 +18,15 @@ class AccountMove(models.Model):
shipper_faktur_id = fields.Many2one('delivery.carrier', string='Shipper Faktur')
due_extension = fields.Integer(string='Due Extension', default=0)
new_due_date = fields.Date(string='New Due')
+ counter = fields.Integer(string="Counter", default=0)
+ due_line = fields.One2many('due.extension.line', 'invoice_id', compute='_compute_due_line', string='Due Extension Lines')
+
+ def _compute_due_line(self):
+ for invoice in self:
+ invoice.due_line = self.env['due.extension.line'].search([
+ ('invoice_id', '=', invoice.id),
+ ('due_id.approval_status', '=', 'approved')
+ ])
def unlink(self):
res = super(AccountMove, self).unlink()
@@ -102,3 +114,4 @@ class AccountMove(models.Model):
add_days += line.days
due_date = tukar_date + timedelta(days=add_days)
invoice.invoice_date_due = due_date
+ \ No newline at end of file
diff --git a/indoteknik_custom/models/account_move_due_extension.py b/indoteknik_custom/models/account_move_due_extension.py
index 27c8577d..43207534 100644
--- a/indoteknik_custom/models/account_move_due_extension.py
+++ b/indoteknik_custom/models/account_move_due_extension.py
@@ -120,7 +120,10 @@ class DueExtension(models.Model):
'open_amt': invoice.amount_residual_signed
}])
count += 1
+ invoice.counter+=1
+
_logger.info("Due Extension Line generated %s" % count)
+
def unlink(self):
res = super(DueExtension, self).unlink()
@@ -135,6 +138,12 @@ class DueExtensionLine(models.Model):
_order = 'due_id, id'
due_id = fields.Many2one('due.extension', string='Due Ref', required=True, ondelete='cascade', index=True, copy=False)
+ due_description = fields.Text(string="Description", compute="_compute_due_description")
+ due_approval_status = fields.Selection([
+ ('pengajuan', 'Pengajuan'),
+ ('approved', 'Approved'),
+ ], string="Approval Status", compute="_compute_due_approval_status")
+ due_day_extension = fields.Char(string="Day Extension", compute="_compute_due_day_extension")
partner_id = fields.Many2one('res.partner', string='Customer')
invoice_id = fields.Many2one('account.move', string='Invoice')
date_invoice = fields.Date(string='Invoice Date')
@@ -145,6 +154,18 @@ class DueExtensionLine(models.Model):
due_date = fields.Date(string='Due Date', compute="_compute_due_date")
day_to_due = fields.Integer(string='Day To Due', compute="_compute_day_to_due")
+ def _compute_due_description(self):
+ for line in self:
+ line.due_description = line.due_id.description
+
+ def _compute_due_approval_status(self):
+ for line in self:
+ line.due_approval_status = line.due_id.approval_status
+
+ def _compute_due_day_extension(self):
+ for line in self:
+ line.due_day_extension = line.due_id.day_extension
+
def _compute_day_to_due(self):
for line in self:
line.day_to_due = line.invoice_id.invoice_day_to_due
diff --git a/indoteknik_custom/views/account_move.xml b/indoteknik_custom/views/account_move.xml
index 7f7fb228..a1d3eaaa 100644
--- a/indoteknik_custom/views/account_move.xml
+++ b/indoteknik_custom/views/account_move.xml
@@ -16,7 +16,20 @@
<field name="resi_tukar_faktur"/>
<field name="date_terima_tukar_faktur"/>
<field name="due_extension"/>
+ <field name="counter"/>
</field>
+ <notebook position="inside">
+ <page string="Due Extension">
+ <field name="due_line">
+ <tree>
+ <field name="due_id"/>
+ <field name="due_description"/>
+ <field name="due_day_extension"/>
+ <field name="due_approval_status"/>
+ </tree>
+ </field>
+ </page>
+ </notebook>
</field>
</record>