feat: Update Departemen model and API views for improved functionality and parameter handling

1 parent 08d5befa
...@@ -13,6 +13,7 @@ class _Departemen(NamaModel): ...@@ -13,6 +13,7 @@ class _Departemen(NamaModel):
singkat = Column(String(32)) singkat = Column(String(32))
level_id = Column(SmallInteger) level_id = Column(SmallInteger)
__tablename__ = 'departemen' __tablename__ = 'departemen'
@declared_attr @declared_attr
def children(self): def children(self):
return relationship( return relationship(
......
...@@ -9,7 +9,7 @@ base-password-request,/password/{code}/request,base,user_login,ViewPassword,chan ...@@ -9,7 +9,7 @@ base-password-request,/password/{code}/request,base,user_login,ViewPassword,chan
base-profile,/profile,base,register,,view_profile,,view,,Profile,1,0,,0,form8.pt, base-profile,/profile,base,register,,view_profile,,view,,Profile,1,0,,0,form8.pt,
base-register,/register,base,register,,view_register,,,,Register,1,0,,0,form8.pt, base-register,/register,base,register,,view_register,,,,Register,1,0,,0,form8.pt,
base-recreate-api-key,/recreate-api-key,base,register,ViewPassword,recreate-api-key,,,,Get Api Key,1,0,,0,recreate-api-key.pt, base-recreate-api-key,/recreate-api-key,base,register,ViewPassword,recreate-api-key,,,,Get Api Key,1,0,,0,recreate-api-key.pt,
base-admin,#,base,,,,,view,,Administrator,1,0,,1,, base-admin,#,base,,,,,admin,,Administrator,1,0,,1,,
base-user,/user,base,user,,view_list,,user-view,base-admin,User,1,0,,1,form.pt, base-user,/user,base,user,,view_list,,user-view,base-admin,User,1,0,,1,form.pt,
base-user-act,/user/{act}/act,base,user,,,,user-view,base-user,User Action,1,0,,,json, base-user-act,/user/{act}/act,base,user,,,,user-view,base-user,User Action,1,0,,,json,
base-user-add,/user/add,base,user,,,,user-edit,base-user,User Add,1,0,,,form6.pt, base-user-add,/user/add,base,user,,,,user-edit,base-user,User Add,1,0,,,form6.pt,
......
...@@ -61,8 +61,8 @@ class ApiViews(APIView): ...@@ -61,8 +61,8 @@ class ApiViews(APIView):
return query return query
def list_filter(self, query, **kw): def list_filter(self, query, **kw):
id_ = kw.get("id", 0) id_ = self.req.params.get("id", 0)
kode = kw.get("kode", 0) kode = self.req.params.get("kode", 0)
if id_: if id_:
query = query.filter(self.table.id == int(id_)) query = query.filter(self.table.id == int(id_))
elif kode: elif kode:
......
import logging import logging
from cgi import FieldStorage
import os import os
from datetime import datetime from datetime import datetime
from cgi import FieldStorage
from email.utils import parseaddr from email.utils import parseaddr
from webob.multidict import MultiDict from webob.multidict import MultiDict
...@@ -10,6 +10,7 @@ from datatables import ColumnDT ...@@ -10,6 +10,7 @@ from datatables import ColumnDT
from deform import (widget, Form, ValidationFailure, FileData, ) from deform import (widget, Form, ValidationFailure, FileData, )
from deform.widget import SelectWidget from deform.widget import SelectWidget
from pyramid.httpexceptions import HTTPFound, HTTPNotFound from pyramid.httpexceptions import HTTPFound, HTTPNotFound
from pyramid.request import Response
from sqlalchemy import Table from sqlalchemy import Table
# from opensipkd.base.views.upload import tmpstore # from opensipkd.base.views.upload import tmpstore
...@@ -21,16 +22,13 @@ from opensipkd.tools.buttons import ( ...@@ -21,16 +22,13 @@ from opensipkd.tools.buttons import (
btn_pdf, btn_upload) btn_pdf, btn_upload)
# from opensipkd.tools.captcha import get_captcha # from opensipkd.tools.captcha import get_captcha
from opensipkd.tools.report import csv_response, file_response from opensipkd.tools.report import csv_response, file_response
from pyramid.request import Response from opensipkd.base import BASE_CLASS
from .common import DataTables from .common import DataTables
from ..models import DBSession, Partner, Base from ..models import DBSession, Partner, Base
from ..widgets import widget_os from ..widgets import widget_os
# , get_params, get_urls
from ..scripts.initializedb import append_csv from ..scripts.initializedb import append_csv
from ..tools import obj2json from ..tools import obj2json
from ...detable import DeTable from ...detable import DeTable
from opensipkd.base import BASE_CLASS
from pyramid.csrf import new_csrf_token, get_csrf_token
log = logging.getLogger(__name__) log = logging.getLogger(__name__)
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!