| <!DOCTYPE html> | 
| <html> | 
| <head> | 
|     <meta charset="utf-8"/> | 
|     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> | 
|     <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> | 
|     <title>工作台</title> | 
|     <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all"> | 
|     <link rel="stylesheet" href="../../static/css/admin.css?v=318" media="all"> | 
|     <style> | 
|         /** 应用快捷块样式 */ | 
|         .console-app-group { | 
|             padding: 16px; | 
|             border-radius: 4px; | 
|             text-align: center; | 
|             background-color: #fff; | 
|             cursor: pointer; | 
|             display: block; | 
|         } | 
|   | 
|         .console-app-group .console-app-icon { | 
|             width: 32px; | 
|             height: 32px; | 
|             line-height: 32px; | 
|             margin-bottom: 6px; | 
|             display: inline-block; | 
|             -webkit-box-sizing: border-box; | 
|             -moz-box-sizing: border-box; | 
|             box-sizing: border-box; | 
|             font-size: 32px; | 
|             color: #69c0ff; | 
|         } | 
|   | 
|         .console-app-group:hover { | 
|             box-shadow: 0 0 15px rgba(0, 0, 0, .08); | 
|         } | 
|   | 
|         /** //应用快捷块样式 */ | 
|   | 
|         /** 小组成员 */ | 
|         .console-user-group { | 
|             position: relative; | 
|             padding: 10px 0 10px 40px; | 
|         } | 
|   | 
|         .console-user-group .console-user-group-head { | 
|             width: 32px; | 
|             height: 32px; | 
|             position: absolute; | 
|             top: 50%; | 
|             left: 12px; | 
|             margin-top: -10px; | 
|             border-radius: 50%; | 
|             font-size: 18px; | 
|             font-weight: bolder; | 
|         } | 
|   | 
|         .console-user-group .layui-badge { | 
|             position: absolute; | 
|             top: 50%; | 
|             right: 8px; | 
|             margin-top: -10px; | 
|         } | 
|   | 
|         .console-user-group .console-user-group-name { | 
|             line-height: 1.2; | 
|         } | 
|   | 
|         .console-user-group .console-user-group-desc { | 
|             color: #8c8c8c; | 
|             line-height: 1; | 
|             font-size: 12px; | 
|             margin-top: 5px; | 
|         } | 
|   | 
|         /** 卡片轮播图样式 */ | 
|         .admin-carousel .layui-carousel-ind { | 
|             position: absolute; | 
|             top: -41px; | 
|             text-align: right; | 
|         } | 
|   | 
|         .admin-carousel .layui-carousel-ind ul { | 
|             background: 0 0; | 
|         } | 
|   | 
|         .admin-carousel .layui-carousel-ind li { | 
|             background-color: #e2e2e2; | 
|         } | 
|   | 
|         .admin-carousel .layui-carousel-ind li.layui-this { | 
|             background-color: #999; | 
|         } | 
|   | 
|         /** 广告位轮播图 */ | 
|         .admin-news .layui-carousel-ind { | 
|             height: 45px; | 
|         } | 
|   | 
|         .admin-news a { | 
|             display: block; | 
|             line-height: 70px; | 
|             text-align: center; | 
|         } | 
|   | 
|         /** 最新动态时间线 */ | 
|         .layui-timeline-dynamic .layui-timeline-item { | 
|             padding-bottom: 0; | 
|         } | 
|   | 
|         .layui-timeline-dynamic .layui-timeline-item:before { | 
|             top: 16px; | 
|         } | 
|   | 
|         .layui-timeline-dynamic .layui-timeline-axis { | 
|             width: 9px; | 
|             height: 9px; | 
|             left: 1px; | 
|             top: 7px; | 
|             background-color: #cbd0db; | 
|         } | 
|   | 
|         .layui-timeline-dynamic .layui-timeline-axis.active { | 
|             background-color: #0c64eb; | 
|             box-shadow: 0 0 0 2px rgba(12, 100, 235, .3); | 
|         } | 
|   | 
|         .dynamic-card-body { | 
|             box-sizing: border-box; | 
|             overflow: hidden; | 
|         } | 
|   | 
|         .dynamic-card-body:hover { | 
|             overflow-y: auto; | 
|             padding-right: 9px; | 
|         } | 
|   | 
|         /** 优先级徽章 */ | 
|         .layui-badge-priority { | 
|             padding: 2px; | 
|             border-radius: 20%; | 
|             width: 30px; | 
|             height: 30px; | 
|             line-height: 18px; | 
|             border-width: 2px; | 
|             font-weight: 600; | 
|         } | 
|     </style> | 
| </head> | 
| <body> | 
| <!-- 正文开始 --> | 
| <!--<div class="layui-fluid ew-console-wrapper">--> | 
| <!--    <!– 卡片 –>--> | 
| <!--    <div class="layui-row layui-col-space15">--> | 
| <!--        <div class="layui-col-xs12 layui-col-sm6 layui-col-md3">--> | 
| <!--            <div class="layui-card">--> | 
| <!--                <div class="layui-card-header">--> | 
| <!--                    报文量<span class="layui-badge layui-badge-green pull-right">日</span>--> | 
| <!--                </div>--> | 
| <!--                <div class="layui-card-body">--> | 
| <!--                    <p class="lay-big-font" id="logQtyDay">0</p>--> | 
| <!--                    <p>总报文量<span class="pull-right"><span id="logQty">0</span></span></p>--> | 
| <!--                </div>--> | 
| <!--            </div>--> | 
| <!--        </div>--> | 
| <!--        <div class="layui-col-xs12 layui-col-sm6 layui-col-md3">--> | 
| <!--            <div class="layui-card">--> | 
| <!--                <div class="layui-card-header">--> | 
| <!--                    终端数量<span class="layui-badge layui-badge-blue pull-right">总</span>--> | 
| <!--                </div>--> | 
| <!--                <div class="layui-card-body">--> | 
| <!--                    <p class="lay-big-font"><span style="line-height: 1;" id="sensorQty">0</span></p>--> | 
| <!--                    <p>在线设备<span class="pull-right"><span id="sensorOnlineQty"></span> </span></p>--> | 
| <!--                </div>--> | 
| <!--            </div>--> | 
| <!--        </div>--> | 
| <!--        <div class="layui-col-xs12 layui-col-sm6 layui-col-md3">--> | 
| <!--            <div class="layui-card">--> | 
| <!--                <div class="layui-card-header">--> | 
| <!--                    指令下发量<span class="layui-badge layui-badge-red pull-right">月</span>--> | 
| <!--                </div>--> | 
| <!--                <div class="layui-card-body">--> | 
| <!--                    <p class="lay-big-font"><span id="commandQtyMonth">0</span></p>--> | 
| <!--                    <p>总下发量<span class="pull-right"><span id="commandQty">0</span></span></p>--> | 
| <!--                </div>--> | 
| <!--            </div>--> | 
| <!--        </div>--> | 
| <!--        <div class="layui-col-xs12 layui-col-sm6 layui-col-md3">--> | 
| <!--            <div class="layui-card">--> | 
| <!--                <div class="layui-card-header">--> | 
| <!--                    系统用户--> | 
| <!--                    <span class="icon-text pull-right" lay-tips="系统运行中......" lay-direction="4" lay-offset="5px,5px">--> | 
| <!--                        <i class="layui-icon layui-icon-loading-1 layui-anim layui-anim-rotate layui-anim-loop"></i>--> | 
| <!--                    </span>--> | 
| <!--                </div>--> | 
| <!--                <div class="layui-card-body">--> | 
| <!--                    <p class="lay-big-font"><span id="usersQty">0</span> <span style="font-size: 24px;line-height: 1;">位</span></p>--> | 
| <!--                    <p>操作次数<span class="pull-right"><span id="optQty">0</span> 次</span></p>--> | 
| <!--                </div>--> | 
| <!--            </div>--> | 
| <!--        </div>--> | 
| <!--    </div>--> | 
| <!--    <!– 快捷方式 –>--> | 
| <!--    <div class="layui-row layui-col-space15">--> | 
| <!--        <div class="layui-col-sm6" style="padding-bottom: 0;">--> | 
| <!--            <div class="layui-row layui-col-space15">--> | 
| <!--                <div class="layui-col-xs6 layui-col-sm3">--> | 
| <!--                    <a class="console-app-group" ew-href="sensor/sensor.html?resourceId=30529" lay-text="斑马线终端">--> | 
| <!--                        <i class="console-app-icon layui-icon layui-icon-align-center" style="color: #ff9c6e;"></i>--> | 
| <!--                        <div class="console-app-name">斑马线</div>--> | 
| <!--                    </a>--> | 
| <!--                </div>--> | 
| <!--                <div class="layui-col-xs6 layui-col-sm3">--> | 
| <!--                    <div class="console-app-group" ew-href="sensor2/sensor2.html?resourceId=30553" lay-text="井盖终端">--> | 
| <!--                        <i class="console-app-icon layui-icon layui-icon-circle" style="color: #95de64;"></i>--> | 
| <!--                        <div class="console-app-name">井盖</div>--> | 
| <!--                    </div>--> | 
| <!--                </div>--> | 
| <!--                <div class="layui-col-xs6 layui-col-sm3">--> | 
| <!--                    <div class="console-app-group" ew-href="sensor3/sensor3.html?resourceId=30556" lay-text="护栏终端">--> | 
| <!--                        <i class="console-app-icon layui-icon layui-icon-table" style="color: #5cdbd3;font-size: 30px;"></i>--> | 
| <!--                        <div class="console-app-name">护栏</div>--> | 
| <!--                    </div>--> | 
| <!--                </div>--> | 
| <!--                <div class="layui-col-xs6 layui-col-sm3">--> | 
| <!--                    <div class="console-app-group" ew-href="sensor4/sensor4.html?resourceId=30559" lay-text="消防终端">--> | 
| <!--                        <i class="console-app-icon layui-icon layui-icon-fire" style="color: #b37feb;font-size: 30px;"></i>--> | 
| <!--                        <div class="console-app-name">消防</div>--> | 
| <!--                    </div>--> | 
| <!--                </div>--> | 
| <!--            </div>--> | 
| <!--        </div>--> | 
| <!--        <div class="layui-col-sm6" style="padding-bottom: 0;">--> | 
| <!--            <div class="layui-row layui-col-space15">--> | 
| <!--                <div class="layui-col-xs6 layui-col-sm3">--> | 
| <!--                    <div class="console-app-group" ew-href="sensor5/sensor5.html?resourceId=30562" lay-text="气体检测终端">--> | 
| <!--                        <i class="console-app-icon layui-icon layui-icon-transfer" style="color: #ffd666;font-size: 34px;"></i>--> | 
| <!--                        <div class="console-app-name">气体</div>--> | 
| <!--                    </div>--> | 
| <!--                </div>--> | 
| <!--                <div class="layui-col-xs6 layui-col-sm3">--> | 
| <!--                    <div class="console-app-group" ew-href="alarmVal/alarmVal.html?resourceId=30644" lay-text="报警阈值">--> | 
| <!--                        <i class="console-app-icon layui-icon layui-icon-notice"--> | 
| <!--                           style="color: #ff85c0;font-size: 28px;"></i>--> | 
| <!--                        <div class="console-app-name">报警</div>--> | 
| <!--                    </div>--> | 
| <!--                </div>--> | 
| <!--                <div class="layui-col-xs6 layui-col-sm3">--> | 
| <!--                    <div class="console-app-group" ew-href="user/user.html?resourceId=4" lay-text="系统用户">--> | 
| <!--                        <i class="console-app-icon layui-icon layui-icon-group" style="font-size: 26px;padding-top: 3px;margin-right: 6px;"></i>--> | 
| <!--                        <div class="console-app-name">用户</div>--> | 
| <!--                    </div>--> | 
| <!--                </div>--> | 
| <!--                <div class="layui-col-xs6 layui-col-sm3">--> | 
| <!--                    <div class="console-app-group" ew-href="detail.html?resourceId=8" lay-text="基本资料">--> | 
| <!--                        <i class="console-app-icon layui-icon layui-icon-slider" style="color: #ffc069;"></i>--> | 
| <!--                        <div class="console-app-name">设置</div>--> | 
| <!--                    </div>--> | 
| <!--                </div>--> | 
| <!--            </div>--> | 
| <!--        </div>--> | 
| <!--    </div>--> | 
| <!--    <!– 主体 –>--> | 
| <!--    <div class="layui-row layui-col-space15">--> | 
| <!--        <!– 地图 –>--> | 
| <!--        <div class="layui-col-md8 layui-col-sm6">--> | 
| <!--            <div class="layui-card">--> | 
| <!--<!–                <div class="layui-card-body" style="position: relative">–>--> | 
| <!--<!–                    <!– 导航 –>–>--> | 
| <!--<!–                    <div class="dropdown-menu dropdown-hover" style="position: absolute;top: 22px;left: 30px;z-index: 999">–>--> | 
| <!--<!–                        <button id="map-selector-btn" class="layui-btn icon-btn layui-btn-primary">–>--> | 
| <!--<!–                             地图监控 <i class="layui-icon layui-icon-drop"></i></button>–>--> | 
| <!--<!–                        <ul class="dropdown-menu-nav">–>--> | 
| <!--<!–                            <div class="dropdown-anchor"></div>–>--> | 
| <!--<!–                            <li ew-href="sensor/loca.html?resourceId=30601"><a><i class="layui-icon layui-icon-align-center"></i>斑马线地图</a></li>–>--> | 
| <!--<!–                            <li ew-href="sensor/loca.html?resourceId=30603"><a><i class="layui-icon layui-icon-circle"></i>井盖地图</a></li>–>--> | 
| <!--<!–                            <li ew-href="sensor/loca.html?resourceId=30605"><a><i class="layui-icon layui-icon-table"></i>护栏地图</a></li>–>--> | 
| <!--<!–                            <li ew-href="sensor/loca.html?resourceId=30607"><a><i class="layui-icon layui-icon-fire"></i>消防地图</a></li>–>--> | 
| <!--<!–                            <li ew-href="sensor/loca.html?resourceId=30609"><a><i class="layui-icon layui-icon-transfer"></i>气体地图</a></li>–>--> | 
| <!--<!–                        </ul>–>--> | 
| <!--<!–                    </div>–>--> | 
| <!--<!–                    <!– 重置地图 –>–>--> | 
| <!--<!–                    <button id="map-reset" class="layui-btn layui-btn-primary" style="position: absolute;top: 22px;right: 30px;z-index: 999;">–>--> | 
| <!--<!–                        <i class="layui-icon layui-icon-refresh-1" style="font-weight: bolder"></i>–>--> | 
| <!--<!–                    </button>–>--> | 
| <!--<!–                    <!– 地图 –>–>--> | 
| <!--<!–                    <div id="map" style="width: 100%;height: 600px;"></div>–>--> | 
| <!--<!–                </div>–>--> | 
| <!--            </div>--> | 
| <!--        </div>--> | 
| <!--        <!– 介绍 –>--> | 
| <!--        <div class="layui-col-md4 layui-col-sm6">--> | 
| <!--            <div class="layui-card">--> | 
| <!--                <div class="layui-card-header">版本信息</div>--> | 
| <!--                <div class="layui-card-body">--> | 
| <!--                    <table class="layui-table layui-text">--> | 
| <!--                        <colgroup>--> | 
| <!--                            <col width="90">--> | 
| <!--                            <col>--> | 
| <!--                        </colgroup>--> | 
| <!--                        <tbody>--> | 
| <!--                        <tr>--> | 
| <!--                            <td>系统简称</td>--> | 
| <!--                            <td>中扬立库运维</td>--> | 
| <!--                        </tr>--> | 
| <!--                        <tr>--> | 
| <!--                            <td>版本号</td>--> | 
| <!--                            <td>Version 1.0.0</td>--> | 
| <!--                        </tr>--> | 
| <!--                        <tr>--> | 
| <!--                            <td>优点特色</td>--> | 
| <!--                            <td>易上手 / 操作效率高 / 数据及时 / 简约</td>--> | 
| <!--                        </tr>--> | 
| <!--<!–                        <tr>–>--> | 
| <!--<!–                            <td>制作方</td>–>--> | 
| <!--<!–                            <td><a href="http://www.zoneyung.com" target="_blank">浙江中扬立库技术有限公司</a></td>–>--> | 
| <!--<!–                        </tr>–>--> | 
| <!--                        </tbody>--> | 
| <!--                    </table>--> | 
| <!--                </div>--> | 
| <!--            </div>--> | 
| <!--            <div class="layui-card">--> | 
| <!--                <div class="layui-card-header">友情链接</div>--> | 
| <!--                <div class="layui-card-body">--> | 
| <!--                    <div class="layui-carousel admin-carousel admin-news" id="workplaceNewsCarousel">--> | 
| <!--                        <div carousel-item>--> | 
| <!--                            <div>--> | 
| <!--                                <a id="toDataV" target="_blank"--> | 
| <!--                                   style="cursor: pointer; color:#fff;background-color: #009fde;background-image: linear-gradient(to right,#009fde,#00beff);">--> | 
| <!--                                    高德地图 - 坐标拾取系统</a>--> | 
| <!--                            </div>--> | 
| <!--                        </div>--> | 
|   | 
| <!--                    </div>--> | 
| <!--                </div>--> | 
| <!--            </div>--> | 
| <!--            <div class="layui-card">--> | 
| <!--<!–                <div class="layui-card-header">–>--> | 
| <!--<!–                    设备报警–>--> | 
| <!--<!–                    <button ew-href="alarm/alarm.html?resourceId=30612" lay-text="报警记录" class="layui-btn layui-btn-primary layui-btn-xs" style="float: right; margin: 11px 5px 0 0">–>--> | 
| <!--<!–                    报警记录</button>–>--> | 
| <!--<!–                </div>–>--> | 
| <!--<!–                <div class="layui-card-body" id="warnList">–>--> | 
| <!--<!–                </div>–>--> | 
| <!--            </div>--> | 
| <!--        </div>--> | 
| <!--    </div>--> | 
| <!--</div>--> | 
| <!-- js部分 --> | 
| <script src="https://webapi.amap.com/maps?v=2.0&key=24c671d7d8365d7eaff888498538452f&plugin=AMap.Scale,AMap.ToolBar"></script> | 
| <script src="https://webapi.amap.com/loca?v=2.0.0&key=24c671d7d8365d7eaff888498538452f"></script> | 
| <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> | 
| <script type="text/javascript" src="../../static/js/echarts/echarts.min.js" charset="utf-8"></script> | 
| <script type="text/javascript" src="../../static/js/echarts/echarts-gl.min.js" charset="utf-8"></script> | 
| <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> | 
| <script type="text/javascript" src="../../static/js/handlebars/handlebars-v4.5.3.js"></script> | 
| <script type="text/javascript" src="../../static/js/common.js"></script> | 
| <script> | 
|     // 图表 | 
|     // var chartDom = document.getElementById('charts'); | 
|     // var myChart = echarts.init(chartDom); | 
|     // var option; | 
|     // function getCharts() { | 
|     //     $.ajax({ | 
|     //         url: baseUrl + "/views/home/charts.json", | 
|     //         headers: {'token': localStorage.getItem('token')}, | 
|     //         method: 'GET', | 
|     //         success: function (data) { | 
|     //             var symbolSize = 3; | 
|     //             option = { | 
|     //                 title: { | 
|     //                     left: 'center', | 
|     //                     text: 'Large Area Chart' | 
|     //                 }, | 
|     //                 grid3D: {}, | 
|     //                 xAxis3D: { | 
|     //                     type: 'category' | 
|     //                 }, | 
|     //                 yAxis3D: {}, | 
|     //                 zAxis3D: {}, | 
|     //                 dataset: { | 
|     //                     dimensions: [ | 
|     //                         'Income', | 
|     //                         'Life Expectancy', | 
|     //                         'Population', | 
|     //                         'Country', | 
|     //                         { name: 'Year', type: 'ordinal' } | 
|     //                     ], | 
|     //                     source: data | 
|     //                 }, | 
|     //                 series: [ | 
|     //                     { | 
|     //                         type: 'scatter3D', | 
|     //                         symbolSize: symbolSize, | 
|     //                         encode: { | 
|     //                             x: 'Country', | 
|     //                             y: 'Life Expectancy', | 
|     //                             z: 'Income', | 
|     //                             tooltip: [0, 1, 2, 3, 4] | 
|     //                         } | 
|     //                     } | 
|     //                 ] | 
|     //             }; | 
|     //             myChart.setOption(option); | 
|     //         } | 
|     //     }); | 
|     // } | 
|     // getCharts(); | 
|     // option && myChart.setOption(option); | 
|   | 
|     // 地图 ----------------------------------------------------------------- | 
|     var map = new AMap.Map('map', { | 
|         zoom: 4.85, | 
|         pitch: 40, | 
|         viewMode: '3D', | 
|         center: [105.202202,32.699006], | 
|         // mapStyle: 'amap://styles/8108947b4fec714c52ef08aa183a2237', | 
|         // mapStyle: 'amap://styles/4fd4357cc9f7c46f0c227c9763f67a2d', | 
|         mapStyle: 'amap://styles/7f20373ddc5b2456e7095fce1dab4aba', | 
|         // mapStyle: 'amap://styles/dd57f58da78602dc3871efc29b2ba43d', | 
|     }); | 
|   | 
|     var loca = new Loca.Container({ | 
|         map, | 
|     }); | 
|   | 
|     var geo; | 
|     var iconLayer = new Loca.IconLayer({ | 
|         zIndex: 10, | 
|         opacity: 1, | 
|     }); | 
|     function getMapData() { | 
|         $.ajax({ | 
|             url: baseUrl + "/sensor/map/auth", | 
|             headers: {'token': localStorage.getItem('token')}, | 
|             method: 'GET', | 
|             success: function (res) { | 
|                 if (res.code === 200) { | 
|                     geo = new Loca.GeoJSONSource({ | 
|                         data: res.data, | 
|                     }); | 
|                     iconLayer.setSource(geo); | 
|                     iconLayer.setStyle({ | 
|                         unit: 'px', | 
|                         icon: (index, feature) => { | 
|                             let data = feature.properties.rawData; | 
|                             return trafficIcons[data.type % Object.keys(trafficIcons).length]; | 
|                         }, | 
|                         iconSize: [20,20], | 
|                         rotation: 0, | 
|                     }) | 
|                     loca.add(iconLayer); | 
|                 } else if (res.code === 403) { | 
|                     top.location.href = baseUrl + "/"; | 
|                 } else { | 
|                     layer.msg(res.msg, {icon: 2}) | 
|                 } | 
|             } | 
|         }) | 
|     } | 
|     getMapData(); | 
|   | 
|   | 
|     // 拾取 | 
|     map.on('click', (e) => { | 
|         const feat = iconLayer.queryFeature(e.pixel.toArray()); | 
|         if (feat) { | 
|             map.setZoomAndCenter(19, new AMap.LngLat(feat.properties.rawData.lng, feat.properties.rawData.lat)); | 
|             iconLayer.setStyle({ | 
|                 unit: 'px', | 
|                 icon: (index, feature) => { | 
|                     let data = feature.properties.rawData; | 
|                     return trafficIcons[data.type % Object.keys(trafficIcons).length]; | 
|                 }, | 
|                 iconSize: (i, feature) => { | 
|                     if (feature === feat) { | 
|                         return [40, 40]; | 
|                     } | 
|                     return [20, 20]; | 
|                 }, | 
|             }); | 
|             top.sensorByMap = feat.properties.rawData.sensorId; | 
|             layer.open({ | 
|                 type: 2 | 
|                 ,id: 'LAY_adminPopupR' | 
|                 ,area: '700px' | 
|                 // ,url: 'sensor_detl.html' | 
|                 ,anim: -1 | 
|                 ,title: false | 
|                 ,closeBtn: false | 
|                 ,offset: 'r' | 
|                 ,shade: 0.1 | 
|                 ,shadeClose: true | 
|                 ,window: 'top' | 
|                 ,skin: 'layui-anim layui-anim-rl layui-layer-adminRight0' | 
|                 ,content: '../sensor_detl.html' | 
|             }); | 
|         } | 
|     }); | 
|   | 
|     // -------------------------------------- | 
|   | 
|     // https://www.highcharts.com.cn/demo/highcharts/3d-area-multiple | 
|     // https://echarts.apache.org/examples/zh/editor.html?c=scatter3D-dataset&gl=1&version=5.2.1 | 
|     layui.config({ | 
|         base: baseUrl + "/static/layui/lay/modules/" | 
|     }).extend({ | 
|         dropdown: 'dropdown/dropdown' | 
|     }).use(['layer', 'carousel', 'element', 'admin', 'dropdown'], function () { | 
|         var element = layui.element; | 
|         var $ = layui.jquery; | 
|         var layer = layui.layer; | 
|         var carousel = layui.carousel; | 
|         var device = layui.device(); | 
|         var admin = layui.admin; | 
|   | 
|         // 数据中心 | 
|         $('#toDataV').click(function () { | 
|             window.open("https://lbs.amap.com/tools/picker"); | 
|         }) | 
|   | 
|         getHeaderData(); | 
|         getBodyData(); | 
|   | 
|         setInterval(function () { | 
|             getHeaderData(); | 
|             getBodyData(); | 
|         }, 3000) | 
|   | 
|         // 渲染轮播 | 
|         carousel.render({ | 
|             elem: '#workplaceNewsCarousel', | 
|             width: '100%', | 
|             height: '70px', | 
|             arrow: 'none', | 
|             autoplay: true, | 
|             trigger: device.ios || device.android ? 'click' : 'hover', | 
|             anim: 'fade' | 
|         }); | 
|   | 
|         // 头部 | 
|         function getHeaderData() { | 
|             $.ajax({ | 
|                 url: baseUrl + "/console/header/auth", | 
|                 headers: {'token': localStorage.getItem('token')}, | 
|                 method: 'GET', | 
|                 success: function (res) { | 
|                     if (res.code === 200) { | 
|                         var result = res.data; | 
|                         $('#logQtyDay').text(result.logQtyDay); | 
|                         $('#logQty').text(result.logQty); | 
|   | 
|                         $('#sensorQty').text(result.sensorQty); | 
|                         $('#sensorOnlineQty').text(result.sensorOnlineQty); | 
|   | 
|                         $('#commandQty').text(result.commandQty); | 
|                         $('#commandQtyMonth').text(result.commandQtyMonth); | 
|   | 
|                         $('#usersQty').text(result.usersQty); | 
|                         $('#deptQty').text(result.deptQty); | 
|                         $('#optQty').text(result.optQty); | 
|                     } else if (res.code === 403) { | 
|                         top.location.href = baseUrl + "/"; | 
|                     } else { | 
|                         layer.msg(res.msg, {icon: 2}) | 
|                     } | 
|                 } | 
|             }) | 
|         } | 
|   | 
|         // 主体 | 
|         function getBodyData() { | 
|             $.ajax({ | 
|                 url: baseUrl + "/console/body/auth", | 
|                 headers: {'token': localStorage.getItem('token')}, | 
|                 method: 'GET', | 
|                 success: function (res) { | 
|                     if (res.code === 200) { | 
|                         // 安全库存 | 
|                         var tpl = $('#safeQuaTpl').html(); | 
|                         var template = Handlebars.compile(tpl); | 
|                         var html = template(res.data); | 
|                         $('#warnList').html(html); | 
|                     } else if (res.code === 403) { | 
|                         top.location.href = baseUrl + "/"; | 
|                     } else { | 
|                         layer.msg(res.msg, {icon: 2}) | 
|                     } | 
|                 } | 
|             }) | 
|         } | 
|   | 
|     }); | 
|   | 
|     // 地图重置 | 
|     document.getElementById("map-reset").addEventListener("click", function () { | 
|         map.setZoomAndCenter(4.85, new AMap.LngLat(105.202202, 32.699006)); | 
|         map.setRotation(0); | 
|         map.setPitch(40); | 
|         iconLayer.setStyle({ | 
|             unit: 'px', | 
|             icon: (index, feature) => { | 
|                 let data = feature.properties.rawData; | 
|                 return trafficIcons[data.type % Object.keys(trafficIcons).length]; | 
|             }, | 
|             iconSize: [20,20], | 
|             rotation: 0, | 
|         }) | 
|     }) | 
|   | 
| </script> | 
| <script type="text/template" id="safeQuaTpl"> | 
|     {{#each warnList}} | 
|         <div class="console-user-group"> | 
|             <div class="console-user-group-head">{{no}}</div> | 
|             <div class="console-user-group-name">{{sensorType}}</div> | 
|             <div class="console-user-group-desc">{{UUID}}</div> | 
|             <span class="layui-badge layui-badge-red" style="letter-spacing: 1px">报警:{{msg}}</span> | 
|         </div> | 
|     {{/each}} | 
| </script> | 
| </body> | 
| </html> |