perubahan ke base 5

1 parent 3e14c155
from sqlalchemy import engine_from_config
from .models import EisDBSession, EisBase
def main(global_config, **settings):
""" This function returns a Pyramid WSGI application.
"""
if 'eis.' in settings:
engine = engine_from_config(settings, 'eis.')
EisDBSession.configure(bind=engine)
EisBase.metadata.bind = engine
# from .models import DBSession, EisBase
from opensipkd.tools import get_settings
from pyramid.events import BeforeRender, subscriber
from opensipkd.base import get_params, BaseApp
import os
class AppClass(BaseApp):
def __init__(self):
super().__init__()
self.base_dir = os.path.split(__file__)[0]
APP_CLASS = AppClass()
def includeme(config):
# APP_CLASS.init()
# APP_CLASS.static_views(config)
# SPPT_CLASS.route_from_list(config, routes, paket="opensipkd.pbb.esppt")
APP_CLASS.route_from_csv(config, "eispajak.views")
config.scan(".")
print("+", __name__, "includeme class loaded")
# url = 'pbb.url' in settings and settings['pbb.url'] and 'pbb.' or 'sqlalchemy.'
# # if not url:
# # url = 'pbbm.url' in settings and settings['pbbm.url'] and 'pbbm.' or 'sqlalchemy.'
# # log.debug(url)
# engine = engine_from_config(settings, url)
# PbbmDBSession.configure(bind=engine)
# PbbmBase.metadata.bind = engine
# set_routes(config, app_id=191)
# config.scan('.')
# log.info("Module PBB Monitoring Loaded")
# if 'eis.' in settings:
# engine = engine_from_config(settings, 'eis.')
# DBSession.configure(bind=engine)
# EisBase.metadata.bind = engine
@subscriber(BeforeRender)
def add_global(event):
event['get_eis_menus'] = APP_CLASS.get_menus
\ No newline at end of file
from datetime import datetime
from sqlalchemy import (
Column,
Integer,
Text,
DateTime,
ForeignKey,
UniqueConstraint,
String,
SmallInteger
func
)
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm.exc import NoResultFound
from sqlalchemy.orm import (
scoped_session,
sessionmaker,
relationship,
backref
)
from zope.sqlalchemy import ZopeTransactionExtension
from ...models import (CommonModel, DefaultModel as BaseDefaultModel,
Base as EisBase, DBSession as EisDBSession,
KodeModel as BaseKodeModel, NamaModel as BaseNamaModel)
from opensipkd.base.models import *
from opensipkd.base.models import (DefaultModel as BaseDefaultModel)
TABLE_ARGS = {'extend_existing':True,
'schema':'eis'
}
class DefaultModel(BaseDefaultModel):
def save(self):
if self.id:
EisDBSession.merge(self)
else:
EisDBSession.add(self)
@classmethod
def query(cls):
return EisDBSession.query(cls)
@classmethod
def count(cls):
return EisDBSession.query(func.count('id')).scalar()
class KodeModel(DefaultModel, BaseKodeModel):
pass
return DBSession.query(func.count('id')).scalar()
class NamaModel(KodeModel, BaseNamaModel):
pass
from .eis import Eis, Slide, Chart, ChartItem, EisParams, ArPayment, LastUpdate
\ No newline at end of file
from .eis import *
\ No newline at end of file
from datetime import datetime
from sqlalchemy import (
Column,
Integer,
BigInteger,
SmallInteger,
Text,
DateTime,
String,
UniqueConstraint,
ForeignKey,
Index
ForeignKey
)
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm.exc import NoResultFound
from sqlalchemy.orm import (
scoped_session,
sessionmaker,
relationship, backref
relationship
)
from ..models import (EisDBSession, DefaultModel, EisBase, NamaModel, TABLE_ARGS)
from . import (DBSession, DefaultModel, Base, NamaModel, TABLE_ARGS, Base)
class Eis(EisBase, NamaModel):
class Eis(Base, NamaModel):
__tablename__ = 'wells'
tahun = Column(Integer)
amt_tahun = Column(BigInteger)
......@@ -33,7 +26,7 @@ class Eis(EisBase, NamaModel):
@classmethod
def sum_data(cls, kode, tahun):
q = EisDBSession.query(cls).filter_by(
q = DBSession.query(cls).filter_by(
kode==kode,
tahun=tahun).first()
if q:
......@@ -47,13 +40,13 @@ class Eis(EisBase, NamaModel):
@classmethod
def sum_order_id(cls, tahun):
q = EisDBSession.query(cls).filter_by(
q = DBSession.query(cls).filter_by(
tahun=tahun)
if q:
return q
return
class Slide(NamaModel, EisBase):
class Slide(NamaModel, Base):
__tablename__ = 'slides'
source_type = Column(String(16)) #grid, image, chart-line, chart-pie, chart-bar
source_id = Column(String(128))
......@@ -61,7 +54,7 @@ class Slide(NamaModel, EisBase):
aktif = Column(SmallInteger, default=0)
__table_args__ = TABLE_ARGS
class Chart(NamaModel, EisBase):
class Chart(NamaModel, Base):
__tablename__ = 'charts'
chart_type = Column(String(16))
label = Column(String(128)) #digunakan jika chart membutuhkan label
......@@ -70,7 +63,7 @@ class Chart(NamaModel, EisBase):
__table_args__ = (UniqueConstraint('kode'),
TABLE_ARGS)
class ChartItem(NamaModel, EisBase):
class ChartItem(NamaModel, Base):
__tablename__ = 'chart_items'
value_1 = Column(BigInteger, default=0)
value_2 = Column(BigInteger, default=0)
......@@ -84,7 +77,7 @@ class ChartItem(NamaModel, EisBase):
value10 = Column(BigInteger, default=0)
value11 = Column(BigInteger, default=0)
value12 = Column(BigInteger, default=0)
chart_id = Column(Integer, ForeignKey('eis.charts.id'))
chart_id = Column(Integer, ForeignKey(Chart.id))
source_type = Column(String(32), default='realisasi')
rekening_kd = Column(String(128))
color = Column(String(6))
......@@ -99,17 +92,17 @@ class ChartItem(NamaModel, EisBase):
__table_args__ = (UniqueConstraint('kode'),
TABLE_ARGS)
class EisParams(NamaModel, EisBase):
class EisParams(NamaModel, Base):
__tablename__ = 'params'
last_update = Column(DateTime(timezone=False), nullable=True)
__table_args__ = (TABLE_ARGS)
class LastUpdate(DefaultModel, EisBase):
class LastUpdate(DefaultModel, Base):
__tablename__ = 'last_update'
wells = Column(DateTime(timezone=False), nullable=True)
__table_args__ = (TABLE_ARGS)
class ArPayment(NamaModel, EisBase):
class ArPayment(NamaModel, Base):
__tablename__ = 'ar_payment'
tanggal = Column(DateTime(timezone=False))
denda = Column(BigInteger)
......
ChartData = {
'options': ['insert if not exists','delete first'],
'csv': ['chart.csv'],
}
ChartItemData = {
'options': ['insert if not exists','delete first'],
'csv': ['chart_item.csv'],
}
kode,nama,path,status
eis,EIS,/eis,1
eis-carousel,Carousel,/eis/carousel,1
eis-carousel-act,Carousel Action,/eis/carousel/{act}/act,1
eis-carousel-add,Carousel Add,/eis/carousel/add,1
eis-carousel-edit,Carousel Edit,/eis/carousel/{id}/edit,1
eis-carousel-delete,Carousel Delete,/eis/carousel/{id}/delete,1
eis-dashboard,EIS,/eis/dashboard,1
eis-dashboard-act,EIS Act,/eis/dashboard/{act}/act,1
eis-dashboard-calc-all,EIS Calc ALL,/eis/dashboad/calc/all,1
eis-home,EIS Home,/eis/home,1
eis-act,EIS Home Act,/eis/{act}/act,1
eis-calc-all,EIS Calc ALL,/eis/calc/all,1
eis-chart,Chart,/eis/chart,1
eis-chart-act,EIS Chart Action,/eis/chart/{act}/act,1
eis-chart-add,EIS Chart Add,/eis/chart/add,1
eis-chart-edit,EIS Chart Edit,/eis/chart/{id}/edit,1
eis-chart-delete,EIS Chart Delet,/eis/chart/{id}/delete,1
eis-chart-item,Chart Item,/eis/chart/item/{chart_id},1
eis-chart-item-act,EIS Chart Item Action,/eis/chart/item/{chart_id}/{act}/act,1
eis-chart-item-add,EIS Chart Item Add,/eis/chart/item/{chart_id}/add,1
eis-chart-item-edit,EIS Chart Item Edit,/eis/chart/item/{chart_id}/{id}/edit,1
eis-chart-item-delete,EIS Chart Item Delet,/eis/chart/item/{chart_id}/{id}/delete,1
eis-item,EIS Item,/eis/item,1
eis-item-act,EIS Item Action,/eis/item/{act}/act,1
eis-item-add,EIS Item Add,/eis/item/add,1
eis-item-edit,EIS Item Edit,/eis/item/{id}/edit,1
eis-item-delete,EIS Item Delete,/eis/item/{id}/delete,1
eis-slide,EIS Slide,/eis/slide,1
eis-slide-act,EIS Slide Act,/eis/slide/{act}/act,1
eis-slide-add,EIS Slide Add,/eis/slide/add,1
eis-slide-edit,EIS Slide Edit,/eis/slide/{id}/edit,1
eis-slide-delete,EIS Slide Delete,/eis/slide/{id}/delete,1
kode,nama,path,status,type
eis,EIS,/eis,1,0
eis-carousel,Carousel,/eis/carousel,1,0
eis-carousel-act,Carousel Action,/eis/carousel/{act}/act,1,0
eis-carousel-add,Carousel Add,/eis/carousel/add,1,0
eis-carousel-edit,Carousel Edit,/eis/carousel/{id}/edit,1,0
eis-carousel-delete,Carousel Delete,/eis/carousel/{id}/delete,1,0
eis-dashboard,EIS,/eis/dashboard,1,0
eis-dashboard-act,EIS Act,/eis/dashboard/{act}/act,1,0
eis-dashboard-calc-all,EIS Calc ALL,/eis/dashboad/calc/all,1,0
eis-home,EIS Home,/eis/home,1,0
eis-act,EIS Home Act,/eis/{act}/act,1,0
eis-calc-all,EIS Calc ALL,/eis/calc/all,1,0
eis-chart,Chart,/eis/chart,1,0
eis-chart-act,EIS Chart Action,/eis/chart/{act}/act,1,0
eis-chart-add,EIS Chart Add,/eis/chart/add,1,0
eis-chart-edit,EIS Chart Edit,/eis/chart/{id}/edit,1,0
eis-chart-delete,EIS Chart Delet,/eis/chart/{id}/delete,1,0
eis-chart-item,Chart Item,/eis/chart/item/{chart_id},1,0
eis-chart-item-act,EIS Chart Item Action,/eis/chart/item/{chart_id}/{act}/act,1,0
eis-chart-item-add,EIS Chart Item Add,/eis/chart/item/{chart_id}/add,1,0
eis-chart-item-edit,EIS Chart Item Edit,/eis/chart/item/{chart_id}/{id}/edit,1,0
eis-chart-item-delete,EIS Chart Item Delet,/eis/chart/item/{chart_id}/{id}/delete,1,0
eis-item,EIS Item,/eis/item,1,0
eis-item-act,EIS Item Action,/eis/item/{act}/act,1,0
eis-item-add,EIS Item Add,/eis/item/add,1,0
eis-item-edit,EIS Item Edit,/eis/item/{id}/edit,1,0
eis-item-delete,EIS Item Delete,/eis/item/{id}/delete,1,0
eis-slide,EIS Slide,/eis/slide,1,0
eis-slide-act,EIS Slide Act,/eis/slide/{act}/act,1,0
eis-slide-add,EIS Slide Add,/eis/slide/add,1,0
eis-slide-edit,EIS Slide Edit,/eis/slide/{id}/edit,1,0
eis-slide-delete,EIS Slide Delete,/eis/slide/{id}/delete,1,0
RouteData = {
'options': ['insert if not exists','delete first'],
'csv': ['route.csv'],
'keys':['kode'],
}
SlideData = {
'options': ['insert if not exists','delete first'],
'csv': ['slide.csv'],
}
EisData = {
'options': ['insert if not exists','delete first'],
'csv': ['wells.csv'],
}
import os
from .data.routes import RouteData
from ...scripts.initial_data import InitialData
from ..models import (
EisBase as ModuleBase,
CommonModel,
EisDBSession as ModuleDBSession,
)
from .data.routes import RouteData
from .data.slide import SlideData
from .data.wells import EisData
from .data.chart import ChartData
from .data.chart_item import ChartItemData
from ...scripts.DbTools import (
get_pkeys,
execute,
split_tablename,
)
from ..models import (
EisBase as ModuleBase,
CommonModel,
EisDBSession as ModuleDBSession,
Eis,Slide, Chart, ChartItem
)
fixtures = [
('routes', RouteData),
#('eis.charts', ChartData),
#('eis.chart_items', ChartItemData),
#('eis.slides', SlideData),
#('eis.wells', EisData),
]
def insert():
initialData = InitialData(ModuleBase, ModuleDBSession)
base_dir = os.path.split(__file__)[0]
initialData.insert(base_dir, fixtures)
\ No newline at end of file
import os
import sys
import transaction
import subprocess
from sqlalchemy import (
engine_from_config,
select,
)
from sqlalchemy.schema import CreateSchema
from sqlalchemy import (engine_from_config, )
from pyramid.paster import (
get_appsettings,
setup_logging,
)
from ..models import (
EisDBSession as ModuleDBSession,
EisBase as ModuleBase,
)
from ..models import *
from . import initial_data
#from .tools import mkdir
from ...scripts.initializedb import create_schema, read_file
from ...tools import get_settings
from opensipkd.base.scripts.initializedb import create_schema
def main(settings):
'eis'
if 'eis.url' in settings and settings['eis.url']:
engine = engine_from_config(settings, 'eis.')
else:
engine = ModuleDBSession.bind;
def main(argv=sys.argv):
config_uri = argv[1]
setup_logging(config_uri)
settings = get_appsettings(config_uri)
engine = engine_from_config(settings, 'sqlalchemy.')
Base.metadata.bind = engine
create_schema(engine, 'eis')
ModuleBase.metadata.create_all(engine)
ModuleDBSession.configure(bind=engine)
initial_data.insert()
Base.metadata.create_all(bind=engine)
DBSession.configure(bind=engine)
transaction.commit()
print('****EIS CREATED****')
from opensipkd.tools import *
\ No newline at end of file
from ...views.base_views import BaseView as OsBaseView
from ...views.common import DataTables, ColumnDT
from ...views import widget
from pyramid.view import (
view_config,
)
class BaseView(OsBaseView):
from opensipkd.base.views import base_views
from opensipkd.base.views import DataTables, ColumnDT
class BaseView(base_views.BaseView):
pass
......@@ -6,8 +6,7 @@ from pyramid.view import (
# HTTPFound,
# )
from ..views import BaseView
from ..models import EisDBSession
from ..models import Eis, Chart, ChartItem, Slide
from ..models import *
#from ..tools import row2dict
class dashboard(BaseView):
......@@ -20,7 +19,7 @@ class dashboard(BaseView):
@view_config(route_name='eis-dashboard', renderer='templates/dashboard.pt')
def view_app(self):
tahun = self.ses['tahun']
datas = EisDBSession.query(Slide).filter(Slide.status==1).order_by(Slide.order_id)
datas = DBSession.query(Slide).filter(Slide.status==1).order_by(Slide.order_id)
if not datas:
datas = {}
return dict(project='EIS', datas=datas)
......@@ -35,7 +34,7 @@ class dashboard(BaseView):
json_data['success']=False
if req.matchdict['act']=='grid':
rows = EisDBSession.query(Eis).filter(Eis.id==id)
rows = DBSession.query(Eis).filter(Eis.id==id)
if not rows:
return json_data
......@@ -57,12 +56,12 @@ class dashboard(BaseView):
# GRAFIK LINE/BAR
#######################################################################
elif req.matchdict['act']=='linebar':
rows = EisDBSession.query(Chart).filter(Chart.id==id).first()
rows = DBSession.query(Chart).filter(Chart.id==id).first()
if not rows:
return json_data
json_data['label'] = rows.label.split(',')
rows = EisDBSession.query(ChartItem).filter(ChartItem.chart_id==id).\
rows = DBSession.query(ChartItem).filter(ChartItem.chart_id==id).\
order_by(ChartItem.id)
for row in rows:
json_data[row.source_type] = [row.value_1/row.chart.devider,row.value_2/row.chart.devider,row.value_3/row.chart.devider,
......@@ -78,12 +77,12 @@ class dashboard(BaseView):
# GRAFIK LINGKARAN
#######################################################################
elif req.matchdict['act']=='pie':
rows = EisDBSession.query(Chart).filter(Chart.id==id).first()
rows = DBSession.query(Chart).filter(Chart.id==id).first()
if not rows:
return json_data
json_data['label'] = rows.label.split(',')
rows = EisDBSession.query(ChartItem).filter(ChartItem.chart_id==id).\
rows = DBSession.query(ChartItem).filter(ChartItem.chart_id==id).\
order_by(ChartItem.id)
json_data['rows'] = {}
for row in rows:
......
......@@ -15,12 +15,7 @@ from deform import (
widget,
ValidationFailure,
)
from ..models import (
EisDBSession
)
from ..models.eis import (
Eis
)
from ..models import *
from ..views import BaseView, ColumnDT, DataTables
......@@ -121,13 +116,13 @@ class view_carousel(BaseView):
columns.append(ColumnDT(Eis.aktif, ))
columns.append(ColumnDT(func.to_char(Eis.updated, "DD-MM-YYYY"), ))
query = EisDBSession.query().select_from(Eis)
query = DBSession.query().select_from(Eis)
rowTable = DataTables(request.GET, query, columns)
return rowTable.output_result()
elif url_dict['act']=='hon':
term = 'term' in params and params['term'] or ''
prefix = 'prefix' in params and params['prefix'] or ''
qry = EisDBSession.query(Eis).\
qry = DBSession.query(Eis).\
filter(Eis.status == 1).\
filter(Eis.nama.ilike('%%%s%%' % term)).\
order_by(Eis.nama)
......@@ -221,7 +216,7 @@ class view_carousel(BaseView):
msg = 'Carousel ID %d %s sudah dihapus.' % (row.id, row.nama)
try:
q.delete()
EisDBSession.flush()
DBSession.flush()
except:
msg = 'Carousel ID %d %s tidak dapat dihapus.' % (row.id, row.nama)
request.session.flash(msg)
......@@ -235,7 +230,7 @@ class view_carousel(BaseView):
def form_validator(form, value):
if 'id' in form.request.matchdict:
uid = form.request.matchdict['id']
q = EisDBSession.query(Eis).filter_by(id=uid)
q = DBSession.query(Eis).filter_by(id=uid)
row = q.first()
else:
row = None
......@@ -273,8 +268,8 @@ def save(values, user, row=None):
row.from_dict(values['amount'])
row.status = 'status' in values and values['status'] and 1 or 0
row.aktif = 'aktif' in values and values['aktif'] and 1 or 0
EisDBSession.add(row)
EisDBSession.flush()
DBSession.add(row)
DBSession.flush()
return row
def route_list(request):
......@@ -284,7 +279,7 @@ def route_list(request):
# Edit #
########
def query_id(request):
return EisDBSession.query(Eis).filter_by(id=request.matchdict['id'])
return DBSession.query(Eis).filter_by(id=request.matchdict['id'])
def id_not_found(request):
msg = 'Carousel ID %s Tidak Ditemukan.' % request.matchdict['id']
......
......@@ -16,7 +16,7 @@ from deform import (
ValidationFailure,
)
from ..models import (
EisDBSession
DBSession
)
from ..models.eis import (
Chart
......@@ -94,14 +94,14 @@ class view_eis_chart(BaseView):
columns.append(ColumnDT(Chart.chart_type))
columns.append(ColumnDT(Chart.devider))
query = EisDBSession.query().select_from(Chart)
query = DBSession.query().select_from(Chart)
rowTable = DataTables(req.GET, query, columns)
return rowTable.output_result()
elif url_dict['act']=='hon':
term = 'term' in params and params['term'] or ''
prefix = 'prefix' in params and params['prefix'] or ''
chart_type = 'chart_type' in params and params['chart_type'] or ''
qry = EisDBSession.query(Chart).\
qry = DBSession.query(Chart).\
filter(Chart.status == 1,
Chart.chart_type==chart_type,
Chart.nama.ilike('%%%s%%' % term)).\
......@@ -121,7 +121,7 @@ class view_eis_chart(BaseView):
def form_validator(self, form, value):
if 'id' in form.request.matchdict:
uid = form.request.matchdict['id']
q = EisDBSession.query(Chart).filter_by(id=uid)
q = DBSession.query(Chart).filter_by(id=uid)
row = q.first()
else:
row = None
......@@ -143,8 +143,8 @@ class view_eis_chart(BaseView):
row.updated = datetime.now()
row.update_uid = user.id
row.aktif = 'aktif' in values and values['aktif'] and 1 or 0
EisDBSession.add(row)
EisDBSession.flush()
DBSession.add(row)
DBSession.flush()
return row
def save_request(self, values, row=None):
......@@ -187,7 +187,7 @@ class view_eis_chart(BaseView):
# Edit #
########
def query_id(self):
return EisDBSession.query(Chart).filter_by(id=self.req.matchdict['id'])
return DBSession.query(Chart).filter_by(id=self.req.matchdict['id'])
def id_not_found(self):
msg = 'Chart ID %s Tidak Ditemukan.' % self.req.matchdict['id']
......@@ -237,7 +237,7 @@ class view_eis_chart(BaseView):
msg = 'Chart ID %d %s sudah dihapus.' % (row.id, row.nama)
try:
q.delete()
EisDBSession.flush()
DBSession.flush()
except:
msg = 'Chart ID %d %s tidak dapat dihapus.' % (row.id, row.nama)
request.session.flash(msg)
......
......@@ -7,7 +7,7 @@ from pyramid.view import (view_config,)
from pyramid.httpexceptions import ( HTTPFound, )
import colander
from deform import (Form, widget, ValidationFailure, )
from ..models import EisDBSession
from ..models import DBSession
from ..models.eis import ChartItem, Chart
from ..views import BaseView, ColumnDT, DataTables
......@@ -166,7 +166,7 @@ class view_eis_chart_item(BaseView):
columns.append(ColumnDT(ChartItem.value_5, ))
columns.append(ColumnDT(ChartItem.value_6, ))
query = EisDBSession.query().select_from(ChartItem).filter(ChartItem.chart_id==chart_id)
query = DBSession.query().select_from(ChartItem).filter(ChartItem.chart_id==chart_id)
rowTable = DataTables(req.GET, query, columns)
return rowTable.output_result()
......@@ -176,7 +176,7 @@ class view_eis_chart_item(BaseView):
def form_validator(self, form, value):
if 'id' in form.request.matchdict:
uid = form.request.matchdict['id']
q = EisDBSession.query(ChartItem).filter_by(id=uid)
q = DBSession.query(ChartItem).filter_by(id=uid)
row = q.first()
else:
row = None
......@@ -201,8 +201,8 @@ class view_eis_chart_item(BaseView):
row.from_dict(values['values_1'])
row.from_dict(values['values_2'])
row.is_sum = 'is_sum' in values and values['is_sum'] and 1 or 0
EisDBSession.add(row)
EisDBSession.flush()
DBSession.add(row)
DBSession.flush()
return row
def save_request(self, values, row=None):
......@@ -250,7 +250,7 @@ class view_eis_chart_item(BaseView):
# Edit #
########
def query_id(self):
return EisDBSession.query(ChartItem).filter_by(id=self.req.matchdict['id'])
return DBSession.query(ChartItem).filter_by(id=self.req.matchdict['id'])
def id_not_found(self,chart_id):
msg = 'ChartItem ID %s Tidak Ditemukan.' % self.req.matchdict['id']
......
......@@ -7,7 +7,7 @@ from pyramid.view import (view_config,)
from pyramid.httpexceptions import ( HTTPFound, )
import colander
from deform import (Form, widget, ValidationFailure, )
from ..models import EisDBSession
from ..models import DBSession
#from ..models.eis import ARPaymentDetail as AR
from ..views import BaseView, ColumnDT, DataTables
......@@ -124,7 +124,7 @@ class view_eis_item(BaseView):
columns.append(ColumnDT('tanggal', ))
columns.append(ColumnDT('amount', ))
query = EisDBSession.query().select_from(AR)
query = DBSession.query().select_from(AR)
rowTable = DataTables(req.GET, query, columns)
return rowTable.output_result()
......@@ -134,7 +134,7 @@ class view_eis_item(BaseView):
def form_validator(self, form, value):
if 'id' in form.request.matchdict:
uid = form.request.matchdict['id']
q = EisDBSession.query(AR).filter_by(id=uid)
q = DBSession.query(AR).filter_by(id=uid)
row = q.first()
else:
row = None
......@@ -157,8 +157,8 @@ class view_eis_item(BaseView):
row.update_uid = user.id
row.disable = 'disable' in values and values['disable'] and 1 or 0
row.is_kota = 'is_kota' in values and values['is_kota'] and 1 or 0
EisDBSession.add(row)
EisDBSession.flush()
DBSession.add(row)
DBSession.flush()
return row
def save_request(self, values, row=None):
......@@ -205,7 +205,7 @@ class view_eis_item(BaseView):
# Edit #
########
def query_id(self):
return EisDBSession.query(AR).filter_by(id=self.req.matchdict['id'])
return DBSession.query(AR).filter_by(id=self.req.matchdict['id'])
def id_not_found(self):
msg = 'AR ID %s Tidak Ditemukan.' % self.req.matchdict['id']
......@@ -272,7 +272,7 @@ class view_eis_item(BaseView):
msg = 'AR ID %d %s sudah dihapus.' % (row.id, row.nama)
try:
q.delete()
EisDBSession.flush()
DBSession.flush()
except:
msg = 'AR ID %d %s tidak dapat dihapus.' % (row.id, row.nama)
request.session.flash(msg)
......
......@@ -9,7 +9,7 @@ import colander
from deform import (Form, ValidationFailure, FileData,)
#from ..views import widget
from deform import widget
from ..models import EisDBSession
from ..models import DBSession
from ..models.eis import Slide, Eis
from sqlalchemy.sql.expression import update
from ..views import BaseView, ColumnDT, DataTables
......@@ -139,7 +139,7 @@ class view_eis_slide(BaseView):
columns.append(ColumnDT(Slide.order_id))
columns.append(ColumnDT(Slide.aktif))
columns.append(ColumnDT(Slide.status))
query = EisDBSession.query().select_from(Slide)
query = DBSession.query().select_from(Slide)
rowTable = DataTables(req.GET, query, columns)
return rowTable.output_result()
......@@ -149,7 +149,7 @@ class view_eis_slide(BaseView):
def form_validator(self, form, value):
if 'id' in form.request.matchdict:
uid = form.request.matchdict['id']
q = EisDBSession.query(Slide).filter_by(id=uid)
q = DBSession.query(Slide).filter_by(id=uid)
row = q.first()
else:
row = None
......@@ -206,7 +206,7 @@ class view_eis_slide(BaseView):
# Edit #
########
def query_id(self):
return EisDBSession.query(Slide).filter_by(id=self.req.matchdict['id'])
return DBSession.query(Slide).filter_by(id=self.req.matchdict['id'])
def id_not_found(self):
msg = 'Slide ID %s Tidak Ditemukan.' % self.req.matchdict['id']
......@@ -265,7 +265,7 @@ class view_eis_slide(BaseView):
msg = 'Slide ID %d %s sudah dihapus.' % (row.id, row.nama)
try:
q.delete()
EisDBSession.flush()
DBSession.flush()
except:
msg = 'Slide ID %d %s tidak dapat dihapus.' % (row.id, row.nama)
request.session.flash(msg)
......@@ -299,11 +299,11 @@ def save(values, user, row=None):
row.update_uid = user.id
row.aktif = 'aktif' in values and values['aktif'] and 1 or 0
row.status = 'status' in values and values['status'] and 1 or 0
EisDBSession.add(row)
EisDBSession.flush()
DBSession.add(row)
DBSession.flush()
if 'aktif' in values and values['aktif']:
stmt = update(Slide).where(Slide.id!=row.id).\
values(aktif=0)
EisDBSession.execute(stmt)
EisDBSession.flush()
DBSession.execute(stmt)
DBSession.flush()
return row
<html metal:use-macro = "load: ../../../views/templates/base.pt">
<html metal:use-macro = "load: opensipkd.base.views:templates/base.pt">
<div metal:fill-slot="header">
<link href="/static/chart/legend/legend.css" rel="stylesheet">
<script type="text/javascript" src="/static/chart/Chart.js"> </script>
......
......@@ -5,20 +5,19 @@ build-backend = 'setuptools.build_meta'
#packages = ["opensipkd", "opensipkd.pbb", "opensipkd.pbb.esppt"]
[tool.setuptools.packages.find]
include = ['eispajak.*']
include = ['eispajak']
[tool.mypy]
exclude = [
]
exclude = ['tmp' , 'build', 'dist', 'eispajak.egg-info', 'docs', 'tests']
show_error_codes = true
[[tool.mypy.overrides]]
module = [
]
#[[tool.mypy.overrides]]
#
#module = [
#]
warn_unused_ignores = true
strict = true
#warn_unused_ignores = true
#strict = true
[project]
......
from ..tools import *
\ 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!