index.vue 27 KB

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