361 lines
15 KiB
HTML
361 lines
15 KiB
HTML
<div class="easyui-layout" style="width:100%;height:100%;fit:true">
|
||
<div data-options="region:'west',title:'安全清单',split:true,border:false" style="width:30%;height:100%;">
|
||
<div id="safelisttablebar" style="padding: 4px">
|
||
<div>
|
||
<form id='searchsafelistff'>
|
||
<input name='search' class="easyui-textbox" data-options="prompt:'用户名/清单名'">
|
||
<a id="safelistsearch" onclick="safelistsearch()" class="easyui-linkbutton"
|
||
data-options="iconCls: 'fa-search',plain:true">查询</a>
|
||
<a onclick="drsafelist()" class="easyui-linkbutton"
|
||
data-options="iconCls:'fa-upload',plain:true">导入清单</a>
|
||
</form>
|
||
|
||
</div>
|
||
<div>
|
||
<a onclick="addsafelist()" class="easyui-linkbutton" data-options="iconCls: 'fa-plus',plain:true">新增</a>
|
||
<a onclick="editsafelist()" class="easyui-linkbutton"
|
||
data-options="iconCls: 'fa-pencil',plain:true">编辑</a>
|
||
<a onclick="delsafelist()" class="easyui-linkbutton" data-options="iconCls:'fa-trash',plain:true">删除</a>
|
||
</div>
|
||
</div>
|
||
<table id="safelisttable" style="width:100%;height:100%;"></table>
|
||
</div>
|
||
<div data-options="region:'center',title:'清单项目',split:true,border:false" style="height:100%;">
|
||
<div id="safeitemtablebar" style="padding:5px;height:auto">
|
||
<div>
|
||
<a onclick="addsafeitem()" class="easyui-linkbutton" data-options="iconCls:'fa-plus',plain:true">新增</a>
|
||
<a onclick="editsafeitem()" class="easyui-linkbutton"
|
||
data-options="iconCls:'fa-pencil',plain:true">编辑</a>
|
||
<a onclick="delsafeitem()" class="easyui-linkbutton" data-options="iconCls:'fa-trash',plain:true">删除</a>
|
||
</div>
|
||
</div>
|
||
<table id="safeitemtable" style="height:50%;width:100%"></table>
|
||
<table id="safefeedbacktable" style="height:50%;width:100%" title="反馈记录"></table>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div id="drsafelistdialog" 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/safelist.xlsx">点击下载模板</a></p>
|
||
<p style="margin-left: 10px">录入完成后点击下方按钮上传文件</p>
|
||
<input type="file" id="drfile" name="" accept=".xls,.xlsx" style="margin-left: 10px" />
|
||
</div>
|
||
<div id="safelistdg" class="easyui-dialog" style="width:400px;height:400px;padding:5px 15px;"
|
||
data-options="resizable:true,modal:true,closed:true,border:false">
|
||
<form method="post" id="safelistff">
|
||
<input id="safelistuser" name="user" type="hidden">
|
||
<input id="safelistid" name="id" type="hidden">
|
||
<div style="margin-bottom:10px">
|
||
<input id="safelistname" name="name" data-options="label:'名称'" class="easyui-textbox" style="width:300px"
|
||
required></input>
|
||
</div>
|
||
<div style="margin-bottom:10px">
|
||
<input id="safelistuser_name" name="user__name" data-options="label:'责任人'" class="easyui-textbox"
|
||
editable="false" style="width:300px" required>
|
||
</input>
|
||
<a class='easyui-linkbutton' onclick="choseuser()" style="width:auto" id="safelistuserchoseb">选择</a>
|
||
</div>
|
||
<div style="margin-bottom:10px;text-align: center;" id="qrcodediv">
|
||
<div class="labeldiv">清单二维码</div>
|
||
<img id="qrcode" height=160px width=160px>
|
||
</div>
|
||
<div style="text-align: center;">
|
||
<a class="easyui-linkbutton" iconCls="fa-floppy-o" onclick="savesafelist()">保存</a>
|
||
</div>
|
||
</form>
|
||
</div>
|
||
<div id="safeitemdg" class="easyui-dialog" style="width:400px;height:200px;padding:5px 15px;"
|
||
data-options="resizable:true,modal:true,closed:true,border:false">
|
||
<form method="post" id="safeitemff">
|
||
<input name="id" type="hidden">
|
||
<input name="safelist" type="hidden" id = "safelistId">
|
||
<div style="margin-bottom:10px">
|
||
<input id="safeitemname" name="name" data-options="label:'项目描述',multiline:true" class="easyui-textbox"
|
||
style="width:300px;height:60px" required></input>
|
||
</div>
|
||
<div style="margin-bottom:10px">
|
||
<select class="easyui-combobox" name="type" style="width:300px;" data-options="label:'类型'" required editable="false">
|
||
<option value="1">职责</option>
|
||
<option value="2">目标</option>
|
||
</select>
|
||
</div>
|
||
<div style="text-align: center;">
|
||
<a class="easyui-linkbutton" iconCls="fa-floppy-o" onclick="savesafeitem()">保存</a>
|
||
</div>
|
||
</form>
|
||
</div>
|
||
<script>
|
||
var safelist_cu_url = "/api/safelist/?a=add";
|
||
var safeitem_cu_url = "/api/safeitem/?a=add";
|
||
$(function () {
|
||
$('#safelisttable').datagrid({
|
||
url: '/api/safelist/',
|
||
queryParams: { a: 'listall' },
|
||
rownumbers: true,
|
||
singleSelect: true,
|
||
striped: true,
|
||
method: 'get',
|
||
fitColumns: true,
|
||
pagination: true,
|
||
pageSize: 20,
|
||
toolbar: '#safelisttablebar',
|
||
border: false,
|
||
onSelect: function (index, data) {
|
||
$('#safeitemtable').datagrid({ url: 'api/safeitem/?a=listall&safelist=' + data.id })
|
||
},
|
||
columns: [[
|
||
{ field: 'id', hidden: true },
|
||
{ field: 'qr_code', hidden: true },
|
||
{ field: 'name', title: '名称', width: 150 },
|
||
{ field: 'user__name', title: '责任人', width: 80 },
|
||
{ field: 'createtime', title: '创建时间', width: 100 },
|
||
{ field: 'updatetime', title: '最近编辑时间', width: 100 }
|
||
]],
|
||
});
|
||
})
|
||
$('#safeitemtable').datagrid({
|
||
rownumbers: true,
|
||
singleSelect: true,
|
||
striped: true,
|
||
method: 'get',
|
||
fitColumns: true,
|
||
pagination: true,
|
||
pageSize: 20,
|
||
toolbar: '#safeitemtablebar',
|
||
border: false,
|
||
onSelect: function (index, data) {
|
||
$('#safefeedbacktable').datagrid({ url: 'api/safefeedback/?a=listall&safeitem=' + data.id })
|
||
},
|
||
columns: [[
|
||
{ field: 'id', hidden: true },
|
||
{ field: 'safelist', hidden: true },
|
||
{ field: 'name', title: '名称', width: 150 },
|
||
{ field: 'type', title: '类型', width: 80, formatter: function (value, row, index) {
|
||
switch (value) {
|
||
case 1: return '职责'; break;
|
||
case 2: return '目标'; break;
|
||
}} },
|
||
{ field: 'createtime', title: '创建时间', width: 100 },
|
||
{ field: 'updatetime', title: '最近编辑时间', width: 100 }
|
||
]],
|
||
});
|
||
|
||
$('#safefeedbacktable').datagrid({
|
||
rownumbers: true,
|
||
singleSelect: true,
|
||
striped: true,
|
||
method: 'get',
|
||
fitColumns: true,
|
||
pagination: true,
|
||
pageSize: 20,
|
||
border: true,
|
||
columns: [[
|
||
{ field: 'id', hidden: true },
|
||
{ field: 'content', title: '反馈内容', width: 150 },
|
||
{ field: 'isdone', title: '完成情况', width: 80 , formatter: function (value, row, index) {
|
||
switch (value) {
|
||
case 0: return '未完成'; break;
|
||
case 1: return '完成'; break;
|
||
}},styler: function (value, row, index) {
|
||
switch (value) {
|
||
case 0: return 'color:red;'; break;
|
||
case 1: return 'color:green;'; break;
|
||
}
|
||
} },
|
||
{ field: 'createtime', title: '创建时间', width: 100 },
|
||
]],
|
||
});
|
||
|
||
function addsafelist() {
|
||
$('#safelistdg').dialog('open').dialog('setTitle', '创建个人清单').window('center');
|
||
$('#safelistff').form('clear');
|
||
$('#qrcodediv').hide()
|
||
$('#safelistuserchoseb').linkbutton('enable');
|
||
safelist_cu_url = '/api/safelist/?a=add'
|
||
}
|
||
function editsafelist() {
|
||
var row = $('#safelisttable').datagrid('getSelected');
|
||
if(row){
|
||
$('#safelistdg').dialog('open').dialog('setTitle', '编辑个人清单').window('center');
|
||
$('#safelistff').form('load', row);
|
||
$('#safelistuserchoseb').linkbutton('disable');
|
||
$('#qrcodediv').show();
|
||
$('#qrcode').attr('src',row.qrcode);
|
||
safelist_cu_url = '/api/safelist/?a=edit&id=' + row.id}
|
||
else{
|
||
$.messager.alert('提示', '请选择一条数据!');
|
||
}
|
||
}
|
||
function addsafeitem() {
|
||
$('#safeitemdg').dialog('open').dialog('setTitle', '新增项目').window('center');
|
||
$('#safeitemff').form('clear');
|
||
var row = $('#safelisttable').datagrid('getSelected');
|
||
$('#safelistId').attr('value', row.id);
|
||
safeitem_cu_url = '/api/safeitem/?a=add'
|
||
}
|
||
function editsafeitem() {
|
||
var row = $('#safeitemtable').datagrid('getSelected');
|
||
if(row){
|
||
$('#safeitemdg').dialog('open').dialog('setTitle', '编辑项目').window('center');
|
||
$('#safeitemff').form('load', row);
|
||
safeitem_cu_url = '/api/safeitem/?a=edit&id=' + row.id}
|
||
else{
|
||
$.messager.alert('提示', '请选择一条数据!');
|
||
}
|
||
}
|
||
function drsafelist() {
|
||
$('#drsafelistdialog').dialog('open').window('center');
|
||
}
|
||
function choseuser() {
|
||
var myh = screen.availHeight * 0.5;
|
||
$('#userdd').dialog({
|
||
maximizable: true,
|
||
title: '选择人员',
|
||
width: 700,
|
||
height: myh,
|
||
closed: false,
|
||
cache: false,
|
||
href: 'getuserf?a=user',
|
||
modal: true,
|
||
border: false,
|
||
});
|
||
$('#userdd').window('center');
|
||
}
|
||
function aaa(x) {
|
||
if (x == "user") {
|
||
$('#safelistuser').attr('value', top.$('#in').val());
|
||
$('#safelistuser_name').textbox('setValue', top.$('#in').attr('show'));
|
||
}
|
||
}
|
||
function savesafelist() {
|
||
var data = $('#safelistff').serializeJSON();
|
||
$.ajax({
|
||
type: "POST",
|
||
url: safelist_cu_url,
|
||
data: JSON.stringify(data),
|
||
datatype: "json",
|
||
processData: false,
|
||
contentType: "application/json;charset=utf-8",
|
||
beforeSend: function () {
|
||
return $('#safelistff').form('validate')
|
||
},
|
||
success: function (data) {
|
||
if (data.code == 1) {
|
||
$("#safelisttable").datagrid('reload');
|
||
|
||
$("#safelistdg").dialog("close");
|
||
} else { $.messager.alert('提示', '失败!'); }
|
||
},
|
||
});
|
||
}
|
||
function savesafeitem() {
|
||
var data = $('#safeitemff').serializeJSON();
|
||
$.ajax({
|
||
type: "POST",
|
||
url: safeitem_cu_url,
|
||
data: JSON.stringify(data),
|
||
datatype: "json",
|
||
processData: false,
|
||
contentType: "application/json;charset=utf-8",
|
||
beforeSend: function () {
|
||
return $('#safeitemff').form('validate')
|
||
},
|
||
success: function (data) {
|
||
if (data.code == 1) {
|
||
$("#safeitemtable").datagrid('reload');
|
||
|
||
$("#safeitemdg").dialog("close");
|
||
} else { $.messager.alert('提示', '失败!'); }
|
||
},
|
||
});
|
||
}
|
||
function delsafelist() {
|
||
var row = $('#safelisttable').datagrid('getSelected');
|
||
if (row) {
|
||
$.messager.confirm('提示', '确定删除吗?', function (r) {
|
||
if (r) {
|
||
var data = { id: row.id }
|
||
$.ajax({
|
||
type: "POST",
|
||
url: 'api/safelist/?a=del',
|
||
data: JSON.stringify(data),
|
||
datatype: "json",
|
||
beforeSend: function () { },
|
||
success: function (data) {
|
||
if (data.code == 1) {
|
||
$("#safelisttable").datagrid('reload');
|
||
$("#safeitemtable").datagrid('reload');
|
||
}
|
||
else {
|
||
$.messager.alert('提示', '操作失败!');
|
||
}
|
||
},
|
||
});
|
||
}
|
||
});
|
||
}
|
||
else { $.messager.alert('提示', '请选择一条数据!'); }
|
||
}
|
||
function delsafeitem() {
|
||
var row = $('#safeitemtable').datagrid('getSelected');
|
||
if (row) {
|
||
$.messager.confirm('提示', '确定删除吗?', function (r) {
|
||
if (r) {
|
||
var data = { id: row.id }
|
||
$.ajax({
|
||
type: "POST",
|
||
url: 'api/safeitem/?a=del',
|
||
data: JSON.stringify(data),
|
||
datatype: "json",
|
||
beforeSend: function () { },
|
||
success: function (data) {
|
||
if (data.code == 1) {
|
||
$("#safeitemtable").datagrid('reload');
|
||
$("#safefeedbacktable").datagrid('reload');
|
||
}
|
||
else {
|
||
$.messager.alert('提示', '操作失败!');
|
||
}
|
||
},
|
||
});
|
||
}
|
||
});
|
||
}
|
||
else { $.messager.alert('提示', '请选择一条数据!'); }
|
||
}
|
||
function safelistsearch() {
|
||
var querydata = $('#searchsafelistff').serializeJSON();
|
||
querydata['a'] = 'listall'
|
||
$('#safelisttable').datagrid('load',querydata);
|
||
}
|
||
document.getElementById('drfile').onchange = function () {
|
||
var fileObj = this.files[0];
|
||
var url = 'api/safelist/?a=dr'
|
||
var form = new FormData();
|
||
form.append("upfile", fileObj); // 文件对象
|
||
xhr = new XMLHttpRequest(); // XMLHttpRequest 对象
|
||
xhr.open("post", url, true); //post方式,url为服务器请求地址,true 该参数规定请求是否异步处理。
|
||
xhr.send(form)
|
||
$('#drsafelistdialog').dialog('close')
|
||
loading('导入中。。');
|
||
xhr.onload = function (evt) { //服务断接收完文件返回的结果
|
||
var data = JSON.parse(evt.target.responseText);
|
||
removeLoading();
|
||
if (data.code == 1) {
|
||
$.messager.alert('提示', '导入成功', 'info', function () {
|
||
$("#safelisttable").datagrid('reload');
|
||
});
|
||
}
|
||
else if (data.code == 2) {
|
||
|
||
}
|
||
else {
|
||
$.messager.alert('提示', data.msg);
|
||
}
|
||
document.getElementById('drfile').value = '';
|
||
|
||
}; //请求完成
|
||
xhr.onerror = function (evt) { $.messager.alert('提示', '失败!文件内容有误'); document.getElementById('drfile').value = ''; }; //请求失败
|
||
}
|
||
</script> |