123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160 |
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta name="renderer" content="webkit">
- <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
- <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
- <meta http-equiv="pragma" content="no-cache">
- <meta http-equiv="Cache" content="no-cache">
- <meta http-equiv="cache-control" content="no-cache, must-revalidate">
- <meta http-equiv="expires" content="0">
- <meta name="viewport"
- content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
- <title>实时位置</title>
- <link rel="stylesheet" href="../css/index.css">
- <link rel="stylesheet" href="../css/style.css">
- <link rel="stylesheet" href="../css/iconfont.css">
- <script src="https://webapi.amap.com/maps?v=1.4.11&key=3705e0f15b2b36d6902e9ebdf24a93d8"></script>
- <script src="//webapi.amap.com/ui/1.1/main.js?v=1.1.1"></script>
- <script src="../js/vue.min.js"></script>
- <script src="../js/index.js"></script>
- <script src="../js/jquery.min.js"></script>
- <script src="../js/pako.js"></script>
- <script type="text/javascript">
- document.write('<script src="../assets/init.js?id='+(new Date().getTime())+'" type="text/javascript" charset="utf-8"><\/script>');
- document.write('<script src="../assets/ajax.js?id='+(new Date().getTime())+'" type="text/javascript" charset="utf-8"><\/script>');
- </script>
- <script>
- checkLogin();
-
- </script>
- <style type="text/css">
- .yz_main{
- width: calc(100% - 160px);
- height: 100%;
- float: right;
- padding: 10px;
- }
- .yz_aside{
- width: 160px;
- height: 100%;
- float: left;
- color: #fff;
- background-color: #06162d;
- }
- .warmli li{
- cursor: pointer;
- display: flex;
- align-items: center;
- list-style: none;
- font-size: 14px;
- color: #fff;
- padding:6px 10px;
- }
- .warmli li .iconfont{
- color: #227dd3;
- font-size: 1.2rem;
- margin-right: 4px;
- }
- .warmli li .act{
- color: #227dd3;
- }
- .mapCont {
- position: absolute;
- left:0.5em;
- top:310px;
- width: 200px;
- font-size: 14px;
- border-radius: 2px;
- background-color: #fff;
- -webkit-filter: drop-shadow(0 3px 2px rgba(0, 0, 0, 0.5));
- filter: drop-shadow(0 3px 2px rgba(0, 0, 0, 0.5));
- padding: 10px;
- }
- .mapCont>div{
- display: flex;
- align-items: flex-start;
- color: #474747;
- margin-bottom: 6px;
- }
- .mapCont>div>div:first-child {
- color: #0068ff;
- width: 64px;
- }
- .mapCont>div>div:last-child {
- width:calc(100% - 44px);
- }
- </style>
- </head>
- <body>
- <div id="app" style="height:100vh;overflow: auto;">
- <div class="yz_aside warmli">
- <div class="padding-sm text-bold" style="color: #5793f3;">设备列表</div>
- <ul style="height: calc(100% - 52px);overflow: auto;">
- <li v-for="(it,ind) in shipLi" :key="ind" @click="changTab(it.sn)">
- <div class="iconfont icon-chuanbo"></div>
- <div :class="it.sn == nowTab.sn?'act':''">{{it.dev_name}}</div>
- </li>
- </ul>
- </div>
- <div class="yz_main" style="padding: 0;position: relative;">
- <div id="areaMap" style="width: 100%;height: 100%;"></div>
- <div style="position: absolute;left:0.5em;top: 0.5em;">
- <el-card class="box-card" :body-style="{ width:'280px',padding: '0px !important' }">
- <div class="bg-blue padding-sm">
- <span>{{nowTab.dev_name}}</span>
- </div>
- <div class="padding-sm">
- <div class="item flex align-center">
- <div style="width:50px;font-size: 28px;cursor: pointer;">
- <i v-if="animating == 0" class="el-icon-video-play" @click="startMove"></i>
- <i v-else-if="animating == 1" class="iconfont icon-arrow-" style="font-size: 26px;" @click="continueMove"></i>
- <i v-else class="el-icon-video-pause" @click="stopMove"></i>
- </div>
- <div style="width:calc(100% - 50px);"><el-slider v-model="lengSli" :max="dataMax" :min="0"></el-slider></div>
- </div>
- <div class="item flex align-center margin-tb-sm">
- <div style="width:50px;">速度:</div>
- <div style="width:calc(100% - 50px);">
- <el-slider v-model="speedSli" :max="10" :min="0" @change="changeSpeed"></el-slider>
- </div>
- </div>
- <div class="item flex align-center">
- <div style="width:50px;">开始:</div>
- <el-date-picker
- v-model="startDay"
- type="datetime"
- placeholder="选择日期时间">
- </el-date-picker>
- </div>
- <div class="item flex align-center margin-tb-sm">
- <div style="width:50px;">结束:</div>
- <el-date-picker
- v-model="endDay"
- type="datetime"
- placeholder="选择日期时间">
- </el-date-picker>
- </div>
- <div class="item" style="padding-left: 50px;">
- <el-button size="small" style="width: 100%;" type="primary" @click="getAjaxHisMap">查询</el-button>
- </div>
- </div>
- </el-card>
- </div>
- <div class="mapCont" v-if="nowHis.speed">
- <div><div>经度:</div><div>{{ duToGpsDM(nowHis["lon"],'E')}}</div></div>
- <div><div>经度:</div><div>{{duToGpsDM(nowHis["lat"],'N')}}</div></div>
- <div><div>航速:</div><div>{{nowHis["speed"]}} kn/h</div></div>
- <div><div>船艏向:</div><div>{{nowHis["hdg"]}} °</div></div>
- <div><div>航迹向:</div><div>{{nowHis["cog"]}} °</div></div>
- <div><div>时间:</div><div>{{nowHis["stime"]}}</div></div>
- </div>
- </div>
- </div>
- <script type="text/javascript">
- document.write('<script src="../assets/shipHisMap.js?id='+(new Date().getTime())+'" type="text/javascript" charset="utf-8"><\/script>');
- </script>
- </body>
- </html>
|