初始化
This commit is contained in:
@@ -0,0 +1,728 @@
|
||||
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>硬件信息</title>
|
||||
<!-- css and js -->
|
||||
<%@ include file="../htm/script.jsp" %>
|
||||
<link href="<%=basePath%>static/css/datepicker.css" rel="stylesheet"/>
|
||||
<script src="<%=basePath%>static/js/date-time/bootstrap-datepicker.min.js"></script>
|
||||
<style type="text/css">
|
||||
.important
|
||||
{
|
||||
vertical-align:middle;
|
||||
text-align:right;
|
||||
padding:10px;
|
||||
}
|
||||
</style>
|
||||
<script type="text/javascript">
|
||||
var dataTable = null;
|
||||
$(function(){
|
||||
$("#searchTable").find("td:even").addClass("important");
|
||||
$("#searchTable").find("input").addClass("searchClass");
|
||||
$("#searchTable").find("select").addClass("searchClass");
|
||||
//日期控件
|
||||
$('#sSearch4,#sSearch5').datepicker({
|
||||
format:"yyyy-mm-dd"
|
||||
});
|
||||
//模态框
|
||||
$('.modal').modal({
|
||||
backdrop:'static',
|
||||
show:false
|
||||
});
|
||||
//关闭
|
||||
$(".closeBtn").click(function(){
|
||||
$('.modal').modal("hide");
|
||||
});
|
||||
//分页
|
||||
dataTable = $('#sample-table-2').dataTable({
|
||||
"sPaginationType": "bootstrap",
|
||||
//"bProcessing": true,
|
||||
"bLengthChange": false,
|
||||
"bFilter": false,
|
||||
"bServerSide": true,//指定从服务器端获取数据
|
||||
"bStateSave" : false,
|
||||
"sAjaxSource": "<%=basePath%>page/admin/deviceListInf.do",
|
||||
"fnServerData": returnServerData,
|
||||
"aoColumns": [
|
||||
{ "mData": function(device){
|
||||
return "<div class='label label-xlg label-inverse'>"+device.macAddress+"</div><br><div class='label label-default'>"+device.deviceId+"</div>";
|
||||
},
|
||||
"bSortable": false
|
||||
},
|
||||
{ "mData": function(device){
|
||||
var factoryList = device.factoryList!=null?device.factoryList.factoryName:'';
|
||||
factoryList = "<div class='label label-xlg label-danger'>"+factoryList+"</div><br>";
|
||||
var venderList = device.venderList!=null?device.venderList.brandName:'';
|
||||
venderList = "<div class='label label-xlg label-primary'>"+venderList+"</div><br>";
|
||||
var hardwareType = device.hardwareType!=null?device.hardwareType.hardwareName:'';
|
||||
hardwareType = "<div class='label label-xlg label-success'>"+hardwareType+"</div>";
|
||||
return factoryList+venderList+hardwareType;
|
||||
},
|
||||
"bSortable": false
|
||||
},
|
||||
{ "mData": function(device){
|
||||
var onOff = device.onOff==1?"开":"关";
|
||||
onOff = "<div class='label label-light'>预警:"+onOff+"</div><br>";
|
||||
var waterOnOff = device.waterRemind==1?"开":"关";
|
||||
waterOnOff = "<div class='label label-default'>换水:"+waterOnOff+"</div><br>";
|
||||
var cycle = device.remindCycle;
|
||||
cycle = cycle!=null?"<div class='label label-default'>周期:"+cycle+"天</div><br>":"";
|
||||
var remindDate = device.remindDate;
|
||||
remindDate = remindDate!=null?"<div class='label label-success'>日期:"+remindDate+"</div>":"";
|
||||
return onOff+waterOnOff+cycle+remindDate;
|
||||
},
|
||||
"bSortable": false
|
||||
},
|
||||
{ "mData": function(device){
|
||||
var sdkVersion = device.sdkVersion;
|
||||
sdkVersion = "<div class='label label-info'>SDK版本:"+sdkVersion+"</div><br>";
|
||||
var sdkTime = device.sdkTime;
|
||||
sdkTime = sdkTime!=null?"<div class='label label-success'>版本日期:"+sdkTime+"</div><br>":"";
|
||||
var upgradeTime = device.upgradeTime;
|
||||
upgradeTime = upgradeTime!=null?"<div class='label label-success'>升级时间:"+upgradeTime+"</div><br>":"";
|
||||
var isUpgrade = device.isUpgrade==1?"开":"关";
|
||||
isUpgrade = "<div class='label label-default'>自动升级:"+isUpgrade+"</div><br>";
|
||||
var upgradeVersion = device.upgradeVersion;
|
||||
upgradeVersion = "<div class='label label-default'>升级版本:"+upgradeVersion+"</div>";
|
||||
return sdkVersion+sdkTime+upgradeTime+isUpgrade+upgradeVersion;
|
||||
},
|
||||
"bSortable": false
|
||||
},
|
||||
{ "mData": function(device){
|
||||
var loginCount = "<div class='label label-light'>"+device.loginCount+"次</div><br>";
|
||||
var loginTime = device.loginTime;
|
||||
loginTime = loginTime!=null?"<div class='label label-success'>"+loginTime+"</div>":"";
|
||||
return loginCount+loginTime;
|
||||
},
|
||||
"bSortable": false
|
||||
},
|
||||
{ "mData": function(device){
|
||||
var createDate = device.createDate;
|
||||
createDate = createDate!=null?"<div class='label label-success'>分配日期:"+createDate+"</div><br>":"";
|
||||
var createCode = device.createCode;
|
||||
createCode = (createCode!=null && createCode!="")?"<div class='label label-light'>分配编号:"+createCode+"</div><br>":"";
|
||||
var firstActivate = device.firstActivate;
|
||||
firstActivate = firstActivate!=null?"<div class='label label-success'>激活时间:"+firstActivate+"</div><br>":"";
|
||||
var createTime = device.createTime;
|
||||
createTime = createTime!=null?"<div class='label label-success'>创建时间:"+createTime+"</div>":"";
|
||||
return createDate+createCode+firstActivate+createTime;
|
||||
},
|
||||
"bSortable": false
|
||||
},
|
||||
{ "mData": function(device){
|
||||
var number1 = device.number1;
|
||||
number1 = number1!=null?"<div class='label label-info'>MCU启动次数:"+number1+"次</div><br>":"";
|
||||
var number2 = device.number2;
|
||||
number2 = number2!=null?"<div class='label label-info'>模块启动次数:"+number2+"次</div><br>":"";
|
||||
var number3 = device.number3;
|
||||
number3 = number3!=null?"<div class='label label-info'>连接路由器次数:"+number3+"次</div><br>":"";
|
||||
var number4 = device.number4;
|
||||
number4 = number4!=null?"<div class='label label-info'>成功连接次数:"+number4+"次</div><br>":"";
|
||||
var number5 = device.number5;
|
||||
number5 = number5!=null?"<div class='label label-info'>尝试连接次数:"+number5+"次</div><br>":"";
|
||||
return number1+number2+number3+number4+number5;
|
||||
},
|
||||
"bSortable": false
|
||||
},
|
||||
{ "mData": function(device){
|
||||
var isCharge = device.isCharge==1?"是":"否";
|
||||
isCharge = "<div class='label label-light'>是否收费:"+isCharge+"</div><br>";
|
||||
var isBlacklist = device.isBlacklist==1?"NO":"OK";
|
||||
isBlacklist = "<div class='label label-light'>授权状态:"+isBlacklist+"</div><br>";
|
||||
var authorizeTime = device.authorizeTime;
|
||||
authorizeTime = authorizeTime!=null?"<div class='label label-success'>授权时间:"+authorizeTime+"</div>":"";
|
||||
return isCharge+isBlacklist+authorizeTime;
|
||||
},
|
||||
"bSortable": false
|
||||
},
|
||||
{ "mData": function(device){
|
||||
var isCharge = device.isCharge;
|
||||
var isBlacklist = device.isBlacklist;
|
||||
var isUpgrade = device.isUpgrade;
|
||||
var yes = '<a href="javascript:void(0);" title="授权" onclick="hardwareLicense('+device.deviceId+',0)" class="label label-primary"><span class="icon-ok"></span>授予权限</a><br>';
|
||||
var no = '<a href="javascript:void(0);" title="取消授权" onclick="hardwareLicense('+device.deviceId+',1)" class="label label-danger"><span class="icon-remove"></span>取消授权</a><br>';
|
||||
var caozuo = "";
|
||||
if(isCharge==0){
|
||||
if(isBlacklist==1){
|
||||
caozuo = yes;
|
||||
}
|
||||
else{
|
||||
caozuo = no;
|
||||
}
|
||||
}
|
||||
return caozuo;
|
||||
},
|
||||
"bSortable": false,
|
||||
"sClass":"center"
|
||||
},
|
||||
{ "mData": function(device){
|
||||
var isUpgrade = device.isUpgrade;
|
||||
var searchStatus = '<a href="javascript:void(0);" title="查询设备状态" onclick="searchStatus(\''+device.macAddress+'\')" class="label label-inverse"><span class="icon-search"></span>查询状态</a><br>';
|
||||
var onlineUpgradeSdk = '<a href="javascript:void(0);" title="在线升级SDK" onclick="onlineUpgradeSdk(\''+device.macAddress+'\')" class="label label-success"><span class="icon-cloud-upload"></span>在线升级</a><br>';
|
||||
var upgradeSdk = '<a href="javascript:void(0);" title="重启升级SDK" onclick="upgradeSdk('+device.deviceId+','+device.sdkVersion+',1)" class="label label-primary"><span class="icon-cloud-upload"></span>重启升级</a><br>';
|
||||
var noUpgradeSdk = '<a href="javascript:void(0);" title="取消升级SDK" onclick="noUpgradeSdk('+device.deviceId+','+device.sdkVersion+',0)" class="label label-danger"><span class="icon-cloud-download"></span>取消升级</a><br>';
|
||||
var caozuo = "";
|
||||
if(isUpgrade==1){
|
||||
caozuo = noUpgradeSdk;
|
||||
}
|
||||
else{
|
||||
caozuo = upgradeSdk;
|
||||
}
|
||||
return caozuo+searchStatus+onlineUpgradeSdk;
|
||||
},
|
||||
"bSortable": false,
|
||||
"sClass":"center"
|
||||
}
|
||||
],
|
||||
"oLanguage": {
|
||||
"sLengthMenu": "每页显示 _MENU_条",
|
||||
"sZeroRecords": "没有找到符合条件的数据",
|
||||
"sInfo": "当前第 _START_ - _END_ 条 共计 _TOTAL_ 条",
|
||||
"sProcessing": "<img src='<%=basePath%>static/css/images/loading.gif'>",
|
||||
"sInfoEmpty": "木有记录",
|
||||
"sInfoFiltered": "(从 _MAX_ 条记录中过滤)",
|
||||
"sSearch": "",
|
||||
"oPaginate": {
|
||||
"sFirst": "首页",
|
||||
"sPrevious": "前一页",
|
||||
"sNext": "后一页",
|
||||
"sLast": "尾页"
|
||||
}
|
||||
}
|
||||
});
|
||||
//在线升级SDK
|
||||
$("#onlineUpgradeBtn").click(function(){
|
||||
onlineUpgradeSdk("");
|
||||
});
|
||||
$("#onlineUpgradeModalBtn").click(function(){
|
||||
var macAddress = $("#onlineUpgrade-macAddress").val();
|
||||
var sdkVersion = $("#onlineUpgrade-sdkVersion").val();
|
||||
if(macAddress==""){
|
||||
jAlert('mac地址不能为空!', '提示');
|
||||
return false;
|
||||
}
|
||||
if(sdkVersion==""){
|
||||
jAlert('升级版本不能为空!', '提示');
|
||||
return false;
|
||||
}
|
||||
$("#onlineUpgradeModalBtn").attr("disabled",true);
|
||||
$('#form-onlineUpgrade').submit();
|
||||
});
|
||||
$('#form-onlineUpgrade').ajaxForm(function(data){
|
||||
if(data==""){
|
||||
jAlert('出错啦!', '提示');
|
||||
}
|
||||
else if(data!=null){
|
||||
var json = eval('('+data+')');
|
||||
var map = json["map"];
|
||||
var bln = map["bln"];
|
||||
jAlert('发送升级指令:'+bln, '提示');
|
||||
}
|
||||
else{
|
||||
jAlert('出错啦!', '提示');
|
||||
}
|
||||
$("#onlineUpgradeModalBtn").attr("disabled",false);
|
||||
});
|
||||
//在线状态
|
||||
$("#searchStatus").click(function(){
|
||||
searchStatus("");
|
||||
});
|
||||
$("#searchStatusModalBtn").click(function(){
|
||||
$("#searchStatusModalBtn").attr("disabled",true);
|
||||
$('#form-searchStatus').submit();
|
||||
});
|
||||
$('#form-searchStatus').ajaxForm(function(data){
|
||||
if(data==""){
|
||||
jAlert('出错啦!', '提示');
|
||||
}
|
||||
else if(data!=null){
|
||||
var json = eval('('+data+')');
|
||||
var map = json["map"];
|
||||
var bln = map["bln"];
|
||||
var number = map["number"];
|
||||
jAlert('是否在线:'+bln+"\n在线设备数量:"+number, '提示');
|
||||
}
|
||||
else{
|
||||
jAlert('出错啦!', '提示');
|
||||
}
|
||||
$("#searchStatusModalBtn").attr("disabled",false);
|
||||
});
|
||||
//查询
|
||||
$('#form1').ajaxForm(function(data){
|
||||
//弹出ajax请求后的回调结果
|
||||
if(data==true){
|
||||
//刷新当前页面
|
||||
refreshTable();
|
||||
jAlert('成功', '提示');
|
||||
}
|
||||
else{
|
||||
//刷新当前页面
|
||||
refreshTable();
|
||||
jAlert('失败', '提示');
|
||||
}
|
||||
});
|
||||
//批量升级SDK
|
||||
$("#addUpgradeBtn").click(function(){
|
||||
var tj = "";
|
||||
var i = 0 ;
|
||||
if($("#selectField3").val()!=""){
|
||||
i++;
|
||||
tj = tj + i + "、电子厂:"+$("#selectField3").find("option:selected").text()+"\n";
|
||||
}
|
||||
if($("#selectField1").val()!=""){
|
||||
i++;
|
||||
tj = tj + i + "、鱼缸厂:"+$("#selectField1").find("option:selected").text()+"\n";
|
||||
}
|
||||
if($("#selectField2").val()!=""){
|
||||
i++;
|
||||
tj = tj + i + "、硬件型号:"+$("#selectField2").find("option:selected").text()+"\n";
|
||||
}
|
||||
if($("#sSearch2").val()!=""){
|
||||
i++;
|
||||
tj = tj + i + "、SDK版本:"+$("#sSearch2").val()+" ";
|
||||
}
|
||||
if(tj==""){
|
||||
jAlert('没有选择的条件!', '提示');
|
||||
return false;
|
||||
}
|
||||
jConfirm("确定要按以下条件新增自动升级吗?\n"+tj, '确认对话框', function(r){
|
||||
if (r == true) {
|
||||
jPrompt('输入需要升级的目标版本号(填写一个数字)','', '升级SDK版本', function(str) {
|
||||
if(str!=null && str!=""){
|
||||
//判断数字
|
||||
if(str>=0 && !isNaN(str)){
|
||||
$("#upgradeVersion").val(str);
|
||||
$("#form1").submit();
|
||||
return false;
|
||||
}
|
||||
else{
|
||||
jAlert('请填写一个不小于0的数字', '提示');
|
||||
}
|
||||
}
|
||||
else{
|
||||
jAlert('不能为空', '提示');
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
$("#sdkVersion").val("");
|
||||
});
|
||||
//重置
|
||||
$("#reset").click(function(){
|
||||
var searchClass = $(".searchClass");
|
||||
for (var i = 0; i < searchClass.length; i++) {
|
||||
$(searchClass[i]).val("");
|
||||
}
|
||||
dataTable.fnDraw();
|
||||
});
|
||||
//自动查询
|
||||
$("#searchTable").find("input,select").change(function(){
|
||||
dataTable.fnDraw();
|
||||
});
|
||||
});
|
||||
|
||||
//服务器返回数据
|
||||
function returnServerData(sSource, aoData, fnCallback){
|
||||
//查询参数
|
||||
var searchClass = $(".searchClass");
|
||||
for (var i = 0; i < searchClass.length; i++) {
|
||||
var id = $(searchClass[i]).attr("id");
|
||||
var value = $(searchClass[i]).val();
|
||||
aoData.push({"name":id,"value":value});
|
||||
}
|
||||
$.ajax({
|
||||
"url": sSource,
|
||||
"type": "POST",
|
||||
"data": aoData,
|
||||
"dataType": "json",
|
||||
"cache": false,
|
||||
"success": function(json){
|
||||
fnCallback(json);
|
||||
}
|
||||
});
|
||||
}
|
||||
//刷新当前页
|
||||
function refreshTable(){
|
||||
var iDisplayStart = dataTable.fnSettings()._iDisplayStart;
|
||||
var iDisplayLength = dataTable.fnSettings()._iDisplayLength;
|
||||
var pageNum = (iDisplayStart+iDisplayLength)/iDisplayLength;
|
||||
dataTable.fnPageChange(--pageNum,true);
|
||||
}
|
||||
//授权
|
||||
function hardwareLicense(deviceId,isBlacklist){
|
||||
jConfirm('确定要执行该操作吗?', '确认对话框', function(bln){
|
||||
if(bln){
|
||||
$.ajax({
|
||||
"url": "<%=basePath%>page/admin/deviceAuthority.do?rm="+Math.random(),
|
||||
"type": 'POST',
|
||||
"data": {"deviceId":deviceId,"isBlacklist":isBlacklist},
|
||||
"dataType": "json",
|
||||
"success":function(re){
|
||||
if(re){
|
||||
//刷新当前页
|
||||
refreshTable();
|
||||
jAlert('成功', '提示');
|
||||
}
|
||||
else{
|
||||
jAlert('失败', '提示');
|
||||
}
|
||||
},
|
||||
error:function(){
|
||||
//刷新当前页
|
||||
refreshTable();
|
||||
jAlert('错误', '提示');
|
||||
},
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
//在线状态
|
||||
function searchStatus(macAddress){
|
||||
if(macAddress!=""){
|
||||
$("#searchStatus-macAddress").val(macAddress);
|
||||
}
|
||||
$("#searchStatusModal").modal("show");
|
||||
}
|
||||
//在线升级SDK
|
||||
function onlineUpgradeSdk(macAddress){
|
||||
if(macAddress!=""){
|
||||
$("#onlineUpgrade-macAddress").val(macAddress);
|
||||
}
|
||||
$("#onlineUpgradeModal").modal("show");
|
||||
}
|
||||
//取消SDK升级
|
||||
function noUpgradeSdk(deviceId,sdkVersion,isUpgrade){
|
||||
jConfirm('确定要取消升级吗?', '确认对话框', function(bln){
|
||||
if(bln){
|
||||
$.ajax({
|
||||
"url": "<%=basePath%>page/admin/onoffUpgradeSdk.do?rm="+Math.random(),
|
||||
"type": 'POST',
|
||||
"data": {"deviceId":deviceId,"isUpgrade":isUpgrade},
|
||||
"dataType": "json",
|
||||
"success":function(re){
|
||||
if(re){
|
||||
//刷新当前页
|
||||
refreshTable();
|
||||
jAlert('成功', '提示');
|
||||
}
|
||||
else{
|
||||
jAlert('失败', '提示');
|
||||
}
|
||||
},
|
||||
error:function(){
|
||||
//刷新当前页
|
||||
refreshTable();
|
||||
jAlert('错误', '提示');
|
||||
},
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
//单个SDK升级
|
||||
function upgradeSdk(deviceId,sdkVersion,isUpgrade){
|
||||
jPrompt('输入需要升级的目标版本号(填写一个数字)','', '升级SDK版本', function(str) {
|
||||
if(str!=null && str!=""){
|
||||
//判断数字
|
||||
if(str>=0 && !isNaN(str)){
|
||||
$.ajax({
|
||||
"url": "<%=basePath%>page/admin/onoffUpgradeSdk.do?rm="+Math.random(),
|
||||
"type": 'POST',
|
||||
"data": {"deviceId":deviceId,"upgradeVersion":str,"isUpgrade":isUpgrade},
|
||||
"dataType": "json",
|
||||
"success":function(re){
|
||||
if(re){
|
||||
//刷新当前页
|
||||
refreshTable();
|
||||
jAlert('成功', '提示');
|
||||
}
|
||||
else{
|
||||
jAlert('失败', '提示');
|
||||
}
|
||||
},
|
||||
error:function(){
|
||||
//刷新当前页
|
||||
refreshTable();
|
||||
jAlert('错误', '提示');
|
||||
},
|
||||
});
|
||||
}
|
||||
else{
|
||||
jAlert('请填写一个不小于0的数字', '提示');
|
||||
}
|
||||
}
|
||||
else{
|
||||
jAlert('不能为空', '提示');
|
||||
}
|
||||
});
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!-- 头部 -->
|
||||
<%@ include file="../htm/header.jsp" %>
|
||||
<!-- 主体 -->
|
||||
<div class="main-container" id="main-container">
|
||||
<div class="main-container-inner">
|
||||
<!-- 侧边栏 -->
|
||||
<%@ include file="../htm/sidebar.jsp" %>
|
||||
<!-- 主体内容 -->
|
||||
<div class="main-content">
|
||||
<div class="breadcrumbs" id="breadcrumbs">
|
||||
<script type="text/javascript">
|
||||
try{ace.settings.check('breadcrumbs' , 'fixed')}catch(e){}
|
||||
</script>
|
||||
<ul class="breadcrumb">
|
||||
<li>
|
||||
<i class="icon-home home-icon"></i>
|
||||
<a href="<%=basePath%>page/public/index.do">首页</a>
|
||||
</li>
|
||||
<li class="active">硬件信息</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="page-content">
|
||||
<div class="row">
|
||||
<div class="col-xs-12">
|
||||
<div class="table-responsive">
|
||||
<form id="form1" method="post" class="form-horizontal" action="<%=basePath%>page/admin/addUpgradeNotes.do">
|
||||
<input type="hidden" name="upgradeVersion" id="upgradeVersion"/>
|
||||
<table id="searchTable" class="col-xs-12">
|
||||
<tr>
|
||||
<td>
|
||||
<label>MAC地址</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" id='sSearch' value="${sSearch}" class="input-medium" maxlength='20'/>
|
||||
</td>
|
||||
<td>
|
||||
<label>设备ID</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" id='sSearch1' class="input-medium" maxlength='20'/>
|
||||
</td>
|
||||
<td>
|
||||
<label>SDK版本</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" id='sSearch2' name="sdkVersion" class="input-medium" maxlength='20'/>
|
||||
</td>
|
||||
<td>
|
||||
<label>目标版本</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" id='sSearch3' class="input-medium" maxlength='20'/>
|
||||
</td>
|
||||
<td>
|
||||
<label>分配日期</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type='text' id='sSearch4' class='date-picker input-medium' maxlength='20'/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>登陆日期</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type='text' id='sSearch5' class='date-picker input-medium' maxlength='20'/>
|
||||
</td>
|
||||
<td>
|
||||
<label>分配编号</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type='text' id='sSearch6' class='input-medium' maxlength='20'/>
|
||||
</td>
|
||||
<td>
|
||||
<label>电子厂</label>
|
||||
</td>
|
||||
<td>
|
||||
<select id="selectField3" name="factoryList.factoryCode" class="input-medium">
|
||||
<option value="">请选择</option>
|
||||
<c:forEach items="${list3}" var="vl">
|
||||
<option value="${vl.factoryCode}">${vl.factoryName}</option>
|
||||
</c:forEach>
|
||||
</select>
|
||||
</td>
|
||||
<td>
|
||||
<label>鱼缸厂</label>
|
||||
</td>
|
||||
<td>
|
||||
<select id="selectField1" name="venderList.brandCode" class="input-medium">
|
||||
<option value="">请选择</option>
|
||||
<c:forEach items="${list2}" var="vl">
|
||||
<option value="${vl.brandCode}">${vl.brandName}</option>
|
||||
</c:forEach>
|
||||
</select>
|
||||
</td>
|
||||
<td>
|
||||
<label>硬件类型</label>
|
||||
</td>
|
||||
<td>
|
||||
<select id="selectField2" name="hardwareType.hardwareType" class="input-medium">
|
||||
<option value="">请选择</option>
|
||||
<c:forEach items="${list1}" var="vl">
|
||||
<option value="${vl.hardwareType}">${vl.hardwareName}</option>
|
||||
</c:forEach>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>是否收费</label>
|
||||
</td>
|
||||
<td>
|
||||
<select id="selectField" class="input-medium">
|
||||
<option value="">请选择</option>
|
||||
<option value="1">是</option>
|
||||
<option value="0">否</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>
|
||||
<label>授权状态</label>
|
||||
</td>
|
||||
<td>
|
||||
<select id="selectField4" class="input-medium">
|
||||
<option value="">请选择</option>
|
||||
<option value="0">OK</option>
|
||||
<option value="1">NO</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>
|
||||
<label>自动升级</label>
|
||||
</td>
|
||||
<td>
|
||||
<select id="selectField5" class="input-medium">
|
||||
<option value="">请选择</option>
|
||||
<option value="1">开</option>
|
||||
<option value="0">关</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>
|
||||
<label>排序字段</label>
|
||||
</td>
|
||||
<td>
|
||||
<select id="sortField" class="input-medium">
|
||||
<option value="">请选择</option>
|
||||
<option value="loginCount">登陆次数</option>
|
||||
<option value="loginTime">登陆时间</option>
|
||||
<option value="firstActivate">激活时间</option>
|
||||
<option value="createTime">创建时间</option>
|
||||
<option value="number1">MCU启动次数</option>
|
||||
<option value="number2">模块启动次数</option>
|
||||
<option value="number3">连接路由器次数</option>
|
||||
<option value="number4">成功连接次数</option>
|
||||
<option value="number5">尝试连接次数</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>
|
||||
<label>排序方式</label>
|
||||
</td>
|
||||
<td>
|
||||
<select id="sortMode" class="input-medium">
|
||||
<option value="">请选择</option>
|
||||
<option value="asc">升序↑</option>
|
||||
<option value="desc">降序↓</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="12" style="text-align:center;">
|
||||
<button type="button" class="btn btn-sm btn-info" onclick="refreshTable();" style="margin-right:20px;"><i class="icon-refresh"></i>刷新</button>
|
||||
<button id="reset" type="reset" class="btn btn-sm btn-info" style="margin-right:20px;"><i class="icon-undo"></i>重置</button>
|
||||
<button id="addUpgradeBtn" type="button" class="btn btn-sm btn-info" style="margin-right:20px;"><i class="icon-cloud-upload"></i>批量升级SDK</button>
|
||||
<button id="onlineUpgradeBtn" type="button" class="btn btn-sm btn-info" style="margin-right:20px;"><i class="icon-cloud-upload"></i>在线升级SDK</button>
|
||||
<button id ="searchStatus" type="button" class="btn btn-sm btn-info" style="margin-right:20px;"><i class="icon-search"></i>设备在线状态</button>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
<table id="sample-table-2" class="table table-striped table-bordered table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>设备/ID</th>
|
||||
<th>设备信息</th>
|
||||
<th>设备参数</th>
|
||||
<th>SDK版本信息</th>
|
||||
<th>登陆信息</th>
|
||||
<th>分配信息</th>
|
||||
<th>上报记录</th>
|
||||
<th>授权信息</th>
|
||||
<th>授权</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<form action="<%=basePath%>page/admin/searchStatus.do" class="form-horizontal" method="post" id="form-searchStatus">
|
||||
<div class="modal fade" id="searchStatusModal">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="closeBtn close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
<h4 class="modal-title">查询在线状态</h4>
|
||||
</div>
|
||||
<div class="modal-body row">
|
||||
<div class="col-xs-12">
|
||||
<div class="form-group">
|
||||
<label class="col-xs-2 control-label no-padding-right">mac地址<span style="color:red;">*</span></label>
|
||||
<div class="col-xs-8">
|
||||
<input type="text" name="macAddress" id="searchStatus-macAddress" class="input-medium" required="required" maxlength="20">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="closeBtn btn btn-default">关闭</button>
|
||||
<button id="searchStatusModalBtn" type="submit" class="btn btn-primary">确定</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<form action="<%=basePath%>page/admin/onlineUpgrade.do" class="form-horizontal" method="post" id="form-onlineUpgrade">
|
||||
<div class="modal fade" id="onlineUpgradeModal">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="closeBtn close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
<h4 class="modal-title">在线升级SDK</h4>
|
||||
</div>
|
||||
<div class="modal-body row">
|
||||
<div class="col-xs-12">
|
||||
<div class="form-group">
|
||||
<label class="col-xs-2 control-label no-padding-right">mac地址<span style="color:red;">*</span></label>
|
||||
<div class="col-xs-8">
|
||||
<input type="text" name="macAddress" id="onlineUpgrade-macAddress" class="input-medium" required="required">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-xs-2 control-label no-padding-right">升级版本<span style="color:red;">*</span></label>
|
||||
<div class="col-xs-8">
|
||||
<input type="number" name="sdkVersion" id="onlineUpgrade-sdkVersion" class="input-medium" required="required" maxlength="20">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="closeBtn btn btn-default">关闭</button>
|
||||
<button id="onlineUpgradeModalBtn" type="submit" class="btn btn-primary">确定</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<!-- 设置工具 -->
|
||||
<%@ include file="../htm/setting.jsp" %>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user