Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
irul
/
opensipkd-base
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Wiki
Settings
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit 0a7163a5
authored
Sep 27, 2021
by
aa.gusti
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
perbaikan posisi pegawai
1 parent
1fc51a77
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
55 additions
and
37 deletions
opensipkd/base/views/posisi.py
opensipkd/base/views/unit.py
opensipkd/base/views/user_rpc.py
opensipkd/base/views/posisi.py
View file @
0a7163a
...
@@ -367,7 +367,8 @@ def save_request(request, values, row=None):
...
@@ -367,7 +367,8 @@ def save_request(request, values, row=None):
values
[
'selesai'
]
=
date_from_str
(
values
[
'selesai'
])
values
[
'selesai'
]
=
date_from_str
(
values
[
'selesai'
])
else
:
else
:
values
[
'selesai'
]
=
None
values
[
'selesai'
]
=
None
query_struktural
=
PartnerDBSession
.
query
(
Jabatan
.
jenis
)
.
filter
(
Jabatan
.
id
==
values
[
'jabatan_id'
])
.
first
()
query_struktural
=
DBSession
.
query
(
Jabatan
.
jenis
)
.
\
filter
(
Jabatan
.
id
==
values
[
'jabatan_id'
])
.
scalar
()
values
[
'struktural_id'
]
=
query_struktural
values
[
'struktural_id'
]
=
query_struktural
row
=
save
(
values
,
request
,
row
)
row
=
save
(
values
,
request
,
row
)
request
.
session
.
flash
(
'Posisi Partner sudah disimpan.'
)
request
.
session
.
flash
(
'Posisi Partner sudah disimpan.'
)
...
...
opensipkd/base/views/unit.py
View file @
0a7163a
...
@@ -22,6 +22,7 @@ from ..views import ColumnDT, DataTables, BaseView
...
@@ -22,6 +22,7 @@ from ..views import ColumnDT, DataTables, BaseView
SESS_ADD_FAILED
=
'Tambah departemen gagal'
SESS_ADD_FAILED
=
'Tambah departemen gagal'
SESS_EDIT_FAILED
=
'Edit departemen gagal'
SESS_EDIT_FAILED
=
'Edit departemen gagal'
def
get_departemen_list
():
def
get_departemen_list
():
r
=
[]
r
=
[]
q
=
DBSession
.
query
(
Departemen
)
.
order_by
(
Departemen
.
nama
)
q
=
DBSession
.
query
(
Departemen
)
.
order_by
(
Departemen
.
nama
)
...
@@ -30,50 +31,53 @@ def get_departemen_list():
...
@@ -30,50 +31,53 @@ def get_departemen_list():
r
.
append
(
g
)
r
.
append
(
g
)
return
r
return
r
@colander.deferred
@colander.deferred
def
departemen_widget
(
node
,
kw
):
def
departemen_widget
(
node
,
kw
):
values
=
kw
.
get
(
'departemen_list'
,
[])
values
=
kw
.
get
(
'departemen_list'
,
[])
return
widget
.
Select2Widget
(
values
=
values
)
return
widget
.
Select2Widget
(
values
=
values
)
class
AddSchema
(
colander
.
Schema
):
class
AddSchema
(
colander
.
Schema
):
parent_id
=
colander
.
SchemaNode
(
colander
.
Integer
(),
parent_id
=
colander
.
SchemaNode
(
colander
.
Integer
(),
widget
=
widget
.
HiddenWidget
(),
oid
=
"parent_id"
,
missing
=
colander
.
drop
,
)
widget
=
widget
.
HiddenWidget
(),
oid
=
"parent_id"
,
missing
=
colander
.
drop
,
)
parent_nm
=
colander
.
SchemaNode
(
colander
.
String
(),
missing
=
colander
.
drop
,
parent_nm
=
colander
.
SchemaNode
(
colander
.
String
(),
missing
=
colander
.
drop
,
widget
=
AutocompleteInputWidget
(
size
=
60
,
min_length
=
3
,
),
widget
=
AutocompleteInputWidget
(
size
=
60
,
min_length
=
3
,
),
oid
=
"parent_nm"
,
title
=
"Induk"
)
oid
=
"parent_nm"
,
title
=
"Induk"
)
parent_kd
=
colander
.
SchemaNode
(
colander
.
String
(),
parent_kd
=
colander
.
SchemaNode
(
colander
.
String
(),
widget
=
widget
.
TextInputWidget
(
css_class
=
"readonly"
),
widget
=
widget
.
TextInputWidget
(
css_class
=
"readonly"
),
missing
=
colander
.
drop
,
oid
=
"parent_kd"
,
title
=
"Kode Induk"
)
missing
=
colander
.
drop
,
oid
=
"parent_kd"
,
title
=
"Kode Induk"
)
kode
=
colander
.
SchemaNode
(
colander
.
String
(),
kode
=
colander
.
SchemaNode
(
colander
.
String
(),
validator
=
colander
.
Length
(
max
=
32
),
oid
=
"kode"
)
validator
=
colander
.
Length
(
max
=
32
),
oid
=
"kode"
)
nama
=
colander
.
SchemaNode
(
colander
.
String
(),
oid
=
"nama"
)
nama
=
colander
.
SchemaNode
(
colander
.
String
(),
oid
=
"nama"
)
singkat
=
colander
.
SchemaNode
(
colander
.
String
(),
missing
=
colander
.
drop
,
singkat
=
colander
.
SchemaNode
(
colander
.
String
(),
missing
=
colander
.
drop
,
oid
=
"singkat"
)
oid
=
"singkat"
)
kategori
=
colander
.
SchemaNode
(
colander
.
String
(),
missing
=
colander
.
drop
,
kategori
=
colander
.
SchemaNode
(
colander
.
String
(),
missing
=
colander
.
drop
,
oid
=
"kategori"
)
oid
=
"kategori"
)
alamat
=
colander
.
SchemaNode
(
colander
.
String
(),
missing
=
colander
.
drop
,
alamat
=
colander
.
SchemaNode
(
colander
.
String
(),
missing
=
colander
.
drop
,
oid
=
"alamat"
)
oid
=
"alamat"
)
status
=
colander
.
SchemaNode
(
colander
.
Boolean
(),
oid
=
"status"
)
status
=
colander
.
SchemaNode
(
colander
.
Boolean
(),
oid
=
"status"
)
def
after_bind
(
self
,
schema
,
kwargs
):
def
after_bind
(
self
,
schema
,
kwargs
):
request
=
kwargs
[
"request"
]
request
=
kwargs
[
"request"
]
self
[
"parent_nm"
]
=
colander
.
SchemaNode
(
colander
.
String
(),
self
[
"parent_nm"
]
=
colander
.
SchemaNode
(
colander
.
String
(),
missing
=
colander
.
drop
,
missing
=
colander
.
drop
,
widget
=
AutocompleteInputWidget
(
size
=
60
,
min_length
=
3
,
widget
=
AutocompleteInputWidget
(
size
=
60
,
min_length
=
3
,
values
=
f
"{request._host}/departemen/hon/act"
),
oid
=
"parent_nm"
,
values
=
f
"{request._host}/departemen/hon/act"
),
title
=
"Induk"
,
)
oid
=
"parent_nm"
,
title
=
"Induk"
,
)
class
EditSchema
(
AddSchema
):
class
EditSchema
(
AddSchema
):
id
=
colander
.
SchemaNode
(
colander
.
String
(),
missing
=
colander
.
drop
,
id
=
colander
.
SchemaNode
(
colander
.
String
(),
missing
=
colander
.
drop
,
widget
=
widget
.
HiddenWidget
(
readonly
=
True
))
widget
=
widget
.
HiddenWidget
(
readonly
=
True
))
class
ViewDepartemen
(
BaseView
):
class
ViewDepartemen
(
BaseView
):
...
@@ -237,11 +241,11 @@ class ViewDepartemen(BaseView):
...
@@ -237,11 +241,11 @@ class ViewDepartemen(BaseView):
dep_alias
=
aliased
(
Departemen
)
dep_alias
=
aliased
(
Departemen
)
if
url_dict
[
'act'
]
==
'grid'
:
if
url_dict
[
'act'
]
==
'grid'
:
columns
=
[
ColumnDT
(
Departemen
.
id
,
mData
=
'id'
),
columns
=
[
ColumnDT
(
Departemen
.
id
,
mData
=
'id'
),
ColumnDT
(
Departemen
.
kode
,
mData
=
'kode'
),
ColumnDT
(
Departemen
.
kode
,
mData
=
'kode'
),
ColumnDT
(
Departemen
.
nama
,
mData
=
'nama'
),
ColumnDT
(
Departemen
.
nama
,
mData
=
'nama'
),
ColumnDT
(
dep_alias
.
nama
,
mData
=
'parent'
),
ColumnDT
(
dep_alias
.
nama
,
mData
=
'parent'
),
ColumnDT
(
Departemen
.
status
,
mData
=
'status'
),
ColumnDT
(
Departemen
.
status
,
mData
=
'status'
),
ColumnDT
(
Departemen
.
level_id
,
mData
=
'level_id'
),
]
ColumnDT
(
Departemen
.
level_id
,
mData
=
'level_id'
),
]
query
=
DBSession
.
query
()
.
select_from
(
Departemen
)
.
outerjoin
(
query
=
DBSession
.
query
()
.
select_from
(
Departemen
)
.
outerjoin
(
dep_alias
,
Departemen
.
parent_id
==
dep_alias
.
id
)
dep_alias
,
Departemen
.
parent_id
==
dep_alias
.
id
)
row_table
=
DataTables
(
request
.
GET
,
query
,
columns
)
row_table
=
DataTables
(
request
.
GET
,
query
,
columns
)
...
@@ -249,10 +253,10 @@ class ViewDepartemen(BaseView):
...
@@ -249,10 +253,10 @@ class ViewDepartemen(BaseView):
elif
url_dict
[
'act'
]
==
'hon'
:
elif
url_dict
[
'act'
]
==
'hon'
:
term
=
'term'
in
params
and
params
[
'term'
]
or
''
term
=
'term'
in
params
and
params
[
'term'
]
or
''
q
=
DBSession
.
query
(
Departemen
)
.
filter
(
Departemen
.
status
==
1
,
q
=
DBSession
.
query
(
Departemen
)
.
\
Departemen
.
nama
.
ilike
(
filter
(
Departemen
.
status
==
1
,
'
%%%
s
%%
'
%
Departemen
.
nama
.
ilike
(
'
%%%
s
%%
'
%
term
))
\
term
))
.
order_by
(
.
order_by
(
Departemen
.
nama
)
Departemen
.
nama
)
rows
=
q
.
all
()
rows
=
q
.
all
()
r
=
[]
r
=
[]
...
@@ -264,13 +268,12 @@ class ViewDepartemen(BaseView):
...
@@ -264,13 +268,12 @@ class ViewDepartemen(BaseView):
elif
url_dict
[
'act'
]
==
'honk'
:
elif
url_dict
[
'act'
]
==
'honk'
:
term
=
'term'
in
params
and
params
[
'term'
]
or
''
term
=
'term'
in
params
and
params
[
'term'
]
or
''
q
=
DBSession
.
query
(
Departemen
)
.
filter
(
Departemen
.
status
==
1
,
q
=
DBSession
.
query
(
Departemen
)
\
func
.
concat
(
Departemen
.
nama
,
.
filter
(
Departemen
.
status
==
1
,
';'
,
func
.
concat
(
Departemen
.
nama
,
';'
,
Departemen
.
kode
)
.
ilike
(
Departemen
.
kode
)
\
'
%%%
s
%%
'
%
.
ilike
(
'
%%%
s
%%
'
%
term
))
\
term
))
.
order_by
(
.
order_by
(
Departemen
.
nama
)
Departemen
.
nama
)
rows
=
q
.
all
()
rows
=
q
.
all
()
r
=
[]
r
=
[]
for
k
in
rows
:
for
k
in
rows
:
...
@@ -473,4 +476,4 @@ def save_upload(request, kode, csv_row):
...
@@ -473,4 +476,4 @@ def save_upload(request, kode, csv_row):
row
.
kode
=
kode
row
.
kode
=
kode
row
.
nama
=
csv_row
[
'nama'
]
row
.
nama
=
csv_row
[
'nama'
]
DBSession
.
add
(
row
)
DBSession
.
add
(
row
)
return
row
\ No newline at end of file
\ No newline at end of file
return
row
opensipkd/base/views/user_rpc.py
View file @
0a7163a
import
re
import
re
from
datetime
import
datetime
from
email.utils
import
parseaddr
from
email.utils
import
parseaddr
import
transaction
import
transaction
...
@@ -17,9 +18,8 @@ from .user import add_member_count
...
@@ -17,9 +18,8 @@ from .user import add_member_count
from
.user
import
save_user
from
.user
import
save_user
from
.user_group
import
save
as
save_groups
from
.user_group
import
save
as
save_groups
from
..
import
get_params
,
log
from
..
import
get_params
,
log
from
..models
import
DBSession
,
UserService
from
..models
import
DBSession
,
UserService
,
Departemen
from
..models
import
(
from
..models
import
(
User
,
Partner
,
Group
,
UserGroup
,
PartnerDepartemen
)
User
,
Partner
,
Group
,
UserGroup
)
from
opensipkd.tools
import
create_now
,
get_settings
from
opensipkd.tools
import
create_now
,
get_settings
from
opensipkd.tools.api
import
custom_error
from
opensipkd.tools.api
import
custom_error
from
opensipkd.base.tools.api
import
(
from
opensipkd.base.tools.api
import
(
...
@@ -229,13 +229,27 @@ def login_(request, data):
...
@@ -229,13 +229,27 @@ def login_(request, data):
for
group
in
groups
:
for
group
in
groups
:
group
=
group
.
to_dict
()
group
=
group
.
to_dict
()
group_data
.
append
(
dict
(
group_name
=
group
[
'group_name'
]))
group_data
.
append
(
dict
(
group_name
=
group
[
'group_name'
]))
now
=
datetime
.
now
()
.
date
()
partner_dep
=
Departemen
.
query
()
\
.
join
(
PartnerDepartemen
,
Departemen
.
id
==
PartnerDepartemen
.
departemen_id
)
\
.
join
(
Partner
,
Partner
.
id
==
PartnerDepartemen
.
partner_id
)
\
.
filter
(
Partner
.
email
==
row
.
email
,
PartnerDepartemen
.
mulai
<=
now
,
PartnerDepartemen
.
selesai
>=
now
)
.
first
()
if
partner_dep
:
departemen
=
dict
(
id
=
partner_dep
.
id
,
kode
=
partner_dep
.
kode
,
nama
=
partner_dep
.
nama
)
else
:
departemen
=
None
result
=
dict
(
user_name
=
row
.
user_name
,
result
=
dict
(
user_name
=
row
.
user_name
,
token
=
row
.
security_code
,
token
=
row
.
security_code
,
nik
=
partner
and
partner
.
kode
or
''
,
nik
=
partner
and
partner
.
kode
or
''
,
nama
=
partner
and
partner
.
nama
or
''
,
nama
=
partner
and
partner
.
nama
or
''
,
is_pegawai
=
is_pegawai
,
is_pegawai
=
is_pegawai
,
group
=
group_data
)
group
=
group_data
,
departemens
=
departemen
)
result
=
is_list
and
[
result
]
or
result
result
=
is_list
and
[
result
]
or
result
return
dict
(
data
=
result
)
return
dict
(
data
=
result
)
...
@@ -277,7 +291,7 @@ def get_profile(request, data):
...
@@ -277,7 +291,7 @@ def get_profile(request, data):
auth_from_rpc
(
request
)
auth_from_rpc
(
request
)
user
=
get_user
(
data
)
user
=
get_user
(
data
)
if
not
user
or
not
UserService
.
check_password
(
user
,
data
[
'password'
]):
if
not
user
or
not
UserService
.
check_password
(
user
,
data
[
'password'
]):
raise
JsonRpcInvalidLoginError
raise
JsonRpcInvalidLoginError
return
get_profile_
(
user
)
return
get_profile_
(
user
)
...
...
Write
Preview
Markdown
is supported
Attach a file
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to post a comment