Files
gate-dashboard-program/view/layout/web/device.tpl.html
T

499 lines
28 KiB
HTML

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>设备管理 | 智能截流闸管理平台</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta content="智能截流闸管理平台" name="description" />
<meta content="Themesdesign" name="author" />
<!-- App favicon -->
<link rel="shortcut icon" href="assets/images/favicon.ico">
<!-- jquery.vectormap css -->
<link href="assets/libs/admin-resources/jquery.vectormap/jquery-jvectormap-1.2.2.css" rel="stylesheet" type="text/css" />
<!-- DataTables -->
<link href="assets/libs/datatables.net-bs4/css/dataTables.bootstrap4.min.css" rel="stylesheet" type="text/css" />
<!-- Responsive datatable examples -->
<link href="assets/libs/datatables.net-responsive-bs4/css/responsive.bootstrap4.min.css" rel="stylesheet" type="text/css" />
<!-- Bootstrap Css -->
<link href="assets/css/bootstrap.min.css" id="bootstrap-style" rel="stylesheet" type="text/css" />
<!-- Icons Css -->
<link href="assets/css/icons.min.css" rel="stylesheet" type="text/css" />
<!-- App Css-->
<link href="assets/css/app.min.css" id="app-style" rel="stylesheet" type="text/css" />
<link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap-table/1.15.4/bootstrap-table.min.css">
<style type="text/css">
.pagination {
position: absolute;
bottom: 0;
right: 0;
padding: 10px;
}
</style>
</head>
<body data-sidebar="dark">
<!-- Begin page -->
<div id="layout-wrapper">
<!-- 头部开始 -->
<?php include_once('header.tpl.html'); ?>
<!-- 头部结束 -->
<!-- ========== Left Sidebar Start ========== -->
<?php include_once('leftsidebar.tpl.html'); ?>
<!-- Left Sidebar End -->
<!-- ============================================================== -->
<!-- Start right Content here -->
<!-- ============================================================== -->
<div class="main-content">
<div class="page-content">
<div class="container-fluid">
<div class="row">
<div class="col-12">
<div class="page-title-box d-flex align-items-center justify-content-between">
<h4 class="mb-0">设备管理</h4>
<div class="page-title-right">
<ol class="breadcrumb m-0">
<li class="breadcrumb-item"><a href="javascript: void(0);">设备管理</a></li>
<li class="breadcrumb-item active">设备管理</li>
</ol>
</div>
</div>
</div>
</div>
<div class="row">
<!-- 左边 -->
<div class="col-xl-2">
<div class="card">
<div class="card-header bg-transparent border-bottom">
<h5 class="mb-0">项目</h5>
</div>
<div class="card-body">
<ul class="sub-menu mm-collapse mm-show">
<?php foreach($data['projects'] as $key=>$value){?>
<li><a class="categories-group-list collapsed" href="?c=home&a=device&id=<?php echo $value['id'];?>" <?php if(v('id')==$value['id']){?> aria-expanded="true" <?php }?>><i class="mdi mdi-desktop-classic font-size-16 align-middle mr-2"></i><?php echo $value['name'];?></a></li>
<?php } ?>
</ul>
</div>
</div>
</div>
<!-- 右边 -->
<div class="col-xl-10">
<!-- 筛选条件 所在场站 类型 状态 -->
<div class="row">
<div class="col-md-12">
<div class="card">
<div class="card-body">
<div class="button-items" style="padding-top:8px;border:1px solid #ebe1e1;">
<span type="" class="btn btn-link" style=" text-decoration: none;color:black;">场站:</span>
<!-- <button type="button" class="btn btn-primary_2" value=""></button> -->
<!-- <?php foreach($data['terminals'] as $k=>$v){?>
<button type="button" class="btn btn-primary_2" value="<?php echo $v['id'];?>"><?php echo $v['name'];?></button>
<?php } ?> -->
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-xl-12">
<div class="row">
<div class="col-md-3">
<div class="card">
<div class="card-body">
<div class="media">
<div class="media-body overflow-hidden">
<p class="text-truncate font-size-14 mb-2">设备总数量</p>
<h4 class="mb-0" id="total">0</h4>
</div>
<div class="text-primary">
<i class="ri-stack-line font-size-24"></i>
</div>
</div>
</div>
<div class="card-body border-top py-3">
<div class="text-truncate">
<span class="text-muted ml-2">设备总数量</span>
<span class="badge badge-soft-success font-size-11"></span>
</div>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card">
<div class="card-body">
<div class="media">
<div class="media-body overflow-hidden">
<p class="text-truncate font-size-14 mb-2">控制柜数量</p>
<h4 class="mb-0" id="total_1">0</h4>
</div>
<div class="text-primary">
<i class="ri-stack-line font-size-24"></i>
</div>
</div>
</div>
<div class="card-body border-top py-3">
<div class="text-truncate">
<span class="text-muted ml-2">控制柜总数量</span>
<span class="badge badge-soft-success font-size-11"></span>
</div>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card">
<div class="card-body">
<div class="media">
<div class="media-body overflow-hidden">
<p class="text-truncate font-size-14 mb-2">曝气机数量</p>
<h4 class="mb-0" id="total_2">0</h4>
</div>
<div class="text-primary">
<i class="ri-stack-line font-size-24"></i>
</div>
</div>
</div>
<div class="card-body border-top py-3">
<div class="text-truncate">
<span class="text-muted ml-2">曝气机总数量</span>
<span class="badge badge-soft-success font-size-11"></span>
</div>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card">
<div class="card-body">
<div class="media">
<div class="media-body overflow-hidden">
<p class="text-truncate font-size-14 mb-2">管网设备数量</p>
<h4 class="mb-0" id="total_3">0</h4>
</div>
<div class="text-primary">
<i class="ri-stack-line font-size-24"></i>
</div>
</div>
</div>
<div class="card-body border-top py-3">
<div class="text-truncate">
<span class="text-muted ml-2">管网设备总数量</span>
<span class="badge badge-soft-success font-size-11"></span>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="card">
<div class="card-body">
<div class="table-responsive">
<div class="mytab">
<table id="mytab" class="table table-hover"></table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- end row -->
</div>
</div>
</div> <!-- container-fluid -->
</div>
<!-- End Page-content -->
<!-- 尾部开始 -->
<?php include_once('footer.tpl.html'); ?>
<!-- 尾部结束 -->
</div>
<!-- end main content-->
</div>
<!-- END layout-wrapper -->
<!-- Right bar overlay-->
<div class="rightbar-overlay"></div>
<!-- JAVASCRIPT -->
<script src="assets/libs/jquery/jquery.min.js"></script>
<script src="assets/libs/bootstrap/js/bootstrap.bundle.min.js"></script>
<script src="assets/libs/metismenu/metisMenu.min.js"></script>
<script src="assets/libs/simplebar/simplebar.min.js"></script>
<script src="assets/libs/node-waves/waves.min.js"></script>
<!-- apexcharts -->
<!-- <script src="assets/libs/apexcharts/apexcharts.min.js"></script> -->
<!-- jquery.vectormap map -->
<script src="assets/libs/admin-resources/jquery.vectormap/jquery-jvectormap-1.2.2.min.js"></script>
<script src="assets/libs/admin-resources/jquery.vectormap/maps/jquery-jvectormap-us-merc-en.js"></script>
<!-- Required datatable js -->
<script src="assets/libs/datatables.net/js/jquery.dataTables.min.js"></script>
<script src="assets/libs/datatables.net-bs4/js/dataTables.bootstrap4.min.js"></script>
<!-- Responsive examples -->
<script src="assets/libs/datatables.net-responsive/js/dataTables.responsive.min.js"></script>
<script src="assets/libs/datatables.net-responsive-bs4/js/responsive.bootstrap4.min.js"></script>
<!-- <script src="assets/js/pages/dashboard.init.js"></script> -->
<script src="assets/js/app.js"></script>
<script src="http://cdn.bootcss.com/bootstrap/3.3.0/js/bootstrap.min.js"></script>
<script src="https://cdn.bootcss.com/bootstrap-table/1.15.4/bootstrap-table.min.js"></script>
<script src="https://cdn.bootcss.com/bootstrap-table/1.15.4/locale/bootstrap-table-zh-CN.min.js"></script>
<script>
//获取 id
var currentUrl = $(location).attr('href');
var splitArray = currentUrl.split("=");
if(splitArray.length >3){
var id = splitArray[splitArray.length - 1];
}else{
var id='';
}
terminal='';
//页面开始请求 bootstrap-table
$.ajax({
url: "?c=device&a=deviceDataTable&id="+id+"&terminal="+terminal,
type: "GET",
success: function(response) {
var columns = []; // 创建一个空数组来存储列信息
var data = response.rows; // 假设返回的数据在响应中的data属性中
// console.log(data)
// 动态生成列信息
columns.push({ field: 'id', title: '序号' });
columns.push({ field: 'project', title: '所属项目' });
columns.push({ field: 'terminal', title: '所属场站' });
columns.push({ field: 'name', title: '设备名称' });
columns.push({ field: 'sn', title: '设备SN' });
columns.push({ field: 'type', title: '设备类型',formatter: formatMode });
columns.push({ field: 'register_address', title: '地址' });
columns.push({ field: 'longitude', title: '经度' });
columns.push({ field: 'latitude', title: '纬度' });
columns.push({ field: 'status', title: '当前状态',formatter: formatMode1 });
columns.push({ field: 'update', title: '修改',formatter: linkFormatter1 });
columns.push({ field: 'details', title: '详情',formatter: linkFormatter });
//跳转详情界面
function linkFormatter(value, row)
{
return '<a href="?c=device&a=device_details&id=' + row.id + '" target="_blank">详情</a>';
}
//跳转修改界面
function linkFormatter1(value, row)
{
return '<a href="?c=device&a=device_edit&id=' + row.id + '" target="_blank">修改</a>';
}
// 设置表格并填充数据
$('#mytab').bootstrapTable('destroy').bootstrapTable({
striped: true, // 是否显示行间隔色
pageNumber: 1, // 初始化加载第一页
pagination: true, // 是否分页
sidePagination: 'client', // server:服务器端分页|client:前端分页
pageSize: 10, // 单页记录数
pageList: [5, 20, 30],
queryParams: function(params) { // 上传服务器的参数
var temp = {
// level_data: $("#level_data").val(),
// Rainsnow: $("#Rainsnow").val(),
// created_at: $("#created_at").val(),
// buildingId: $("#buildingId").val(),
limit: params.limit, // 每页显示数量
offset: params.offset, // SQL语句起始索引
};
return temp;
},
columns: columns,
data: data
});
// 设备类型
function formatMode(value, row, index) {
if (value == '1'){
return "控制柜";
}else if(value == '2'){
return "曝气机";
}else if(value == '3'){
return "管网监测";
}else{
return "摄像头";
}
}
//状态
function formatMode1(value, row, index) {
if (value == '1'){
return "开启";
}else{
return "关闭";
}
}
},
error: function(xhr, status, error) {
console.info('ajax请求失败!')
}
});
//设备总数量 控制柜数量 曝气机数量 管网设备数量
$.ajax({
url: '?c=device&a=total&id='+id,
type: 'get',
dataType: 'json',
success: function(mes) {
// console.log(mes);
$("#total").text(mes.data.total);//设备总数量
$("#total_1").text(mes.data.total_1);//设备总数量
$("#total_2").text(mes.data.total_2);//设备总数量
$("#total_3").text(mes.data.total_3);//设备总数量
},
error: function (msg) {
console.info('ajax请求失败!')
}
})
//场站
$.ajax({
url: '?c=device&a=terminal&id='+id,
type: 'get',
dataType: 'json',
success: function(mes) {
// console.log(mes);
var data = mes.data;
$.each(data, function(index, value) {
// 创建一个新的按钮元素,并将数组元素的值作为按钮的文本 <button type="button" class="btn btn-primary_2" value=""></button>
var button = $("<button class='btn btn-primary_2' style='margin-bottom:0px;'>").text(value['name']);
// console.log(value['id'])
// $(".btn-primary_2").attr("id",index);
// 将新按钮添加到页面中的某个容器元素中(例如id为"container"的元素)
$(".btn-link").append(button);
});
},
error: function (msg) {
console.info('ajax请求失败!')
}
})
$(document).ready(function() {
$(document).on('click', '.btn-primary_2', function() {
var buttonText = $(this).text();
// alert(buttonText)
// 在此处添加点击事件的处理逻辑
//设备总数量 控制柜数量 曝气机数量 管网设备数量
$.ajax({
url: '?c=device&a=total&terminal='+buttonText+'&id='+id,
type: 'get',
dataType: 'json',
success: function(mes) {
// console.log(mes);
$("#total").text(mes.data.total);//设备总数量
$("#total_1").text(mes.data.total_1);//设备总数量
$("#total_2").text(mes.data.total_2);//设备总数量
$("#total_3").text(mes.data.total_3);//设备总数量
},
error: function (msg) {
console.info('ajax请求失败!')
}
})
//页面开始请求 bootstrap-table
$.ajax({
url: "?c=device&a=deviceDataTable&id="+id+"&terminal="+buttonText,
type: "GET",
success: function(response) {
var columns = []; // 创建一个空数组来存储列信息
var data = response.rows; // 假设返回的数据在响应中的data属性中
// console.log(data)
// 动态生成列信息
columns.push({ field: 'project', title: '所属项目' });
columns.push({ field: 'terminal', title: '所属场站' });
columns.push({ field: 'name', title: '设备名称' });
columns.push({ field: 'sn', title: '设备SN' });
columns.push({ field: 'type', title: '设备类型',formatter: formatMode });
columns.push({ field: 'register_address', title: '地址' });
columns.push({ field: 'status', title: '当前状态',formatter: formatMode1 });
columns.push({ field: 'note', title: '备注' });
// 设置表格并填充数据
$('#mytab').bootstrapTable('destroy').bootstrapTable({
striped: true, // 是否显示行间隔色
pageNumber: 1, // 初始化加载第一页
pagination: true, // 是否分页
sidePagination: 'client', // server:服务器端分页|client:前端分页
pageSize: 5, // 单页记录数
pageList: [5, 20, 30],
queryParams: function(params) { // 上传服务器的参数
var temp = {
// level_data: $("#level_data").val(),
// Rainsnow: $("#Rainsnow").val(),
// created_at: $("#created_at").val(),
// buildingId: $("#buildingId").val(),
limit: params.limit, // 每页显示数量
offset: params.offset, // SQL语句起始索引
};
return temp;
},
columns: columns,
data: data
});
// 设备类型
function formatMode(value, row, index) {
if (value == '1'){
return "控制柜";
}else if(value == '2'){
return "曝气机";
}else if(value == '3'){
return "管网监测";
}else{
return "摄像头";
}
}
//状态
function formatMode1(value, row, index) {
if (value == '1'){
return "开启";
}else{
return "关闭";
}
}
},
error: function(xhr, status, error) {
console.info('ajax请求失败!')
}
});
});
});
// $(".btn-primary_2").on('click', function() {
// // 在此处添加点击事件的处理逻辑
// alert(1)
// });
//点击事件
// $(".btn-primary_2").click(function() {
// // 在此处添加点击事件的处理逻辑
// alert(1)
// });
</script>
<script type="text/javascript">
</script>
</body>
</html>