物联网平台 +Web 组态
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

212 lines
6.4 KiB

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="com.lp.cfg.ProConfig"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<!DOCTYPE html>
<html>
<head>
<%@ include file="/WEB-INF/oss/iot/common/variable.jsp"%>
<%@ include file="/WEB-INF/oss/iot/common/variable_js.jsp"%>
<%@ include file="/WEB-INF/oss/iot/common/resource_lib.jsp"%>
<style type="text/css">
.index_theLeft ul {
width: 100%;
padding: 0px;
margin: 0px;
overflow: auto;
}
.index_theLeft li {
list-style: none;
position: relative;
padding: 8px 0 8px 20px;
border-bottom: 1px solid #f9f9f9;
cursor: pointer;
}
.index_theLeft li.active , .index_theLeft li:HOVER{
background: #f9f9f9;
}
.index_theLeft li span,.index_theLeft li h5{
text-align: center;
color: #333;
}
.mapContainer{
height: 550px;width:100%;padding-left:170px;
}
.app-container{
background: #f2f2f2;width: 100%;border-top:1px solid #ecf0f5;
}
.box-white {
width: 97%;
min-width: 897px;
padding-bottom: 0;
margin: 0 auto;
}
.box {
padding: 10px;
padding-top:1px;
border-left: 1px solid #d2d6de;
border-right: 1px solid #d2d6de;
border-bottom: 1px solid #d2d6de;
}
.box {
border: 0!important;
box-shadow: 0 0 2px 1px rgba(13,5,9,.08)!important;
}
.box {
position: relative;
border-radius: 3px;
background: #fff;
border-top: 3px solid #d2d6de;
margin-bottom: 20px;
width: 100%;
box-shadow: 0 1px 1px rgba(0,0,0,.1);
}
.sceneList-info{
padding-top: 10px;
padding-left: 10px;
}
.blue-span{
background: #3499da;
padding: 3px 6px;
color: #fff;
border-radius: 4px;
}
.red-span{
background: #f44336;
padding: 3px 6px;
color: #fff;
border-radius: 4px;
}
</style>
</head>
<body>
<div>
<div>
<!-- 左边栏 -->
<div class="float-left index_theLeft" style="width:170px;">
<div class="prolist">
<span>项目列表</span>
</div>
<ul class="dashboard-menu">
<c:forEach items="${info.data.getData()}" varStatus="status" var="obj">
<li onclick="changeScene(this)"
<c:if test="${id !=null }">
<c:if test="${obj.id ==id}">
class="active"
</c:if>
</c:if>
<c:if test="${id ==null }">
<c:if test="${status.index ==0}">
class="active"
</c:if>
</c:if>
sid="${obj.id}">
<span class="icon-stack-overflow"></span>&nbsp;${obj.name }
</li>
</c:forEach>
</ul>
</div>
<div class="mapContainer" >
<div class="app-container">
<div class="container-layout sceneList-info">
<div class="box join-device-box">
<div class="search-container jui-search_table" data-options="submit:'#searchbtns',table:'#init-table',param:{data_type:-1} ">
<span class="titleName">传感点管理</span>
<span>设备名称:</span>
<select type-name="node_id" class="input jui-selecter input-self input-select node_id mr-10"
config-option=" url:'/page/node.json?pageSize=300&paged=1',data:{scene_id:'$.scene_id$' },
init_value:'请选择设备','key':'id','value':'name',type:'page' " ></select>
<span>传感点名称:</span>
<input type-name="name" placeholder="传感点模糊查询" class="input input-self" />
<input type-name="scene_id" class="scene_id" type="hidden" />
<button onclick="addSensor()" class="button ml-20 bg-iot float-right"><span class="icon-plus"></span> 新增传感点</button>
<button id="searchbtns" class="button ml-20 bg-iot float-right"><span class="icon-search"></span> 查询</button>
</div>
<div style="margin-top:10px;">
<div id="init-table" type-option="table" config-option="'url':'/page/sensor',
param:{ scene_id:'$.scene_id$',data_type:-1 },
columns:[
{'name':'序号','type':'seq','value':'seq','width':'4%'},
{'name':'传感点名称','value':'name','width':'15%'},
{'name':'类型',type:'self',value_callback:'func_type_name','width':'8%'},
{'name':'所属设备','value':'node_name','width':'10%'},
{'name':'地址号','value':'sensor_device_id','width':'10%'},
{'name':'寄存器号','value':'port_id','width':'10%'},
{'name':'新增时间','type':'time','value':'register_time','width':'15%'},
{'name':'操作','type':'self','value_callback':'value_function','width':'10%'}]" >
</div>
</div>
<!-- {'name':'状态','type':'category','value':'iot_sensor_status','width':'10%',style:{16:'color,#18bbfc;',17:'color,#e33',18:'color,#A9A9A9'} }, -->
</div>
</div>
</div>
</div>
</div>
</div>
</body>
<script type="text/javascript">
function changeScene(obj){
$(".dashboard-menu li").removeClass("active");
$(obj).addClass("active");
$(".scene_id").val($(".dashboard-menu li.active").attr("sid"));
reflash( $(".dashboard-menu li.active").attr("sid"));
//
manual_init_selecter($(".jui-selecter"));
}
function reflash(id){
$("#init-table").data("params",{ scene_id: $(".scene_id").val(),data_type:-1 });
$("#init-table").tableAdaptor();
}
function value_function(data,seq){
return "<span tag='编辑' onclick='t_edit(this,"+data.id+")' class='self-icon icon-edit'></span>"+
"<span tag='删除' onclick='t_delete(this,"+data.id+")' class='self-icon icon-bitbucket'></span>";
}
function t_edit(obj,id){
forwardUrl("/iot/sensor_info_detail?id="+ $(".scene_id").val() +"&sid="+id);
}
function func_type_name(obj){
if(obj.data_type == 0 ){
return "<span class='blue-span'>数据</span>" ;
}else if(obj.data_type == 1) {
return "<span class='red-span'>配置</span>" ;
}else if(obj.data_type == 2) {
return "<span class='red-span'>报警</span>" ;
}
}
function t_delete(obj,id){
lcomfirm('是否确定删除该传感点?',function(){
commonAjax("DELETE",localUrl+"/sensor?id="+id, "",function(){
tip("删除成功");
setTimeout(function(){
closeAll();
$("#init-table").tableAdaptor();
},1000)
});
});
}
function addSensor(){
forwardUrl("/iot/sensor_info_detail?id="+ $(".scene_id").val());
}
$(function(){
$(".scene_id").val($(".dashboard-menu li.active").attr("sid"));
})
</script>
</html>