payment.py 4.6 KB
from sqlalchemy import (
    Column,
    Integer,
    Date,
    Time,
    String,
    UniqueConstraint,
    )
from sqlalchemy.ext.declarative import declared_attr


class PaymentMixin:
    @declared_attr
    def __tablename__(self):
        return 'bphtb_bank'

    @declared_attr
    def id(self):
        return Column(Integer, primary_key=True)

    @declared_attr
    def tanggal(self):
        return Column(Date, nullable=False)

    @declared_attr
    def jam(self):
        return Column(Time, nullable=False)

    @declared_attr
    def seq(self):
        return Column(Integer, nullable=False)

    @declared_attr
    def transno(self):
        return Column(String(20), nullable=False)

    @declared_attr
    def cabang(self):
        return Column(String(5))

    @declared_attr
    def users(self):
        return Column(String(5))

    @declared_attr
    def bankid(self):
        return Column(Integer, nullable=False)

    @declared_attr
    def txs(self):
        return Column(String(5), nullable=False)

    @declared_attr
    def sspd_id(self):
        return Column(Integer)

    @declared_attr
    def nop(self):
        return Column(String(50), nullable=False)

    @declared_attr
    def tahun(self):
        return Column(Integer)

    @declared_attr
    def kd_propinsi(self):
        return Column(String(2))

    @declared_attr
    def kd_dati2(self):
        return Column(String(2))

    @declared_attr
    def kd_kecamatan(self):
        return Column(String(3))

    @declared_attr
    def kd_kelurahan(self):
        return Column(String(3))

    @declared_attr
    def kd_blok(self):
        return Column(String(3))

    @declared_attr
    def no_urut(self):
        return Column(String(4))

    @declared_attr
    def kd_jns_op(self):
        return Column(String(1))

    @declared_attr
    def thn_pajak_sppt(self):
        return Column(String(4))

    @declared_attr
    def wp_nama(self):
        return Column(String(50), nullable=False)

    @declared_attr
    def wp_alamat(self):
        return Column(String(100))

    @declared_attr
    def wp_blok_kav(self):
        return Column(String(100))

    @declared_attr
    def wp_rt(self):
        return Column(String(3))

    @declared_attr
    def wp_rw(self):
        return Column(String(3))

    @declared_attr
    def wp_kelurahan(self):
        return Column(String(30))

    @declared_attr
    def wp_kecamatan(self):
        return Column(String(30))

    @declared_attr
    def wp_kota(self):
        return Column(String(30))

    @declared_attr
    def wp_provinsi(self):
        return Column(String(50))

    @declared_attr
    def wp_kdpos(self):
        return Column(String(5))

    @declared_attr
    def wp_identitas(self):
        return Column(String(50))

    @declared_attr
    def wp_identitaskd(self):
        return Column(String(50))

    @declared_attr
    def wp_npwp(self):
        return Column(String(50))

    @declared_attr
    def notaris(self):
        return Column(String(50))

    @declared_attr
    def bumi_luas(self):
        return Column(Integer)

    @declared_attr
    def bumi_njop(self):
        return Column(Integer)

    @declared_attr
    def bng_luas(self):
        return Column(Integer)

    @declared_attr
    def bng_njop(self):
        return Column(Integer)

    @declared_attr
    def npop(self):
        return Column(Integer)

    @declared_attr
    def bayar(self):
        return Column(Integer)

    @declared_attr
    def denda(self):
        return Column(Integer)

    @declared_attr
    def bphtbjeniskd(self):
        return Column(Integer)

    @declared_attr
    def is_validated(self):
        return Column(Integer)

    @declared_attr
    def no_tagihan(self):
        return Column(String(50))

    @declared_attr
    def catatan(self):
        return Column(String(255))

    @declared_attr
    def kd_kanwil(self):
        return Column(String(2))

    @declared_attr
    def kd_kantor(self):
        return Column(String(2))

    @declared_attr
    def kd_bank_tunggal(self):
        return Column(String(2))

    @declared_attr
    def kd_bank_persepsi(self):
        return Column(String(2))

    # @declared_attr
    # def wp_propinsi(self):
    #     return Column(String(100))

    @declared_attr
    def pembayaran_ke(self):
        return Column(Integer, nullable=False)

    # @declared_attr
    # def sts_id(self):
    #    return Column(Integer, nullable=False)

    # @declared_attr
    # def posted(self):
    #    return Column(Integer, nullable=False)

    @declared_attr
    def __table_args__(self):
        return (
            UniqueConstraint('tanggal', 'jam', 'seq', 'transno'),
            dict(schema='bphtb'))