From 2b61b810f5b12f32bf837ab34c12d832d0be12eb Mon Sep 17 00:00:00 2001 From: AndriFP <113114423+andrifp@users.noreply.github.com> Date: Mon, 15 Sep 2025 11:48:33 +0700 Subject: (andri) edit status dan rev validasi --- indoteknik_custom/models/letter_receivable.py | 13 ++++++++----- indoteknik_custom/views/letter_receivable.xml | 8 ++++---- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/indoteknik_custom/models/letter_receivable.py b/indoteknik_custom/models/letter_receivable.py index 17963232..fe598e50 100644 --- a/indoteknik_custom/models/letter_receivable.py +++ b/indoteknik_custom/models/letter_receivable.py @@ -31,8 +31,8 @@ class SuratPiutang(models.Model): line_ids = fields.One2many("surat.piutang.line", "surat_id", string="Invoice Lines") state = fields.Selection([ ("draft", "Draft"), - ("approval_pimpinan", "Menunggu Approval Pimpinan"), - ("sent", "Sent") + ("waiting_approval", "Menunggu Approval"), + ("sent", "Approved & Sent") ], default="draft", tracking=True) send_date = fields.Datetime(string="Tanggal Kirim", tracking=True) seven_days_after_sent_date = fields.Char(string="7 Hari Setelah Tanggal Kirim", tracking=True) @@ -128,8 +128,11 @@ class SuratPiutang(models.Model): # 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" + if rec.state == "waiting_approval": + if rec.perihal in ("sp1", "sp2", "sp3"): + if self.env.user.id not in pimpinan_user_ids: + raise UserError("Hanya Pimpinan yang berhak menyetujui surat peringatan piutang (SP1, SP2, SP3).") + rec.state = "sent" now_utc = now_wib.astimezone(pytz.UTC).replace(tzinfo=None) rec.send_date = now_utc rec.action_send_letter() @@ -340,7 +343,7 @@ class SuratPiutang(models.Model): tahun = today.strftime("%y") vals["name"] = f"{seq}/LO/FAT/IDG/{bulan_romawi}/{tahun}" - vals["state"] = "approval_pimpinan" + vals["state"] = "waiting_approval" return super().create(vals) class SuratPiutangLine(models.Model): diff --git a/indoteknik_custom/views/letter_receivable.xml b/indoteknik_custom/views/letter_receivable.xml index 44caadcb..334e83c4 100644 --- a/indoteknik_custom/views/letter_receivable.xml +++ b/indoteknik_custom/views/letter_receivable.xml @@ -10,7 +10,7 @@ @@ -25,7 +25,7 @@
- +
@@ -38,8 +38,8 @@