temp.py 3.63 KB
import sys
from datetime import datetime
from sqlalchemy import (
    Column, 
    Float, 
    String, 
    DateTime
)    
from .tools import FixNopel
from ..models import (
    CommonModel,
    PbbBase,
    PbbDBSession,
    PBB_ARGS
)
from .base_table import BaseKantor

class TempDataOP(PbbBase, CommonModel):
    __tablename__ = 'temp_data_op'
    kd_kanwil = Column(String(2), primary_key=True)
    kd_kantor = Column(String(2), primary_key=True)
    thn_pelayanan = Column(String(4), primary_key=True)
    bundel_pelayanan = Column(String(4), primary_key=True)
    no_urut_pelayanan = Column(String(3), primary_key=True)
    kd_propinsi_pemohon = Column(String(2), primary_key=True)
    kd_dati2_pemohon = Column(String(2), primary_key=True)
    kd_kecamatan_pemohon = Column(String(3), primary_key=True)
    kd_kelurahan_pemohon = Column(String(3), primary_key=True)
    kd_blok_pemohon = Column(String(3), primary_key=True)
    no_urut_pemohon = Column(String(4), primary_key=True)
    kd_jns_op_pemohon = Column(String(1), primary_key=True)
    temp_jns_data = Column(String(1), primary_key=True)
    temp_siklus_sppt = Column(Float)
    temp_nm_wp = Column(String(30))
    temp_jalan_op = Column(String(30))
    temp_blok_kav_no_op = Column(String(15))
    temp_rw_op = Column(String(2))
    temp_rt_op = Column(String(3))
    temp_jalan_wp = Column(String(30))
    temp_blok_kav_no_wp = Column(String(15))
    temp_rw_wp = Column(String(2))
    temp_rt_wp = Column(String(3))
    temp_kelurahan_wp = Column(String(30))
    temp_kota_wp = Column(String(30))
    temp_kd_pos_wp = Column(String(5))
    temp_npwp = Column(String(15))
    temp_subjek_pajak_id = Column(String(30))
    kd_kls_tanah = Column(String(3))
    thn_awal_kls_tanah = Column(String(4))
    kd_kls_bng = Column(String(3))
    thn_awal_kls_bng = Column(String(4))
    temp_luas_bumi = Column(Float)
    temp_luas_bangunan = Column(Float)
    temp_njop_bumi = Column(Float)
    temp_njop_bangunan = Column(Float)
    temp_njop = Column(Float)
    temp_njoptkp = Column(Float)
    temp_pbb_terhutang = Column(Float)
    temp_besar_denda = Column(Float)
    temp_faktor_pengurang = Column(Float)
    temp_pbb_yg_harus_dibayar = Column(Float)
    temp_tgl_jatuh_tempo = Column(DateTime)
    __table_args__ = (PBB_ARGS,)

    @classmethod
    def query(cls):
        return PbbDBSession.query(cls)

    @classmethod
    def get_by_pelayanan(cls,code_nopel):
        fixNopel = FixNopel(code_nopel)
        return cls.query().\
                    filter(cls.kd_kanwil == fixNopel['kd_kanwil'],
                            cls.kd_kantor == fixNopel['kd_kantor'],
                            cls.thn_pelayanan == fixNopel['tahun'],
                            cls.bundel_pelayanan == fixNopel['bundel'],
                            cls.no_urut_pelayanan == fixNopel['urut'])

class TempSppt(PbbBase, CommonModel):
    __tablename__ = 'temp_sppt'
    kd_propinsi = Column(String(2), primary_key=True)
    kd_dati2 = Column(String(2), primary_key=True)
    kd_kecamatan = Column(String(3), primary_key=True)
    kd_kelurahan = Column(String(3), primary_key=True)
    kd_blok = Column(String(3), primary_key=True)
    no_urut = Column(String(4), primary_key=True)
    kd_jns_op = Column(String(1), primary_key=True)
    thn_temp_sppt = Column(String(4))
    status_sppt = Column(String(1))
    __table_args__ = (PBB_ARGS,)
    
    def _init_(cls):
        pass

class TempMaxBundel(PbbBase, BaseKantor):
    __tablename__ = 'temp_max_bundel'

    temp_thn_bundel = Column(String(4), primary_key=True)
    temp_no_bundel = Column(String(4), primary_key=True)
    temp_urut_bundel = Column(String(3), primary_key=True)

    __table_args__ = (PBB_ARGS,)