1. <!DOCTYPE html>
    2. <html>
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>Title</title>
    6. <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    7. <meta
    8. name="viewport"
    9. content="width=device-width, initial-scale=1, maximum-scale=1"
    10. />
    11. <script src="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script>
    12. <link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/css/bootstrap.min.css">
    13. <meta http-equiv="X-UA-Compatible" content="IE=Edge"/>
    14. <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.js"></script>
    15. <style>
    16. #map {
    17. background-color: rgba(8, 14, 17, 0.1);
    18. position: absolute;
    19. width: 36vw;
    20. height: 48vw;
    21. float: left;
    22. margin-left: 26vw;
    23. z-index: 10;
    24. }
    25. img {
    26. position: relative;
    27. width: 36vw;
    28. height: 48vw;
    29. margin-left: 26vw;
    30. z-index: 1;
    31. }
    32. #style {
    33. background-color: cyan;
    34. width: 8vw;
    35. height: 26vh;
    36. position: relative;
    37. margin-left: 37vw;
    38. margin-top: 0;
    39. }
    40. .car {
    41. width: 1vw;
    42. height: 1vw;
    43. position: absolute;
    44. float: left;
    45. margin: 0;
    46. }
    47. .car01 {
    48. width: 2vh;
    49. height: 2vh;
    50. float: left;
    51. }
    52. .text {
    53. width: 9vh;
    54. height: 2vh;
    55. margin: 3vh 0;
    56. }
    57. .text01 {
    58. float: left;
    59. text-align: center;
    60. font-size: 1.5vh;
    61. }
    62. #text001 {
    63. margin-top: 0;
    64. padding-top: 2vh;
    65. }
    66. #car1 {
    67. background-color: red;
    68. }
    69. #car2 {
    70. background-color: orange;
    71. }
    72. #car3 {
    73. background-color: yellow;
    74. }
    75. #car4 {
    76. background-color: green;
    77. }
    78. #car5 {
    79. background-color: blue;
    80. }
    81. #car01 {
    82. background-color: red;
    83. }
    84. #car02 {
    85. background-color: orange;
    86. }
    87. #car03 {
    88. background-color: yellow;
    89. }
    90. #car04 {
    91. background-color: green;
    92. }
    93. #car05 {
    94. background-color: blue;
    95. }
    96. </style>
    97. </head>
    98. <body>
    99. <div id="map">
    100. <div id="car1" class="car"></div>
    101. <div id="car2" class="car"></div>
    102. <div id="car3" class="car"></div>
    103. <div id="car4" class="car"></div>
    104. <div id="car5" class="car"></div>
    105. <div id="car6" class="car" style="background-color: #001529;"></div>
    106. <div id="style">
    107. <div class="text" id="text001">
    108. <div id="car01" class="car01"></div>
    109. <div class="text01"><b> : 待机</b></div>
    110. </div>
    111. <div class="text">
    112. <div id="car02" class="car01"></div>
    113. <div class="text01"><b> : 待机</b></div>
    114. </div>
    115. <div class="text">
    116. <div id="car03" class="car01"></div>
    117. <div class="text01"><b> : 待机</b></div>
    118. </div>
    119. <div class="text">
    120. <div id="car04" class="car01"></div>
    121. <div class="text01"><b> : 待机</b></div>
    122. </div>
    123. <div class="text">
    124. <div id="car05" class="car01"></div>
    125. <div class="text01"><b> : 待机</b></div>
    126. </div>
    127. </div>
    128. </div>
    129. <img src="./img/321.png" alt="">
    130. <button type="button" id="quite" class="btn btn-primary btn-lg ">踢出所有小车和客户端</button>
    131. <script type="text/javascript">
    132. $('#quite').click(()=>{
    133. $.get({
    134. url:"/quite"
    135. })
    136. });
    137. let fx = (x) =>{
    138. let k = 6/500;
    139. let b = 15.2- (1300* (6/500));
    140. return k*x + b;
    141. }
    142. let cx = 800.0 / 9.3 ;
    143. let cy = 900.0 / 10.5;
    144. // $('#car6').css({
    145. // "background-color" : "yellow",
    146. // "left" : fx(1300) + "vw",
    147. // "bottom" : fx(3300) + "vw"
    148. // })
    149. let renderView = (data) => {
    150. console.log(data)
    151. let x = [0, 0, 0, 0, 0];
    152. let y = [0, 0, 0, 0, 0];
    153. let i = 0;
    154. for (let e in data) {
    155. x[i] = data[e][0].x;
    156. y[i] = data[e][0].y;
    157. //console.log(x[i])
    158. $('.text01 > b').eq(i).html(" : " + data[e][0].id)
    159. i = i + 1;
    160. $('#car' + i).css (
    161. {
    162. "left" : fx(x[i-1])+ "vw",
    163. "bottom" : fx(y[i-1])+ "vw"
    164. }
    165. ) ;
    166. // document.getElementById("car" + i).style.margin = (47 - y[i - 1] * 0.012) + "vw " + "0 " + "0 " + x[i - 1] * 0.012 + "vw";
    167. }
    168. }
    169. let req = () => {
    170. let handlee = (ejson) => {
    171. let ans = {};
    172. for (let e in ejson) {
    173. //console.log(ejson[e].id)
    174. if (!(ejson[e].id in ans)) {
    175. ans[ejson[e].id] = [];
    176. }
    177. ans[ejson[e].id].push(ejson[e]);
    178. }
    179. return ans;
    180. }
    181. $.ajax({
    182. type: "post",
    183. url: "/getAll",
    184. contentType: 'application/json',
    185. async: false,
    186. success: function (msg, stuage, jqxmp) {
    187. //console.log(msg);
    188. renderView(handlee(msg));
    189. },
    190. error: function (XMLHttpRequest, textStatus, errorThrown) {
    191. clearInterval(task)
    192. //alert("上传失败");
    193. }
    194. });
    195. }
    196. //();
    197. let task = setInterval(() => {
    198. req();
    199. }, 2000);
    200. </script>
    201. </body>
    202. </html>