336 lines
15 KiB
HTML
336 lines
15 KiB
HTML
<div class="easyui-layout" style="width:100%;height:100%;">
|
||
<div data-options="region:'west',split:true,border:false" style="width:240px;height:60%;" title="区域">
|
||
<ul id="qytree" data-options="animate:true"></ul>
|
||
</div>
|
||
<div data-options="region:'center',title:'设备',split:true,border:false" style="height:60%;">
|
||
|
||
<div id="sbbar" style="padding:5px;height:auto">
|
||
<div>
|
||
<a onclick="addsb()" class="easyui-linkbutton"
|
||
data-options="iconCls:'fa-plus',plain:true">新增设备</a>
|
||
<a onclick="javascript:$('#drsbdg').dialog('open').window('center');" class="easyui-linkbutton"
|
||
data-options="iconCls:'fa-upload',plain:true">导入设备</a>
|
||
<!-- <a onclick="exportsbexcel" class="easyui-linkbutton"
|
||
data-options="iconCls:'fa-download',plain:true">导出</a> -->
|
||
<a id="delsb" onclick="delsb()" class="easyui-linkbutton"
|
||
data-options="iconCls:'fa-trash',plain:true">删除</a>
|
||
</div>
|
||
<div>
|
||
<form id='searchsbff'>
|
||
<label>类别</label>
|
||
<input id="scate" name="cate"
|
||
editable=false class="easyui-combobox" data-options="url:'getdickey?dicclass=47&a=combobox'"/>
|
||
<label>运行状态</label><select name='state' id='sstate'
|
||
class="easyui-combobox" editable=false>
|
||
<option value="">请选择</option>
|
||
<option value="1">正常</option>
|
||
<option value="0">异常</option>
|
||
</select>
|
||
<label>设备名称</label><input name='name' id='sname'
|
||
class="easyui-textbox" >
|
||
<a id="sbsearch" onclick="sbsearch()" class="easyui-linkbutton" data-options="iconCls: 'fa-search',plain:true">查询</a>
|
||
<a id="exportsbexcel" onclick="exportsbexcel()" class="easyui-linkbutton" data-options="iconCls: 'fa-download',plain:true">导出Excel</a>
|
||
</form>
|
||
|
||
</div>
|
||
</div>
|
||
<table id="sbtable" style="height:100%;"></table>
|
||
|
||
</div>
|
||
<div data-options="region:'south',split:true,border:false" style="height:40%;">
|
||
<div style="float: left;">
|
||
<form id='sbff'>
|
||
<input hidden=true name="id" id="sbid"></input>
|
||
<table style="margin:10px;">
|
||
<tr>
|
||
<td><label>设备编号:</label><input id="num" class="easyui-textbox" name="num" required=true /></td>
|
||
<td><label>特种设备:</label><input id="istz" type="checkbox" name="istz" value="1"/></td>
|
||
<td><label>主设备:</label><input id="iskey" type="checkbox" name="iskey" value="1"/></td>
|
||
</tr>
|
||
<tr>
|
||
<td><label>设备名称:</label><input id="name" class="easyui-textbox" name="name" required=true /></td>
|
||
<td><label>设备类别:</label><input id="cate" class="easyui-combobox" name="cate" required=true
|
||
data-options="url:'getdickey?dicclass=47&a=combobox'" editable=false/></td>
|
||
<td><label>所属区域:</label><input id="area" class="easyui-combotree" name="area" required=true editable=false/></td>
|
||
</tr>
|
||
<tr>
|
||
<td><label>规格型号:</label><input id="type" class="easyui-textbox" name="type" /></td>
|
||
<td><label>生产厂家:</label><input id="oem" class="easyui-textbox" name="oem" required=true /></td>
|
||
<td><label>出厂编号:</label><input id="fnum" class="easyui-textbox" name="fnum" /></td>
|
||
</tr>
|
||
<tr>
|
||
<td><label>出厂日期:</label><input id="fdate" class="easyui-datebox" name="fdate" editable=false/></td>
|
||
<td><label>投用日期:</label><input id="udate" class="easyui-datebox" name="udate" editable=false/></td>
|
||
<td><label>具体位置:</label><input id="place" class="easyui-textbox" name="place" /></td>
|
||
</tr>
|
||
<tr>
|
||
<td><label>责任部门:</label><input id="zrbm" name="zrbm" /></td>
|
||
<td><label>责任人员:</label><input id="zrr" class="easyui-combobox" name="zrr" editable=false/></td>
|
||
<td><label>关联风险点</label><a onclick="choosefxd()" class="easyui-linkbutton">选择</a>
|
||
<span style="color: blue;" id="fxdspan"></span>
|
||
<input type=hidden id="fxdinput" name="riskact">
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td colspan="3"><label>技术参数:</label><input id="parameter" class="easyui-textbox" name="parameter"
|
||
style="height:100px;width:90%" data-options="multiline:true" /></td>
|
||
</tr>
|
||
<tr>
|
||
<td><a id="savesb" onclick="savesb()" class="easyui-linkbutton" data-options="iconCls: 'fa-save'">保存</a></td>
|
||
</tr>
|
||
</table>
|
||
</form>
|
||
</div>
|
||
|
||
<div style="float: left;width:200px;text-align: center;margin-top:10px;">
|
||
<div>设备图片</div>
|
||
</div>
|
||
<div style="float: left;width:200px;text-align: center;margin-top:10px;margin-left:10px">
|
||
<div>二维码</div>
|
||
<img id="qrimg" width=200 height=200></img>
|
||
</div>
|
||
</div>
|
||
<div id="drsbdg" 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/equipment.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', })
|
||
}
|
||
})
|
||
$.get('api/area?a=tree', function (res) {
|
||
$('#qytree').tree({
|
||
data: res,
|
||
animate: true,
|
||
loadFilter: function (rows) {
|
||
return convert(rows);
|
||
},
|
||
formatter: function (node) {
|
||
var s = node.text;
|
||
if (node.children) {
|
||
s += ' <span style=\'color:blue\'>(' + node.children.length + ')</span>';
|
||
}
|
||
return s;
|
||
},
|
||
onSelect: function (row) {
|
||
$("#sbtable").datagrid({
|
||
url: 'api/equipment?a=listall&area=' + row.id,
|
||
});
|
||
}
|
||
});
|
||
$('#area').combotree({ data: res, loadFilter: function (rows) { return convert(rows); }, })
|
||
})
|
||
|
||
$('#sbtable').datagrid({
|
||
url: 'api/equipment?a=listall',
|
||
rownumbers: true,
|
||
singleSelect: true,
|
||
fitColumns: true,
|
||
striped: true,
|
||
method: 'get',
|
||
toolbar: '#sbbar',
|
||
pagination: 'true',
|
||
pageSize: 20,
|
||
columns: [[
|
||
{ field: 'id', title: 'ID', hidden: true },
|
||
{ field: 'num', title: '编号', width: 100 },
|
||
{ field: 'cate__dickeyname', title: '类别', width: 80 },
|
||
{ field: 'name', title: '名称', width: 100 },
|
||
{ field: 'type', title: '规格型号', width: 80 },
|
||
{
|
||
field: 'istz', title: '特种设备', width: 50, styler: function (value, row, index) {
|
||
if (value == 1) {
|
||
return 'background-color:green;';
|
||
}
|
||
}, formatter: function (value, row, index) {
|
||
if (value == 1) {
|
||
return '是';
|
||
}
|
||
}
|
||
},
|
||
{
|
||
field: 'iskey', title: '主设备', width: 50, styler: function (value, row, index) {
|
||
if (value == 1) {
|
||
return 'background-color:green;';
|
||
}
|
||
}, formatter: function (value, row, index) {
|
||
if (value == 1) {
|
||
return '是';
|
||
}
|
||
}
|
||
},
|
||
{ field: 'oem', title: '生产厂家', width: 100 },
|
||
{ field: 'udate', title: '投用日期', width: 80 },
|
||
{ field: 'place', title: '所属地点', width: 80 },
|
||
{ field: 'area__name', title: '区域', width: 80 },
|
||
{ field: 'state', title: '运行状态', width: 50, styler: function (value, row, index) {
|
||
if (value == 1) {
|
||
return 'background-color:green;color:white';
|
||
}else{ return 'background-color:red;'; }
|
||
}, formatter: function (value, row, index) {
|
||
if (value == 1) {
|
||
return '正常';
|
||
}else{return '异常'}
|
||
} },
|
||
|
||
|
||
]],
|
||
onSelect: function (index, data) {
|
||
$('#qrimg').empty()
|
||
$.get('api/equipment?a=detail&id=' + data.id, function (res) {
|
||
$('#sbid').val(res.id)
|
||
$('#parameter').textbox('setValue', res.parameter)
|
||
$('#num').textbox('setValue', res.num)
|
||
$('#name').textbox('setValue', res.name)
|
||
$('#type').textbox('setValue', res.type)
|
||
$('#oem').textbox('setValue', res.oem)
|
||
$('#fnum').textbox('setValue', res.fnum)
|
||
$('#fdate').textbox('setValue', res.fdate)
|
||
$('#udate').textbox('setValue', res.udate)
|
||
$('#place').textbox('setValue', res.place)
|
||
$('#cate').combobox('setValue', res.cate__dickeyid)
|
||
$('#area').combotree('setValue', res.area__id)
|
||
$('#zrbm').combotree('setValue', res.zrbm__partid)
|
||
$('#fxdinput').val(res.riskact__id)
|
||
$('#fxdspan').css('color','blue')
|
||
$('#fxdspan').html(' '+res.riskact__name)
|
||
if(res.riskact__name==undefined){
|
||
$('#fxdspan').css('color','red')
|
||
$('#fxdspan').html(' 未绑定')
|
||
}
|
||
$('#zrr').combobox({ url: 'getuser?partid=' + res.zrbm__partid + '&a=combobox', }).combobox('setValue', res.zrr__userid)
|
||
if (res.iskey == 1) {
|
||
$('#iskey').prop("checked", true);
|
||
}else{$('#iskey').prop("checked", false);}
|
||
if (res.istz == 1) {
|
||
$('#istz').prop("checked", true);
|
||
}else{$('#istz').prop("checked", false);}
|
||
// $('#qrimg').qrcode({
|
||
// "render": "canvas",
|
||
// "size": 200,
|
||
// "text": 'https://safeyun.ctcshe.com/miniprogram/equipmentdetail?id='+res.id.toString()
|
||
// });
|
||
$('#qrimg').attr('src',res.qrcode)
|
||
})
|
||
}
|
||
});
|
||
|
||
//ajax接收的才是js对象
|
||
function delsb() {
|
||
var row = $('#sbtable').datagrid('getSelected');
|
||
if (row) {
|
||
$.messager.confirm('提示', '确定删除吗?', function (r) {
|
||
if (r) {
|
||
$.ajax({
|
||
type: "GET",
|
||
url: 'api/equipment?a=del&id=' + row.id,
|
||
datatype: "json",
|
||
beforeSend: function () { },
|
||
success: function (data) {
|
||
if (data.code == 1) {
|
||
$("#sbtable").datagrid('reload');
|
||
} else {
|
||
$.messager.alert('提示', '您无权删除!');
|
||
}
|
||
|
||
},
|
||
|
||
complete: function (XMLHttpRequest, textStatus) {
|
||
},
|
||
|
||
error: function () {
|
||
|
||
}
|
||
});
|
||
}
|
||
}
|
||
);
|
||
}
|
||
else {
|
||
$.messager.alert('提示', '未选择数据!');
|
||
}
|
||
}
|
||
function sbsearch(){
|
||
var querydata = $('#searchsbff').serializeJSON();
|
||
//let url = 'api/miss?a=exportexcel&'+parseParams(querydata)
|
||
$('#sbtable').datagrid('load',querydata);
|
||
//$('<form method="post" action="' + url + '"></form>').appendTo('body').submit().remove();
|
||
}
|
||
function exportsbexcel() {
|
||
var querydata = $('#searchsbff').serializeJSON();
|
||
let url = 'api/equipment?a=listall&b=exportexcel&'+parseParams(querydata)
|
||
$('<form method="post" action="' + url + '"></form>').appendTo('body').submit().remove();
|
||
}
|
||
function addsb(){
|
||
$('#sbff').form('clear')
|
||
$('#sbtable').datagrid('clearSelections');
|
||
$('#qrimg').attr('src','')
|
||
}
|
||
function savesb(){
|
||
var data = $('#sbff').serializeJSON();
|
||
$.ajax({
|
||
type: "POST",
|
||
url: 'api/equipment?a=update',
|
||
data: JSON.stringify(data),
|
||
datatype: "json",
|
||
processData: false,
|
||
contentType: "application/json;charset=utf-8",
|
||
beforeSend: function () {
|
||
var bo = $('#sbff').form('validate')
|
||
if (bo == false) {
|
||
return bo
|
||
} else {
|
||
$('#savesb').linkbutton('disable');
|
||
}
|
||
},
|
||
success: function (data) {
|
||
if (data.code == 1) {
|
||
$('#sbtable').datagrid('reload');
|
||
} else { $.messager.alert('提示', '失败!'); }
|
||
$('#savesb').linkbutton('enable');
|
||
},
|
||
});
|
||
}
|
||
document.getElementById('drfile').onchange = function () {
|
||
var fileObj = this.files[0];
|
||
var url = 'drapi?a=equipment'
|
||
var form = new FormData();
|
||
form.append("upfile", fileObj); // 文件对象
|
||
xhr = new XMLHttpRequest(); // XMLHttpRequest 对象
|
||
xhr.open("post", url, true); //post方式,url为服务器请求地址,true 该参数规定请求是否异步处理。
|
||
xhr.send(form)
|
||
$('#drsbdg').dialog('close')
|
||
loading('导入中。。');
|
||
xhr.onload = function (evt) { //服务断接收完文件返回的结果
|
||
var data = JSON.parse(evt.target.responseText);
|
||
removeLoading();
|
||
if (data.code == 1) {
|
||
$.messager.alert('提示', data.msg, 'info', function () {
|
||
$("#main").panel({ href: 'html/equipment', title: '设备设施' });
|
||
});
|
||
}
|
||
else if (data.code == 2) {
|
||
$.messager.alert('提示', data.msg+data.info, 'info', function () {
|
||
$("#main").panel({ href: 'html/equipment', title: '用户' });
|
||
});
|
||
}
|
||
else {
|
||
$.messager.alert('提示', data.msg);
|
||
}
|
||
document.getElementById('drfile').value = '';
|
||
|
||
}; //请求完成
|
||
xhr.onerror = function (evt) { $.messager.alert('提示', '失败!文件内容有误'); document.getElementById('drfile').value = ''; }; //请求失败
|
||
}
|
||
function choosefxd(){
|
||
var myh = screen.availHeight * 0.8;
|
||
var area = $('#area').combotree('getValue')
|
||
opendg('选择风险点','html/riskact/chose?area='+area,myh)
|
||
}
|
||
</script> |