customer.py 1.85 KB
from sqlalchemy import (
    Column,
    Integer,
    String,
    Date,
    DateTime,
    )
from sqlalchemy.ext.declarative import declared_attr


class CustomerMixin:
    @declared_attr
    def __tablename__(self):
        return 'bphtb_ppat'

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

    @declared_attr
    def kode(self):
        return Column(String(6), unique=True)

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

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

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

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

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

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

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

    @declared_attr
    def no_telp(self):
        return Column(String(20))

    @declared_attr
    def no_fax(self):
        return Column(String(20))

    @declared_attr
    def no_sk(self):
        return Column(String(30), unique=True)

    @declared_attr
    def tgl_sk(self):
        return Column(Date)

    @declared_attr
    def create_uid(self):
        return Column(String(20))

    @declared_attr
    def update_uid(self):
        return Column(String(20))

    @declared_attr
    def created(self):
        return Column(DateTime)

    @declared_attr
    def updated(self):
        return Column(DateTime)

    @declared_attr
    def npwp(self):
        return Column(String(20))

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

    # @declared_attr
    # def status(self):
    #    return Column(Integer)

    @declared_attr
    def __table_args__(self):
        return dict(schema='bphtb')