P03.html 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta name="renderer" content="webkit">
  5. <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
  6. <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
  7. <meta http-equiv="pragma" content="no-cache">
  8. <meta http-equiv="Cache" content="no-cache">
  9. <meta http-equiv="cache-control" content="no-cache, must-revalidate">
  10. <meta http-equiv="expires" content="0">
  11. <meta name="viewport"
  12. content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
  13. <title>实时位置</title>
  14. <link rel="stylesheet" href="../css/index.css">
  15. <link rel="stylesheet" href="../css/style.css">
  16. <link rel="stylesheet" href="../css/iconfont.css">
  17. <script src="https://webapi.amap.com/maps?v=1.4.11&key=3705e0f15b2b36d6902e9ebdf24a93d8"></script>
  18. <script src="//webapi.amap.com/ui/1.1/main.js?v=1.1.1"></script>
  19. <script src="../js/vue.min.js"></script>
  20. <script src="../js/index.js"></script>
  21. <script src="../js/jquery.min.js"></script>
  22. <script src="../js/pako.js"></script>
  23. <script type="text/javascript">
  24. document.write('<script src="../assets/init.js?id='+(new Date().getTime())+'" type="text/javascript" charset="utf-8"><\/script>');
  25. document.write('<script src="../assets/ajax.js?id='+(new Date().getTime())+'" type="text/javascript" charset="utf-8"><\/script>');
  26. </script>
  27. <script>
  28. checkLogin();
  29. </script>
  30. <style type="text/css">
  31. .yz_main{
  32. width: calc(100% - 160px);
  33. height: 100%;
  34. float: right;
  35. padding: 10px;
  36. }
  37. .yz_aside{
  38. width: 160px;
  39. height: 100%;
  40. float: left;
  41. color: #fff;
  42. background-color: #06162d;
  43. }
  44. .warmli li{
  45. cursor: pointer;
  46. display: flex;
  47. align-items: center;
  48. list-style: none;
  49. font-size: 14px;
  50. color: #fff;
  51. padding:6px 10px;
  52. }
  53. .warmli li .iconfont{
  54. color: #227dd3;
  55. font-size: 1.2rem;
  56. margin-right: 4px;
  57. }
  58. .warmli li .act{
  59. color: #227dd3;
  60. }
  61. .mapCont {
  62. position: absolute;
  63. left:0.5em;
  64. top:310px;
  65. width: 200px;
  66. font-size: 14px;
  67. border-radius: 2px;
  68. background-color: #fff;
  69. -webkit-filter: drop-shadow(0 3px 2px rgba(0, 0, 0, 0.5));
  70. filter: drop-shadow(0 3px 2px rgba(0, 0, 0, 0.5));
  71. padding: 10px;
  72. }
  73. .mapCont>div{
  74. display: flex;
  75. align-items: flex-start;
  76. color: #474747;
  77. margin-bottom: 6px;
  78. }
  79. .mapCont>div>div:first-child {
  80. color: #0068ff;
  81. width: 64px;
  82. }
  83. .mapCont>div>div:last-child {
  84. width:calc(100% - 44px);
  85. }
  86. </style>
  87. </head>
  88. <body>
  89. <div id="app" style="height:100vh;overflow: auto;">
  90. <div class="yz_aside warmli">
  91. <div class="padding-sm text-bold" style="color: #5793f3;">设备列表</div>
  92. <ul style="height: calc(100% - 52px);overflow: auto;">
  93. <li v-for="(it,ind) in shipLi" :key="ind" @click="changTab(it.sn)">
  94. <div class="iconfont icon-chuanbo"></div>
  95. <div :class="it.sn == nowTab.sn?'act':''">{{it.dev_name}}</div>
  96. </li>
  97. </ul>
  98. </div>
  99. <div class="yz_main" style="padding: 0;position: relative;">
  100. <div id="areaMap" style="width: 100%;height: 100%;"></div>
  101. <div style="position: absolute;left:0.5em;top: 0.5em;">
  102. <el-card class="box-card" :body-style="{ width:'280px',padding: '0px !important' }">
  103. <div class="bg-blue padding-sm">
  104. <span>{{nowTab.dev_name}}</span>
  105. </div>
  106. <div class="padding-sm">
  107. <div class="item flex align-center">
  108. <div style="width:50px;font-size: 28px;cursor: pointer;">
  109. <i v-if="animating == 0" class="el-icon-video-play" @click="startMove"></i>
  110. <i v-else-if="animating == 1" class="iconfont icon-arrow-" style="font-size: 26px;" @click="continueMove"></i>
  111. <i v-else class="el-icon-video-pause" @click="stopMove"></i>
  112. </div>
  113. <div style="width:calc(100% - 50px);"><el-slider v-model="lengSli" :max="dataMax" :min="0"></el-slider></div>
  114. </div>
  115. <div class="item flex align-center margin-tb-sm">
  116. <div style="width:50px;">速度:</div>
  117. <div style="width:calc(100% - 50px);">
  118. <el-slider v-model="speedSli" :max="10" :min="0" @change="changeSpeed"></el-slider>
  119. </div>
  120. </div>
  121. <div class="item flex align-center">
  122. <div style="width:50px;">开始:</div>
  123. <el-date-picker
  124. v-model="startDay"
  125. type="datetime"
  126. placeholder="选择日期时间">
  127. </el-date-picker>
  128. </div>
  129. <div class="item flex align-center margin-tb-sm">
  130. <div style="width:50px;">结束:</div>
  131. <el-date-picker
  132. v-model="endDay"
  133. type="datetime"
  134. placeholder="选择日期时间">
  135. </el-date-picker>
  136. </div>
  137. <div class="item" style="padding-left: 50px;">
  138. <el-button size="small" style="width: 100%;" type="primary" @click="getAjaxHisMap">查询</el-button>
  139. </div>
  140. </div>
  141. </el-card>
  142. </div>
  143. <div class="mapCont" v-if="nowHis.speed">
  144. <div><div>经度:</div><div>{{ duToGpsDM(nowHis["lon"],'E')}}</div></div>
  145. <div><div>经度:</div><div>{{duToGpsDM(nowHis["lat"],'N')}}</div></div>
  146. <div><div>航速:</div><div>{{nowHis["speed"]}} kn/h</div></div>
  147. <div><div>船艏向:</div><div>{{nowHis["hdg"]}} °</div></div>
  148. <div><div>航迹向:</div><div>{{nowHis["cog"]}} °</div></div>
  149. <div><div>时间:</div><div>{{nowHis["stime"]}}</div></div>
  150. </div>
  151. </div>
  152. </div>
  153. <script type="text/javascript">
  154. document.write('<script src="../assets/shipHisMap.js?id='+(new Date().getTime())+'" type="text/javascript" charset="utf-8"><\/script>');
  155. </script>
  156. </body>
  157. </html>