添加推送

pull/26/head
ibuler 9 years ago
parent 4b36fc540d
commit f72c5753c9

@ -396,9 +396,12 @@ def perm_role_push(request):
# 渲染数据 # 渲染数据
header_title, path1, path2 = "系统角色", "角色管理", "角色推送" header_title, path1, path2 = "系统角色", "角色管理", "角色推送"
role_id = request.GET.get('id') role_id = request.GET.get('id')
asset_ids = request.GET.get('asset_id')
role = get_object(PermRole, id=role_id) role = get_object(PermRole, id=role_id)
assets = Asset.objects.all() assets = Asset.objects.all()
asset_groups = AssetGroup.objects.all() asset_groups = AssetGroup.objects.all()
if asset_ids:
need_push_asset = [get_object(Asset, id=asset_id) for asset_id in asset_ids.split(',')]
if request.method == "POST": if request.method == "POST":
# 获取推荐角色的名称列表 # 获取推荐角色的名称列表

@ -16,9 +16,9 @@ function check_all(form) {
} }
} }
function checkAll(){ function checkAll(id, name){
var checklist = document.getElementsByName ("checked"); var checklist = document.getElementsByName(name);
if(document.getElementById("check_all").checked) if(document.getElementById(id).checked)
{ {
for(var i=0;i<checklist.length;i++) for(var i=0;i<checklist.length;i++)
{ {

@ -175,7 +175,7 @@
<thead> <thead>
<tr> <tr>
<th class="text-center"> <th class="text-center">
<input type="checkbox" id="check_all" onclick="checkAll()"> <input type="checkbox" id="check_push" onclick="checkAll('check_push', 'asset_id')">
</th> </th>
<th class="text-center">主机</th> <th class="text-center">主机</th>
<th class="text-center">密钥</th> <th class="text-center">密钥</th>
@ -188,7 +188,7 @@
{% for asset, info in pushed_asset.items %} {% for asset, info in pushed_asset.items %}
<tr class="gradeX"> <tr class="gradeX">
<th class="text-center"> <th class="text-center">
<input type="checkbox" name="checked" value="{{ asset.id }}"> <input type="checkbox" name="asset_id" value="{{ asset.id }}">
</th> </th>
<td class="text-center"> {{ asset.hostname }} </td> <td class="text-center"> {{ asset.hostname }} </td>
<td class="text-center"> {{ info.key | yesno:"是,否,未知" }} </td> <td class="text-center"> {{ info.key | yesno:"是,否,未知" }} </td>
@ -220,7 +220,6 @@
<a class="dropdown-toggle" data-toggle="dropdown" href="#"> <a class="dropdown-toggle" data-toggle="dropdown" href="#">
<i class="fa fa-wrench"></i> <i class="fa fa-wrench"></i>
</a> </a>
<a class="close-link"> <a class="close-link">
<i class="fa fa-times"></i> <i class="fa fa-times"></i>
</a> </a>
@ -229,9 +228,13 @@
<div class="ibox-content"> <div class="ibox-content">
<div> <div>
<div class="text-left"> <div class="text-left">
<table class="table table-striped" id="ugedit" > <table class="table table-striped" >
<a class="btn btn-xs btn-primary push_muti"> 推送 </a>
<thead> <thead>
<tr> <tr>
<th class="text-center">
<input type="checkbox" id="check_no_push" onclick="checkAll('check_no_push', 'asset_no_push_id')">
</th>
<th class="text-center">主机</th> <th class="text-center">主机</th>
<th class="text-center">IP</th> <th class="text-center">IP</th>
</tr> </tr>
@ -239,6 +242,9 @@
<tbody> <tbody>
{% for asset in need_push_asset %} {% for asset in need_push_asset %}
<tr class="gradeX"> <tr class="gradeX">
<th class="text-center">
<input type="checkbox" name="asset_no_push_id" value="{{ asset.id }}">
</th>
<td class="text-center"> {{ asset.hostname }} </td> <td class="text-center"> {{ asset.hostname }} </td>
<td class="text-center"> {{ asset.ip }} </td> <td class="text-center"> {{ asset.ip }} </td>
</tr> </tr>
@ -276,10 +282,11 @@
$('.del_muti').click(function(){ $('.del_muti').click(function(){
var check_array = []; var check_array = [];
if (confirm("确定删除")) { if (confirm("确定删除")) {
$(".gradeX input:checked").each(function() { $(".gradeX input[name='asset_id']:checked").each(function() {
check_array.push($(this).attr("value")) check_array.push($(this).attr("value"))
}); });
var url = '/jperm/role/recycle/?role_id={{ role.id }}&asset_id=' + check_array.join(','); var url = '/jperm/role/recycle/?role_id={{ role.id }}&asset_id=' + check_array.join(',');
console.log(check_array);
$.get(url, $.get(url,
{}, {},
function(data){ function(data){
@ -290,6 +297,15 @@
return false; return false;
}); });
$('.push_muti').click(function(){
var check_array = [];
$(".gradeX input[name='asset_no_push_id']:checked").each(function() {
check_array.push($(this).attr("value"))
});
var url = '/jperm/role/push/?id={{ role.id }}&asset_id=' + check_array.join(',');
$(this).attr('href', url)
})
}) })
</script> </script>
{% endblock %} {% endblock %}

@ -45,7 +45,7 @@
<div class="col-sm-8"> <div class="col-sm-8">
<select name="assets" id="assets" data-placeholder="请选择资产" class="chosen-select form-control m-b" multiple tabindex="2"> <select name="assets" id="assets" data-placeholder="请选择资产" class="chosen-select form-control m-b" multiple tabindex="2">
{% for asset in assets %} {% for asset in assets %}
<option value="{{ asset.id }}" {% if asset in pushed_assets %}selected{% endif %}>{{ asset.hostname }}</option> <option value="{{ asset.id }}" {% if asset in need_push_asset %}selected{% endif %}>{{ asset.hostname }}</option>
{% endfor %} {% endfor %}
</select> </select>
</div> </div>

Loading…
Cancel
Save