summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndriFP <113114423+andrifp@users.noreply.github.com>2025-09-13 13:12:54 +0700
committerAndriFP <113114423+andrifp@users.noreply.github.com>2025-09-13 13:12:54 +0700
commita627a71d911dbfb54cac7c8151331f218292a9fd (patch)
tree5d2c2629a0951eee50769412c8568a387a837bf1
parentfc83d226a0b49c1d0423f6e3ccadd353b1c45218 (diff)
(andri) add chatter + fix approve
-rw-r--r--indoteknik_custom/models/letter_receivable.py27
-rw-r--r--indoteknik_custom/views/letter_receivable.xml4
2 files changed, 19 insertions, 12 deletions
diff --git a/indoteknik_custom/models/letter_receivable.py b/indoteknik_custom/models/letter_receivable.py
index 4f1395fe..2bac3754 100644
--- a/indoteknik_custom/models/letter_receivable.py
+++ b/indoteknik_custom/models/letter_receivable.py
@@ -5,9 +5,10 @@ from odoo.tools import mail, formatLang
from terbilang import Terbilang
import re
import logging
-from datetime import timedelta
+from datetime import datetime, timedelta
import babel
import base64
+import pytz
_logger = logging.getLogger(__name__)
@@ -120,23 +121,25 @@ class SuratPiutang(models.Model):
raise ValidationError(_("Format email tidak valid: %s") % rec.tujuan_email)
def action_approve(self):
+ wib = pytz.timezone('Asia/Jakarta')
+ now_wib = datetime.now(wib)
+
pimpinan_user_ids = [7] # Pak Akbar
if self.env.user.id not in pimpinan_user_ids:
raise UserError("Hanya Pimpinan yang berhak menyetujui tahap ini.")
for rec in self:
if rec.state == "approval_pimpinan":
rec.state = "sent"
- rec.send_date = fields.Datetime.now()
- # Format tanggal + bulan (tanpa tahun)
- month_map = {
- 1: "Januari", 2: "Februari", 3: "Maret", 4: "April",
- 5: "Mei", 6: "Juni", 7: "Juli", 8: "Agustus",
- 9: "September", 10: "Oktober", 11: "November", 12: "Desember",
- }
- if rec.send_date:
- target_date = rec.send_date.date() + timedelta(days=7)
- rec.seven_days_after_sent_date = f"{target_date.day} {month_map[target_date.month]}"
-
+ now_utc = now_wib.astimezone(pytz.UTC).replace(tzinfo=None)
+ rec.send_date = now_utc
+ rec.action_send_letter()
+
+ self.env.user.notify_info(
+ message=f"Surat piutang {rec.name} berhasil dikirim ke {rec.partner_id.name} ({rec.tujuan_email})",
+ title="Informasi",
+ sticky=False
+ )
+
def action_send_letter(self):
self.ensure_one()
diff --git a/indoteknik_custom/views/letter_receivable.xml b/indoteknik_custom/views/letter_receivable.xml
index 3639452c..44caadcb 100644
--- a/indoteknik_custom/views/letter_receivable.xml
+++ b/indoteknik_custom/views/letter_receivable.xml
@@ -118,6 +118,10 @@
</ul>
</div>
</sheet>
+ <div class="oe_chatter">
+ <field name="message_follower_ids" widget="mail_followers"/>
+ <field name="message_ids" widget="mail_thread"/>
+ </div>
</form>
</field>
</record>