diff options
| author | AndriFP <113114423+andrifp@users.noreply.github.com> | 2025-09-13 13:12:54 +0700 |
|---|---|---|
| committer | AndriFP <113114423+andrifp@users.noreply.github.com> | 2025-09-13 13:12:54 +0700 |
| commit | a627a71d911dbfb54cac7c8151331f218292a9fd (patch) | |
| tree | 5d2c2629a0951eee50769412c8568a387a837bf1 | |
| parent | fc83d226a0b49c1d0423f6e3ccadd353b1c45218 (diff) | |
(andri) add chatter + fix approve
| -rw-r--r-- | indoteknik_custom/models/letter_receivable.py | 27 | ||||
| -rw-r--r-- | indoteknik_custom/views/letter_receivable.xml | 4 |
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> |
