Commit 969ae60b by Owo Sugiana

Discount Pokok Kabupaten Bekasi

1 parent 934b46a4
0.3.7 2024-02-28
----------------
- Untuk Kabupaten Bekasi, Kota Tasik, dan Kabupaten Subang untuk Tahun Pajak
2023 ke bawah dendanya 2 persen, selain itu 1 persen. persen_denda pada file
konfigurasi tidak digunakan.
- Discount Pokok Kabupaten Bekasi
0.3.6 2024-02-26 0.3.6 2024-02-26
---------------- ----------------
- Discount Pokok dan Discount Denda Kota Tangerang - Discount Pokok dan Discount Denda Kota Tangerang
......
...@@ -158,14 +158,16 @@ class Inquiry(Query): ...@@ -158,14 +158,16 @@ class Inquiry(Query):
if not self.is_available(): if not self.is_available():
self.invoice = None self.invoice = None
return return
if self.get_jatuh_tempo().year < 2024: self.persen_denda = self.get_persen_denda()
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()
def get_persen_denda(self):
if self.get_jatuh_tempo().year < 2024:
return 2
return 1
def get_kelurahan_model(self): def get_kelurahan_model(self):
pass pass
......
...@@ -7,35 +7,38 @@ from .default import ( ...@@ -7,35 +7,38 @@ from .default import (
from ..models.bekasi_kab import PembayaranSppt from ..models.bekasi_kab import PembayaranSppt
AWAL_DISC = date(2023, 8, 17) AWAL_DISC = date(2024, 3, 1)
AKHIR_DISC = date(2023, 11, 30) AKHIR_DISC = date(2024, 8, 31)
BULAN_DISC = {
3: 0.2,
4: 0.15,
5: 0.15,
6: 0.15,
7: 0.05,
8: 0.05}
class Inquiry(BaseInquiry): class Inquiry(BaseInquiry):
def get_payment_model(self): # Override def get_payment_model(self): # Override
return PembayaranSppt return PembayaranSppt
def hitung_discount_denda(self): def get_persen_denda(self): # Override
if self.denda < 1 or self.invoice.thn_pajak_sppt > '2022': if self.invoice.thn_pajak_sppt < '2024':
return 0 return 2
return self.denda return 1
def hitung_discount_pokok(self): def hitung_discount_pokok(self):
if self.invoice.thn_pajak_sppt <= '2013': if self.invoice.thn_pajak_sppt == '2024':
potongan = 0.5 potongan = BULAN_DISC.get(self.tgl_bayar.month, 0)
elif '2014' <= self.invoice.thn_pajak_sppt <= '2019': return int(potongan * self.tagihan)
potongan = 0.2 return 0
else:
potongan = 0
return int(potongan * self.tagihan)
def hitung_discount(self): # Override def hitung_discount(self): # Override
self.discount_denda = self.discount_pokok = 0
if AWAL_DISC <= self.tgl_bayar <= AKHIR_DISC: if AWAL_DISC <= self.tgl_bayar <= AKHIR_DISC:
self.discount_denda = self.hitung_discount_denda()
self.discount_pokok = self.hitung_discount_pokok() self.discount_pokok = self.hitung_discount_pokok()
self.discount = self.discount_denda + self.discount_pokok self.discount = self.discount_denda + self.discount_pokok
else:
self.discount_denda = self.discount_pokok = 0
def before_save(self, payment): # Override def before_save(self, payment): # Override
payment.denda_sppt = self.denda - self.discount_denda # Netto payment.denda_sppt = self.denda - self.discount_denda # Netto
......
...@@ -16,6 +16,11 @@ class Inquiry(BaseInquiry): ...@@ -16,6 +16,11 @@ class Inquiry(BaseInquiry):
def get_payment_model(self): # Override def get_payment_model(self): # Override
return PembayaranSppt return PembayaranSppt
def get_persen_denda(self): # Override
if self.invoice.thn_pajak_sppt < '2024':
return 2
return 1
def hitung_pokok(self): # Override def hitung_pokok(self): # Override
q = self.get_payment_sum() q = self.get_payment_sum()
q = self.get_filter(q) q = self.get_filter(q)
......
...@@ -10,10 +10,6 @@ from .tasik_kab import ( ...@@ -10,10 +10,6 @@ from .tasik_kab import (
) )
AWAL_DISC = date(2022, 8, 19)
AKHIR_DISC = date(2022, 12, 31)
class Inquiry(BaseInquiry): class Inquiry(BaseInquiry):
def get_invoice_model(self): # Override def get_invoice_model(self): # Override
return Sppt return Sppt
...@@ -21,12 +17,14 @@ class Inquiry(BaseInquiry): ...@@ -21,12 +17,14 @@ class Inquiry(BaseInquiry):
def get_payment_model(self): # Override def get_payment_model(self): # Override
return PembayaranSppt return PembayaranSppt
def get_persen_denda(self): # Override
if self.invoice.thn_pajak_sppt < '2024':
return 2
return 1
def hitung_discount(self): # Override def hitung_discount(self): # Override
if self.invoice.denda_status == '1': if self.invoice.denda_status == '1':
self.discount = int(self.invoice.denda_pbb or 0) self.discount = int(self.invoice.denda_pbb or 0)
elif self.tgl_bayar >= AWAL_DISC and self.tgl_bayar <= AKHIR_DISC:
if self.invoice.thn_pajak_sppt < '2022':
self.discount = self.denda
def before_save(self, payment): # Override def before_save(self, payment): # Override
payment.denda_sppt = self.denda - self.discount payment.denda_sppt = self.denda - self.discount
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!