listDetail.vue 9.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354
  1. <template>
  2. <div id="pages">
  3. <mu-appbar style="width: 100%;" color="primary" :title="$t('detail')">
  4. <span @click="$router.back(-1)" slot="left">
  5. <mu-icon value="arrow_back"></mu-icon>
  6. </span>
  7. </mu-appbar>
  8. <div class="container listContainer">
  9. <div class="row ">
  10. <ul class="deteUl" v-if="selected == 1">
  11. <li v-if="!lists.length">
  12. <h4>{{$t("no use data")}}</h4>
  13. </li>
  14. <li v-for="list in lists" v-if="lists">
  15. <div class="rowTop"><h5>{{list.Name}}</h5>
  16. <span v-if="list.DangerLevel == -1" class="green">{{$t("other")}}</span>
  17. <span v-if="list.DangerLevel == 0" class="green">{{$t("white")}}</span>
  18. <span v-if="list.DangerLevel == 2" class="yellow">{{$t("deal")}}</span>
  19. <span v-if="list.DangerLevel == 3" class="red">{{$t("warning")}}</span>
  20. <span v-if="list.DangerLevel == 4" class="red">{{$t("danger")}}</span>
  21. </div>
  22. <div class="rowDetail">
  23. <span>{{list.MacCom.length > 16 ? list.MacCom.slice(0, 16)+'...':list.MacCom}}</span>
  24. <s>{{list.Mac}}</s>
  25. </div>
  26. <div class="rowBottom">
  27. {{list.Memo}}
  28. </div>
  29. </li>
  30. <s class="tips" v-if="lists"> {{$t("total")}} {{lists.length}} {{$t("pcs")}} {{$t("wireless device")}}</s>
  31. </ul>
  32. <ul class="phoneUl" v-if="selected == 2">
  33. <li v-if="!phones">
  34. <h4>{{$t("no use data")}}</h4>
  35. </li>
  36. <li v-for="phone in phones" v-if="phones">
  37. <div class="peTop">
  38. {{phone.DetectorName}} <span>{{phone.RegionName}}</span>
  39. </div>
  40. <div class="peMemo">
  41. {{phone.Signalstr == ''?$t('No mobile signal detected'):phone.Signalstr}}
  42. </div>
  43. </li>
  44. <s class="tips" v-if="phones"> {{$t("total")}}{{phones.length}} {{$t("pcs")}} {{$t("Detection")}}</s>
  45. </ul>
  46. </div>
  47. </div>
  48. </div>
  49. </template>
  50. <script>
  51. import axios from 'axios';
  52. let qs = require('qs');
  53. import Global from '../Global.js'
  54. export default {
  55. data() {
  56. return {
  57. selected: "1",
  58. location: {
  59. ComName: this.$route.query.comName,
  60. Region: this.$route.query.Region,
  61. },
  62. RegionList: [],
  63. unite: {
  64. ComName: '',
  65. Legal: '',
  66. Introduction: '',
  67. },
  68. lists: [],
  69. phones: [],
  70. }
  71. },
  72. mounted() {
  73. this.readList();
  74. },
  75. methods: {
  76. // 读取无线设备具体分布
  77. readList() {
  78. const that = this;
  79. let url = headapi + 'v1/Company/RegionDetectDeviceDetailList';
  80. let param = {
  81. token: localStorage.token,
  82. regionId: this.$route.query.RegionId
  83. };
  84. let postdata = qs.stringify(param);
  85. axios.post(url, postdata).then(function (data) {
  86. let json = data.data;
  87. if (json.Code == 0) {
  88. that.lists = json.Rs;
  89. } else {
  90. this.Toast(that.TransMemo(json.Memo));
  91. }
  92. }, function (response) {
  93. console.info(response);
  94. })
  95. },
  96. goListDetail(list) {
  97. this.$router.push({path: '/list', query: {RegionId: list.RegionId}});
  98. },
  99. readPhone() {
  100. const that = this;
  101. let url = headapi + 'v1/Detector/SignalDeviceByregion';
  102. let param = {
  103. token: localStorage.token,
  104. regionid: this.$route.query.RegionId
  105. };
  106. let postdata = qs.stringify(param);
  107. axios.post(url, postdata).then(function (data) {
  108. let json = data.data;
  109. if (json.Code == 0) {
  110. that.phones = json.Rs;
  111. } else {
  112. this.Toast(that.TransMemo(json.Memo));
  113. }
  114. }, function (response) {
  115. console.info(response);
  116. })
  117. }
  118. },
  119. }
  120. </script>
  121. <style scoped>
  122. /*mu-header*/
  123. .mu-primary-color {
  124. line-height: 60px;
  125. height: 60px;
  126. background: url("../static/images/comm/headerBg.png") top center no-repeat;
  127. background-size: 100%;
  128. }
  129. /deep/ .mu-appbar-left {
  130. padding-top: 15px;
  131. }
  132. /deep/ .material-icons {
  133. color: #fff;
  134. }
  135. /deep/ .mu-appbar-title {
  136. text-align: center;
  137. }
  138. #pages {
  139. width: 100%;
  140. overflow: hidden;
  141. overflow-y: scroll;
  142. display: block;
  143. margin: 0 auto;
  144. height: 100%;
  145. position: absolute;
  146. top: 0;
  147. bottom: 0;
  148. background: #f2f2f2;
  149. padding-bottom: 20px;
  150. }
  151. .detail {
  152. width: 100%;
  153. overflow: hidden;
  154. display: block;
  155. margin: 0 auto;
  156. padding-top: 0px;
  157. padding-bottom: 20px;
  158. padding-left: 2%;
  159. padding-right: 2%;
  160. margin-bottom: 10px;
  161. background: #fff;
  162. }
  163. .detail ul {
  164. width: 100%;
  165. overflow: hidden;
  166. display: block;
  167. margin: 0 auto;
  168. padding-left: 2%;
  169. padding-right: 2%;
  170. }
  171. .detail h5 span {
  172. font-size: 16px;
  173. }
  174. .detail h5 em {
  175. float: right;
  176. color: #666666;
  177. font-size: 12px;
  178. font-weight: normal;
  179. text-align: right;
  180. }
  181. .detail p {
  182. width: 100%;
  183. overflow: hidden;
  184. display: block;
  185. margin: 0 auto;
  186. font-size: 12px;
  187. color: #666666;
  188. line-height: 16px;
  189. }
  190. /deep/ .mint-navbar .mint-tab-item.is-selected {
  191. border-bottom: 3px solid #FFA200;
  192. color: #FFA200;
  193. }
  194. /deep/ .mint-navbar .mint-tab-item.is-selected .mint-tab-item-label {
  195. color: #FFA200;
  196. }
  197. .listContainer ul {
  198. width: 100%;
  199. overflow: hidden;
  200. display: block;
  201. margin: 0 auto;
  202. }
  203. .listContainer li {
  204. width: 100%;
  205. overflow: hidden;
  206. display: block;
  207. margin: 0 auto;
  208. margin-bottom: 2px;
  209. padding: 10px 20px;
  210. background: #fff;
  211. }
  212. .listContainer .rowTop {
  213. width: 100%;
  214. overflow: hidden;
  215. display: block;
  216. margin: 0 auto;
  217. }
  218. .rowTop .red {
  219. color: #FFA200;
  220. }
  221. .listContainer h5 {
  222. margin: 0;
  223. float: left;
  224. font-size: 16px;
  225. }
  226. .listContainer .rowTop span {
  227. float: right;
  228. font-size: 14px;
  229. }
  230. .listContainer .rowDetail {
  231. width: 100%;
  232. overflow: hidden;
  233. display: block;
  234. margin: 0 auto;
  235. color: #999999;
  236. font-size: 14px;
  237. margin-top: 10px;
  238. margin-bottom: 10px;
  239. }
  240. .rowDetail span {
  241. float: left;
  242. }
  243. .rowDetail s {
  244. float: right;
  245. }
  246. .rowBottom {
  247. width: 100%;
  248. overflow: hidden;
  249. display: block;
  250. margin: 0 auto;
  251. font-size: 12px;
  252. color: #999999;
  253. }
  254. .location {
  255. width: 100%;
  256. overflow: hidden;
  257. display: block;
  258. margin: 0 auto;
  259. padding: 11px 4%;
  260. font-size: 12px;
  261. color: #999999;
  262. }
  263. .tips {
  264. width: 100%;
  265. overflow: hidden;
  266. display: block;
  267. margin: 0 auto;
  268. text-align: center;
  269. font-size: 12px;
  270. color: #999999;
  271. margin-top: 10px;
  272. }
  273. .phoneUl {
  274. width: 100%;
  275. overflow: hidden;
  276. display: block;
  277. margin: 0 auto;
  278. }
  279. .phoneUl li {
  280. width: 100%;
  281. overflow: hidden;
  282. display: block;
  283. margin: 0 auto;
  284. margin-bottom: 2px;
  285. padding: 10px 20px;
  286. background: #fff;
  287. }
  288. .phoneUl .peTop {
  289. width: 100%;
  290. overflow: hidden;
  291. display: block;
  292. margin: 0 auto;
  293. font-size: 16px;
  294. margin-bottom: 10px;
  295. }
  296. .peTop span {
  297. float: right;
  298. text-align: right;
  299. font-size: 14px;
  300. }
  301. .peMemo {
  302. width: 100%;
  303. overflow: hidden;
  304. display: block;
  305. margin: 0 auto;
  306. font-size: 14px;
  307. color: #999999;
  308. }
  309. .deteUl {
  310. width: 100%;
  311. overflow: hidden;
  312. display: block;
  313. margin: 0 auto;
  314. }
  315. .deteUl li h4 {
  316. width: 100%;
  317. overflow: hidden;
  318. display: block;
  319. margin: 0 auto;
  320. text-align: center;
  321. font-weight: normal;
  322. line-height: 30px;
  323. }
  324. </style>