Commit 2555ed0e by Owo Sugiana

2024 ke atas denda 1%

1 parent 63cc13fe
0.3 2024-01-02
-----------------
- Tahun 2023 ke bawah persen denda ambil dari file konfigurasi, sedangkan
2024 ke atas di-hard-code 1%
- Discount Pokok Kota Tangerang Selatan
0.2.12 2023-12-01 0.2.12 2023-12-01
----------------- -----------------
- Discount denda Kota Bekasi - Discount denda Kota Bekasi
......
...@@ -158,7 +158,10 @@ class Inquiry(Query): ...@@ -158,7 +158,10 @@ class Inquiry(Query):
if not self.is_available(): if not self.is_available():
self.invoice = None self.invoice = None
return return
self.persen_denda = persen_denda if self.invoice.thn_pajak_sppt < '2024':
self.persen_denda = persen_denda
else:
self.persen_denda = 1
# Digunakan untuk ISO8583 # Digunakan untuk ISO8583
self.tagihan = self.denda = self.discount = self.total = 0 self.tagihan = self.denda = self.discount = self.total = 0
self.hitung() self.hitung()
......
...@@ -20,8 +20,10 @@ from .default import ( ...@@ -20,8 +20,10 @@ from .default import (
from ..models.tangsel import PembayaranSppt from ..models.tangsel import PembayaranSppt
AWAL_DISC = date(2023, 9, 1) AWAL_DISC_1 = date(2024, 1, 3)
AKHIR_DISC = date(2023, 12, 28) AKHIR_DISC_1 = date(2024, 4, 30)
AWAL_DISC_2 = date(2024, 5, 1)
AKHIR_DISC_2 = date(2024, 6, 30)
class Inquiry(BaseInquiry): class Inquiry(BaseInquiry):
...@@ -54,30 +56,20 @@ class Inquiry(BaseInquiry): ...@@ -54,30 +56,20 @@ class Inquiry(BaseInquiry):
super().hitung_denda() super().hitung_denda()
self.denda_sblm_diskon = self.denda self.denda_sblm_diskon = self.denda
def hitung_discount_denda(self):
if self.invoice.thn_pajak_sppt < '2022':
return self.denda # discount 100%
return 0
def hitung_discount_pokok(self): def hitung_discount_pokok(self):
# Abaikan faktor_pengurang_sppt # Abaikan faktor_pengurang_sppt
# (Kabid Jimmy via Eko Novianto, 6-8-2022) # (Kabid Jimmy via Eko Novianto, 6-8-2022)
# faktor_pengurang = self.invoice.faktor_pengurang_sppt or 0 # faktor_pengurang = self.invoice.faktor_pengurang_sppt or 0
# if faktor_pengurang > 0: # if faktor_pengurang > 0:
# return 0 # return 0
if self.invoice.thn_pajak_sppt < '2014': disc = 0
disc = 0.75 if self.invoice.thn_pajak_sppt == '2024':
elif '2014' <= self.invoice.thn_pajak_sppt <= '2020': if AWAL_DISC_1 <= self.tgl_bayar <= AKHIR_DISC_1:
disc = 0.3 disc = 0.1
else: elif AWAL_DISC_2 <= self.tgl_bayar <= AKHIR_DISC_2:
disc = 0 disc = 0.05
return int(disc * self.tagihan) return int(disc * self.tagihan)
def hitung_discount_denda(self):
if '1994' <= self.invoice.thn_pajak_sppt <= '2022':
return self.denda # discount 100%
return 0
def tahun_lunas(self, tahun): def tahun_lunas(self, tahun):
DBSession = get_db_session() DBSession = get_db_session()
Sppt = self.get_invoice_model() Sppt = self.get_invoice_model()
...@@ -89,14 +81,7 @@ class Inquiry(BaseInquiry): ...@@ -89,14 +81,7 @@ class Inquiry(BaseInquiry):
def hitung_discount(self): # Override def hitung_discount(self): # Override
self.discount_pokok = self.discount_denda = 0 self.discount_pokok = self.discount_denda = 0
if self.tgl_bayar < AWAL_DISC:
return
if self.tgl_bayar > AKHIR_DISC:
return
if not self.tahun_lunas('2023'):
return
self.discount_pokok = self.hitung_discount_pokok() self.discount_pokok = self.hitung_discount_pokok()
self.discount_denda = self.hitung_discount_denda()
self.discount = self.discount_denda + self.discount_pokok self.discount = self.discount_denda + self.discount_pokok
def before_save(self, payment): # Override def before_save(self, payment): # Override
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!