index.vue 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597
  1. <template>
  2. <view class="home">
  3. <view class="home_header">
  4. <view class="header_message">
  5. <image src="../../static/jnImage/indexPage/message.png"></image>
  6. </view>
  7. <view class="header_title">
  8. <image src="../../static/jnImage/loginPage/logo.png" mode=""></image>
  9. <text class="titleName">晋能新能源蒙东分公司</text>
  10. </view>
  11. <view class="header_more">
  12. <image src="../../static/jnImage/indexPage/more.png"></image>
  13. </view>
  14. </view>
  15. <view class="home_main">
  16. <view class="main_time">
  17. <view class="mesTime">
  18. <image src="../../static/jnImage/indexPage/time.png"></image>
  19. <text>2023年11月20日</text>
  20. <text>星期一</text>
  21. <text>09:19</text>
  22. </view>
  23. <view class="mesAll">
  24. <view class="mesEx" v-for="(item,index) in mesExData" :key="index">
  25. <view class="mesEx_left">
  26. <text class="mesEx_left_top">
  27. <text class="nameSty">{{item.leftName}}</text>
  28. </text>
  29. <view class=" mesEx_left_end">
  30. <text>{{item.leftValue}}</text>
  31. <text>{{item.leftCode}}</text>
  32. </view>
  33. </view>
  34. <view class="mesEx_left">
  35. <text class="mesEx_left_top">
  36. <text class="nameSty">{{item.rightName}}</text>
  37. </text>
  38. <view class="mesEx_left_end">
  39. <text>{{item.rightValue}}</text>
  40. <text>{{item.rightCode}}</text>
  41. </view>
  42. </view>
  43. </view>
  44. <view class="windMsg">
  45. <view class="flex justify-center" style="margin-bottom: 6px;">
  46. <view class="windMsg_title">
  47. <image src="../../static/jnImage/indexPage/wancheng.png" mode=""></image>
  48. <text>风机状态</text>
  49. </view>
  50. </view>
  51. <view class="windMsg_main">
  52. <view class="windMsg_main_msg flex justify-between">
  53. <view class="windMsgSty flex">
  54. <view class="windMsgSty_left">
  55. <image src="../../static/jnImage/indexPage/jieru.png" mode=""></image>
  56. <text>接入</text>
  57. </view>
  58. <view class="windMsgSty_right flex justify-between">
  59. <text>600</text>
  60. <text>台</text>
  61. </view>
  62. </view>
  63. <view class="windMsgSty flex">
  64. <view class="windMsgSty_left">
  65. <image src="../../static/jnImage/indexPage/daiji.png" mode=""></image>
  66. <text>待机</text>
  67. </view>
  68. <view class="windMsgSty_right flex justify-between">
  69. <text>600</text>
  70. <text>台</text>
  71. </view>
  72. </view>
  73. </view>
  74. <view class="windMsg_main_msg flex justify-between">
  75. <view class="windMsgSty flex">
  76. <view class="windMsgSty_left">
  77. <image src="../../static/jnImage/indexPage/yunxing.png" mode=""></image>
  78. <text>运行</text>
  79. </view>
  80. <view class="windMsgSty_right flex justify-between">
  81. <text>600</text>
  82. <text>台</text>
  83. </view>
  84. </view>
  85. <view class="windMsgSty flex">
  86. <view class="windMsgSty_left">
  87. <image src="../../static/jnImage/indexPage/guzhang.png" mode=""></image>
  88. <text>故障</text>
  89. </view>
  90. <view class="windMsgSty_right flex justify-between">
  91. <text>600</text>
  92. <text>台</text>
  93. </view>
  94. </view>
  95. </view>
  96. <view class="windMsg_main_msg flex justify-between">
  97. <view class="windMsgSty flex">
  98. <view class="windMsgSty_left">
  99. <image src="../../static/jnImage/indexPage/weihu.png" mode=""></image>
  100. <text>维护</text>
  101. </view>
  102. <view class="windMsgSty_right flex justify-between">
  103. <text>600</text>
  104. <text>台</text>
  105. </view>
  106. </view>
  107. <view class="windMsgSty flex">
  108. <view class="windMsgSty_left">
  109. <image src="../../static/jnImage/indexPage/lixian.png" mode=""></image>
  110. <text>离线</text>
  111. </view>
  112. <view class="windMsgSty_right flex justify-between">
  113. <text>600</text>
  114. <text>台</text>
  115. </view>
  116. </view>
  117. </view>
  118. </view>
  119. </view>
  120. <view class="powerMsg">
  121. <view class="flex justify-center" style="margin-bottom: 6px;">
  122. <view class="windMsg_title">
  123. <image src="../../static/jnImage/indexPage/wancheng.png" mode=""></image>
  124. <text>光伏状态</text>
  125. </view>
  126. </view>
  127. <view class="windMsg_main">
  128. <view class="windMsg_main_msg flex justify-between">
  129. <view class="windMsgSty flex">
  130. <view class="windMsgSty_left">
  131. <image src="../../static/jnImage/indexPage/jieruP.png" mode=""></image>
  132. <text>接入</text>
  133. </view>
  134. <view class="windMsgSty_right flex justify-between">
  135. <text>600</text>
  136. <text>台</text>
  137. </view>
  138. </view>
  139. <view class="windMsgSty flex">
  140. <view class="windMsgSty_left">
  141. <image src="../../static/jnImage/indexPage/daijiP.png" mode=""></image>
  142. <text>待机</text>
  143. </view>
  144. <view class="windMsgSty_right flex justify-between">
  145. <text>600</text>
  146. <text>台</text>
  147. </view>
  148. </view>
  149. </view>
  150. <view class="windMsg_main_msg flex justify-between">
  151. <view class="windMsgSty flex">
  152. <view class="windMsgSty_left">
  153. <image src="../../static/jnImage/indexPage/yunxingP.png" mode=""></image>
  154. <text>运行</text>
  155. </view>
  156. <view class="windMsgSty_right flex justify-between">
  157. <text>600</text>
  158. <text>台</text>
  159. </view>
  160. </view>
  161. <view class="windMsgSty flex">
  162. <view class="windMsgSty_left">
  163. <image src="../../static/jnImage/indexPage/guzhang.png" mode=""></image>
  164. <text>故障</text>
  165. </view>
  166. <view class="windMsgSty_right flex justify-between">
  167. <text>600</text>
  168. <text>台</text>
  169. </view>
  170. </view>
  171. </view>
  172. <view class="windMsg_main_msg flex justify-between">
  173. <view class="windMsgSty flex">
  174. <view class="windMsgSty_left">
  175. <image src="../../static/jnImage/indexPage/weihu.png" mode=""></image>
  176. <text>维护</text>
  177. </view>
  178. <view class="windMsgSty_right flex justify-between">
  179. <text>600</text>
  180. <text>台</text>
  181. </view>
  182. </view>
  183. <view class="windMsgSty flex">
  184. <view class="windMsgSty_left">
  185. <image src="../../static/jnImage/indexPage/lixian.png" mode=""></image>
  186. <text>离线</text>
  187. </view>
  188. <view class="windMsgSty_right flex justify-between">
  189. <text>600</text>
  190. <text>台</text>
  191. </view>
  192. </view>
  193. </view>
  194. </view>
  195. </view>
  196. <view class="ssjk">
  197. <view class="ssjk_title flex justify-center">
  198. <image src="../../static/jnImage/indexPage/timeNow.png" mode=""></image>
  199. <text>实时监控</text>
  200. </view>
  201. <view class="ssjk_main">
  202. <view class="ssjk_main_msg">
  203. <view class="ssjk_main_msg_tit flex">
  204. <image src="../../static/jnImage/indexPage/windIcon.png" mode=""></image>
  205. <text>宝龙山</text>
  206. </view>
  207. <view class="ssjk_main_msg_data flex">
  208. <view class="msg_data_sty flex">
  209. <view class="msg_data_name">
  210. <text>风速</text>
  211. </view>
  212. <view class="dataSty flex">
  213. <text>0.00</text>
  214. <text>m/s</text>
  215. </view>
  216. </view>
  217. <view class="msg_data_sty flex">
  218. <view class="msg_data_name">
  219. <text>有功功率</text>
  220. </view>
  221. <view class="dataSty flex">
  222. <text>0.00</text>
  223. <text>MW</text>
  224. </view>
  225. </view>
  226. <view class="msg_data_sty flex">
  227. <view class="msg_data_name">
  228. <text>AGC指令</text>
  229. </view>
  230. <view class="dataSty flex">
  231. <text>0.00</text>
  232. <text>MW</text>
  233. </view>
  234. </view>
  235. </view>
  236. </view>
  237. </view>
  238. </view>
  239. </view>
  240. </view>
  241. </view>
  242. </view>
  243. </template>
  244. </template>
  245. <script>
  246. export default {
  247. onLoad: function() {},
  248. data() {
  249. return {
  250. mesExData: []
  251. }
  252. },
  253. created() {
  254. this.mesExData = [{
  255. leftName: '容量',
  256. leftValue: 282.3,
  257. leftCode: '(WM)',
  258. rightName: '安全天数',
  259. rightValue: 20,
  260. rightCode: '(天)',
  261. },
  262. {
  263. leftName: '风速',
  264. leftValue: 282.3,
  265. leftCode: '(m/s)',
  266. rightName: '功率',
  267. rightValue: 20,
  268. rightCode: '(MW)',
  269. },
  270. {
  271. leftName: '日发电量',
  272. leftValue: 282.3,
  273. leftCode: '(万kWh)',
  274. rightName: '理论功率',
  275. rightValue: 20,
  276. rightCode: '(MW)',
  277. },
  278. {
  279. leftName: '年发电量',
  280. leftValue: 282.3,
  281. leftCode: '(万kWh)',
  282. rightName: '月发电量',
  283. rightValue: 20,
  284. rightCode: '(万kWh)',
  285. },
  286. ]
  287. },
  288. methods: {
  289. }
  290. }
  291. </script>
  292. <style lang="scss">
  293. page {
  294. background-color: #202246;
  295. }
  296. .home {
  297. width: 100vw;
  298. background: url('../../static/jnImage/loginPage/windBack.png'), url('../../static/jnImage/loginPage/backWav.png');
  299. background-repeat: no-repeat, repeat;
  300. background-size: 100% 260px, 100% 5px;
  301. .home_header {
  302. width: calc(100% -32px);
  303. display: flex;
  304. justify-content: space-between;
  305. height: 60px;
  306. padding-top: 16px;
  307. // position: fixed;
  308. .header_message {
  309. width: 15%;
  310. image {
  311. position: relative;
  312. top: 0px;
  313. left: 10px;
  314. width: 30px;
  315. height: 30px;
  316. }
  317. }
  318. .header_title {
  319. width: 70%;
  320. position: relative;
  321. left: 10px;
  322. image {
  323. width: 28px;
  324. height: 22px;
  325. position: relative;
  326. top: 5px;
  327. }
  328. .titleName {
  329. line-height: 20px;
  330. margin-left: 5px;
  331. font-size: 36upx;
  332. font-family: FZZhengHeiS-M-GB;
  333. font-weight: 600;
  334. letter-spacing: 2px;
  335. color: #fff;
  336. }
  337. }
  338. .header_more {
  339. width: 15%;
  340. position: relative;
  341. top: 5px;
  342. left: 10px;
  343. image {
  344. width: 30px;
  345. height: 20px;
  346. }
  347. }
  348. }
  349. .home_main {
  350. padding: 0 20px;
  351. .main_time {
  352. margin-top: 10px;
  353. .mesTime {
  354. display: flex;
  355. padding: 3px 0;
  356. border-bottom: 1px solid rgba(255, 255, 255, 0.25);
  357. image {
  358. width: 20px;
  359. height: 20px;
  360. }
  361. text {
  362. font-size: 34upx;
  363. color: #fff;
  364. margin-left: 15px;
  365. }
  366. text:nth-of-type(3) {
  367. position: relative;
  368. top: 3px;
  369. }
  370. }
  371. .mesAll {
  372. .mesEx {
  373. display: flex;
  374. padding: 3px 0;
  375. border-bottom: 1px solid rgba(255, 255, 255, 0.25);
  376. line-height: 30px;
  377. color: #fff;
  378. .mesEx_left {
  379. display: flex;
  380. width: 50%;
  381. .mesEx_left_top {
  382. width: 40%;
  383. font-size: 28upx;
  384. .nameSty {
  385. width: 100%;
  386. display: inline-block;
  387. position: relative;
  388. text-align-last: justify;
  389. text-align: justify;
  390. }
  391. }
  392. .mesEx_left_end {
  393. width: 56%;
  394. margin: 0 10px;
  395. display: flex;
  396. justify-content: space-between;
  397. text:nth-of-type(1) {
  398. font-size: 34upx;
  399. }
  400. text:nth-of-type(2) {
  401. font-size: 20upx;
  402. color: #92949B;
  403. }
  404. }
  405. }
  406. }
  407. .windMsg,
  408. .powerMsg {
  409. margin-top: 15px;
  410. .windMsg_title {
  411. width: 40%;
  412. height: 30px;
  413. display: flex;
  414. justify-content: center;
  415. align-items: center;
  416. padding: 6px 13px;
  417. background: rgba(51, 57, 118, 0.7);
  418. border-radius: 5px;
  419. image {
  420. width: 18px;
  421. height: 18px;
  422. }
  423. text {
  424. margin-left: 5px;
  425. font-size: 34upx;
  426. color: #fff;
  427. }
  428. }
  429. .windMsg_main {
  430. .windMsg_main_msg {
  431. margin-bottom: 8px;
  432. .windMsgSty {
  433. padding: 5px 8px;
  434. width: 49%;
  435. background: #3F4572;
  436. border-radius: 5px;
  437. .windMsgSty_left {
  438. width: 49%;
  439. height: 32px;
  440. image {
  441. width: 32px;
  442. height: 32px;
  443. }
  444. text {
  445. width: 100px;
  446. display: inline-block;
  447. color: #9A9BA6;
  448. font-size: 28upx;
  449. margin-left: 10px;
  450. position: relative;
  451. top: -26px;
  452. left: 28px;
  453. }
  454. }
  455. .windMsgSty_right {
  456. width: 49%;
  457. position: relative;
  458. top: 9px;
  459. text:nth-of-type(1) {
  460. margin-left: 5px;
  461. width: 50%;
  462. font-size: 34upx;
  463. color: #fff;
  464. }
  465. text:nth-of-type(2) {
  466. font-size: 28upx;
  467. color: #9A9BA6;
  468. }
  469. }
  470. }
  471. }
  472. }
  473. }
  474. .ssjk {
  475. margin-top: 15px;
  476. margin-bottom: 30px;
  477. .ssjk_title {
  478. width: 120px;
  479. height: 45px;
  480. // background: #333976;
  481. background: linear-gradient(90deg, #333976, #202246);
  482. align-items: center;
  483. image {
  484. width: 22px;
  485. height: 22px;
  486. }
  487. text {
  488. margin-left: 10px;
  489. font-size: 16px;
  490. color: #fff;
  491. }
  492. }
  493. .ssjk_main {
  494. .ssjk_main_msg {
  495. margin-top: 15px;
  496. .ssjk_main_msg_tit {
  497. image {
  498. width: 18px;
  499. height: 18px;
  500. }
  501. text {
  502. margin-left: 10px;
  503. font-size: 14px;
  504. color: #A49EAC;
  505. position: relative;
  506. top: -2px;
  507. }
  508. }
  509. .ssjk_main_msg_data {
  510. width: 100%;
  511. color: #fff;
  512. font-size: 10px;
  513. .msg_data_sty {
  514. width: 33%;
  515. margin-right: 2px;
  516. background: #2E336D;
  517. .msg_data_name {
  518. width: 50%;
  519. padding: 3px 0;
  520. display: inline-block;
  521. background: #3F4572;
  522. text-align: center;
  523. }
  524. .dataSty {
  525. width: 50%;
  526. background: #2E336D;
  527. padding: 0 3px;
  528. justify-content: space-between;
  529. text {
  530. position: relative;
  531. top: 5px;
  532. }
  533. }
  534. }
  535. }
  536. }
  537. }
  538. }
  539. }
  540. }
  541. }
  542. }
  543. </style>