Commit a8d6e05d by aagusti

Tambah untuk Kabupaten Tasikmalaya

1 parent d07dd14a
0.1.3 2020-05-15
----------------
- Tambah Kabupaten Tasikmalaya
0.1.2 2020-04-23
----------------
- Tambah discount terkait periode covid untuk Kota Bogor
......
......@@ -9,7 +9,7 @@ from sqlalchemy import (
from sqlalchemy.ext.declarative import declared_attr
class PembayaranSpptMixin:
class BasePembayaranSpptMixin:
@declared_attr
def __tablename__(self):
return 'pembayaran_sppt'
......@@ -71,10 +71,6 @@ class PembayaranSpptMixin:
return Column(BigInteger)
@declared_attr
def discount(self):
return Column(BigInteger)
@declared_attr
def tgl_pembayaran_sppt(self):
return Column(DateTime)
......@@ -86,23 +82,9 @@ class PembayaranSpptMixin:
def nip_rekam_byr_sppt(self):
return Column(String(18))
#@declared_attr
#def user_id(self):
# return Column(Integer)
#@declared_attr
#def jml_batal(self):
# return Column(Integer)
#@declared_attr
#def tgl_batal(self):
# return Column(DateTime)
#@declared_attr
#def user_id_batal(self):
# return Column(Integer)
#@declared_attr
#def biaya_admin(self):
# return Column(Float)
class PembayaranSpptMixin(BasePembayaranSpptMixin):
@declared_attr
def discount(self):
return Column(BigInteger)
from sqlalchemy import (
Column,
Integer,
String,
Float,
)
from sqlalchemy.ext.declarative import declarative_base
from .objek_pajak import ObjekPajakMixin
from .sppt import SpptMixin
from .pembayaran_sppt import BasePembayaranSpptMixin
from .kelurahan import KelurahanMixin
from .kecamatan import KecamatanMixin
from .propinsi import PropinsiMixin
from .tempat_pembayaran import TempatPembayaranMixin
Base = declarative_base()
class ObjekPajak(Base, ObjekPajakMixin):
pass
class Sppt(Base, SpptMixin):
pass
class PembayaranSppt(Base, BasePembayaranSpptMixin):
pass
class Kelurahan(Base, KelurahanMixin):
pass
class Kecamatan(Base, KecamatanMixin):
pass
class Propinsi(Base, PropinsiMixin):
pass
class TempatPembayaran(Base, TempatPembayaranMixin):
pass
......@@ -16,6 +16,10 @@ from opensipkd.hitung import (
DBSession = None
def get_db_session():
return DBSession
locale.setlocale(locale.LC_ALL, 'id_ID.utf8')
# Nomor Objek Pajak
......
......@@ -55,11 +55,11 @@ class Inquiry(BaseInquiry, Common):
def rumus_discount_pokok(self):
if self.tgl_bayar.month == 4:
pengurang = 0.15
pengurang = 0 #0.15
elif self.tgl_bayar.month == 5:
pengurang = 0.1
pengurang = 0 #0.1
elif self.tgl_bayar.month == 6:
pengurang = 0.05
pengurang = 0 #0.05
else:
return
self.denda = 0
......
from datetime import datetime
from sismiop.models.tasik_kab import (
ObjekPajak,
Sppt,
PembayaranSppt,
Kelurahan,
Kecamatan,
Propinsi,
)
from ..base import (
AvailableInvoice as BaseAvailableInvoice,
Inquiry as BaseInquiry,
Reversal as BaseReversal,
get_db_session,
)
class Inquiry(BaseInquiry):
def get_op_model(self):
return ObjekPajak
def get_invoice_model(self):
return Sppt
def get_payment_model(self):
return PembayaranSppt
def get_kelurahan_model(self):
return Kelurahan
def get_kecamatan_model(self):
return Kecamatan
def get_propinsi_model(self):
return Propinsi
def do_payment(self, bank_fields, nip_pencatat):
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):
def get_invoice_model(self):
return Sppt
def get_payment_model(self):
return PembayaranSppt
class AvailableInvoice(BaseAvailableInvoice):
def get_invoice_model(self):
return Sppt
def get_payment_model(self):
return PembayaranSppt
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!