Health0.vue 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895
  1. <template>
  2. <div class="health-0">
  3. <el-row>
  4. <el-col :span="14">
  5. <el-row>
  6. <el-col :span="24">
  7. <div class="query mg-b-8">
  8. <div class="query-items">
  9. <div class="query-item">
  10. <div class="lable">风场:</div>
  11. <div class="search-input">
  12. <el-select
  13. v-model="value1"
  14. clearable
  15. placeholder="请选择风场"
  16. popper-class="select"
  17. @change="wpselect"
  18. >
  19. <el-option
  20. v-for="item in options"
  21. :key="item.id"
  22. :label="item.name"
  23. :value="item.id"
  24. >
  25. </el-option>
  26. </el-select>
  27. </div>
  28. </div>
  29. <div class="query-item">
  30. <div class="lable">风机:</div>
  31. <div class="search-input">
  32. <el-select
  33. v-model="value2"
  34. clearable
  35. placeholder="请选择风机"
  36. popper-class="select"
  37. @change="wtselect"
  38. >
  39. <el-option
  40. v-for="item in options1"
  41. :key="item.id"
  42. :label="item.name"
  43. :value="item.id"
  44. >
  45. </el-option>
  46. </el-select>
  47. </div>
  48. </div>
  49. </div>
  50. <!-- <div class="query-actions">
  51. <button class="btn" type="button">
  52. <i class="el-icon-back mg-r-8"></i><span>返回</span>
  53. </button>
  54. </div> -->
  55. </div>
  56. </el-col>
  57. </el-row>
  58. <el-row class="mg-t-16">
  59. <el-col :span="24" class="fan-code-box">
  60. <span class="svg-icon svg-icon-white svg-icon-md mg-l-16 mg-r-16">
  61. <SvgIcon svgid="svg-wind-site"></SvgIcon>
  62. </span>
  63. <div class="fan-code">
  64. <div class="fan-code-text font-md green">{{value2}}</div>
  65. <div class="fan-code-label font-md gray-l">高频:</div>
  66. <div class="fan-code-value font-md green">{{stoptypemap && stoptypemap.top1type}}</div>
  67. <div class="fan-code-label font-md gray-l">中频:</div>
  68. <div class="fan-code-value font-md green">{{stoptypemap && stoptypemap.top2type}}</div>
  69. <div class="fan-code-label font-md gray-l">低频:</div>
  70. <div class="fan-code-value font-md green">{{stoptypemap && stoptypemap.top3type}}</div>
  71. </div>
  72. <!-- <span class="svg-icon svg-icon-white svg-icon-md mg-l-16">
  73. <SvgIcon svgid="svg-wind-site"></SvgIcon>
  74. </span>
  75. <div class="fan-code bg">
  76. <div class="fan-code-label font-md gray-l">风机评分:</div>
  77. </div>
  78. <div class="fan-code">
  79. <div class="fan-code-value nm font-md green">{{stoptypemap && stoptypemap.wtscore}}</div>
  80. </div> -->
  81. <button class="btn mg-l-16" type="button" @click="onClickReport()">
  82. <i class="el-icon-s-order mg-r-8"></i><span>健康报告</span>
  83. </button>
  84. </el-col>
  85. </el-row>
  86. <el-row>
  87. <el-col :span="24" style="text-align: center">
  88. <StandAloneImg
  89. class="sai"
  90. :activeIndex="activeIndex"
  91. @selectSvg="selectSvg"
  92. ></StandAloneImg>
  93. </el-col>
  94. </el-row>
  95. <el-row>
  96. <el-col :span="6">
  97. <img :src="bsxImg" class="bsx" />
  98. <img :src="bsxImg" class="bsx o" />
  99. </el-col>
  100. <el-col :span="6"></el-col>
  101. <el-col :span="6"></el-col>
  102. <el-col :span="6">
  103. <progress-bar title="风机" name="风机健康度" :progress='stoptypemap && stoptypemap.wtscore' :color="stoptypemap &&color('05bb4c')"></progress-bar>
  104. </el-col>
  105. </el-row>
  106. <el-row>
  107. <el-col :span="6" class="mg-t-16">
  108. <progress-bar title="发电机" name="寿命指数" :progress='partmap && partmap.fdj.smsyl' :color="partmap &&color(partmap.fdj.jkzt)"></progress-bar>
  109. </el-col>
  110. <el-col :span="6" class="mg-t-16">
  111. <progress-bar title="齿轮箱" name="寿命指数" :progress='partmap &&partmap.clx.smsyl' :color="partmap &&color(partmap.clx.jkzt)"></progress-bar>
  112. </el-col>
  113. <el-col :span="6" class="mg-t-16">
  114. <progress-bar title="主轴" name="寿命指数" :progress='partmap &&partmap.zz.smsyl' :color="partmap &&color(partmap.zz.jkzt)"></progress-bar>
  115. </el-col>
  116. <el-col :span="6" class="mg-t-16">
  117. <progress-bar title="变桨" name="寿命指数" :progress='partmap &&partmap.bj.smsyl' :color="partmap &&color(partmap.bj.jkzt)"></progress-bar>
  118. </el-col>
  119. </el-row>
  120. <el-row>
  121. <el-col :span="6" class="mg-t-16">
  122. <progress-bar title="偏航" name="寿命指数" :progress='partmap &&partmap.ph.smsyl' :color="partmap &&color(partmap.ph.jkzt)"></progress-bar>
  123. </el-col>
  124. <el-col :span="6" class="mg-t-16">
  125. <progress-bar title="机舱" name="寿命指数" :progress='partmap &&partmap.jc.smsyl' :color="partmap &&color(partmap.jc.jkzt)"></progress-bar>
  126. </el-col>
  127. <el-col :span="6" class="mg-t-16">
  128. <progress-bar title="变频器" name="寿命指数" :progress='partmap &&partmap.bpq.smsyl' :color="partmap &&color(partmap.bpq.jkzt)"></progress-bar>
  129. </el-col>
  130. <el-col :span="6" class="mg-t-16">
  131. <progress-bar title="主控" name="寿命指数" :progress='partmap &&partmap.zk.smsyl' :color="partmap &&color(partmap.zk.jkzt)"></progress-bar>
  132. </el-col>
  133. </el-row>
  134. </el-col>
  135. <el-col :span="10" class="health-0-right">
  136. <el-row>
  137. <el-col :span="24">
  138. <div class="table">
  139. <Table :data="gztableData" />
  140. </div>
  141. </el-col>
  142. </el-row>
  143. <el-row class="mg-t-16">
  144. <el-col :span="24">
  145. <div class="table">
  146. <Table :data="yjtableData" />
  147. </div>
  148. </el-col>
  149. </el-row>
  150. <el-row class="mg-t-16">
  151. <el-col :span="24">
  152. <div class="table">
  153. <Table :data="yxtableData" />
  154. </div>
  155. </el-col>
  156. </el-row>
  157. <el-row class="mg-t-16">
  158. <el-col :span="24">
  159. <div class="table">
  160. <Table :data="tableData2" />
  161. </div>
  162. </el-col>
  163. </el-row>
  164. <el-row class="mg-t-16">
  165. <el-col :span="24">
  166. <div class="card-tool">
  167. <div class="card-tool-item font-sm gray-l">故障描述</div>
  168. <div class="card-tool-item font-sm gray-l">
  169. 开始时间<i class="el-icon-d-caret"></i>
  170. </div>
  171. </div>
  172. </el-col>
  173. </el-row>
  174. <el-row class="mg-t-16">
  175. <el-col :span="24">
  176. <div class="table">
  177. <Table :data="tableData11" />
  178. </div>
  179. </el-col>
  180. </el-row>
  181. <el-row class="mg-t-16">
  182. <el-col :span="24">
  183. <div class="table">
  184. <Table :data="tableData3" />
  185. </div>
  186. </el-col>
  187. </el-row>
  188. <el-row class="mg-t-16">
  189. <el-col :span="24">
  190. <div class="card-tool font-sm gray-l pd">评判扣分</div>
  191. </el-col>
  192. </el-row>
  193. <el-row class="mg-t-16">
  194. <el-col :span="24">
  195. <div class="table">
  196. <Table :data="tableData4" />
  197. </div>
  198. </el-col>
  199. </el-row>
  200. </el-col>
  201. </el-row>
  202. <health-report :show="reportshow" :params="reportparams" @closed="closed"/>
  203. </div>
  204. </template>
  205. <script>
  206. import SvgIcon from "@com/coms/icon/svg-icon.vue";
  207. import StandAloneImg from "@/views/WindSite/pages/Info/StandAloneImg.vue";
  208. import ProgressBar from "@com/coms/progress-bar/progress-bar.vue";
  209. import Table from "../../components/coms/table/table.vue";
  210. import HealthReport from "../../components/other/healthReport/index.vue"
  211. export default {
  212. setup() {},
  213. components: {
  214. SvgIcon,
  215. StandAloneImg,
  216. ProgressBar,
  217. Table,
  218. HealthReport
  219. },
  220. data() {
  221. return {
  222. reportshow: false, //是否显示健康报告
  223. reportparams: undefined,
  224. bsxImg: require("@assets/png/bsx.png"),
  225. options: [
  226. {
  227. value: "选项1",
  228. label: "黄金糕",
  229. },
  230. {
  231. value: "选项2",
  232. label: "双皮奶",
  233. },
  234. {
  235. value: "选项3",
  236. label: "蚵仔煎",
  237. },
  238. {
  239. value: "选项4",
  240. label: "龙须面",
  241. },
  242. {
  243. value: "选项5",
  244. label: "北京烤鸭",
  245. },
  246. ],
  247. wtid:'',
  248. wpid:'',
  249. options1:[],
  250. value1: [],
  251. value2: [],
  252. colorval:{
  253. '1.0':'green',
  254. '2.0':'purple',
  255. '3.0':'orange',
  256. '4.0':'red',
  257. },
  258. activeIndex: -1,
  259. gztableData: {
  260. column: [
  261. {
  262. name: "",
  263. field: "index",
  264. width: "30px",
  265. is_num: false,
  266. is_light: false,
  267. },
  268. {
  269. name: "时间",
  270. field: "name",
  271. width: "130px",
  272. is_num: false,
  273. is_light: false,
  274. },
  275. {
  276. name: "故障1名称",
  277. field: "top1gzname",
  278. is_num: false,
  279. is_light: false,
  280. },
  281. {
  282. name: "故障1数量",
  283. field: "top1gznum",
  284. is_num: false,
  285. is_light: false,
  286. },
  287. {
  288. name: "故障2名称",
  289. field: "top2gzname",
  290. is_num: false,
  291. is_light: false,
  292. },
  293. {
  294. name: "故障2数量",
  295. field: "top2gznum",
  296. is_num: false,
  297. is_light: false,
  298. },
  299. {
  300. name: "故障3名称",
  301. field: "top3gzname",
  302. is_num: false,
  303. is_light: false,
  304. },
  305. {
  306. name: "故障3数量",
  307. field: "top3gznum",
  308. is_num: false,
  309. is_light: false,
  310. },
  311. ],
  312. data: [
  313. ],
  314. },
  315. yjtableData: {
  316. column: [
  317. {
  318. name: "",
  319. field: "index",
  320. width: "30px",
  321. is_num: false,
  322. is_light: false,
  323. },
  324. {
  325. name: "时间",
  326. field: "name",
  327. width: "130px",
  328. is_num: false,
  329. is_light: false,
  330. },
  331. {
  332. name: "预警1名称",
  333. field: "top1gzname",
  334. is_num: false,
  335. is_light: false,
  336. },
  337. {
  338. name: "预警1数量",
  339. field: "top1gznum",
  340. is_num: false,
  341. is_light: false,
  342. },
  343. {
  344. name: "预警2名称",
  345. field: "top2gzname",
  346. is_num: false,
  347. is_light: false,
  348. },
  349. {
  350. name: "预警2数量",
  351. field: "top2gznum",
  352. is_num: false,
  353. is_light: false,
  354. },
  355. {
  356. name: "预警3名称",
  357. field: "top3gzname",
  358. is_num: false,
  359. is_light: false,
  360. },
  361. {
  362. name: "故障3数量",
  363. field: "top3gznum",
  364. is_num: false,
  365. is_light: false,
  366. },
  367. ],
  368. data: [
  369. ],
  370. },
  371. yxtableData: {
  372. column: [
  373. {
  374. name: "",
  375. field: "index",
  376. width: "30px",
  377. is_num: false,
  378. is_light: false,
  379. },
  380. {
  381. name: "时间",
  382. field: "name",
  383. width: "130px",
  384. is_num: false,
  385. is_light: false,
  386. },
  387. {
  388. name: "发电机",
  389. field: "numfdj",
  390. is_num: false,
  391. is_light: false,
  392. },
  393. {
  394. name: "齿轮箱",
  395. field: "numclx",
  396. is_num: false,
  397. is_light: false,
  398. },
  399. {
  400. name: "主轴",
  401. field: "numzz",
  402. is_num: false,
  403. is_light: false,
  404. },
  405. {
  406. name: "变桨",
  407. field: "numbj",
  408. is_num: false,
  409. is_light: false,
  410. },
  411. {
  412. name: "偏航",
  413. field: "numph",
  414. is_num: false,
  415. is_light: false,
  416. },
  417. {
  418. name: "机舱",
  419. field: "numjc",
  420. is_num: false,
  421. is_light: false,
  422. },
  423. {
  424. name: "变频器",
  425. field: "numbpq",
  426. is_num: false,
  427. is_light: false,
  428. },
  429. {
  430. name: "主控",
  431. field: "numzk",
  432. is_num: false,
  433. is_light: false,
  434. },
  435. ],
  436. data: [
  437. {
  438. index: 1,
  439. time: "1天故障数据分析",
  440. fdj: "0.00",
  441. clx: "9.00",
  442. zz: "0.00",
  443. bj: "0.00",
  444. ph: "0.00",
  445. jc: "0.00",
  446. bpq: "0.00",
  447. zk: "0.00",
  448. is_light: false,
  449. },
  450. {
  451. index: 2,
  452. time: "3天故障数据分析",
  453. fdj: "0.00",
  454. clx: "74.00",
  455. zz: "0.00",
  456. bj: "0.00",
  457. ph: "0.00",
  458. jc: "0.00",
  459. bpq: "0.00",
  460. zk: "0.00",
  461. is_light: false,
  462. },
  463. ],
  464. },
  465. tableData2: {
  466. column: [
  467. {
  468. name: "",
  469. field: "index",
  470. width: "30px",
  471. is_num: false,
  472. is_light: false,
  473. },
  474. {
  475. name: "时间",
  476. field: "name",
  477. is_num: false,
  478. is_light: false,
  479. },
  480. {
  481. name: "评估等级",
  482. field: "level",
  483. is_num: false,
  484. is_light: false,
  485. },
  486. {
  487. name: "得分",
  488. field: "score",
  489. is_num: false,
  490. is_light: false,
  491. },
  492. ],
  493. data: [
  494. {
  495. index: 1,
  496. time: "1天故障数据分析",
  497. level: "C",
  498. score: "0.00",
  499. is_light: false,
  500. },
  501. ],
  502. },
  503. tableData11: {
  504. column: [
  505. {
  506. name: "",
  507. field: "index",
  508. width: "30px",
  509. is_num: false,
  510. is_light: false,
  511. },
  512. {
  513. name: "温度范围",
  514. field: "name",
  515. width: "130px",
  516. is_num: false,
  517. is_light: false,
  518. },
  519. {
  520. name: "发电机",
  521. field: "numfdj",
  522. is_num: false,
  523. is_light: false,
  524. },
  525. {
  526. name: "齿轮箱",
  527. field: "numclx",
  528. is_num: false,
  529. is_light: false,
  530. },
  531. {
  532. name: "主轴",
  533. field: "numzz",
  534. is_num: false,
  535. is_light: false,
  536. },
  537. {
  538. name: "变桨",
  539. field: "numbj",
  540. is_num: false,
  541. is_light: false,
  542. },
  543. {
  544. name: "偏航",
  545. field: "numph",
  546. is_num: false,
  547. is_light: false,
  548. },
  549. {
  550. name: "机舱",
  551. field: "numjc",
  552. is_num: false,
  553. is_light: false,
  554. },
  555. {
  556. name: "变频器",
  557. field: "numbpq",
  558. is_num: false,
  559. is_light: false,
  560. },
  561. {
  562. name: "主控",
  563. field: "numzk",
  564. is_num: false,
  565. is_light: false,
  566. },
  567. ],
  568. data: [
  569. {
  570. index: 1,
  571. time: "1天故障数据分析",
  572. fdj: "0.00",
  573. clx: "9.00",
  574. zz: "0.00",
  575. bj: "0.00",
  576. ph: "0.00",
  577. jc: "0.00",
  578. bpq: "0.00",
  579. zk: "0.00",
  580. is_light: false,
  581. },
  582. {
  583. index: 2,
  584. time: "3天故障数据分析",
  585. fdj: "0.00",
  586. clx: "74.00",
  587. zz: "0.00",
  588. bj: "0.00",
  589. ph: "0.00",
  590. jc: "0.00",
  591. bpq: "0.00",
  592. zk: "0.00",
  593. is_light: false,
  594. },
  595. {
  596. index: 3,
  597. time: "1天故障数据分析",
  598. fdj: "0.00",
  599. clx: "9.00",
  600. zz: "0.00",
  601. bj: "0.00",
  602. ph: "0.00",
  603. jc: "0.00",
  604. bpq: "0.00",
  605. zk: "0.00",
  606. is_light: false,
  607. },
  608. {
  609. index: 4,
  610. time: "3天故障数据分析",
  611. fdj: "0.00",
  612. clx: "74.00",
  613. zz: "0.00",
  614. bj: "0.00",
  615. ph: "0.00",
  616. jc: "0.00",
  617. bpq: "0.00",
  618. zk: "0.00",
  619. is_light: false,
  620. },
  621. ],
  622. },
  623. tableData3: {
  624. column: [
  625. {
  626. name: "",
  627. field: "index",
  628. width: "30px",
  629. is_num: false,
  630. is_light: false,
  631. },
  632. {
  633. name: "3-5米曲线偏差率",
  634. field: "qxpc1",
  635. is_num: false,
  636. is_light: false,
  637. },
  638. {
  639. name: "5-11米曲线偏差率",
  640. field: "qxpc2",
  641. is_num: false,
  642. is_light: false,
  643. },
  644. {
  645. name: "11-25米曲线偏差率",
  646. field: "qxpc3",
  647. is_num: false,
  648. is_light: false,
  649. },
  650. ],
  651. data: [
  652. {
  653. index: 1,
  654. v1: "1.50",
  655. v2: "1.69",
  656. v3: "2.44",
  657. is_light: false,
  658. },
  659. ],
  660. },
  661. tableData4: {
  662. column: [
  663. {
  664. name: "",
  665. field: "index",
  666. width: "30px",
  667. is_num: false,
  668. is_light: false,
  669. },
  670. {
  671. name: "判断描述",
  672. field: "name",
  673. is_num: false,
  674. is_light: false,
  675. },
  676. {
  677. name: "是否扣分",
  678. field: "value",
  679. is_num: false,
  680. is_light: false,
  681. },
  682. ],
  683. data: [
  684. {
  685. index: 1,
  686. v1: "运行状态为故障",
  687. v2: "未扣分",
  688. is_light: false,
  689. },
  690. {
  691. index: 2,
  692. v1: "风机部件温度超出合理值范围",
  693. v2: "未扣分",
  694. is_light: false,
  695. },
  696. {
  697. index: 3,
  698. v1: "性能损失率连续三天大于基准值",
  699. v2: "未扣分",
  700. is_light: false,
  701. },
  702. {
  703. index: 4,
  704. v1: "曲线偏差率连续三天大于基准值",
  705. v2: "未扣分",
  706. is_light: false,
  707. },
  708. ],
  709. },
  710. partmap:null,
  711. stoptypemap:null,
  712. };
  713. },
  714. created() {
  715. this.wtid = this.$route.params.wtId;
  716. this.wpid = this.$route.params.wpId;
  717. this.search()
  718. },
  719. methods: {
  720. // 查看健康报告
  721. onClickReport(){
  722. console.warn('查看健康报告');
  723. this.reportshow = true
  724. this.reportparams = {wtId: this.value2, recorddate: new Date(new Date()).formatDate("yyyy-MM-dd")}
  725. },
  726. // 关闭健康报告
  727. closed(){
  728. this.reportshow = false
  729. },
  730. color(val){
  731. return this.colorval[val]
  732. },
  733. wpselect(){
  734. console.warn('wpselect');
  735. this.searchWindturbine('select')
  736. },
  737. wtselect(){
  738. console.warn('wtselect');
  739. this.searchWtHealthInfo()
  740. },
  741. async search() {
  742. const { data } = await this.API.requestData({
  743. subUrl: "powercompare/windfarmAjax",
  744. });
  745. this.options = data.data;
  746. this.value1 = this.wpid;
  747. this.searchWindturbine()
  748. },
  749. async searchWindturbine(statu) {
  750. const { data } = await this.API.requestData({
  751. subUrl: "/powercompare/windturbineAjax",
  752. data:{
  753. wpId : this.value1
  754. }
  755. });
  756. this.options1 = data.data;
  757. this.value2 = statu =='select' ?data.data[0].id : this.wtid;
  758. console.warn(data);
  759. this.searchWtHealthInfo()
  760. },
  761. async searchWtHealthInfo() {
  762. const { data } = await this.API.requestData({
  763. subUrl: "/healthsub//findWtHealthInfo",
  764. showLoading: true,
  765. method:'POST',
  766. timeout: 30000, // 请求超时时间,默认 3s ,可缺省
  767. data:{
  768. wtId : this.value2
  769. }
  770. });
  771. console.warn(data);
  772. this.gztableData.data = data.data.gzls
  773. this.yjtableData.data = data.data.yjls
  774. this.yxtableData.data = data.data.bjyxls
  775. this.tableData2.data = data.data.djpgls
  776. this.tableData11.data = data.data.wdls
  777. this.tableData3.data = data.data.qxpcls
  778. this.tableData4.data = data.data.jkls
  779. this.partmap = data.data.partmap
  780. this.stoptypemap = data.data.stoptypemap
  781. },
  782. selectSvg: function (index) {
  783. this.activeIndex = index;
  784. },
  785. },
  786. };
  787. </script>
  788. <style lang="less">
  789. .health-0 {
  790. width: 100%;
  791. height: calc(100vh - 90px);
  792. .fan-code-box {
  793. display: flex;
  794. align-items: center;
  795. .fan-code {
  796. display: flex;
  797. align-items: center;
  798. background: #53626833;
  799. padding: 7px 20px;
  800. &.bg {
  801. background: transparent;
  802. padding: 7px 0;
  803. .fan-code-label {
  804. margin-left: 8px;
  805. }
  806. }
  807. .fan-code-text {
  808. padding-right: 20px;
  809. border-right: 1px solid #536268;
  810. overflow: hidden;
  811. text-overflow:ellipsis;
  812. white-space: nowrap;
  813. }
  814. .fan-code-label {
  815. margin-left: 20px;
  816. min-width: 50px;
  817. }
  818. .fan-code-value {
  819. margin-left: 20px;
  820. overflow: hidden;
  821. text-overflow:ellipsis;
  822. white-space: nowrap;
  823. max-width: 112px;
  824. &.nm {
  825. margin-left: 0;
  826. }
  827. }
  828. }
  829. }
  830. .sai {
  831. height: 49.074vh;
  832. }
  833. .bsx {
  834. height: 11.481vh;
  835. margin-right: 1.852vh;
  836. &.o {
  837. opacity: 0.5;
  838. }
  839. }
  840. .health-0-right {
  841. margin-top: 56px;
  842. height: calc(100vh - 150px);
  843. overflow-y: auto;
  844. .table {
  845. border: 1px solid #6067697d;
  846. .com-table thead tr th,
  847. .com-table tr td {
  848. padding: 0.463vh 0;
  849. }
  850. }
  851. .card-tool {
  852. width: 100%;
  853. background: #53626866;
  854. padding: 0.463vh 0;
  855. display: flex;
  856. &.pd {
  857. padding-left: 2.778vh;
  858. }
  859. .card-tool-item {
  860. flex: 1;
  861. text-align: center;
  862. cursor: pointer;
  863. &:last-child {
  864. border-left: 1px solid #536268;
  865. }
  866. &:hover {
  867. color: @green;
  868. }
  869. }
  870. }
  871. }
  872. }
  873. </style>