Commit eb1ab40d by aa.gusti

import-opd

1 parent c36625b1
from models_sipkd_master import RekPendapatan, RekBelanja, RekBiaya, SipkdDBSession, SipkdBase
from models_eis import Rekening as EisRekening, EisBase, EisDBSession
from models_sipkd_master import RekPendapatan, RekBelanja, RekBiaya, SipkdDBSession, SipkdBase, DaftUnit
from models_eis import Rekening as EisRekening, EisBase, EisDBSession, Opd
from conf import sipkd_url, sipkd_url_master
from sqlalchemy import create_engine
......@@ -31,8 +31,25 @@ def import_rekening(tabel):
EisDBSession.add(rek)
EisDBSession.flush()
EisDBSession.commit()
import_rekening(RekPendapatan)
import_rekening(RekBelanja)
import_rekening(RekBiaya)
def import_opd():
query = SipkdDBSession.query(DaftUnit)
for row in query.all():
row_target = EisDBSession.query(Opd).\
filter_by(tahun=tahun,
kode=row.kdunit.strip()
).first()
if not row_target:
row_target = Opd()
row_target.tahun = tahun
row_target.kode = row.kdunit.strip()
row_target.nama = row.nmunit.strip()
row_target.level_id = row.kdunit.strip().count('.')
EisDBSession.add(row_target)
EisDBSession.flush()
EisDBSession.commit()
#import_rekening(RekPendapatan)
#import_rekening(RekBelanja)
#import_rekening(RekBiaya)
import_opd()
......@@ -101,6 +101,19 @@ class Rekening(NamaModel, EisBase):
#ForeignKeyConstraint(['parent_id'], ForeignKey('rekening.id')),
TABLE_ARGS
)
class Opd(NamaModel, EisBase):
__tablename__ = 'sipkd_opd'
tahun = Column(Integer)
level_id = Column(SmallInteger, default=1)
parent_id = Column(Integer, ForeignKey('eis.sipkd_rekening.id'),)
status = Column(SmallInteger, default=1)
defsign = Column(SmallInteger, default=1)
# children = relationship("Rekening",
# backref=backref('parent', remote_side='Rekening.id'))
__table_args__= (
UniqueConstraint('kode', 'tahun', name='sipkd_opd_uq'),
TABLE_ARGS
)
EisBase.metadata.create_all(engine)
\ No newline at end of file
......@@ -51,4 +51,16 @@ class RekBelanja(SipkdBase):
mtglevel = Column(String(2))
kdkhusus = Column(String(1))
type = Column(String(2))
__table_args__ = TABLE_ARGS
class DaftUnit(SipkdBase):
__tablename__ = 'daftunit'
unitkey = Column(String(10), primary_key=True)
kdlevel = Column(String(2))
kdunit = Column(String(30))
nmunit = Column(String(200))
akrounit = Column(String(30))
alamat = Column(String(200))
telepon = Column(String(20))
type = Column(String(2))
__table_args__ = TABLE_ARGS
\ No newline at end of file
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!