bendahara.py
1.75 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import os
import uuid
from datetime import datetime
from sqlalchemy import not_, func, between
from pyramid.view import (view_config,)
from pyramid.httpexceptions import ( HTTPFound, )
import colander
from deform import (Form, widget, ValidationFailure, )
from ..views import BaseView, ColumnDT, DataTables
from ..models import SipkdDBSession as DBSession
from ..models import Bendahara, DaftUnit
from ..tools import date_from_str
class view_invoice(BaseView):
@view_config(route_name="sipkd-bendahara", renderer="templates/bendahara/list.pt",
permission="sipkd-bendahara")
def view_list(self):
return dict(project='SIPKD')
##########
# Action #
##########
@view_config(route_name='sipkd-bendahara-act', renderer='json',
permission='sipkd-bendahara-act')
def view_act(request):
ses = request.session
req = request
params = req.params
url_dict = req.matchdict
if url_dict['act']=='grid':
pk_id = 'id' in params and params['id'] and int(params['id']) or 0
if url_dict['act']=='grid':
# defining columns
columns = [
ColumnDT(Bendahara.keybend, mData="id"),
ColumnDT(Bendahara.jns_bend, mData="jenis"),
ColumnDT(Bendahara.nip, mData="nip"),
ColumnDT(Bendahara.jab_bend, mData="jabatan"),
ColumnDT(DaftUnit.nmunit, mData="opd"),
#ColumnDT(Bendahara.bunga, mData="nilai"),
#ColumnDT(Bendahara.bunga, mData="bunga"),
]
query = DBSession.query().select_from(Bendahara).\
join(DaftUnit, (Bendahara.unitkey==DaftUnit.unitkey))
rowTable = DataTables(req.GET, query, columns)
return rowTable.output_result()