NewPerformanceList.vue 51 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710
  1. <template>
  2. <el-container>
  3. <el-header>
  4. <el-row>
  5. <el-col :span="24">
  6. <el-card style="height: 30px">
  7. <div class="grid-content bg-purple-dark">
  8. <span>电量绩效榜</span>
  9. </div>
  10. </el-card>
  11. </el-col>
  12. </el-row>
  13. </el-header>
  14. <el-main>
  15. <el-card>
  16. <el-form :inline="true" class="demo-form-inline">
  17. <el-row :gutter="1">
  18. <el-form-item label="风场">
  19. <el-select v-model="fc" clearable placeholder="请选择" @change="query_xml()">
  20. <el-option
  21. v-for="item in wpIdslist"
  22. :key="item.id"
  23. :label="item.name"
  24. :value="item.id"
  25. >
  26. </el-option>
  27. </el-select>
  28. </el-form-item>
  29. <el-form-item label="项目">
  30. <el-select v-model="pj" clearable placeholder="请选择" @change="query_xl()">
  31. <el-option
  32. v-for="item in projectlist"
  33. :key="item.id"
  34. :label="item.name"
  35. :value="item.id"
  36. >
  37. </el-option>
  38. </el-select>
  39. </el-form-item>
  40. <el-form-item label="线路">
  41. <el-select v-model="xl" clearable placeholder="请选择">
  42. <el-option
  43. v-for="item in linelist"
  44. :key="item.id"
  45. :label="item.name"
  46. :value="item.id"
  47. >
  48. </el-option>
  49. </el-select>
  50. </el-form-item>
  51. <el-form-item label="开始时间">
  52. <el-date-picker
  53. v-model="beginDate"
  54. type="date"
  55. placeholder="选择日期"
  56. >
  57. </el-date-picker>
  58. </el-form-item>
  59. <el-form-item label="结束时间">
  60. <el-date-picker
  61. v-model="endDate"
  62. type="date"
  63. placeholder="选择日期"
  64. >
  65. </el-date-picker>
  66. </el-form-item>
  67. <el-form-item>
  68. <el-button type="primary" @click="queryPowerAll" :plain="true"
  69. >查询</el-button
  70. >
  71. </el-form-item>
  72. <el-form-item>
  73. <el-button type="primary" @click="queryApDataMx">返回</el-button>
  74. </el-form-item>
  75. <el-form-item>
  76. <el-button type="primary" @click="toExcel">导出</el-button>
  77. </el-form-item>
  78. </el-row>
  79. </el-form>
  80. <el-tabs
  81. v-model="activeName"
  82. type="card"
  83. @tab-click="handleClick"
  84. style="height: 100%; width: 100%"
  85. >
  86. <el-tab-pane label="风场" name="first" id="fc">
  87. <el-row
  88. style="width: 100%; display: flex; justify-content: space-between"
  89. >
  90. <el-card
  91. shadow="always"
  92. ref="fc_zzt_card"
  93. :style="styleObject_fc"
  94. style="width: 40%; display: table-cell; vertical-align: middle"
  95. >
  96. <div
  97. id="histogram_fc"
  98. style="width: 100%; height: 600px; margin: auto"
  99. ></div>
  100. </el-card>
  101. <el-card
  102. shadow="always"
  103. :style="styleObject_fc"
  104. style="width: 58%"
  105. id="moban"
  106. >
  107. <el-table id="fc_table" :data="fc_date" style="width: 100%;font-size:1px" :max-height="tableHeight">
  108. <el-table-column label="项目列表">
  109. <el-table-column fixed type="index" width="41">
  110. </el-table-column>
  111. <el-table-column prop="generation" sortable label="名称" width="75">
  112. </el-table-column>
  113. <el-table-column
  114. :formatter="filter_llfdl"
  115. sortable
  116. prop="llfdl"
  117. label="理论发电量"
  118. width="90"
  119. >
  120. </el-table-column>
  121. <el-table-column
  122. :formatter="filter_scadafdl"
  123. sortable
  124. prop="scadafdl"
  125. label="发电量"
  126. width="90"
  127. >
  128. </el-table-column>
  129. <el-table-column :formatter="filter_speed" sortable prop="speed" label="风速" width="70">
  130. </el-table-column>
  131. <el-table-column
  132. :formatter="filter_gzssdl"
  133. sortable
  134. prop="gzssdl"
  135. label="故障损失"
  136. width="90"
  137. >
  138. </el-table-column>
  139. <el-table-column
  140. :formatter="filter_gzslssdl"
  141. sortable
  142. prop="gzslssdl"
  143. label="故障受累损失"
  144. width="100"
  145. >
  146. </el-table-column>
  147. <el-table-column
  148. :formatter="filter_jxssdl"
  149. sortable
  150. prop="jxssdl"
  151. label="检修损失"
  152. width="90"
  153. >
  154. </el-table-column>
  155. <el-table-column
  156. :formatter="filter_jxslssdl"
  157. sortable
  158. prop="jxslssdl"
  159. label="检修受累损失"
  160. width="100"
  161. >
  162. </el-table-column>
  163. <el-table-column
  164. :formatter="filter_dwslssdl"
  165. sortable
  166. prop="dwslssdl"
  167. label="电网受累损失"
  168. width="100"
  169. >
  170. </el-table-column>
  171. <el-table-column
  172. :formatter="filter_hjslssdl"
  173. sortable
  174. prop="hjslssdl"
  175. label="环境受累损失"
  176. width="100"
  177. >
  178. </el-table-column>
  179. <el-table-column
  180. :formatter="filter_xdjclssdl"
  181. sortable
  182. prop="xdjclssdl"
  183. label="限电降出力损失"
  184. width="110"
  185. >
  186. </el-table-column>
  187. <el-table-column
  188. :formatter="filter_xdtjssdl"
  189. sortable
  190. prop="xdtjssdl"
  191. label="限电停机损失"
  192. width="100"
  193. >
  194. </el-table-column>
  195. <el-table-column
  196. :formatter="filter_dfssdl"
  197. sortable
  198. prop="dfssdl"
  199. label="待风损失"
  200. width="90"
  201. >
  202. </el-table-column>
  203. <el-table-column
  204. :formatter="filter_sdtjssdl"
  205. sortable
  206. prop="sdtjssdl"
  207. label="手动停机损失"
  208. width="100"
  209. >
  210. </el-table-column>
  211. <el-table-column
  212. :formatter="filter_zcfdssdl"
  213. sortable
  214. prop="zcfdssdl"
  215. label="正常发电损失"
  216. width="100"
  217. >
  218. </el-table-column>
  219. <el-table-column
  220. :formatter="filter_qxjclssdl"
  221. sortable
  222. prop="qxjclssdl"
  223. label="缺陷降出力"
  224. width="90"
  225. >
  226. </el-table-column>
  227. <el-table-column
  228. :formatter="filter_fnlyl"
  229. sortable
  230. prop="fnlyl"
  231. label="风能利用率"
  232. width="90"
  233. >
  234. </el-table-column>
  235. </el-table-column>
  236. </el-table>
  237. </el-card>
  238. </el-row>
  239. </el-tab-pane>
  240. <el-tab-pane label="项目" name="second" id="xm">
  241. <el-row
  242. style="width: 100%; display: flex; justify-content: space-between"
  243. >
  244. <el-card
  245. shadow="always"
  246. :style="styleObject_pj"
  247. style="width: 40%; display: table-cell; vertical-align: middle"
  248. >
  249. <div
  250. id="histogram_xm"
  251. style="width: 100%; height: 800px; margin: auto"
  252. ></div>
  253. </el-card>
  254. <el-card
  255. shadow="always"
  256. :style="styleObject_pj"
  257. style="width: 58%"
  258. id="moban"
  259. >
  260. <el-table
  261. id="pj_table"
  262. :data="pj_date"
  263. style="width: 100%;font-size:1px;margin-bottom:10px"
  264. :max-height="tableHeight"
  265. >
  266. <el-table-column label="项目列表">
  267. <el-table-column fixed type="index" width="41">
  268. </el-table-column>
  269. <el-table-column prop="generation" sortable label="名称" width="75">
  270. </el-table-column>
  271. <el-table-column
  272. :formatter="filter_llfdl"
  273. sortable
  274. prop="llfdl"
  275. label="理论发电量"
  276. width="90"
  277. >
  278. </el-table-column>
  279. <el-table-column
  280. :formatter="filter_scadafdl"
  281. sortable
  282. prop="scadafdl"
  283. label="发电量"
  284. width="90"
  285. >
  286. </el-table-column>
  287. <el-table-column :formatter="filter_speed" sortable prop="speed" label="风速" width="70">
  288. </el-table-column>
  289. <el-table-column
  290. :formatter="filter_gzssdl"
  291. sortable
  292. prop="gzssdl"
  293. label="故障损失"
  294. width="90"
  295. >
  296. </el-table-column>
  297. <el-table-column
  298. :formatter="filter_gzslssdl"
  299. sortable
  300. prop="gzslssdl"
  301. label="故障受累损失"
  302. width="100"
  303. >
  304. </el-table-column>
  305. <el-table-column
  306. :formatter="filter_jxssdl"
  307. sortable
  308. prop="jxssdl"
  309. label="检修损失"
  310. width="90"
  311. >
  312. </el-table-column>
  313. <el-table-column
  314. :formatter="filter_jxslssdl"
  315. sortable
  316. prop="jxslssdl"
  317. label="检修受累损失"
  318. width="100"
  319. >
  320. </el-table-column>
  321. <el-table-column
  322. :formatter="filter_dwslssdl"
  323. sortable
  324. prop="dwslssdl"
  325. label="电网受累损失"
  326. width="100"
  327. >
  328. </el-table-column>
  329. <el-table-column
  330. :formatter="filter_hjslssdl"
  331. sortable
  332. prop="hjslssdl"
  333. label="环境受累损失"
  334. width="100"
  335. >
  336. </el-table-column>
  337. <el-table-column
  338. :formatter="filter_xdjclssdl"
  339. sortable
  340. prop="xdjclssdl"
  341. label="限电降出力损失"
  342. width="110"
  343. >
  344. </el-table-column>
  345. <el-table-column
  346. :formatter="filter_xdtjssdl"
  347. sortable
  348. prop="xdtjssdl"
  349. label="限电停机损失"
  350. width="100"
  351. >
  352. </el-table-column>
  353. <el-table-column
  354. :formatter="filter_dfssdl"
  355. sortable
  356. prop="dfssdl"
  357. label="待风损失"
  358. width="90"
  359. >
  360. </el-table-column>
  361. <el-table-column
  362. :formatter="filter_sdtjssdl"
  363. sortable
  364. prop="sdtjssdl"
  365. label="手动停机损失"
  366. width="100"
  367. >
  368. </el-table-column>
  369. <el-table-column
  370. :formatter="filter_zcfdssdl"
  371. sortable
  372. prop="zcfdssdl"
  373. label="正常发电损失"
  374. width="100"
  375. >
  376. </el-table-column>
  377. <el-table-column
  378. :formatter="filter_qxjclssdl"
  379. sortable
  380. prop="qxjclssdl"
  381. label="缺陷降出力"
  382. width="90"
  383. >
  384. </el-table-column>
  385. <el-table-column
  386. :formatter="filter_fnlyl"
  387. sortable
  388. prop="fnlyl"
  389. label="风能利用率"
  390. width="90"
  391. >
  392. </el-table-column>
  393. </el-table-column>
  394. </el-table>
  395. </el-card>
  396. </el-row>
  397. </el-tab-pane>
  398. <el-tab-pane label="集电线路" name="jdxl" id="jdxl">
  399. <el-row
  400. style="width: 100%; display: flex; justify-content: space-between"
  401. >
  402. <el-card
  403. shadow="always"
  404. :style="styleObject_xl"
  405. style="width: 40%; display: table-cell; vertical-align: middle"
  406. >
  407. <div
  408. style="width: 100%; margin: auto;"
  409. id="histogram_jdxl"
  410. >
  411. </div>
  412. </el-card>
  413. <el-card
  414. :style="styleObject_xl"
  415. shadow="always"
  416. style="width: 58%"
  417. id="moban"
  418. >
  419. <el-table
  420. id="xl_table"
  421. :data="xl_date"
  422. style="width: 100%;font-size:1px;margin-bottom:10px"
  423. :max-height="tableHeight"
  424. >
  425. <el-table-column label="项目列表">
  426. <el-table-column fixed type="index" width="41">
  427. </el-table-column>
  428. <el-table-column prop="generation" sortable label="名称" width="75">
  429. </el-table-column>
  430. <el-table-column
  431. :formatter="filter_llfdl"
  432. sortable
  433. prop="llfdl"
  434. label="理论发电量"
  435. width="90"
  436. >
  437. </el-table-column>
  438. <el-table-column
  439. :formatter="filter_scadafdl"
  440. sortable
  441. prop="scadafdl"
  442. label="发电量"
  443. width="90"
  444. >
  445. </el-table-column>
  446. <el-table-column :formatter="filter_speed" sortable prop="speed" label="风速" width="70">
  447. </el-table-column>
  448. <el-table-column
  449. :formatter="filter_gzssdl"
  450. sortable
  451. prop="gzssdl"
  452. label="故障损失"
  453. width="90"
  454. >
  455. </el-table-column>
  456. <el-table-column
  457. :formatter="filter_gzslssdl"
  458. sortable
  459. prop="gzslssdl"
  460. label="故障受累损失"
  461. width="100"
  462. >
  463. </el-table-column>
  464. <el-table-column
  465. :formatter="filter_jxssdl"
  466. sortable
  467. prop="jxssdl"
  468. label="检修损失"
  469. width="90"
  470. >
  471. </el-table-column>
  472. <el-table-column
  473. :formatter="filter_jxslssdl"
  474. sortable
  475. prop="jxslssdl"
  476. label="检修受累损失"
  477. width="100"
  478. >
  479. </el-table-column>
  480. <el-table-column
  481. :formatter="filter_dwslssdl"
  482. sortable
  483. prop="dwslssdl"
  484. label="电网受累损失"
  485. width="100"
  486. >
  487. </el-table-column>
  488. <el-table-column
  489. :formatter="filter_hjslssdl"
  490. sortable
  491. prop="hjslssdl"
  492. label="环境受累损失"
  493. width="100"
  494. >
  495. </el-table-column>
  496. <el-table-column
  497. :formatter="filter_xdjclssdl"
  498. sortable
  499. prop="xdjclssdl"
  500. label="限电降出力损失"
  501. width="110"
  502. >
  503. </el-table-column>
  504. <el-table-column
  505. :formatter="filter_xdtjssdl"
  506. sortable
  507. prop="xdtjssdl"
  508. label="限电停机损失"
  509. width="100"
  510. >
  511. </el-table-column>
  512. <el-table-column
  513. :formatter="filter_dfssdl"
  514. sortable
  515. prop="dfssdl"
  516. label="待风损失"
  517. width="90"
  518. >
  519. </el-table-column>
  520. <el-table-column
  521. :formatter="filter_sdtjssdl"
  522. sortable
  523. prop="sdtjssdl"
  524. label="手动停机损失"
  525. width="100"
  526. >
  527. </el-table-column>
  528. <el-table-column
  529. :formatter="filter_zcfdssdl"
  530. sortable
  531. prop="zcfdssdl"
  532. label="正常发电损失"
  533. width="100"
  534. >
  535. </el-table-column>
  536. <el-table-column
  537. :formatter="filter_qxjclssdl"
  538. sortable
  539. prop="qxjclssdl"
  540. label="缺陷降出力"
  541. width="90"
  542. >
  543. </el-table-column>
  544. <el-table-column
  545. :formatter="filter_fnlyl"
  546. sortable
  547. prop="fnlyl"
  548. label="风能利用率"
  549. width="90"
  550. >
  551. </el-table-column>
  552. </el-table-column>
  553. </el-table>
  554. </el-card>
  555. </el-row>
  556. </el-tab-pane>
  557. </el-tabs>
  558. </el-card>
  559. </el-main>
  560. </el-container>
  561. </template>
  562. <script>
  563. import * as echarts from "echarts";
  564. import excelHelper from "@/utils/excelHelper";
  565. export default {
  566. data() {
  567. return {
  568. len:10,
  569. fc:"",
  570. pj:"",
  571. xl:"",
  572. autoHeight_fc: 400,
  573. autoHeight_pj: 800,
  574. autoHeight_xl: 1200,
  575. styleObject_fc: {
  576. height: '460px'
  577. },
  578. styleObject_pj: {
  579. height: '860px'
  580. },
  581. styleObject_xl: {
  582. height: '1220px'
  583. },
  584. wpIdslist: {
  585. name:"",
  586. id:"",
  587. },
  588. projectlist:{
  589. name:"",
  590. id:"",
  591. },
  592. linelist:{
  593. name:"",
  594. id:"",
  595. },
  596. powerAjaxDetailAll: {
  597. generation: [],
  598. sacadafdl: [],
  599. jxssdl: [],
  600. jxslssdl: [],
  601. gzssdl: [],
  602. gzslssdl: [],
  603. xdjclssdl: [],
  604. xdtjssdl: [],
  605. dwslssdl: [],
  606. hjslssdl: [],
  607. dfssdl: [],
  608. sdtjssdl: [],
  609. zcfdssdl: [],
  610. qxjclssdl: [],
  611. llfdl: [],
  612. },
  613. fc_date: [],
  614. pj_date: [],
  615. xl_date: [],
  616. beginDate: "2021-01-01",
  617. endDate: "2021-01-02",
  618. activeName: "first",
  619. tableid: "fc",
  620. celname: [],
  621. histogram_fc: {},
  622. histogram_xm: {},
  623. histogram_jdxl: {},
  624. table_fc: {},
  625. table_xm: {},
  626. table_jdxl: {},
  627. queryAll_querybutton: {},
  628. datelength: 0,
  629. };
  630. },
  631. methods: {
  632. onSubmit() {
  633. },
  634. query_wpid() {
  635. this.$http.get("powercompare/windfarmAjax?").then((res) => {
  636. this.wpIdslist = res.data.data;
  637. });
  638. },
  639. query_xml(){
  640. this.pj = "";
  641. this.xl = "";
  642. this.$http.get("powercompare/projectAjax?wpIds=" + this.fc).then((res) => {
  643. this.projectlist = res.data.data;
  644. });
  645. },
  646. query_xl(){
  647. this.xl = "";
  648. this.$http.get("powercompare/lineAjax?pjIds=" + this.pj).then((res) => {
  649. this.linelist = res.data.data;
  650. });
  651. },
  652. filter_llfdl(cellValue){
  653. return parseFloat(cellValue.llfdl).toFixed(2);
  654. },
  655. filter_scadafdl(cellValue){
  656. return parseFloat(cellValue.scadafdl).toFixed(2);
  657. },
  658. filter_speed(cellValue){
  659. return parseFloat(cellValue.speed).toFixed(2);
  660. },
  661. filter_gzssdl(cellValue){
  662. return parseFloat(cellValue.gzssdl).toFixed(2);
  663. },
  664. filter_gzslssdl(cellValue){
  665. return parseFloat(cellValue.gzslssdl).toFixed(2);
  666. },
  667. filter_jxssdl(cellValue){
  668. return parseFloat(cellValue.jxssdl).toFixed(2);
  669. },
  670. filter_jxslssdl(cellValue){
  671. return parseFloat(cellValue.jxslssdl).toFixed(2);
  672. },
  673. filter_dwslssdl(cellValue){
  674. return parseFloat(cellValue.dwslssdl).toFixed(2);
  675. },
  676. filter_hjslssdl(cellValue){
  677. return parseFloat(cellValue.hjslssdl).toFixed(2);
  678. },
  679. filter_xdjclssdl(cellValue){
  680. return parseFloat(cellValue.xdjclssdl).toFixed(2);
  681. },
  682. filter_xdtjssdl(cellValue){
  683. return parseFloat(cellValue.xdtjssdl).toFixed(2);
  684. },
  685. filter_dfssdl(cellValue){
  686. return parseFloat(cellValue.dfssdl).toFixed(2);
  687. },
  688. filter_sdtjssdl(cellValue){
  689. return parseFloat(cellValue.sdtjssdl).toFixed(2);
  690. },
  691. filter_zcfdssdl(cellValue){
  692. return parseFloat(cellValue.zcfdssdl).toFixed(2);
  693. },
  694. filter_qxjclssdl(cellValue){
  695. return parseFloat(cellValue.qxjclssdl).toFixed(2);
  696. },
  697. filter_fnlyl(cellValue){
  698. return parseFloat(cellValue.fnlyl).toFixed(2);
  699. },
  700. handleClick(tab) {
  701. if (tab.name === "first") {
  702. this.tableid = "fc";
  703. this.query();
  704. } else if (tab.name === "second") {
  705. this.tableid = "pj";
  706. this.query();
  707. } else if (tab.name === "jdxl") {
  708. this.tableid = "xl";
  709. this.query();
  710. }
  711. },
  712. deleteRow(index, rows) {
  713. rows.splice(index, 1);
  714. },
  715. resetdata(){
  716. Object.assign(
  717. this.$data.powerAjaxDetailAll,
  718. this.$options.data().powerAjaxDetailAll
  719. );
  720. Object.assign(this.$data.datelength, this.$options.data().datelength);
  721. Object.assign(this.$data.fc_date, this.$options.data().fc_date);
  722. Object.assign(this.$data.xl_date, this.$options.data().xl_date);
  723. Object.assign(this.$data.pj_date, this.$options.data().ipj_date);
  724. Object.assign(this.$data.autoHeight_fc, this.$options.data().autoHeight_fc);
  725. Object.assign(this.$data.styleObject_fc, this.$options.data().styleObject_fc);
  726. Object.assign(this.$data.autoHeight_pj, this.$options.data().autoHeight_pj);
  727. Object.assign(this.$data.styleObject_pj, this.$options.data().styleObject_pj);
  728. Object.assign(this.$data.autoHeight_xl, this.$options.data().autoHeight_xl);
  729. Object.assign(this.$data.styleObject_xl, this.$options.data().styleObject_xl);
  730. },
  731. query() {
  732. this.resetdata();
  733. this.styleObject_fc.height = '460px';
  734. this.autoHeight_fc = '400px';
  735. this.styleObject_pj.height = '860px';
  736. this.autoHeight_pj = '800px';
  737. this.styleObject_xl.height = '1260px';
  738. this.autoHeight_xl = '1200px';
  739. // this.fc_date = "";
  740. // this.xl_date = "";
  741. // this.pj_date = "";
  742. this.$http
  743. .get(
  744. "powercomparedetail/powerAjaxDetailAll?beginDate=" +
  745. this.beginDate +
  746. "&endDate=" +
  747. this.endDate +
  748. "&queryType=" +
  749. this.tableid
  750. )
  751. .then((res) => {
  752. let that = this;
  753. let queryAll = res.data.data;
  754. this.datelength = queryAll.length;
  755. for (let i = 0; i < queryAll.length; i++) {
  756. this.powerAjaxDetailAll.generation[i] = queryAll[i].generation;
  757. this.powerAjaxDetailAll.sacadafdl[i] = queryAll[i].sacadafdl;
  758. this.powerAjaxDetailAll.jxssdl[i] = queryAll[i].jxssdl;
  759. this.powerAjaxDetailAll.jxslssdl[i] = queryAll[i].jxslssdl;
  760. this.powerAjaxDetailAll.gzssdl[i] = queryAll[i].gzssdl;
  761. this.powerAjaxDetailAll.gzslssdl[i] = queryAll[i].gzslssdl;
  762. this.powerAjaxDetailAll.xdjclssdl[i] = queryAll[i].xdjclssdl;
  763. this.powerAjaxDetailAll.xdtjssdl[i] = queryAll[i].xdtjssdl;
  764. this.powerAjaxDetailAll.dwslssdl[i] = queryAll[i].dwslssdl;
  765. this.powerAjaxDetailAll.hjslssdl[i] = queryAll[i].hjslssdl;
  766. this.powerAjaxDetailAll.dfssdl[i] = queryAll[i].dfssdl;
  767. this.powerAjaxDetailAll.sdtjssdl[i] = queryAll[i].sdtjssdl;
  768. this.powerAjaxDetailAll.zcfdssdl[i] = queryAll[i].zcfdssdl;
  769. this.powerAjaxDetailAll.qxjclssdl[i] = queryAll[i].qxjclssdl;
  770. this.powerAjaxDetailAll.llfdl[i] = queryAll[i].llfdl;
  771. }
  772. if (this.tableid === "fc") {
  773. that.drawhistogram_fc(this.powerAjaxDetailAll);
  774. } else if (this.tableid === "pj") {
  775. that.drawhistogram_pj(this.powerAjaxDetailAll);
  776. } else if (this.tableid === "xl") {
  777. this.autoHeight = 1200;
  778. that.drawhistogram_xl(this.powerAjaxDetailAll);
  779. }
  780. });
  781. //表格数据获取
  782. this.$http
  783. .get(
  784. "powercomparedetail/powerAjaxDetailAll?beginDate=" +
  785. this.beginDate +
  786. "&endDate=" +
  787. this.endDate +
  788. "&queryType=" +
  789. this.tableid
  790. )
  791. .then((res) => {
  792. let that = this;
  793. let queryAll_table = res.data.data;
  794. if (this.tableid === "fc") {
  795. that.fc_date = queryAll_table;
  796. } else if (this.tableid === "pj") {
  797. that.pj_date = queryAll_table;
  798. } else if (this.tableid === "xl") {
  799. that.xl_date = queryAll_table;
  800. }
  801. });
  802. },
  803. async queryPowerAll() {
  804. this.judge = false;
  805. this.autoHeight = 600;
  806. this.resetdata();
  807. let that = this;
  808. if (this.beginDate == "" || this.endDate == "" || this.beginDate == undefined || this.endDate == undefined) {
  809. this.beginDate = "2021-01-01";
  810. that.endDate = "2021-01-02";
  811. that.$message.error("请选时间!");
  812. return;
  813. }
  814. this.fc_date = "";
  815. this.xl_date = "";
  816. this.pj_date = "";
  817. if (
  818. that.fc == "" ||
  819. that.fc == null ||
  820. that.fc == undefined
  821. ) {
  822. that.query();
  823. } else {
  824. this.$http
  825. .get(
  826. "powercomparedetail/powerAjaxDetail?wpId=" +
  827. this.fc +
  828. "&pjId=" +
  829. this.pj +
  830. "&xlId=" +
  831. this.xl +
  832. "&beginDate=" +
  833. this.beginDate +
  834. "&endDate=" +
  835. this.endDate
  836. )
  837. .then((res) => {
  838. let that = this;
  839. let queryAll = res.data.data;
  840. this.datelength = queryAll.length;
  841. this.len = queryAll.length;
  842. if(this.len <= 10){that.autoHeight_fc = 580; that.styleObject_fc.height = '700px' }
  843. else if(this.len > 10 && this.len <=20){that.autoHeight_fc = 780; that.styleObject_fc.height = '800px';that.autoHeight_pj = 780; that.styleObject_pj.height = '800px';that.autoHeight_xl = 780; that.styleObject_xl.height = '800px' }
  844. else if(this.len > 20 && this.len <=30){that.autoHeight_fc = 980; that.styleObject_fc.height = '1000px';that.autoHeight_pj = 980; that.styleObject_pj.height = '1000px';that.autoHeight_xl = 980; that.styleObject_xl.height = '1000px' }
  845. else if(this.len > 30 && this.len <=40){that.autoHeight_fc = 1180; that.styleObject_fc.height = '1200px';that.autoHeight_pj = 1180; that.styleObject_pj.height = '1200px';that.autoHeight_xl = 1180; that.styleObject_xl.height = '1200px' }
  846. else if(this.len > 40 && this.len <=50){that.autoHeight_fc = 1380; that.styleObject_fc.height = '1400px';that.autoHeight_pj = 1380; that.styleObject_pj.height = '1400px';that.autoHeight_xl = 1380; that.styleObject_xl.height = '1400px' }
  847. else if(this.len > 50 && this.len <=60){that.autoHeight_fc = 1580; that.styleObject_fc.height = '1600px';that.autoHeight_pj = 1580; that.styleObject_pj.height = '1600px';that.autoHeight_xl = 1580; that.styleObject_xl.height = '1600px' }
  848. else if(this.len > 60 && this.len <=70){that.autoHeight_fc = 1780; that.styleObject_fc.height = '1800px';that.autoHeight_pj = 1780; that.styleObject_pj.height = '1800px';that.autoHeight_xl = 1780; that.styleObject_xl.height = '1800px' }
  849. else if(this.len > 70 && this.len <=80){that.autoHeight_fc = 1980; that.styleObject_fc.height = '2000px';that.autoHeight_pj = 1980; that.styleObject_pj.height = '2000px';that.autoHeight_xl = 1980; that.styleObject_xl.height = '2000px' }
  850. else{that.autoHeight_fc = 2180; that.styleObject_fc.height = '2200px';that.autoHeight_pj = 2180; that.styleObject_pj.height = '2200px';that.autoHeight_xl = 2180; that.styleObject_xl.height = '2200px' }
  851. for (let i = 0; i < queryAll.length; i++) {
  852. this.powerAjaxDetailAll.generation[i] = queryAll[i].generation;
  853. this.powerAjaxDetailAll.sacadafdl[i] = queryAll[i].sacadafdl;
  854. this.powerAjaxDetailAll.jxssdl[i] = queryAll[i].jxssdl;
  855. this.powerAjaxDetailAll.jxslssdl[i] = queryAll[i].jxslssdl;
  856. this.powerAjaxDetailAll.gzssdl[i] = queryAll[i].gzssdl;
  857. this.powerAjaxDetailAll.gzslssdl[i] = queryAll[i].gzslssdl;
  858. this.powerAjaxDetailAll.xdjclssdl[i] = queryAll[i].xdjclssdl;
  859. this.powerAjaxDetailAll.xdtjssdl[i] = queryAll[i].xdtjssdl;
  860. this.powerAjaxDetailAll.dwslssdl[i] = queryAll[i].dwslssdl;
  861. this.powerAjaxDetailAll.hjslssdl[i] = queryAll[i].hjslssdl;
  862. this.powerAjaxDetailAll.dfssdl[i] = queryAll[i].dfssdl;
  863. this.powerAjaxDetailAll.sdtjssdl[i] = queryAll[i].sdtjssdl;
  864. this.powerAjaxDetailAll.zcfdssdl[i] = queryAll[i].zcfdssdl;
  865. this.powerAjaxDetailAll.qxjclssdl[i] = queryAll[i].qxjclssdl;
  866. this.powerAjaxDetailAll.llfdl[i] = queryAll[i].llfdl;
  867. }
  868. if (this.tableid === "fc") {
  869. that.drawhistogram_fc(this.powerAjaxDetailAll);
  870. } else if (this.tableid === "pj") {
  871. that.drawhistogram_pj(this.powerAjaxDetailAll);
  872. } else if (this.tableid === "xl") {
  873. that.drawhistogram_xl(this.powerAjaxDetailAll);
  874. }
  875. let queryAll_table = res.data.data;
  876. if (this.tableid === "fc") {
  877. that.fc_date = queryAll_table;
  878. } else if (this.tableid === "pj") {
  879. that.pj_date = queryAll_table;
  880. } else if (this.tableid === "xl") {
  881. that.xl_date = queryAll_table;
  882. }
  883. });
  884. }
  885. },
  886. checkwindfarm() {
  887. if (this.fc == "") {
  888. this.$message.error("请选择风场!");
  889. return;
  890. }
  891. },
  892. checkproject() {
  893. if (this.pj == "") {
  894. this.$message.error("请选择项目!");
  895. return;
  896. }
  897. if (new Date(this.timedate) == null) {
  898. this.$message.error("请选择时间");
  899. return;
  900. }
  901. },
  902. checktime() {
  903. if (new Date(this.timedate) == null) {
  904. this.$message.error("请选择时间");
  905. return;
  906. }
  907. },
  908. queryApDataMx() {
  909. this.$router.push({ path: "/performanceList_fan" });
  910. },
  911. toExcel() {
  912. let that = this;
  913. if (this.tableid === "fc") {
  914. excelHelper.exportExcel("fc_table","fc数据",".xls",true);
  915. } else if (this.tableid === "pj") {
  916. excelHelper.exportExcel("pj_table","pj数据",".xls",true);
  917. } else if (this.tableid === "xl") {
  918. excelHelper.exportExcel("xl_table","xl数据",".xls",true);
  919. }
  920. },
  921. drawhistogram_fc(date) {
  922. this.chartLine = echarts.init(document.getElementById("histogram_fc"));
  923. this.chartLine.clear();
  924. this.chartLine.resize({height: this.autoHeight_fc})
  925. var option;
  926. option = {
  927. textStyle:{fontSize:10},
  928. color:["#64E572","#24CBE5","#128A9D","#DDDF00","#AAAC00","#ED561A","#8E5139","#50B532","#216F0A","#048DC7","#006089","#00B3FF","#000000"],
  929. title: {
  930. text: "风机绩效榜单",
  931. left: 300,
  932. top: -5,
  933. textStyle: {
  934. fontSize: 13,
  935. },
  936. },
  937. tooltip: {
  938. trigger: "axis",
  939. axisPointer: {
  940. // Use axis to trigger tooltip
  941. type: "shadow", // 'shadow' as default; can also be 'line' or 'shadow'
  942. },
  943. },
  944. legend: {
  945. left: 15,
  946. top: 30,
  947. data: [
  948. "实发电量",
  949. "检修损失",
  950. "检修受累损失",
  951. "故障损失",
  952. "故障受累损失",
  953. "限电降出力损失",
  954. "限电停机损失",
  955. "电网受累损失",
  956. "环境受累损失",
  957. "待风损失",
  958. "手动停机损失",
  959. "正常发电损失",
  960. "缺陷降出力损失电量",
  961. ],
  962. },
  963. grid: {
  964. top: "130",
  965. left: "10%",
  966. right: "10%",
  967. bottom: "50",
  968. },
  969. xAxis: {
  970. type: "value",
  971. },
  972. yAxis: {
  973. type: "category",
  974. data: date.generation,
  975. },
  976. series: [
  977. {
  978. name: "实发电量",
  979. type: "bar",
  980. stack: "total",
  981. label: {
  982. show: false,
  983. },
  984. emphasis: {
  985. focus: "series",
  986. },
  987. data: date.sacadafdl,
  988. },
  989. {
  990. name: "检修损失",
  991. type: "bar",
  992. stack: "total",
  993. label: {
  994. show: false,
  995. },
  996. emphasis: {
  997. focus: "series",
  998. },
  999. data: date.jxssdl,
  1000. },
  1001. {
  1002. name: "检修受累损失",
  1003. type: "bar",
  1004. stack: "total",
  1005. label: {
  1006. show: false,
  1007. },
  1008. emphasis: {
  1009. focus: "series",
  1010. },
  1011. data: date.jxslssdl,
  1012. },
  1013. {
  1014. name: "故障损失",
  1015. type: "bar",
  1016. stack: "total",
  1017. label: {
  1018. show: false,
  1019. },
  1020. emphasis: {
  1021. focus: "series",
  1022. },
  1023. data: date.gzssdl,
  1024. },
  1025. {
  1026. name: "故障受累损失",
  1027. type: "bar",
  1028. stack: "total",
  1029. label: {
  1030. show: false,
  1031. },
  1032. emphasis: {
  1033. focus: "series",
  1034. },
  1035. data: date.gzslssdl,
  1036. },
  1037. {
  1038. name: "限电降出力损失",
  1039. type: "bar",
  1040. stack: "total",
  1041. label: {
  1042. show: false,
  1043. },
  1044. emphasis: {
  1045. focus: "series",
  1046. },
  1047. data: date.xdjclssdl,
  1048. },
  1049. {
  1050. name: "限电停机损失",
  1051. type: "bar",
  1052. stack: "total",
  1053. label: {
  1054. show: false,
  1055. },
  1056. emphasis: {
  1057. focus: "series",
  1058. },
  1059. data: date.xdtjssdl,
  1060. },
  1061. {
  1062. name: "电网受累损失",
  1063. type: "bar",
  1064. stack: "total",
  1065. label: {
  1066. show: false,
  1067. },
  1068. emphasis: {
  1069. focus: "series",
  1070. },
  1071. data: date.dwslssdl,
  1072. },
  1073. {
  1074. name: "环境受累损失",
  1075. type: "bar",
  1076. stack: "total",
  1077. label: {
  1078. show: false,
  1079. },
  1080. emphasis: {
  1081. focus: "series",
  1082. },
  1083. data: date.hjslssdl,
  1084. },
  1085. {
  1086. name: "待风损失",
  1087. type: "bar",
  1088. stack: "total",
  1089. label: {
  1090. show: false,
  1091. },
  1092. emphasis: {
  1093. focus: "series",
  1094. },
  1095. data: date.dfssdl,
  1096. },
  1097. {
  1098. name: "手动停机损失",
  1099. type: "bar",
  1100. stack: "total",
  1101. label: {
  1102. show: false,
  1103. },
  1104. emphasis: {
  1105. focus: "series",
  1106. },
  1107. data: date.sdtjssdl,
  1108. },
  1109. {
  1110. name: "正常发电损失",
  1111. type: "bar",
  1112. stack: "total",
  1113. label: {
  1114. show: false,
  1115. },
  1116. emphasis: {
  1117. focus: "series",
  1118. },
  1119. data: date.zcfdssdl,
  1120. },
  1121. {
  1122. name: "缺陷降出力损失电量",
  1123. type: "bar",
  1124. stack: "total",
  1125. label: {
  1126. show: false,
  1127. },
  1128. emphasis: {
  1129. focus: "series",
  1130. },
  1131. data: date.qxjclssdl,
  1132. },
  1133. //曲线
  1134. {
  1135. name: "总和",
  1136. data: date.llfdl,
  1137. type: "line",
  1138. symbol: "circle",
  1139. symbolSize: 20,
  1140. lineStyle: {
  1141. color: "#5470C6",
  1142. width: 4,
  1143. type: "dashed",
  1144. },
  1145. itemStyle: {
  1146. borderWidth: 3,
  1147. borderColor: "#EE6666",
  1148. color: "yellow",
  1149. },
  1150. },
  1151. ],
  1152. };
  1153. this.chartLine.setOption(option);
  1154. },
  1155. drawhistogram_pj(date) {
  1156. this.chartLine = echarts.init(document.getElementById("histogram_xm"));
  1157. this.chartLine.clear();
  1158. this.chartLine.resize({height: this.autoHeight_pj})
  1159. var option;
  1160. var option;
  1161. option = {
  1162. color:["#64E572","#24CBE5","#128A9D","#DDDF00","#AAAC00","#ED561A","#8E5139","#50B532","#216F0A","#048DC7","#006089","#00B3FF","#000000"],
  1163. title: {
  1164. text: "风机绩效榜单",
  1165. left: 300,
  1166. top: -5,
  1167. textStyle: {
  1168. fontSize: 13,
  1169. },
  1170. },
  1171. tooltip: {
  1172. trigger: "axis",
  1173. axisPointer: {
  1174. // Use axis to trigger tooltip
  1175. type: "shadow", // 'shadow' as default; can also be 'line' or 'shadow'
  1176. },
  1177. },
  1178. legend: {
  1179. left: 15,
  1180. top: 30,
  1181. data: [
  1182. "实发电量",
  1183. "检修损失",
  1184. "检修受累损失",
  1185. "故障损失",
  1186. "故障受累损失",
  1187. "限电降出力损失",
  1188. "限电停机损失",
  1189. "电网受累损失",
  1190. "环境受累损失",
  1191. "待风损失",
  1192. "手动停机损失",
  1193. "正常发电损失",
  1194. "缺陷降出力损失电量",
  1195. ],
  1196. },
  1197. grid: {
  1198. top: "130",
  1199. left: "10%",
  1200. right: "10%",
  1201. bottom: "50",
  1202. },
  1203. xAxis: {
  1204. type: "value",
  1205. },
  1206. yAxis: {
  1207. type: "category",
  1208. data: date.generation,
  1209. },
  1210. series: [
  1211. {
  1212. name: "实发电量",
  1213. type: "bar",
  1214. stack: "total",
  1215. label: {
  1216. show: false,
  1217. },
  1218. emphasis: {
  1219. focus: "series",
  1220. },
  1221. data: date.sacadafdl,
  1222. },
  1223. {
  1224. name: "检修损失",
  1225. type: "bar",
  1226. stack: "total",
  1227. label: {
  1228. show: false,
  1229. },
  1230. emphasis: {
  1231. focus: "series",
  1232. },
  1233. data: date.jxssdl,
  1234. },
  1235. {
  1236. name: "检修受累损失",
  1237. type: "bar",
  1238. stack: "total",
  1239. label: {
  1240. show: false,
  1241. },
  1242. emphasis: {
  1243. focus: "series",
  1244. },
  1245. data: date.jxslssdl,
  1246. },
  1247. {
  1248. name: "故障损失",
  1249. type: "bar",
  1250. stack: "total",
  1251. label: {
  1252. show: false,
  1253. },
  1254. emphasis: {
  1255. focus: "series",
  1256. },
  1257. data: date.gzssdl,
  1258. },
  1259. {
  1260. name: "故障受累损失",
  1261. type: "bar",
  1262. stack: "total",
  1263. label: {
  1264. show: false,
  1265. },
  1266. emphasis: {
  1267. focus: "series",
  1268. },
  1269. data: date.gzslssdl,
  1270. },
  1271. {
  1272. name: "限电降出力损失",
  1273. type: "bar",
  1274. stack: "total",
  1275. label: {
  1276. show: false,
  1277. },
  1278. emphasis: {
  1279. focus: "series",
  1280. },
  1281. data: date.xdjclssdl,
  1282. },
  1283. {
  1284. name: "限电停机损失",
  1285. type: "bar",
  1286. stack: "total",
  1287. label: {
  1288. show: false,
  1289. },
  1290. emphasis: {
  1291. focus: "series",
  1292. },
  1293. data: date.xdtjssdl,
  1294. },
  1295. {
  1296. name: "电网受累损失",
  1297. type: "bar",
  1298. stack: "total",
  1299. label: {
  1300. show: false,
  1301. },
  1302. emphasis: {
  1303. focus: "series",
  1304. },
  1305. data: date.dwslssdl,
  1306. },
  1307. {
  1308. name: "环境受累损失",
  1309. type: "bar",
  1310. stack: "total",
  1311. label: {
  1312. show: false,
  1313. },
  1314. emphasis: {
  1315. focus: "series",
  1316. },
  1317. data: date.hjslssdl,
  1318. },
  1319. {
  1320. name: "待风损失",
  1321. type: "bar",
  1322. stack: "total",
  1323. label: {
  1324. show: false,
  1325. },
  1326. emphasis: {
  1327. focus: "series",
  1328. },
  1329. data: date.dfssdl,
  1330. },
  1331. {
  1332. name: "手动停机损失",
  1333. type: "bar",
  1334. stack: "total",
  1335. label: {
  1336. show: false,
  1337. },
  1338. emphasis: {
  1339. focus: "series",
  1340. },
  1341. data: date.sdtjssdl,
  1342. },
  1343. {
  1344. name: "正常发电损失",
  1345. type: "bar",
  1346. stack: "total",
  1347. label: {
  1348. show: false,
  1349. },
  1350. emphasis: {
  1351. focus: "series",
  1352. },
  1353. data: date.zcfdssdl,
  1354. },
  1355. {
  1356. name: "缺陷降出力损失电量",
  1357. type: "bar",
  1358. stack: "total",
  1359. label: {
  1360. show: false,
  1361. },
  1362. emphasis: {
  1363. focus: "series",
  1364. },
  1365. data: date.qxjclssdl,
  1366. },
  1367. //曲线
  1368. {
  1369. name: "总和",
  1370. data: date.llfdl,
  1371. type: "line",
  1372. symbol: "circle",
  1373. symbolSize: 20,
  1374. lineStyle: {
  1375. color: "#5470C6",
  1376. width: 4,
  1377. type: "dashed",
  1378. },
  1379. itemStyle: {
  1380. borderWidth: 3,
  1381. borderColor: "#EE6666",
  1382. color: "yellow",
  1383. },
  1384. },
  1385. ],
  1386. };
  1387. this.chartLine.setOption(option);
  1388. },
  1389. drawhistogram_xl(date) {
  1390. this.chartLine = echarts.init(document.getElementById("histogram_jdxl"));
  1391. this.chartLine.clear();
  1392. this.chartLine.resize({height: this.autoHeight_xl})
  1393. var option;
  1394. var option;
  1395. option = {
  1396. color:["#64E572","#24CBE5","#128A9D","#DDDF00","#AAAC00","#ED561A","#8E5139","#50B532","#216F0A","#048DC7","#006089","#00B3FF","#000000"],
  1397. title: {
  1398. text: "风机绩效榜单",
  1399. left: 300,
  1400. top: -5,
  1401. textStyle: {
  1402. fontSize: 13,
  1403. },
  1404. },
  1405. tooltip: {
  1406. trigger: "axis",
  1407. axisPointer: {
  1408. // Use axis to trigger tooltip
  1409. type: "shadow", // 'shadow' as default; can also be 'line' or 'shadow'
  1410. },
  1411. },
  1412. legend: {
  1413. left: 15,
  1414. top: 30,
  1415. data: [
  1416. "实发电量",
  1417. "检修损失",
  1418. "检修受累损失",
  1419. "故障损失",
  1420. "故障受累损失",
  1421. "限电降出力损失",
  1422. "限电停机损失",
  1423. "电网受累损失",
  1424. "环境受累损失",
  1425. "待风损失",
  1426. "手动停机损失",
  1427. "正常发电损失",
  1428. "缺陷降出力损失电量",
  1429. ],
  1430. },
  1431. grid: {
  1432. top: "130",
  1433. left: "10%",
  1434. right: "10%",
  1435. bottom: "50",
  1436. },
  1437. xAxis: {
  1438. type: "value",
  1439. },
  1440. yAxis: {
  1441. type: "category",
  1442. data: date.generation,
  1443. },
  1444. series: [
  1445. {
  1446. name: "实发电量",
  1447. type: "bar",
  1448. stack: "total",
  1449. label: {
  1450. show: false,
  1451. },
  1452. emphasis: {
  1453. focus: "series",
  1454. },
  1455. data: date.sacadafdl,
  1456. },
  1457. {
  1458. name: "检修损失",
  1459. type: "bar",
  1460. stack: "total",
  1461. label: {
  1462. show: false,
  1463. },
  1464. emphasis: {
  1465. focus: "series",
  1466. },
  1467. data: date.jxssdl,
  1468. },
  1469. {
  1470. name: "检修受累损失",
  1471. type: "bar",
  1472. stack: "total",
  1473. label: {
  1474. show: false,
  1475. },
  1476. emphasis: {
  1477. focus: "series",
  1478. },
  1479. data: date.jxslssdl,
  1480. },
  1481. {
  1482. name: "故障损失",
  1483. type: "bar",
  1484. stack: "total",
  1485. label: {
  1486. show: false,
  1487. },
  1488. emphasis: {
  1489. focus: "series",
  1490. },
  1491. data: date.gzssdl,
  1492. },
  1493. {
  1494. name: "故障受累损失",
  1495. type: "bar",
  1496. stack: "total",
  1497. label: {
  1498. show: false,
  1499. },
  1500. emphasis: {
  1501. focus: "series",
  1502. },
  1503. data: date.gzslssdl,
  1504. },
  1505. {
  1506. name: "限电降出力损失",
  1507. type: "bar",
  1508. stack: "total",
  1509. label: {
  1510. show: false,
  1511. },
  1512. emphasis: {
  1513. focus: "series",
  1514. },
  1515. data: date.xdjclssdl,
  1516. },
  1517. {
  1518. name: "限电停机损失",
  1519. type: "bar",
  1520. stack: "total",
  1521. label: {
  1522. show: false,
  1523. },
  1524. emphasis: {
  1525. focus: "series",
  1526. },
  1527. data: date.xdtjssdl,
  1528. },
  1529. {
  1530. name: "电网受累损失",
  1531. type: "bar",
  1532. stack: "total",
  1533. label: {
  1534. show: false,
  1535. },
  1536. emphasis: {
  1537. focus: "series",
  1538. },
  1539. data: date.dwslssdl,
  1540. },
  1541. {
  1542. name: "环境受累损失",
  1543. type: "bar",
  1544. stack: "total",
  1545. label: {
  1546. show: false,
  1547. },
  1548. emphasis: {
  1549. focus: "series",
  1550. },
  1551. data: date.hjslssdl,
  1552. },
  1553. {
  1554. name: "待风损失",
  1555. type: "bar",
  1556. stack: "total",
  1557. label: {
  1558. show: false,
  1559. },
  1560. emphasis: {
  1561. focus: "series",
  1562. },
  1563. data: date.dfssdl,
  1564. },
  1565. {
  1566. name: "手动停机损失",
  1567. type: "bar",
  1568. stack: "total",
  1569. label: {
  1570. show: false,
  1571. },
  1572. emphasis: {
  1573. focus: "series",
  1574. },
  1575. data: date.sdtjssdl,
  1576. },
  1577. {
  1578. name: "正常发电损失",
  1579. type: "bar",
  1580. stack: "total",
  1581. label: {
  1582. show: false,
  1583. },
  1584. emphasis: {
  1585. focus: "series",
  1586. },
  1587. data: date.zcfdssdl,
  1588. },
  1589. {
  1590. name: "缺陷降出力损失电量",
  1591. type: "bar",
  1592. stack: "total",
  1593. label: {
  1594. show: false,
  1595. },
  1596. emphasis: {
  1597. focus: "series",
  1598. },
  1599. data: date.qxjclssdl,
  1600. },
  1601. //曲线
  1602. {
  1603. name: "总和",
  1604. data: date.llfdl,
  1605. type: "line",
  1606. symbol: "circle",
  1607. symbolSize: 20,
  1608. lineStyle: {
  1609. color: "#5470C6",
  1610. width: 4,
  1611. type: "dashed",
  1612. },
  1613. itemStyle: {
  1614. borderWidth: 3,
  1615. borderColor: "#EE6666",
  1616. color: "yellow",
  1617. },
  1618. },
  1619. ],
  1620. };
  1621. this.chartLine.setOption(option);
  1622. },
  1623. },
  1624. mounted() {
  1625. this.$nextTick(() => {
  1626. this.tableHeight = window.innerHeight + (this.len /10 ) * (this.len /10 ) * 100;
  1627. //后面的50:根据需求空出的高度,自行调整
  1628. });
  1629. this.query_wpid();
  1630. this.query();
  1631. },
  1632. };
  1633. </script>
  1634. <style scoped>
  1635. .bg-purple-dark {
  1636. background: #fff;
  1637. }
  1638. .grid-content {
  1639. border-radius: 2px;
  1640. min-height: 36px;
  1641. margin-top: -15px;
  1642. }
  1643. .item {
  1644. margin-top: 10px;
  1645. margin-right: 40px;
  1646. }
  1647. .el-row {
  1648. margin: 10px;
  1649. }
  1650. .extent_1 {
  1651. height: 450px;
  1652. }
  1653. .extent_2 {
  1654. height: 600px;
  1655. }
  1656. .extent_3 {
  1657. height: 750px;
  1658. }
  1659. .extent_4 {
  1660. height: 800px;
  1661. }
  1662. .extent_5 {
  1663. height: 1150px;
  1664. }
  1665. </style>