Commit 2777c477 by Owo Sugiana

Bug fixed kuningan saat isi field jml_sppt_yg_dibayar

1 parent 0791bf3b
from sqlalchemy import (
Column,
Float,
)
from .default import PembayaranSppt as BasePembayaranSppt
class PembayaranSppt(BasePembayaranSppt):
__table_args__ = dict(extend_existing=True)
denda_sblm_diskon = Column(Float)
discount_pokok = Column(Float)
discount_denda = Column(Float)
...@@ -77,18 +77,12 @@ def show_inquiry(inq): ...@@ -77,18 +77,12 @@ def show_inquiry(inq):
pay = inq.invoice2payment() pay = inq.invoice2payment()
if not pay: if not pay:
return return
show_field(pay, 'pembayaran_sppt_ke') show_fields(
show_field(pay, 'kd_kanwil') pay, ['pembayaran_sppt_ke', 'kd_kanwil', 'kd_kantor',
show_field(pay, 'kd_kantor') 'kd_kanwil_bank', 'kd_kppbb_bank', 'kd_bank_tunggal',
show_field(pay, 'kd_kanwil_bank') 'kd_bank_persepsi', 'kd_tp', 'tgl_rekam_byr_sppt',
show_field(pay, 'kd_kppbb_bank') 'tgl_pembayaran_sppt', 'jml_sppt_yg_dibayar', 'denda_sppt',
show_field(pay, 'kd_bank_tunggal') 'discount_pokok', 'discount_denda', 'discount'])
show_field(pay, 'kd_bank_persepsi')
show_field(pay, 'kd_tp')
show_field(pay, 'tgl_rekam_byr_sppt')
show_field(pay, 'tgl_pembayaran_sppt')
show_field(pay, 'discount_pokok')
show_field(pay, 'discount_denda')
def show_fields(row, fieldnames): def show_fields(row, fieldnames):
...@@ -110,10 +104,10 @@ def show_payment(module_name, inq, pay): ...@@ -110,10 +104,10 @@ def show_payment(module_name, inq, pay):
pay.pembayaran_sppt_ke)) pay.pembayaran_sppt_ke))
print('Tabel pembayaran_sppt') print('Tabel pembayaran_sppt')
show_fields( show_fields(
pay, [ pay, ['kd_kanwil', 'kd_bank', 'kd_kanwil_bank', 'kd_kppbb_bank',
'jml_sppt_yg_dibayar', 'denda_sppt', 'discount', 'kd_kanwil', 'kd_bank_tunggal', 'kd_bank_persepsi', 'kd_tp',
'kd_bank', 'kd_kanwil_bank', 'kd_kppbb_bank', 'kd_bank_tunggal', 'jml_sppt_yg_dibayar', 'denda_sppt', 'discount_pokok',
'kd_bank_persepsi', 'kd_tp', 'discount_pokok', 'discount_denda']) 'discount_denda', 'discount'])
try: try:
row, fields = inq.get_other_payment_table(pay) row, fields = inq.get_other_payment_table(pay)
except AttributeError: except AttributeError:
......
...@@ -269,7 +269,7 @@ class Inquiry(Query): ...@@ -269,7 +269,7 @@ class Inquiry(Query):
self.total = self.tagihan + self.denda self.total = self.tagihan + self.denda
if self.total > 0: if self.total > 0:
self.hitung_discount() self.hitung_discount()
self.total = self.total - self.discount self.total -= self.discount
def do_payment(self, bank_fields, nip_pencatat): def do_payment(self, bank_fields, nip_pencatat):
Payment = self.get_payment_model() Payment = self.get_payment_model()
...@@ -287,9 +287,10 @@ class Inquiry(Query): ...@@ -287,9 +287,10 @@ class Inquiry(Query):
pembayaran_sppt_ke=ke, tgl_rekam_byr_sppt=datetime.now(), pembayaran_sppt_ke=ke, tgl_rekam_byr_sppt=datetime.now(),
tgl_pembayaran_sppt=self.tgl_bayar, tgl_pembayaran_sppt=self.tgl_bayar,
nip_rekam_byr_sppt=nip_pencatat, nip_rekam_byr_sppt=nip_pencatat,
jml_sppt_yg_dibayar=self.tagihan+self.denda, jml_sppt_yg_dibayar=self.total,
denda_sppt=self.denda, denda_sppt=self.denda)
discount=self.discount) if self.discount:
bayar.discount = self.discount
for key, value in bank_fields.items(): for key, value in bank_fields.items():
setattr(bayar, key, value) setattr(bayar, key, value)
self.before_save(bayar) self.before_save(bayar)
......
from datetime import date from datetime import date
from sismiop.services.cilegon import ( from .cilegon import (
Inquiry as BaseInquiry, Inquiry as BaseInquiry,
Reversal, Reversal,
AvailableInvoice, AvailableInvoice,
......
...@@ -4,15 +4,15 @@ from datetime import ( ...@@ -4,15 +4,15 @@ from datetime import (
datetime, datetime,
) )
from opensipkd.hitung import round_up from opensipkd.hitung import round_up
from sismiop.models.default import ( from ..models.default import (
PenguranganPst, PenguranganPst,
PenguranganCovid, PenguranganCovid,
) )
from ..base import ( from .base import (
get_db_session, get_db_session,
Query, Query,
) )
from ..default import ( from .default import (
Inquiry as BaseInquiry, Inquiry as BaseInquiry,
Reversal as BaseReversal, Reversal as BaseReversal,
AvailableInvoice as BaseAvailableInvoice, AvailableInvoice as BaseAvailableInvoice,
......
# File ini berdasarkan Surat Keputusan Walikota Cilegon # File ini berdasarkan Surat Keputusan Walikota Cilegon
# Nomor 973/kep. -BPKAD/2020 # Nomor 973/kep. -BPKAD/2020
from datetime import date from datetime import date
from ..default import ( from .default import (
Inquiry as BaseInquiry, Inquiry as BaseInquiry,
Reversal as BaseReversal, Reversal as BaseReversal,
AvailableInvoice, AvailableInvoice,
) )
from sismiop.models.cilegon import PembayaranSppt from ..models.cilegon import PembayaranSppt
AWAL_DISC = date(2020, 9, 1) AWAL_DISC = date(2020, 9, 1)
...@@ -26,14 +26,13 @@ class Inquiry(BaseInquiry): ...@@ -26,14 +26,13 @@ class Inquiry(BaseInquiry):
def hitung_discount(self): # Override def hitung_discount(self): # Override
self.denda_sblm_diskon = self.denda self.denda_sblm_diskon = self.denda
self.discount_denda = self.hitung_discount_denda() self.discount = self.hitung_discount_denda()
self.denda -= self.discount_denda
self.total = self.tagihan + self.denda
def before_save(self, payment): # Override def before_save(self, payment): # Override
payment.denda_sppt = self.denda - self.discount
# Sekedar catatan # Sekedar catatan
payment.denda_sblm_diskon = self.denda_sblm_diskon payment.denda_sblm_diskon = self.denda_sblm_diskon
payment.discount = self.discount_denda payment.discount = self.discount
class Reversal(BaseReversal): class Reversal(BaseReversal):
...@@ -41,4 +40,4 @@ class Reversal(BaseReversal): ...@@ -41,4 +40,4 @@ class Reversal(BaseReversal):
return PembayaranSppt return PembayaranSppt
def before_save(self): # Override def before_save(self): # Override
self.payment.denda_sblm_diskon = 0 self.payment.denda_sblm_diskon = self.payment.discount = 0
from sismiop.models.default import ( from ..models.default import (
ObjekPajak, ObjekPajak,
Sppt, Sppt,
PembayaranSppt, PembayaranSppt,
...@@ -6,7 +6,7 @@ from sismiop.models.default import ( ...@@ -6,7 +6,7 @@ from sismiop.models.default import (
Kecamatan, Kecamatan,
Propinsi, Propinsi,
) )
from ..base import ( from .base import (
AvailableInvoice as BaseAvailableInvoice, AvailableInvoice as BaseAvailableInvoice,
Inquiry as BaseInquiry, Inquiry as BaseInquiry,
Reversal as BaseReversal, Reversal as BaseReversal,
......
from datetime import date from datetime import date
from sismiop.models.tangsel import PembayaranSppt from ..models.kuningan import PembayaranSppt
from ..default import ( from .cilegon import (
Inquiry as BaseInquiry, Inquiry as BaseInquiry,
Reversal as BaseReversal, Reversal as BaseReversal,
AvailableInvoice, AvailableInvoice,
...@@ -14,9 +14,6 @@ class Inquiry(BaseInquiry): ...@@ -14,9 +14,6 @@ class Inquiry(BaseInquiry):
def get_payment_model(self): # Override def get_payment_model(self): # Override
return PembayaranSppt return PembayaranSppt
def hitung_discount(self): # Override
self.discount = self.discount_denda = self.hitung_discount_denda()
def hitung_discount_denda(self): def hitung_discount_denda(self):
if self.denda > 0 and self.tgl_bayar <= AKHIR_DISC and \ if self.denda > 0 and self.tgl_bayar <= AKHIR_DISC and \
self.invoice.thn_pajak_sppt in ('2019', '2020'): self.invoice.thn_pajak_sppt in ('2019', '2020'):
...@@ -24,7 +21,8 @@ class Inquiry(BaseInquiry): ...@@ -24,7 +21,8 @@ class Inquiry(BaseInquiry):
return 0 return 0
def before_save(self, payment): # Override def before_save(self, payment): # Override
payment.discount_denda = self.discount_denda super().before_save(payment)
payment.discount_denda = self.discount
class Reversal(BaseReversal): class Reversal(BaseReversal):
...@@ -32,4 +30,5 @@ class Reversal(BaseReversal): ...@@ -32,4 +30,5 @@ class Reversal(BaseReversal):
return PembayaranSppt return PembayaranSppt
def before_save(self): # Override def before_save(self): # Override
super().before_save()
self.payment.discount_denda = 0 self.payment.discount_denda = 0
from datetime import date from datetime import date
from ..cilegon import ( from .cilegon import (
Inquiry as BaseInquiry, Inquiry as BaseInquiry,
Reversal, Reversal,
AvailableInvoice, AvailableInvoice,
......
from datetime import datetime from datetime import datetime
from sismiop.models.pangandaran import ( from ..models.pangandaran import (
ObjekPajak, ObjekPajak,
Sppt, Sppt,
PembayaranSppt, PembayaranSppt,
...@@ -7,7 +7,7 @@ from sismiop.models.pangandaran import ( ...@@ -7,7 +7,7 @@ from sismiop.models.pangandaran import (
Kecamatan, Kecamatan,
Propinsi, Propinsi,
) )
from ..base import ( from .base import (
AvailableInvoice as BaseAvailableInvoice, AvailableInvoice as BaseAvailableInvoice,
Inquiry as BaseInquiry, Inquiry as BaseInquiry,
Reversal as BaseReversal, Reversal as BaseReversal,
...@@ -34,33 +34,6 @@ class Inquiry(BaseInquiry): ...@@ -34,33 +34,6 @@ class Inquiry(BaseInquiry):
def get_propinsi_model(self): # Override def get_propinsi_model(self): # Override
return Propinsi return Propinsi
def do_payment(self, bank_fields, nip_pencatat): # Override
Payment = self.get_payment_model()
bayar = self.invoice2payment()
if bayar:
ke = bayar.pembayaran_sppt_ke + 1
else:
ke = 1
inv = self.invoice
bayar = Payment(
kd_propinsi=inv.kd_propinsi, kd_dati2=inv.kd_dati2,
kd_kecamatan=inv.kd_kecamatan, kd_kelurahan=inv.kd_kelurahan,
kd_blok=inv.kd_blok, no_urut=inv.no_urut,
kd_jns_op=inv.kd_jns_op, thn_pajak_sppt=inv.thn_pajak_sppt,
pembayaran_sppt_ke=ke, tgl_rekam_byr_sppt=datetime.now(),
tgl_pembayaran_sppt=self.tgl_bayar,
nip_rekam_byr_sppt=nip_pencatat,
jml_sppt_yg_dibayar=self.tagihan+self.denda,
denda_sppt=self.denda)
for key, value in bank_fields.items():
setattr(bayar, key, value)
self.before_save(bayar)
DBSession = get_db_session()
DBSession.add(bayar)
self.invoice.status_pembayaran_sppt = '1' # Lunas
DBSession.add(self.invoice)
return bayar
class Reversal(BaseReversal): class Reversal(BaseReversal):
def get_invoice_model(self): def get_invoice_model(self):
......
from datetime import datetime from datetime import datetime
from sqlalchemy import func from sqlalchemy import func
from opensipkd.hitung import round_up from opensipkd.hitung import round_up
from sismiop.models.serang_kab import ( from ..models.serang_kab import (
ObjekPajak, ObjekPajak,
Sppt, Sppt,
PembayaranSppt, PembayaranSppt,
...@@ -9,7 +9,7 @@ from sismiop.models.serang_kab import ( ...@@ -9,7 +9,7 @@ from sismiop.models.serang_kab import (
Kecamatan, Kecamatan,
Propinsi, Propinsi,
) )
from ..base import ( from .base import (
AvailableInvoice as BaseAvailableInvoice, AvailableInvoice as BaseAvailableInvoice,
Inquiry as BaseInquiry, Inquiry as BaseInquiry,
Reversal as BaseReversal, Reversal as BaseReversal,
...@@ -56,7 +56,7 @@ class Inquiry(BaseInquiry): ...@@ -56,7 +56,7 @@ class Inquiry(BaseInquiry):
no_transaksi_byr_sppt=ntp, no_transaksi_byr_sppt=ntp,
no_transaksi_byr_sppt_bank=ntb, no_transaksi_byr_sppt_bank=ntb,
user_bank_rekam=user_id, user_bank_rekam=user_id,
jml_pbb_yg_dibayar=self.tagihan+self.denda, jml_pbb_yg_dibayar=self.total,
jml_denda_sppt=self.denda, jml_denda_sppt=self.denda,
kd_sumber_data='5') kd_sumber_data='5')
for key, value in bank_fields.items(): for key, value in bank_fields.items():
......
from datetime import date from datetime import date
from ..tangsel import ( from .tangsel import (
Inquiry as BaseInquiry, Inquiry as BaseInquiry,
Reversal, Reversal,
AvailableInvoice as BaseAvailableInvoice, AvailableInvoice as BaseAvailableInvoice,
AvailableInvoiceTangsel as BaseAvailableInvoiceTangsel, AvailableInvoiceTangsel as BaseAvailableInvoiceTangsel,
) )
from sismiop.models.tangsel import PembayaranSppt from ..models.tangsel import PembayaranSppt
AWAL_DISC = date(2020, 10, 1) AWAL_DISC = date(2020, 10, 1)
......
...@@ -6,16 +6,16 @@ from sqlalchemy import ( ...@@ -6,16 +6,16 @@ from sqlalchemy import (
) )
from sqlalchemy.orm import aliased from sqlalchemy.orm import aliased
from opensipkd.hitung import round_up from opensipkd.hitung import round_up
from ..base import ( from .base import (
thousand, thousand,
get_db_session, get_db_session,
) )
from ..default import ( from .default import (
Inquiry as BaseInquiry, Inquiry as BaseInquiry,
Reversal as BaseReversal, Reversal as BaseReversal,
AvailableInvoice as BaseAvailableInvoice, AvailableInvoice as BaseAvailableInvoice,
) )
from sismiop.models.tangsel import PembayaranSppt from ..models.tangsel import PembayaranSppt
# Halaman 6 pasal 8 # Halaman 6 pasal 8
......
from ..tangsel import ( from .tangsel import (
Inquiry as BaseInquiry, Inquiry as BaseInquiry,
Reversal, Reversal,
AvailableInvoice, AvailableInvoice,
......
...@@ -2,7 +2,7 @@ from datetime import ( ...@@ -2,7 +2,7 @@ from datetime import (
datetime, datetime,
date, date,
) )
from sismiop.models.tasik_kab import ( from ..models.tasik_kab import (
ObjekPajak, ObjekPajak,
Sppt, Sppt,
PembayaranSppt, PembayaranSppt,
...@@ -10,7 +10,7 @@ from sismiop.models.tasik_kab import ( ...@@ -10,7 +10,7 @@ from sismiop.models.tasik_kab import (
Kecamatan, Kecamatan,
Propinsi, Propinsi,
) )
from ..base import ( from .base import (
AvailableInvoice as BaseAvailableInvoice, AvailableInvoice as BaseAvailableInvoice,
Inquiry as BaseInquiry, Inquiry as BaseInquiry,
Reversal as BaseReversal, Reversal as BaseReversal,
...@@ -47,33 +47,6 @@ class Inquiry(BaseInquiry): ...@@ -47,33 +47,6 @@ class Inquiry(BaseInquiry):
if self.invoice.thn_pajak_sppt in ('2018', '2019'): if self.invoice.thn_pajak_sppt in ('2018', '2019'):
self.denda = 0 self.denda = 0
def do_payment(self, bank_fields, nip_pencatat): # Override
Payment = self.get_payment_model()
bayar = self.invoice2payment()
if bayar:
ke = bayar.pembayaran_sppt_ke + 1
else:
ke = 1
inv = self.invoice
bayar = Payment(
kd_propinsi=inv.kd_propinsi, kd_dati2=inv.kd_dati2,
kd_kecamatan=inv.kd_kecamatan, kd_kelurahan=inv.kd_kelurahan,
kd_blok=inv.kd_blok, no_urut=inv.no_urut,
kd_jns_op=inv.kd_jns_op, thn_pajak_sppt=inv.thn_pajak_sppt,
pembayaran_sppt_ke=ke, tgl_rekam_byr_sppt=datetime.now(),
tgl_pembayaran_sppt=self.tgl_bayar,
nip_rekam_byr_sppt=nip_pencatat,
jml_sppt_yg_dibayar=self.tagihan+self.denda,
denda_sppt=self.denda)
for key, value in bank_fields.items():
setattr(bayar, key, value)
self.before_save(bayar)
DBSession = get_db_session()
DBSession.add(bayar)
self.invoice.status_pembayaran_sppt = '1' # Lunas
DBSession.add(self.invoice)
return bayar
class Reversal(BaseReversal): class Reversal(BaseReversal):
def get_invoice_model(self): def get_invoice_model(self):
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!