safesite/safesite/templates/safelist.html

361 lines
15 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%;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>