diff --git a/docs/AddUserAsset.py b/docs/AddUserAsset.py index 0996481fa..3e21ef3b6 100644 --- a/docs/AddUserAsset.py +++ b/docs/AddUserAsset.py @@ -82,9 +82,9 @@ def test_add_asset(): if __name__ == '__main__': - #test_add_dept() - #test_add_group() - test_add_user() + test_add_dept() + test_add_group() + #test_add_user() diff --git a/jperm/views.py b/jperm/views.py index 458469776..036177ad8 100644 --- a/jperm/views.py +++ b/jperm/views.py @@ -75,7 +75,7 @@ def perm_add(request): header_title, path1, path2 = u'主机授权添加 | Perm Add Detail.', u'授权管理', u'授权添加' if request.method == 'GET': - user_groups = UserGroup.objects.filter(Q(type='A') | Q(type='M')).order_by('type') + user_groups = UserGroup.objects.all() asset_groups = BisGroup.objects.all() else: @@ -269,8 +269,8 @@ def sudo_ldap_add(name, users_runas, user_groups_select, asset_groups_select, def sudo_add(request): header_title, path1, path2 = u'Sudo授权 | Perm Sudo Add.', u'权限管理', u'添加Sudo权限' - user_groups = UserGroup.objects.filter(Q(type='A') | Q(type='P')).order_by('type') - asset_groups = BisGroup.objects.all().order_by('type') + user_groups = UserGroup.objects.all() + asset_groups = BisGroup.objects.all() cmd_groups = CmdGroup.objects.all() if request.method == 'POST': diff --git a/juser/urls.py b/juser/urls.py index 0136ba443..af20287f1 100644 --- a/juser/urls.py +++ b/juser/urls.py @@ -6,21 +6,22 @@ urlpatterns = patterns('juser.views', # url(r'^$', 'jumpserver.views.home', name='home'), # url(r'^blog/', include('blog.urls')), - (r'^user_add/$', 'user_add'), - (r'^user_list/$', 'user_list'), - (r'^group_add/$', 'group_add'), - (r'^group_add_ajax/$', 'group_add_ajax'), - (r'^group_list/$', 'group_list'), + (r'^dept_list/$', 'dept_list'), (r'^dept_add/$', 'dept_add'), (r'^dept_del/$', 'dept_del'), (r'^dept_detail/$', 'dept_detail'), - (r'^user_detail/$', 'user_detail'), - (r'^user_del/$', 'user_del'), - (r'^user_edit/$', 'user_edit'), + (r'^dept_edit/$', 'dept_edit'), + (r'^group_add/$', 'group_add'), + (r'^group_list/$', 'group_list'), (r'^group_detail/$', 'group_detail'), (r'^group_del/$', 'group_del'), (r'^group_edit/$', 'group_edit'), + (r'^user_add/$', 'user_add'), + (r'^user_list/$', 'user_list'), + (r'^user_detail/$', 'user_detail'), + (r'^user_del/$', 'user_del'), + (r'^user_edit/$', 'user_edit'), (r'^profile/$', 'profile'), (r'^chg_pass/$', 'chg_pass'), ) diff --git a/juser/views.py b/juser/views.py index d2ce9e3a2..5870a6d52 100644 --- a/juser/views.py +++ b/juser/views.py @@ -300,6 +300,43 @@ def dept_del(request): return HttpResponseRedirect('/juser/dept_list/') +def dept_member(dept_id): + dept = DEPT.objects.filter(id=dept_id) + if dept: + dept = dept[0] + return dept.user_set.all() + + +def dept_edit(request): + header_title, path1, path2 = '部门编辑', '用户管理', '部门编辑' + if request.method == 'GET': + dept_id = request.GET.get('id', '') + if dept_id: + dept = DEPT.objects.filter(id=dept_id) + if dept: + dept = dept[0] + users = dept_member(dept_id) + users_all = User.objects.all() + users_other = [user for user in users_all if user not in users] + else: + error = 'id 错误' + else: + error = u'部门不存在' + else: + dept_id = request.POST.get('id', '') + name = request.POST.get('name', '') + users = request.POST.get('users_selected', []) + comment = request.POST.get('comment', '') + + dept = DEPT.objects.filter(id=dept_id) + if dept: + dept.update(name=name, comment=comment) + else: + error = '部门不存在' + + return render_to_response('juser/dept_edit.html', locals(), context_instance=RequestContext(request)) + + def group_add(request): error = '' msg = '' diff --git a/templates/juser/dept_edit.html b/templates/juser/dept_edit.html new file mode 100644 index 000000000..5ade4bad8 --- /dev/null +++ b/templates/juser/dept_edit.html @@ -0,0 +1,133 @@ +{% extends 'base.html' %} + +{% block content %} + {% include 'nav_cat_bar.html' %} +
+ + +{% endblock %} \ No newline at end of file diff --git a/templates/juser/group_list.html b/templates/juser/group_list.html index e58b12a0c..262f04f60 100644 --- a/templates/juser/group_list.html +++ b/templates/juser/group_list.html @@ -8,7 +8,7 @@