safesite/safesite/templates/risk.html

280 lines
12 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="easyui-layout" style="width:100%;height:100%;">
<div data-options="region:'west',split:true,border:false" style="width:50%;height:100%;" title="风险点">
<div id="riskactbar" style="padding:5px;height:auto">
<div>
{% load myfilter %}
{% if request|has_permission:'b_riskact_import' %}
<a onclick="javascript:$('#drriskdg').dialog('open').window('center');" class="easyui-linkbutton"
data-options="iconCls:'fa-upload',plain:true">导入风险</a>
{% endif %}
{% if request|has_permission:'b_riskact_add' %}
<a onclick="opendg('新增风险','html/riskact/add')" class="easyui-linkbutton"
data-options="iconCls:'fa-plus',plain:true">新增</a>
{% endif %}
{% if request|has_permission:'b_riskact_change' %}
<a onclick="editriskact()" class="easyui-linkbutton"
data-options="iconCls:'fa-pencil',plain:true">编辑</a>
{% endif %}
{% if request|has_permission:'b_riskact_del' %}
<a onclick="delriskact()" class="easyui-linkbutton"
data-options="iconCls:'fa-trash',plain:true">删除</a>
{% endif %}
</div>
<div>
<form id="searchriskactff">
<label>区域</label>
<input class="easyui-combotree" name="area" data-options="
url: 'api/area?a=tree',
method: 'get',
editable: false,
loadFilter: function (rows) {
return convert(rows);
},
" />
<label>风险点类型</label>
<input class="easyui-combobox" name="type" data-options="url: 'getdickey?dicclass=53&a=combobox'," editable=false/>
<a onclick="searchriskact()" class="easyui-linkbutton" data-options="iconCls: 'fa-search',plain:true">查询</a>
</form>
</div>
</div>
<table id="riskacttable" style="height:100%;width:100%"></table>
</div>
<div data-options="region:'center',title:'风险',split:true,border:false" style="width:50%;height:100%;">
<div id="riskbar" style="padding:5px;height:auto">
{% if request|has_permission:'b_risk_add' %}
<a onclick="addrisk()" class="easyui-linkbutton"
data-options="iconCls:'fa-plus',plain:true">新增</a>
{% endif %}
{% if request|has_permission:'b_risk_change' %}
<a onclick="editrisk()" class="easyui-linkbutton"
data-options="iconCls:'fa-pencil',plain:true">编辑</a>
{% endif %}
{% if request|has_permission:'b_risk_del' %}
<a onclick="delrisk()" class="easyui-linkbutton"
data-options="iconCls:'fa-trash',plain:true">删除</a>
{% endif %}
</div>
<table id="risktable" style="height:100%;"></table>
</div>
<div id="drriskdg" class="easyui-dialog" title="导入风险" style="width:400px;height:200px;"
data-options="iconCls:'fa-upload',resizable:true,modal:true,closed:true,border:false">
<p style="color:red;margin-left: 10px">请按模板录入后导入</p>
<p style="margin-left: 10px"><a href="/static/safesite/muban/risk.xlsx" target="_blank">点击下载模板</a></p>
<p style="margin-left: 10px">录入完成后点击下方按钮上传文件</p>
<input type="file" id="drfile" name="" accept=".xls,.xlsx" style="margin-left: 10px" />
</div>
</div>
<script>
$('#zrbm').combotree({
url: 'parthandle?a=tree', loadFilter: function (rows) { return convert(rows); }, onSelect: function (node) {
$('#zrr').combobox({ url: 'getuser?partid=' + node.id + '&a=combobox', })
}
})
function searchriskact(){
var querydata = $('#searchriskactff').serializeJSON();
$('#riskacttable').datagrid('load',querydata);
}
$('#riskacttable').datagrid({
url: 'api/riskact?a=listall',
singleSelect:true,
rownumbers: true,
fitColumns: true,
striped: true,
method: 'get',
toolbar: '#riskactbar',
pagination: 'true',
pageSize: 20,
columns: [[
// { field: 'ck', checkbox:true },
{ field: 'id', title: 'ID', hidden: true },
{ field: 'area__name', title: '区域', width: 100 },
{ field: 'type__dickeyname', title: '类型', width: 80 },
{ field: 'name', title: '名称', width: 100 },
{ field: 'level', title: '级别', width: 80 , styler: function (value, row, index) {
switch (value) {
case '低风险': return 'background-color:blue;color:white'; break;
case '一般风险': return 'background-color:yellow;'; break;
case '较大风险': return 'background-color:orange;'; break;
case '重大风险': return 'background-color:red;color:white'; break;
}
}},
{ field: 'gkcj', title: '层级', width: 80 },
{ field: 'zrbm__partname', title: '责任部门', width: 80 },
{ field: 'zrr__name', title: '责任人', width: 80 },
{ field: 'group__groupname', title: '岗位', width: 100 },
]],
onSelect: function (index, data) {
$('#risktable').datagrid({url:'api/risk?a=listall&riskact='+data.id})
}
})
$('#risktable').datagrid({
url: 'api/risk?a=listall',
rownumbers: true,
singleSelect: true,
striped: true,
method: 'get',
toolbar: '#riskbar',
pagination: 'true',
pageSize: 20,
columns: [[
{ field: 'id', title: 'ID', hidden: true },
{ field: 'step', title: '项目/步骤', width: 100 },
{ field: 'hazard', title: '危害因素', width: 100 },
{ field: 'result', title: '可能后果', width: 100 },
{ field: 'level', title: '风险等级', width: 80 , styler: function (value, row, index) {
switch (value) {
case '低风险': return 'background-color:blue;color:white'; break;
case '一般风险': return 'background-color:yellow;'; break;
case '较大风险': return 'background-color:orange;'; break;
case '重大风险': return 'background-color:red;color:white'; break;
}
}},
{ field: 'measure1', title: '工程技术', width: 100 },
{ field: 'measure2', title: '管理措施', width: 100 },
{ field: 'measure3', title: '培训教育', width: 100 },
{ field: 'measure4', title: '个体防护', width: 100 },
{ field: 'measure5', title: '应急处理', width: 100 },
{ field: 'riskl', title: 'L', width: 50 },
{ field: 'riske', title: 'E', width: 50 },
{ field: 'riskc', title: 'C', width: 50 },
{ field: 'riskd', title: 'D', width: 50 },
]],
});
//ajax接收的才是js对象
function delrisk() {
var row = $('#risktable').datagrid('getSelected');
if (row) {
$.messager.confirm('提示', '确定删除吗?', function (r) {
if (r) {
$.ajax({
type: "GET",
url: 'api/risk?a=del&id=' + row.id,
datatype: "json",
beforeSend: function () { },
success: function (data) {
if (data.code == 1) {
$("#risktable").datagrid('reload');
$("#riskacttable").datagrid('reload');
} else {
$.messager.alert('提示', '您无权删除!');
}
},
complete: function (XMLHttpRequest, textStatus) {
},
error: function () {
}
});
}
}
);
}
else {
$.messager.alert('提示', '未选择数据!');
}
}
function editriskact(){
var row = $('#riskacttable').datagrid('getSelected');
if (row) {
opendg('编辑','html/riskact/edit/' + row.id)
}
else {
$.messager.alert('提示', '未选择数据!');
}
}
function addrisk(){
var row = $('#riskacttable').datagrid('getSelected');
if (row) {
opendg('新增','html/risk/add/' + row.id)
}
else {
$.messager.alert('提示', '请先选择一个风险点!');
}
}
function editrisk(){
var row = $('#risktable').datagrid('getSelected');
if (row) {
opendg('编辑','html/risk/edit/' + row.id)
}
else {
$.messager.alert('提示', '请先选择一个风险!');
}
}
document.getElementById('drfile').onchange = function () {
var fileObj = this.files[0];
var url = 'drapi?a=risk'
var form = new FormData();
form.append("upfile", fileObj); // 文件对象
xhr = new XMLHttpRequest(); // XMLHttpRequest 对象
xhr.open("post", url, true); //post方式url为服务器请求地址true 该参数规定请求是否异步处理。
xhr.send(form)
$('#drriskdg').dialog('close')
loading('导入中。。');
xhr.onload = function (evt) { //服务断接收完文件返回的结果
var data = JSON.parse(evt.target.responseText);
removeLoading();
if (data.code == 1) {
$.messager.alert('提示', '上传成功!', 'info', function () {
$("#main").panel({ href: 'html/risk', title: '风险辨识' });
});
}
else if (data.code == 2) {
msg = ''
msg += '因重复未成功,其余成功!'
$.messager.alert('提示', msg, 'info', function () {
$("#main").panel({ href: 'html/risk', title: '用户' });
});
}
else {
$.messager.alert('提示', '失败!文件内容有误');
}
document.getElementById('drfile').value = '';
}; //请求完成
xhr.onerror = function (evt) { $.messager.alert('提示', '失败!文件内容有误'); document.getElementById('drfile').value = ''; }; //请求失败
}
function delriskact() {
var row = $('#riskacttable').datagrid('getSelected');
if (row) {
$.messager.confirm('提示', '确定删除吗?', function (r) {
if (r) {
$.ajax({
type: "GET",
url: 'api/riskact?a=del&id=' + row.id,
datatype: "json",
beforeSend: function () { },
success: function (data) {
if (data.code == 1) {
$("#risktable").datagrid('reload');
$("#riskacttable").datagrid('reload');
} else {
$.messager.alert('提示', '您无权删除!');
}
},
complete: function (XMLHttpRequest, textStatus) {
},
error: function () {
}
});
}
}
);
}
else {
$.messager.alert('提示', '未选择数据!');
}
}
</script>