index.vue 70 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359
  1. <template>
  2. <el-dialog
  3. custom-class="cDialog"
  4. top="50px"
  5. v-model="dialogVisible"
  6. width="80%"
  7. @closed="dialogClosed"
  8. >
  9. <el-button
  10. style="position: absolute; right: 24px; top: 60px; z-index: 5000"
  11. type="primary"
  12. @click="exportPDF"
  13. >
  14. 导出为PDF</el-button
  15. >
  16. <div class="pdfDom">
  17. <div class="title">健康评价报告概述</div>
  18. <!-- <el-form style="margin-top: 10px">
  19. <el-form-item>健康状态:2022C505513</el-form-item>
  20. </el-form> -->
  21. <div class="tableBox">
  22. <div class="l">
  23. <el-form>
  24. <el-form-item class="imp fw"
  25. >{{ reportInfo1.wpName }}{{ reportInfo1.nemCode }}</el-form-item
  26. >
  27. <el-form-item class="imp fw"
  28. >评级结果:{{ reportInfo1.ratingResults }}
  29. </el-form-item>
  30. <el-form-item class="imp fw"
  31. >评级展望:{{ reportInfo1.ratingOutlook }}</el-form-item
  32. >
  33. <el-form-item class="imp fw"
  34. >评级有效期:{{
  35. new Date(reportInfo1.ratingValidityPeriod).formatDate(
  36. "yyyy-MM-dd hh:mm:ss"
  37. )
  38. }}</el-form-item
  39. >
  40. <el-form-item class="imp fw">主要参数指标数据:</el-form-item>
  41. </el-form>
  42. <el-table
  43. empty-text="暂无数据"
  44. :data="ls1"
  45. :header-cell-style="{
  46. background: 'rgb(153,204,255)',
  47. color: '#000',
  48. }"
  49. :cell-style="columnStyle"
  50. border
  51. stripe
  52. style="width: 100%; margin: 10px 0"
  53. >
  54. <el-table-column
  55. prop="name"
  56. label="指标"
  57. align="left"
  58. header-align="center"
  59. />
  60. <el-table-column
  61. prop="monthValue"
  62. label="当月值"
  63. align="right"
  64. header-align="center"
  65. />
  66. <el-table-column
  67. prop="lastMonth1Value"
  68. label="上月值"
  69. align="right"
  70. header-align="center"
  71. />
  72. <el-table-column
  73. prop="lastMonth2Value"
  74. label="前两月值"
  75. align="right"
  76. header-align="center"
  77. />
  78. </el-table>
  79. <el-form>
  80. <el-form-item class="imp fw" v-if="false"
  81. >报告确认人:{{ healthreport.bgqrr }}</el-form-item
  82. >
  83. <el-form-item class="imp fw"
  84. >报告出具时间:{{
  85. new Date(reportInfo1.reportCreatedate).formatDate(
  86. "yyyy-MM-dd hh:mm:ss"
  87. )
  88. }}</el-form-item
  89. >
  90. <el-form-item
  91. >注:本报告表述了健康管理系统对该设备的健康评级观点,仅供参考,并非是最终的决策的结论、建议。</el-form-item
  92. >
  93. </el-form>
  94. </div>
  95. <div class="r">
  96. <el-form>
  97. <el-form-item class="imp fw" style="border-bottom: 8px solid #000"
  98. >评级观点:</el-form-item
  99. >
  100. <div class="infoBox">
  101. <p>
  102. {{ datas.wtName || reportInfo1.wtId }}
  103. {{
  104. reportInfo1.firstIntegratedTime
  105. ? `于${new Date(reportInfo1.firstIntegratedTime).formatDate(
  106. "yyyy-MM-dd hh:mm:ss"
  107. )}并网运行,`
  108. : ""
  109. }}运行{{ reportInfo1.runningDays }}天,统计周期内累计发电量为{{
  110. (reportInfo1.monthFdl / 10000).toFixed(2)
  111. }}万Kwh,风能利用率{{ reportInfo1.yfnlyl }}%,环比增加{{
  112. reportInfo1.yfnlylhb
  113. }}%;设备可利用率{{ reportInfo1.ylyxs }}%,环比下降{{
  114. reportInfo1.ylyxshb
  115. }}%,MTTF为{{ reportInfo1.ymttf }}小时,MTBF为{{
  116. reportInfo1.ymtbf
  117. }}小时。
  118. </p>
  119. <p>统计期内故障发生{{ reportInfo1.ygzcs }}次</p>
  120. <p class="red" v-if="reportInfo1.gztop1">
  121. {{ reportInfo1.gztop1 }}
  122. </p>
  123. <p class="red" v-if="reportInfo1.gztop2">
  124. {{ reportInfo1.gztop2 }}
  125. </p>
  126. <p class="red" v-if="reportInfo1.gztop3">
  127. {{ reportInfo1.gztop3 }}
  128. </p>
  129. <p class="info">功率对部件温度影响较高是齿轮箱、主轴</p>
  130. <p class="info">部件劣化较高是发电机、主轴</p>
  131. <p v-if="reportInfo1.jxjgsc > 0">
  132. 定检已超过{{ reportInfo1.jxjgsc }}个月,近{{
  133. reportInfo1.jxjgsc
  134. }}个月无维修记录
  135. </p>
  136. </div>
  137. </el-form>
  138. </div>
  139. </div>
  140. <div class="textBox" v-if="tjjxfa.wtId">
  141. <el-form>
  142. <el-form-item class="imp fw"><b>推荐检修方案</b></el-form-item>
  143. <el-form-item class="imp fw text-indent-2">故障预测</el-form-item>
  144. <el-form-item class="text-indent-4"
  145. >高频:{{ tjjxfa.top1 || "" }}</el-form-item
  146. >
  147. <el-form-item class="text-indent-4"
  148. >中频:{{ tjjxfa.top2 || "" }}</el-form-item
  149. >
  150. <el-form-item class="m-b-10 text-indent-4"
  151. >低频:{{ tjjxfa.top3 || "" }}</el-form-item
  152. >
  153. <el-form-item class="text-indent-2"
  154. >推荐排查方法:{{ tjjxfa.gzpc || "" }}</el-form-item
  155. >
  156. <el-form-item class="text-indent-2"
  157. >推荐处理方法:{{ tjjxfa.gzcl || "" }}</el-form-item
  158. >
  159. <el-form-item class="text-indent-2"
  160. >推荐工具器:{{ tjjxfa.gqj || "" }}</el-form-item
  161. >
  162. <el-form-item class="text-indent-2"
  163. >平均消缺时长:{{ tjjxfa.xqsc || "---" }}小时</el-form-item
  164. >
  165. <el-form-item class="text-indent-2"
  166. >推荐检修日期:{{
  167. new Date(tjjxfa.recordDate).formatDate("yyyy-MM-dd")
  168. }}</el-form-item
  169. >
  170. <el-form-item>结论:健康报告达到推荐级别,推荐检修!</el-form-item>
  171. </el-form>
  172. </div>
  173. <div class="tableBox">
  174. <div class="l" style="width: 100%">
  175. <el-form>
  176. <el-form-item class="imp fw">可靠性</el-form-item>
  177. </el-form>
  178. <el-table
  179. empty-text="暂无数据"
  180. :data="alarmcountVoList"
  181. :header-cell-style="{
  182. background: 'rgb(153,204,255)',
  183. color: '#000',
  184. }"
  185. :cell-style="columnStyle"
  186. border
  187. stripe
  188. style="width: 100%; margin: 10px 0"
  189. >
  190. <el-table-column
  191. prop="description"
  192. label="描述"
  193. align="left"
  194. header-align="center"
  195. />
  196. <el-table-column
  197. prop="total"
  198. label="总次数"
  199. align="right"
  200. sortable
  201. header-align="center"
  202. />
  203. <el-table-column
  204. prop="maxSeconds"
  205. label="最大时长"
  206. align="right"
  207. sortable
  208. header-align="center"
  209. />
  210. <el-table-column
  211. prop="minSeconds"
  212. label="最小时长"
  213. align="right"
  214. sortable
  215. header-align="center"
  216. />
  217. <el-table-column
  218. prop="avgSeconds"
  219. label="平均时长"
  220. align="right"
  221. sortable
  222. header-align="center"
  223. />
  224. <el-table-column
  225. prop="totalSeconds"
  226. label="总时间"
  227. align="right"
  228. sortable
  229. header-align="center"
  230. />
  231. </el-table>
  232. </div>
  233. </div>
  234. <div class="textBox">
  235. <el-form>
  236. <el-form-item class="imp fw text-indent-2"><b>性能</b></el-form-item>
  237. <el-form-item class="imp fw text-indent-2"
  238. >曲线拟合及偏差率</el-form-item
  239. >
  240. <el-form-item class="text-indent-2">
  241. 统计周期内,曲线偏差率{{
  242. reportInfo1.yqxpcbbzsj
  243. }}%,其中风速在3-5m/s区间曲线偏差率{{
  244. reportInfo1.y35mqxpcl
  245. }}%,风速在5-11m/s区间曲线偏差率为{{
  246. reportInfo1.y511mqxpcl
  247. }}%,风速在11-25m/s区间曲线偏差率为{{ reportInfo1.y11mycqxpcl }}%。
  248. </el-form-item>
  249. <div>
  250. <div class="logHead">功率曲线拟合</div>
  251. <double-line-chart :height="'250px'" :list="glqxnh" />
  252. </div>
  253. <div v-if="false">
  254. <div class="logHead">曲线偏差率</div>
  255. <normal-line-chart :list="qxpcls" />
  256. </div>
  257. </el-form>
  258. </div>
  259. <!-- 对风偏差先隐藏 -->
  260. <div class="textBox" v-if="healthreport != null">
  261. <el-form>
  262. <el-form-item class="imp fw text-indent-2">对风偏差:</el-form-item>
  263. <el-form-item class="text-indent-2">
  264. 对应的偏航对风偏差角度信号,正负偏差正常次数{{
  265. Number(healthreport.hg)
  266. }}次,异常偏差{{ Number(healthreport.bhg) }}次,对风偏差率为{{
  267. Number(healthreport.dfpcl)
  268. }}。
  269. </el-form-item>
  270. <el-form-item class="text-indent-2"
  271. >其中风速在3-5m/s区间的对风偏差率{{
  272. Number(healthreport.threedfpcl).toFixed(1)
  273. }},风速在5-11m/s区间的对风偏差率{{
  274. Number(healthreport.fivedfpcl).toFixed(1)
  275. }},风速在11-25m/s区间的对风偏差率{{
  276. Number(healthreport.eledfpcl).toFixed(1)
  277. }}。
  278. </el-form-item>
  279. <div class="logHead">对风偏差率(频次)</div>
  280. <DoubleLineChart
  281. style="margin: 10px 0"
  282. width="100%"
  283. height="300px"
  284. :list="dfpc.nipples"
  285. />
  286. <div class="logHead">对风偏差率(功率)</div>
  287. <DoubleLineChart
  288. style="margin: 10px 0"
  289. width="100%"
  290. height="300px"
  291. :list="dfpc.dfpclpowers"
  292. />
  293. <div class="logHead">对风偏差率(风速)</div>
  294. <DoubleLineChart
  295. style="margin: 10px 0"
  296. width="100%"
  297. height="300px"
  298. :list="dfpc.dfpclSpeeds"
  299. />
  300. </el-form>
  301. </div>
  302. <!-- <div class="textBox">
  303. <el-form>
  304. <el-form-item class="imp fw text-indent-2">切入切出:</el-form-item>
  305. <el-form-item class="text-indent-2"
  306. >统计周期内,该机组小风切入在{{
  307. Number(qrqcs[0].xfqr).toFixed(2)
  308. }}m/s,小风切出在{{
  309. Number(qrqcs[0].xfqc).toFixed(2)
  310. }}m/s,大风切入在{{
  311. Number(qrqcs[0].dfqr).toFixed(2)
  312. }}m/s,大风切出在{{ Number(qrqcs[0].dfqc).toFixed(2) }}m/s。
  313. </el-form-item>
  314. <div class="logHead">切入切出对比</div>
  315. <el-table
  316. empty-text="暂无数据"
  317. :data="qrqcs"
  318. :header-cell-style="{
  319. background: 'rgb(224,224,224)',
  320. color: '#000',
  321. }"
  322. border
  323. stripe
  324. style="width: 100%; margin-bottom: 10px"
  325. >
  326. <el-table-column prop="foreignkeyid" label="项目"></el-table-column>
  327. <el-table-column prop="xfqr" label="小风切入"></el-table-column>
  328. <el-table-column prop="xfqc" label="小风切出"></el-table-column>
  329. <el-table-column prop="dfqr" label="大风切入"></el-table-column>
  330. <el-table-column prop="dfqc" label="大风切出"></el-table-column>
  331. </el-table>
  332. </el-form>
  333. </div> -->
  334. <!-- 可靠性暂时隐藏 -->
  335. <div class="textBox" v-if="false">
  336. <el-form>
  337. <el-form-item class="imp fw text-indent-2"
  338. ><b>可靠性</b>:</el-form-item
  339. >
  340. <el-form-item class="imp fw text-indent-2">部件隐患:</el-form-item>
  341. <el-form-item class="text-indent-2">
  342. 统计周期内,传动链隐患频次为{{ yhbjcount.cdlcount }}次,持续时长{{
  343. yhbjcount.cdltime
  344. }}分钟;测风系统隐患频次为{{ yhbjcount.cfxtcount }}次,持续时长{{
  345. yhbjcount.cfxttime
  346. }}分钟;齿轮箱隐患频次为{{ yhbjcount.clxcount }}次,持续时长{{
  347. yhbjcount.clxtime ? yhbjcount.clxtime : 0
  348. }}分钟;发电机隐患频次为{{ yhbjcount.fdjcount }}次,持续时长{{
  349. yhbjcount.fdjtime
  350. }}分钟;变桨隐患频次为{{ yhbjcount.bjcount }}次,持续时长{{
  351. yhbjcount.bjtime
  352. }}分钟;机舱隐患频次为{{ yhbjcount.jccount }}次,持续时长{{
  353. yhbjcount.jctime
  354. }}分钟;偏航隐患频次为{{ yhbjcount.phcount }}次,持续时长{{
  355. yhbjcount.phtime
  356. }}分钟; 塔底柜隐患频次为{{ yhbjcount.tdgcount }}次,持续时长{{
  357. yhbjcount.tdgtime
  358. }}分钟。
  359. </el-form-item>
  360. <el-form-item class="text-indent-2" v-if="bjyhcount.length > 0">
  361. <font v-if="bjyhcount[0].yhmx"
  362. >其中以{{ bjyhcount[0].yhmx }}发生频次最高,为{{
  363. bjyhcount[0].count
  364. }}次;</font
  365. >
  366. <font v-if="bjyhcount[1].yhmx"
  367. >{{ bjyhcount[1].yhmx }}次之,为{{ bjyhcount[1].count }}次;</font
  368. >
  369. <font v-if="bjyhcount[2].yhmx"
  370. >{{ bjyhcount[2].yhmx }}第三,为{{ bjyhcount[0].count }}次。</font
  371. >
  372. </el-form-item>
  373. <el-form-item class="text-indent-2">
  374. <font v-if="bjyhcount[3].yhmx"
  375. >其中以{{ bjyhcount[3].yhmx }}发生时长最长,为{{
  376. bjyhcount[3].times
  377. }}分钟;</font
  378. >
  379. <font v-if="bjyhcount[4].yhmx"
  380. >{{ bjyhcount[4].yhmx }}次之,为{{
  381. bjyhcount[4].yhmx
  382. }}分钟;</font
  383. >
  384. <font v-if="bjyhcount[5].yhmx"
  385. >{{ bjyhcount[5].yhmx }}第三,为{{
  386. bjyhcount[5].yhmx
  387. }}分钟。</font
  388. >
  389. </el-form-item>
  390. <div class="logHead">部件隐患对比(次|分钟)</div>
  391. <el-table
  392. empty-text="暂无数据"
  393. :data="bjyhdbs"
  394. class="bjyhdb"
  395. :header-cell-style="{
  396. background: 'rgb(224,224,224)',
  397. color: '#000',
  398. }"
  399. border
  400. stripe
  401. style="width: 100%; margin-bottom: 10px"
  402. >
  403. <el-table-column prop="foreignkeyid" label="项目"></el-table-column>
  404. <el-table-column label="传动链">
  405. <el-table-column prop="cdlcount"></el-table-column>
  406. <el-table-column prop="cdltimes"></el-table-column>
  407. </el-table-column>
  408. <el-table-column label="测风系统">
  409. <el-table-column prop="cfxtcount"></el-table-column>
  410. <el-table-column prop="cfxttimes"></el-table-column>
  411. </el-table-column>
  412. <el-table-column label="齿轮箱">
  413. <el-table-column prop="clxcount"></el-table-column>
  414. <el-table-column prop="clxtimes"></el-table-column>
  415. </el-table-column>
  416. <el-table-column label="发电机">
  417. <el-table-column prop="fdjcount"></el-table-column>
  418. <el-table-column prop="fdjtimes"></el-table-column>
  419. </el-table-column>
  420. <el-table-column label="变桨">
  421. <el-table-column prop="bjcount"></el-table-column>
  422. <el-table-column prop="bjtimes"></el-table-column>
  423. </el-table-column>
  424. <el-table-column label="机舱">
  425. <el-table-column prop="jccount"></el-table-column>
  426. <el-table-column prop="jctimes"></el-table-column>
  427. </el-table-column>
  428. <el-table-column label="偏航">
  429. <el-table-column prop="phcount"></el-table-column>
  430. <el-table-column prop="phtimes"></el-table-column>
  431. </el-table-column>
  432. <el-table-column label="塔底柜">
  433. <el-table-column prop="tdgcount"></el-table-column>
  434. <el-table-column prop="tdgtimes"></el-table-column>
  435. </el-table-column>
  436. </el-table>
  437. <div class="logHead">隐患模型对比</div>
  438. <el-table
  439. empty-text="暂无数据"
  440. :data="yjmxdb"
  441. :header-cell-style="{
  442. background: 'rgb(224,224,224)',
  443. color: '#000',
  444. }"
  445. stripe
  446. style="width: 100%; margin-bottom: 10px"
  447. >
  448. <el-table-column prop="name" label="部件" />
  449. <el-table-column prop="alertText" label="隐患类型" />
  450. <el-table-column prop="counts" label="频次" />
  451. <el-table-column prop="avgcounts" label="均值" />
  452. <el-table-column prop="times" label="时长(分钟)" />
  453. <el-table-column prop="avgtimes" label="均值(分钟)" />
  454. </el-table>
  455. </el-form>
  456. </div>
  457. <!-- <div class="textBox">
  458. <el-form>
  459. <el-form-item class="imp fw text-indent-2">故障分类:</el-form-item>
  460. <el-form-item class="text-indent-2">
  461. 统计周期内,机舱振动类故障频次为88次,持续时长51分钟。(只显示发生故障的,如没有发生过故障的不用文字描述)
  462. </el-form-item>
  463. 其中以(明细故障mwData)发生频次最高,为mwData次;(明细故障mwData)次之,为mwData次;(明细故障mwData)第三,为mwData次。 -->
  464. <!-- <div class="logHead">故障分类统计</div>
  465. <el-table
  466. empty-text="暂无数据"
  467. :data="faultclass"
  468. :header-cell-style="{
  469. background: 'rgb(224,224,224)',
  470. color: '#000',
  471. }"
  472. border
  473. stripe
  474. style="width: 100%; margin-bottom: 10px"
  475. >
  476. <el-table-column prop="warningtype" label="分类"></el-table-column>
  477. <el-table-column label="频次(次数)">
  478. <el-table-column
  479. prop="monthwarningnum"
  480. label="统计期"
  481. ></el-table-column>
  482. <el-table-column
  483. prop="yearoveryearnum"
  484. label="上月"
  485. ></el-table-column>
  486. <el-table-column
  487. prop="monthonmonthnum"
  488. label="同期"
  489. ></el-table-column>
  490. </el-table-column>
  491. <el-table-column label="时长(分钟)">
  492. <el-table-column
  493. prop="monthonmonthtime"
  494. label="统计期"
  495. ></el-table-column>
  496. <el-table-column
  497. prop="monthwarningtime"
  498. label="上月"
  499. ></el-table-column>
  500. <el-table-column
  501. prop="yearoveryeartime"
  502. label="同期"
  503. ></el-table-column>
  504. </el-table-column>
  505. </el-table>
  506. </el-form>
  507. </div> -->
  508. <!-- <div class="textBox">
  509. <el-form>
  510. <el-form-item class="imp fw text-indent-2"
  511. >功率对部件温度影响</el-form-item
  512. >
  513. <el-form-item class="text-indent-2"
  514. >统计周期内,齿轮箱温度“900-1050”、
  515. “1200-1350”大于平均值;主轴温度“450-600”、
  516. “1200-1350”大于平均值。(只显示大于平均值的,没有就不显示,如果完全没有就显示在统计周期内,各个部件温度良好)
  517. </el-form-item>
  518. <div class="logHead">
  519. 功率对部件温度影响统计(红字对比平均值高,绿字对比平均值低)
  520. </div>
  521. <el-table
  522. empty-text="暂无数据"
  523. :data="partwds"
  524. :span-method="wdyxtjMethod"
  525. :header-cell-style="{
  526. background: 'rgb(224,224,224)',
  527. color: '#000',
  528. }"
  529. stripe
  530. style="width: 100%; margin-bottom: 10px"
  531. >
  532. <el-table-column prop="bj" label="部件"></el-table-column>
  533. <el-table-column prop="wdcd" label="温度测点"></el-table-column>
  534. <el-table-column prop="min0" label="0-150"></el-table-column>
  535. <el-table-column prop="min150" label="150-300"></el-table-column>
  536. <el-table-column prop="min300" label="300-450"></el-table-column>
  537. <el-table-column prop="min450" label="450-600"></el-table-column>
  538. <el-table-column prop="min600" label="600-750"></el-table-column>
  539. <el-table-column prop="min750" label="750-900"></el-table-column>
  540. <el-table-column prop="min900" label="900-1050"></el-table-column>
  541. <el-table-column prop="min1050" label="1050-1200"></el-table-column>
  542. <el-table-column prop="min1200" label="1200-1350"></el-table-column>
  543. <el-table-column prop="min1350" label="1350-1500"></el-table-column>
  544. </el-table>
  545. </el-form>
  546. </div> -->
  547. <div class="textBox">
  548. <el-form>
  549. <el-form-item class="imp fw text-indent-2"
  550. ><b>部件劣化状态</b></el-form-item
  551. >
  552. <el-form-item class="imp fw">总览:</el-form-item>
  553. <el-form-item class="text-indent-2"
  554. >统计周期内,发电机劣化频次为{{ bjlhzt.fdj }}次,齿轮箱劣化频次为{{
  555. bjlhzt.clx
  556. }}次;变桨劣化频次为{{ bjlhzt.bj }}次;主轴劣化频次为{{
  557. bjlhzt.zz
  558. }}次。
  559. </el-form-item>
  560. <div class="logHead">部件劣化频次总览</div>
  561. <el-table
  562. empty-text="暂无数据"
  563. :data="bjlhzt.tableData"
  564. :header-cell-style="{
  565. background: 'rgb(224,224,224)',
  566. color: '#000',
  567. }"
  568. border
  569. stripe
  570. style="width: 100%; margin-bottom: 10px"
  571. >
  572. <el-table-column prop="dateRange" label="时间周期" />
  573. <el-table-column
  574. prop="fdj"
  575. label="发电机"
  576. header-align="center"
  577. align="right"
  578. />
  579. <el-table-column
  580. prop="clx"
  581. label="齿轮箱"
  582. header-align="center"
  583. align="right"
  584. />
  585. <el-table-column
  586. prop="bj"
  587. label="变桨"
  588. header-align="center"
  589. align="right"
  590. />
  591. <el-table-column
  592. prop="zz"
  593. label="主轴"
  594. header-align="center"
  595. align="right"
  596. />
  597. <el-table-column
  598. prop="total"
  599. label="总计"
  600. header-align="center"
  601. align="right"
  602. />
  603. </el-table>
  604. </el-form>
  605. </div>
  606. <div class="textBox">
  607. <el-form>
  608. <el-form-item class="imp fw text-indent-2">发电机:</el-form-item>
  609. <el-form-item class="text-indent-2"
  610. >关键参数:发电机采用“发电机转速”、“发电机轴A温度”
  611. 、“发电机轴B温度”为关键参数,该参数在统计周期内数据显示样本在安全运行区内,没有超过进入劣化区
  612. </el-form-item>
  613. <div class="logHead">发电机关键参数值</div>
  614. <el-table
  615. empty-text="暂无数据"
  616. :data="fdjgjcsz"
  617. :header-cell-style="{
  618. background: 'rgb(224,224,224)',
  619. color: '#000',
  620. }"
  621. border
  622. stripe
  623. style="width: 100%; margin-bottom: 10px"
  624. >
  625. <el-table-column
  626. prop="gjcs"
  627. label="关键参数"
  628. align="left"
  629. header-align="center"
  630. ></el-table-column>
  631. <el-table-column
  632. prop="edz"
  633. label="额定值"
  634. align="right"
  635. header-align="center"
  636. ></el-table-column>
  637. <el-table-column
  638. prop="yxfw"
  639. label="允许范围"
  640. align="center"
  641. header-align="center"
  642. ></el-table-column>
  643. <el-table-column
  644. prop="qz"
  645. label="权重"
  646. align="right"
  647. header-align="center"
  648. ></el-table-column>
  649. <el-table-column
  650. prop="scz"
  651. label="实测值"
  652. align="right"
  653. header-align="center"
  654. ></el-table-column>
  655. <el-table-column
  656. prop="df"
  657. label="得分"
  658. align="right"
  659. header-align="center"
  660. ></el-table-column>
  661. </el-table>
  662. </el-form>
  663. </div>
  664. <div class="textBox" v-if="false">
  665. <el-form>
  666. <el-form-item class="imp fw text-indent-2"
  667. >震动监测:时域分析分析法</el-form-item
  668. >
  669. <el-form-item class="text-indent-2"
  670. >有量纲参数:均值为100,方差为49,均方幅值67,峰值,260,平均幅值44,均方值120</el-form-item
  671. >
  672. <el-form-item class="text-indent-2"
  673. >无量纲参数:峭度指标20,峰值指标50,波形指标90,脉冲指标77</el-form-item
  674. >
  675. <el-form-item class="text-indent-2"
  676. >结合两种指标都未发现明显劣化值</el-form-item
  677. >
  678. <el-form-item class="text-indent-2"
  679. >频域分析法:根据震动检测提供频域分析结果,现有设备运行正常</el-form-item
  680. >
  681. <!-- <multiple-line-chart
  682. :showLegend="true"
  683. :hoverType="'axis'"
  684. :list="wttragetreportcharts.fdj"
  685. /> -->
  686. <double-line-chart :height="'250px'" :list="fdjLineChartOptions" />
  687. <el-form-item class="imp fw text-indent-2">统计分析:</el-form-item>
  688. <el-form-item class="text-indent-2"
  689. >发电机类故障,平均故障周期在12个月,上次故障距此次评价时间为5个月,发电机处于平稳运行周期。</el-form-item
  690. >
  691. </el-form>
  692. </div>
  693. <div class="textBox">
  694. <el-form>
  695. <el-form-item class="imp fw text-indent-2">齿轮箱:</el-form-item>
  696. <el-form-item class="text-indent-2">
  697. 齿轮箱采用“齿轮箱温度”为关键参数,该参数在统计周期内数据显示样本超出了劣化区,并且有明显的瞬时的上升趋势,引发了温度超限报警一次,恢复后运行平稳,该风机齿轮箱历史总体运行正常,近期存在报警信息,状态评价为良。
  698. </el-form-item>
  699. <!-- <multiple-line-chart
  700. :showLegend="true"
  701. :hoverType="'axis'"
  702. :list="wttragetreportcharts.clx"
  703. /> -->
  704. <double-line-chart :height="'250px'" :list="clxLineChartOptions" />
  705. <el-form-item class="imp fw text-indent-2">主轴:</el-form-item>
  706. <el-form-item class="text-indent-2"
  707. >关键参数:主轴采用“主轴承温度”、“主轴承油脂启动时间间隔”
  708. 、“主轴承油脂泵运行周期”为关键参数,该参数在统计周期内拟故障应进行检查
  709. </el-form-item>
  710. <div class="logHead">发电机关键参数值</div>
  711. <el-table
  712. empty-text="暂无数据"
  713. :data="fdjgjcsz2"
  714. :header-cell-style="{
  715. background: 'rgb(224,224,224)',
  716. color: '#000',
  717. }"
  718. border
  719. stripe
  720. style="width: 100%; margin-bottom: 10px"
  721. >
  722. <el-table-column
  723. prop="gjcs"
  724. label="关键参数"
  725. align="left"
  726. header-align="center"
  727. ></el-table-column>
  728. <el-table-column
  729. prop="edz"
  730. label="额定值"
  731. align="right"
  732. header-align="center"
  733. ></el-table-column>
  734. <el-table-column
  735. prop="yxfw"
  736. label="允许范围"
  737. align="center"
  738. header-align="center"
  739. ></el-table-column>
  740. <el-table-column
  741. prop="qz"
  742. label="权重"
  743. align="right"
  744. header-align="center"
  745. ></el-table-column>
  746. <el-table-column
  747. prop="scz"
  748. label="实测值"
  749. align="right"
  750. header-align="center"
  751. ></el-table-column>
  752. <el-table-column
  753. prop="df"
  754. label="得分"
  755. align="right"
  756. header-align="center"
  757. ></el-table-column>
  758. </el-table>
  759. </el-form>
  760. </div>
  761. <div class="textBox" v-if="false">
  762. <el-form>
  763. <el-form-item class="imp fw text-indent-2"
  764. >震动监测:时域分析分析法</el-form-item
  765. >
  766. <el-form-item class="text-indent-2"
  767. >有量纲参数:均值为100,方差为49,均方幅值67,峰值,260,平均幅值44,均方值120</el-form-item
  768. >
  769. <el-form-item class="text-indent-2"
  770. >无量纲参数:峭度指标20,峰值指标50,波形指标90,脉冲指标77</el-form-item
  771. >
  772. <el-form-item class="text-indent-2"
  773. >结合两种指标都未发现明显劣化值</el-form-item
  774. >
  775. <el-form-item class="text-indent-2"
  776. >频域分析法:根据震动检测提供频域分析结果,现有设备运行正常</el-form-item
  777. >
  778. <!-- <multiple-line-chart
  779. :showLegend="true"
  780. :hoverType="'axis'"
  781. :list="wttragetreportcharts.zk"
  782. /> -->
  783. <double-line-chart :height="'250px'" :list="zzLineChartOptions" />
  784. <el-form-item class="imp fw">统计分析:</el-form-item>
  785. <el-form-item class="text-indent-2"
  786. >发电机类故障,平均故障周期在12个月,上次故障距此次评价时间为5个月,发电机处于平稳运行周期。</el-form-item
  787. >
  788. </el-form>
  789. </div>
  790. <div class="textBox">
  791. <el-form>
  792. <el-form-item class="imp fw text-indent-2">变桨</el-form-item>
  793. <div class="infoBox">
  794. <p>
  795. 1)关键参数:变桨采用“变桨电机温度1”、“变桨电机温度2”
  796. 、“变桨电机温度3”、“变频器温度1”、“变频器温度2”
  797. 、“变频器温度3”为关键参数,该参数在统计周期内数据显示样本在安全运行区内,没有超过进入劣化区
  798. </p>
  799. </div>
  800. <div class="logHead">发电机关键参数值</div>
  801. <el-table
  802. empty-text="暂无数据"
  803. :data="bjgjcs"
  804. :header-cell-style="{
  805. background: 'rgb(224,224,224)',
  806. color: '#000',
  807. }"
  808. border
  809. stripe
  810. style="width: 100%; margin: 10px 0"
  811. >
  812. <el-table-column
  813. prop="gjcs"
  814. label="关键参数"
  815. align="left"
  816. header-align="center"
  817. ></el-table-column>
  818. <el-table-column
  819. prop="edz"
  820. label="额定值"
  821. align="right"
  822. header-align="center"
  823. ></el-table-column>
  824. <el-table-column
  825. prop="yxfw"
  826. label="允许范围"
  827. align="center"
  828. header-align="center"
  829. ></el-table-column>
  830. <el-table-column
  831. prop="qz"
  832. label="权重"
  833. align="right"
  834. header-align="center"
  835. ></el-table-column>
  836. <el-table-column
  837. prop="scz"
  838. label="实测值"
  839. align="right"
  840. header-align="center"
  841. ></el-table-column>
  842. <el-table-column
  843. prop="df"
  844. label="得分"
  845. align="right"
  846. header-align="center"
  847. ></el-table-column>
  848. </el-table>
  849. <template v-if="false">
  850. <el-form-item class="imp fw text-indent-2">震动监测:</el-form-item>
  851. <el-form-item class="text-indent-2">时域分析分析法</el-form-item>
  852. <el-form-item class="text-indent-2"
  853. >有量纲参数:均值为100,方差为49,均方幅值67,峰值,260,平均幅值44,均方值120</el-form-item
  854. >
  855. <el-form-item class="text-indent-2"
  856. >无量纲参数:峭度指标20,峰值指标50,波形指标90,脉冲指标77</el-form-item
  857. >
  858. <el-form-item class="text-indent-2"
  859. >结合两种指标都未发现明显劣化值</el-form-item
  860. >
  861. <el-form-item class="text-indent-2"
  862. >频域分析法:根据震动检测提供频域分析结果,现有设备运行正常</el-form-item
  863. >
  864. <!-- <multiple-line-chart
  865. :showLegend="true"
  866. :hoverType="'axis'"
  867. :list="wttragetreportcharts.bj"
  868. /> -->
  869. <double-line-chart :height="'250px'" :list="bjLineChartOptions" />
  870. <el-form-item class="imp fw text-indent-2">统计分析:</el-form-item>
  871. <el-form-item class="text-indent-2"
  872. >发电机类故障,平均故障周期在12个月,上次故障距此次评价时间为5个月,发电机处于平稳运行周期。</el-form-item
  873. >
  874. </template>
  875. </el-form>
  876. </div>
  877. <!-- 全生命周期暂时隐藏 -->
  878. <div class="textBox" v-if="false">
  879. <el-form>
  880. <el-form-item class="imp fw text-indent-2"
  881. ><b>全生命周期管理</b>:</el-form-item
  882. >
  883. <div class="logHead">定检记录</div>
  884. <el-table
  885. empty-text="暂无数据"
  886. :data="djjl"
  887. :header-cell-style="{
  888. background: 'rgb(224,224,224)',
  889. color: '#000',
  890. }"
  891. border
  892. stripe
  893. style="width: 100%; margin-bottom: 10px"
  894. >
  895. <el-table-column prop="rq" label="日期"></el-table-column>
  896. <el-table-column prop="ms" label="描述"></el-table-column>
  897. </el-table>
  898. <el-form-item class="imp fw text-indent-2">设备维修</el-form-item>
  899. <el-form-item class="text-indent-2"
  900. >统计周期内,
  901. 年7月27日星期二更换测风系统中风向仪风速标;2021年7月27日星期二维修齿轮箱中齿轮箱冷却风扇。(只显示近三个月内维修换件记录,如果完全没有就显示在统计周期内,机组运行良好,未进行维修换件)
  902. </el-form-item>
  903. <div class="logHead">维修换件频次</div>
  904. <el-table
  905. empty-text="暂无数据"
  906. :data="wxhjpc"
  907. :header-cell-style="{
  908. background: 'rgb(224,224,224)',
  909. color: '#000',
  910. }"
  911. border
  912. stripe
  913. style="width: 100%; margin-bottom: 10px"
  914. >
  915. <el-table-column prop="bjjg" label="部件结构"></el-table-column>
  916. <el-table-column label="近三个月">
  917. <el-table-column prop="wx1" label="维修"></el-table-column>
  918. <el-table-column prop="hj1" label="换件"></el-table-column>
  919. </el-table-column>
  920. <el-table-column label="近一年">
  921. <el-table-column prop="wx2" label="维修"></el-table-column>
  922. <el-table-column prop="hj2" label="换件"></el-table-column>
  923. </el-table-column>
  924. <el-table-column label="全部">
  925. <el-table-column prop="wx3" label="维修"></el-table-column>
  926. <el-table-column prop="hj3" label="换件"></el-table-column>
  927. </el-table-column>
  928. </el-table>
  929. </el-form>
  930. </div>
  931. <div class="textBox">
  932. <el-form>
  933. <el-form-item class="imp fw text-indent-2"
  934. ><b>指标</b>:</el-form-item
  935. >
  936. <el-form-item class="imp fw">1、风能利用率</el-form-item>
  937. <!-- <div class="infoBox" style="margin: 20px 0">
  938. <p>
  939. 近三月,受宁夏电网限电,及自然天气情况等因素影响,{{
  940. datas.wtName
  941. }}发电能力在这个三个月程下降趋势,但非计划损失电量和计划损失电量逐渐减少,风能利用率并未体现出递减趋势,而是逐步增长。
  942. {{ datas.year }}年{{
  943. datas.month
  944. }}月,非计划检修率和计划检修率分别为6%和12%,计划检修率尚可,风机产生的非计划检修率还存在,但较前两月明显较低。
  945. 风机因自身原因造成5%的性能损失率,在可接受范围。
  946. 总体来看,该风机逐步进入平稳期,风能利用率增长趋势,可利率较高。
  947. </p>
  948. </div> -->
  949. <div class="logHead">风机绩效榜(kWh)</div>
  950. <el-table
  951. empty-text="暂无数据"
  952. :data="ls2"
  953. :header-cell-style="{
  954. background: 'rgb(153,204,255)',
  955. color: '#000',
  956. }"
  957. :cell-style="columnStyle"
  958. border
  959. stripe
  960. style="width: 100%; margin: 10px 0"
  961. >
  962. <el-table-column
  963. prop="name"
  964. label="指标"
  965. align="left"
  966. header-align="center"
  967. />
  968. <el-table-column
  969. prop="monthValue"
  970. label="当月值"
  971. align="right"
  972. header-align="center"
  973. />
  974. <el-table-column
  975. prop="lastMonth1Value"
  976. label="上月值"
  977. align="right"
  978. header-align="center"
  979. />
  980. <el-table-column
  981. prop="lastMonth2Value"
  982. label="前两月值"
  983. align="right"
  984. header-align="center"
  985. />
  986. </el-table>
  987. <el-form-item class="imp fw text-indent-2"
  988. >2、设备可利用率</el-form-item
  989. >
  990. <!-- <div class="infoBox" style="margin: 20px 0">
  991. <p>
  992. {{
  993. healthreport.wpname
  994. }}近期温度较高,温度超限类故障较多,但近三个月,{{
  995. datas.wtname
  996. }}可利用呈增长趋势,{{ Number(datas.month) - 2 }}~{{
  997. Number(datas.month)
  998. }}月,非计划小时数分别为{{ sbklyls[2].fjhjxxs }}小时、{{
  999. sbklyls[1].fjhjxxs
  1000. }}小时和{{
  1001. sbklyls[0].fjhjxxs
  1002. }}小时。故障次数分别是2次、3次和2次, {{ datas.month }}月,{{
  1003. datas.wtname
  1004. }}设备可利用率为{{
  1005. Number(healthreport.sbklyl).toFixed(2)
  1006. }}%,可靠性尚可。
  1007. </p>
  1008. </div> -->
  1009. <div class="logHead">可靠性分析(小时)</div>
  1010. <el-table
  1011. empty-text="暂无数据"
  1012. :data="ls3"
  1013. :header-cell-style="{
  1014. background: 'rgb(153,204,255)',
  1015. color: '#000',
  1016. }"
  1017. :cell-style="columnStyle"
  1018. border
  1019. stripe
  1020. style="width: 100%; margin: 10px 0"
  1021. >
  1022. <el-table-column
  1023. prop="name"
  1024. label="指标"
  1025. align="left"
  1026. header-align="center"
  1027. />
  1028. <el-table-column
  1029. prop="monthValue"
  1030. label="当月值"
  1031. align="right"
  1032. header-align="center"
  1033. />
  1034. <el-table-column
  1035. prop="lastMonth1Value"
  1036. label="上月值"
  1037. align="right"
  1038. header-align="center"
  1039. />
  1040. <el-table-column
  1041. prop="lastMonth2Value"
  1042. label="前两月值"
  1043. align="right"
  1044. header-align="center"
  1045. />
  1046. </el-table>
  1047. </el-form>
  1048. </div>
  1049. <div class="textBox">
  1050. <el-form>
  1051. <el-form-item class="imp fw text-indent-2">3、性能评价</el-form-item>
  1052. <!-- <div class="infoBox" style="margin: 20px 0">
  1053. <p>
  1054. {{ datas.wtName }}近三个月性能评价{{ datas.wtLevel }},整体排名{{
  1055. datas.wtNum
  1056. }},{{ datas.year }}年{{
  1057. datas.month
  1058. }}月性能评价指标横向对比良好。
  1059. </p>
  1060. </div> -->
  1061. <!-- <div class="logHead">
  1062. {{ datas.year }}年{{ datas.month }}月性能评价结果
  1063. </div>
  1064. <el-table
  1065. empty-text="暂无数据"
  1066. :data="xnpjjg"
  1067. :header-cell-style="{
  1068. background: 'rgb(224,224,224)',
  1069. color: '#000',
  1070. }"
  1071. border
  1072. stripe
  1073. style="width: 100%; margin-bottom: 10px"
  1074. >
  1075. <el-table-column prop="yf" label="月份"></el-table-column>
  1076. <el-table-column prop="jb" label="级别"></el-table-column>
  1077. <el-table-column prop="df" label="得分"></el-table-column>
  1078. <el-table-column prop="ph" label="排行"></el-table-column>
  1079. </el-table> -->
  1080. <div class="logHead">
  1081. {{ datas.year }}年{{ datas.month }}月性能评价明细
  1082. </div>
  1083. <table
  1084. border="1"
  1085. class="xnpjfx"
  1086. style="width: 100%"
  1087. cellspacing=""
  1088. cellpadding=""
  1089. >
  1090. <tr>
  1091. <td align="center">
  1092. <div class="border-b p-5">风机编号:{{ datas.wtName }}</div>
  1093. <div class="border-b">量化评级:{{ datas.wtLevel }}</div>
  1094. <div class="border-b">综合排名:{{ datas.wtNum }}</div>
  1095. <normal-radar-chart
  1096. height="500px"
  1097. width="500px"
  1098. :value="pjmxs"
  1099. />
  1100. </td>
  1101. <td valign="top"></td>
  1102. <td style="display: flex; justify-content: center">基础指标</td>
  1103. <el-table
  1104. empty-text="暂无数据"
  1105. :data="xnpjmx"
  1106. :header-cell-style="{ color: '#000', background: '#fff' }"
  1107. border
  1108. stripe
  1109. style="width: 100%"
  1110. >
  1111. <el-table-column
  1112. prop="types"
  1113. label="类型"
  1114. align="left"
  1115. header-align="center"
  1116. />
  1117. <el-table-column
  1118. prop="targetName"
  1119. label="指标"
  1120. align="left"
  1121. header-align="center"
  1122. />
  1123. <el-table-column
  1124. prop="value"
  1125. label="数值"
  1126. align="right"
  1127. header-align="center"
  1128. />
  1129. <el-table-column prop="num" align="center" label="排名" />
  1130. <el-table-column prop="score" label="评分" align="center" />
  1131. </el-table>
  1132. </tr>
  1133. </table>
  1134. </el-form>
  1135. </div>
  1136. <!-- <div class="textBox">
  1137. <el-form>
  1138. <el-form-item class="fw" style="margin: 10px 0; text-align: center"
  1139. >数据来源:集控中心大数据分析系统
  1140. </el-form-item>
  1141. </el-form>
  1142. </div> -->
  1143. </div>
  1144. </el-dialog>
  1145. </template>
  1146. <script>
  1147. import DoubleLineChart from "@/components/chart/line/double-line-chart.vue";
  1148. // import ScatterLineChart from "@com/chart/combination/scatter-line-chart.vue";
  1149. import NormalLineChart from "@com/chart/line/normal-line-chart.vue";
  1150. import NormalRadarChart from "@com/chart/radar/normal-radar-chart.vue";
  1151. import MultipleLineChart from "@com/chart/line/double-line-chart.vue";
  1152. import Get_PDF from "@tools/htmlToPdf";
  1153. import $ from "jquery";
  1154. import api from "@api/wisdomOverhaul/health/index.js";
  1155. import axios from "axios";
  1156. export default {
  1157. components: {
  1158. DoubleLineChart,
  1159. // ScatterLineChart,
  1160. NormalLineChart,
  1161. MultipleLineChart,
  1162. NormalRadarChart,
  1163. },
  1164. data() {
  1165. return {
  1166. datas: {},
  1167. reportInfo1: {},
  1168. alarmcountVoList: [],
  1169. ls1: [],
  1170. ls2: [],
  1171. ls3: [],
  1172. yjmxdb: [],
  1173. bjlhzt: {
  1174. fdj: 0,
  1175. clx: 0,
  1176. bj: 0,
  1177. zz: 0,
  1178. tableData: [],
  1179. },
  1180. fdjLineChartOptions: [],
  1181. clxLineChartOptions: [],
  1182. zzLineChartOptions: [],
  1183. bjLineChartOptions: [],
  1184. healthreport: {},
  1185. tjjxfa: {},
  1186. // 对风偏差
  1187. dfpc: {
  1188. nipples: [
  1189. {
  1190. title: "频次",
  1191. smooth: true,
  1192. value: [],
  1193. },
  1194. ],
  1195. dfpclpowers: [
  1196. {
  1197. title: "功率",
  1198. smooth: true,
  1199. value: [],
  1200. },
  1201. ],
  1202. dfpclSpeeds: [
  1203. {
  1204. title: "风速",
  1205. smooth: true,
  1206. value: [],
  1207. },
  1208. ],
  1209. },
  1210. // 切入切出对比
  1211. qrqcs: [
  1212. {
  1213. foreignkeyid: "",
  1214. xfqr: 0,
  1215. xfqc: 0,
  1216. dfqr: 0,
  1217. dfqc: 0,
  1218. },
  1219. ],
  1220. // 曲线偏差率
  1221. glqxnh: [],
  1222. qxpcls: [
  1223. {
  1224. title: "曲线偏差率",
  1225. yAxisIndex: 0,
  1226. value: [
  1227. {
  1228. text: "1",
  1229. value: 0,
  1230. },
  1231. ],
  1232. },
  1233. {
  1234. title: "基准值",
  1235. yAxisIndex: 0,
  1236. value: [
  1237. {
  1238. text: "1",
  1239. value: 0,
  1240. },
  1241. ],
  1242. },
  1243. ],
  1244. // 隐患部件频次统计
  1245. yhbjcount: {
  1246. cdlcount: 0,
  1247. cdltime: 0,
  1248. cfxtcount: 0,
  1249. cfxttime: 0,
  1250. clxcount: 0,
  1251. clxttime: 0,
  1252. fdjcount: 0,
  1253. fdjtime: 0,
  1254. bjcount: 0,
  1255. bjtime: 0,
  1256. jccount: 0,
  1257. jctime: 0,
  1258. phcount: 0,
  1259. phtime: 0,
  1260. tdgcount: 0,
  1261. tdgtime: 0,
  1262. },
  1263. // 部件隐患数据频次时长统计
  1264. bjyhcount: [
  1265. {
  1266. yhmx: "主轴温度温差大于8度",
  1267. count: 64,
  1268. },
  1269. {
  1270. yhmx: "主轴温度温差大于8度",
  1271. count: 64,
  1272. },
  1273. {
  1274. yhmx: "主轴温度温差大于8度",
  1275. count: 64,
  1276. },
  1277. {
  1278. yhmx: "主轴温度温差大于8度",
  1279. times: 64,
  1280. },
  1281. {
  1282. yhmx: "主轴温度温差大于8度",
  1283. times: 64,
  1284. },
  1285. {
  1286. yhmx: "主轴温度温差大于8度",
  1287. times: 64,
  1288. },
  1289. ],
  1290. // 部件隐患对比
  1291. bjyhdbs: [],
  1292. // 隐患模型对比
  1293. yhmxdbs: [],
  1294. yhmxdbs2: [],
  1295. // 故障分类
  1296. faultclass: [],
  1297. // 设备可利用率
  1298. sbklyls: [
  1299. {
  1300. date: "2021-08-01",
  1301. yxxs: 8.23,
  1302. djxs: 15.77,
  1303. fjhjxxs: 0.0,
  1304. jhjxxs: 0.0,
  1305. slxs: 0.0,
  1306. gzcs: null,
  1307. sbklyl: 100.0,
  1308. },
  1309. {
  1310. date: "2021-08-01",
  1311. yxxs: 8.23,
  1312. djxs: 15.77,
  1313. fjhjxxs: 0.0,
  1314. jhjxxs: 0.0,
  1315. slxs: 0.0,
  1316. gzcs: null,
  1317. sbklyl: 100.0,
  1318. },
  1319. {
  1320. date: "2021-08-01",
  1321. yxxs: 8.23,
  1322. djxs: 15.77,
  1323. fjhjxxs: 0.0,
  1324. jhjxxs: 0.0,
  1325. slxs: 0.0,
  1326. gzcs: null,
  1327. sbklyl: 100.0,
  1328. },
  1329. ],
  1330. sbklyls2: [],
  1331. // 风能利用率
  1332. fnlyls: [],
  1333. //功率对部件温度影响
  1334. partwds: [],
  1335. // 性能评价
  1336. xnpjjg: [],
  1337. //性能评价明细
  1338. xnpjmx: [],
  1339. pjmxs: [],
  1340. wttragetreportcharts: [],
  1341. zhrank: 2,
  1342. // 维修换件频次
  1343. wxhjpc: [
  1344. {
  1345. bjjg: "叶片",
  1346. wx1: "0",
  1347. hj1: "0",
  1348. wx2: "0",
  1349. hj2: "0",
  1350. wx3: "0",
  1351. hj3: "0",
  1352. },
  1353. {
  1354. bjjg: "轮毂及变桨系统",
  1355. wx1: "0",
  1356. hj1: "0",
  1357. wx2: "0",
  1358. hj2: "0",
  1359. wx3: "0",
  1360. hj3: "0",
  1361. },
  1362. {
  1363. bjjg: "主控柜",
  1364. wx1: "0",
  1365. hj1: "0",
  1366. wx2: "0",
  1367. hj2: "0",
  1368. wx3: "0",
  1369. hj3: "0",
  1370. },
  1371. {
  1372. bjjg: "机舱",
  1373. wx1: "0",
  1374. hj1: "0",
  1375. wx2: "0",
  1376. hj2: "0",
  1377. wx3: "0",
  1378. hj3: "0",
  1379. },
  1380. {
  1381. bjjg: "偏航系统",
  1382. wx1: "0",
  1383. hj1: "0",
  1384. wx2: "0",
  1385. hj2: "0",
  1386. wx3: "0",
  1387. hj3: "0",
  1388. },
  1389. {
  1390. bjjg: "齿轮箱",
  1391. wx1: "0",
  1392. hj1: "0",
  1393. wx2: "0",
  1394. hj2: "0",
  1395. wx3: "0",
  1396. hj3: "0",
  1397. },
  1398. {
  1399. bjjg: "发电机",
  1400. wx1: "0",
  1401. hj1: "0",
  1402. wx2: "0",
  1403. hj2: "0",
  1404. wx3: "0",
  1405. hj3: "0",
  1406. },
  1407. {
  1408. bjjg: "液压",
  1409. wx1: "0",
  1410. hj1: "0",
  1411. wx2: "0",
  1412. hj2: "0",
  1413. wx3: "0",
  1414. hj3: "0",
  1415. },
  1416. {
  1417. bjjg: "测风",
  1418. wx1: "0",
  1419. hj1: "1",
  1420. wx2: "0",
  1421. hj2: "0",
  1422. wx3: "0",
  1423. hj3: "0",
  1424. },
  1425. {
  1426. bjjg: "联轴器",
  1427. wx1: "0",
  1428. hj1: "0",
  1429. wx2: "0",
  1430. hj2: "0",
  1431. wx3: "0",
  1432. hj3: "0",
  1433. },
  1434. {
  1435. bjjg: "主轴",
  1436. wx1: "0",
  1437. hj1: "0",
  1438. wx2: "0",
  1439. hj2: "0",
  1440. wx3: "0",
  1441. hj3: "0",
  1442. },
  1443. {
  1444. bjjg: "塔架",
  1445. wx1: "0",
  1446. hj1: "0",
  1447. wx2: "0",
  1448. hj2: "0",
  1449. wx3: "0",
  1450. hj3: "0",
  1451. },
  1452. {
  1453. bjjg: "塔底控制柜",
  1454. wx1: "0",
  1455. hj1: "0",
  1456. wx2: "0",
  1457. hj2: "0",
  1458. wx3: "0",
  1459. hj3: "0",
  1460. },
  1461. {
  1462. bjjg: "变频器",
  1463. wx1: "0",
  1464. hj1: "0",
  1465. wx2: "0",
  1466. hj2: "0",
  1467. wx3: "0",
  1468. hj3: "0",
  1469. },
  1470. {
  1471. bjjg: "辅助系统",
  1472. wx1: "0",
  1473. hj1: "0",
  1474. wx2: "0",
  1475. hj2: "0",
  1476. wx3: "0",
  1477. hj3: "0",
  1478. },
  1479. {
  1480. bjjg: "基础",
  1481. wx1: "0",
  1482. hj1: "0",
  1483. wx2: "0",
  1484. hj2: "0",
  1485. wx3: "0",
  1486. hj3: "0",
  1487. },
  1488. ],
  1489. djjl: [
  1490. {
  1491. rq: "2021-7-26",
  1492. ms: "正常",
  1493. },
  1494. {
  1495. rq: "2021-7-20",
  1496. ms: "发现齿轮箱漏油,已加油,联系厂家维修",
  1497. },
  1498. {
  1499. rq: "2021-6-12",
  1500. ms: "正常",
  1501. },
  1502. ],
  1503. Powertrend: [
  1504. {
  1505. title: "",
  1506. yAxisIndex: 0, // 使用单位
  1507. value: [],
  1508. },
  1509. ],
  1510. fdjgjcsz: [
  1511. {
  1512. gjcs: "发电机转速",
  1513. edz: "1700",
  1514. yxfw: "<2000",
  1515. qz: "0.35",
  1516. scz: "1500",
  1517. df: "0.3",
  1518. },
  1519. {
  1520. gjcs: "发电机轴A温度",
  1521. edz: "70",
  1522. yxfw: "<100",
  1523. qz: "0.15",
  1524. scz: "56",
  1525. df: "0.12",
  1526. },
  1527. {
  1528. gjcs: "发电机轴B温度",
  1529. edz: "70",
  1530. yxfw: "<100",
  1531. qz: "0.15",
  1532. scz: "54",
  1533. df: "0.12",
  1534. },
  1535. ],
  1536. fdjgjcsz2: [
  1537. {
  1538. gjcs: "主轴承温度",
  1539. edz: "30",
  1540. yxfw: "<80",
  1541. qz: "0.35",
  1542. scz: "36.2",
  1543. df: "0.79",
  1544. },
  1545. {
  1546. gjcs: "主轴承油脂启动时间间隔",
  1547. edz: "",
  1548. yxfw: "<500",
  1549. qz: "0.15",
  1550. scz: "394",
  1551. df: "0.03",
  1552. },
  1553. {
  1554. gjcs: "主轴承油脂泵运行周期",
  1555. edz: "",
  1556. yxfw: "<14",
  1557. qz: "0.15",
  1558. scz: "6",
  1559. df: "0",
  1560. },
  1561. ],
  1562. bjlhpczl: [
  1563. {
  1564. sjzq: "近1天",
  1565. fdj: "1",
  1566. clx: "0",
  1567. bj: "0",
  1568. zz: "1",
  1569. zj: "2",
  1570. },
  1571. {
  1572. sjzq: "近3天",
  1573. fdj: "1",
  1574. clx: "0",
  1575. bj: "0",
  1576. zz: "1",
  1577. zj: "2",
  1578. },
  1579. {
  1580. sjzq: "统计期内",
  1581. fdj: "1",
  1582. clx: "0",
  1583. bj: "0",
  1584. zz: "1",
  1585. zj: "2",
  1586. },
  1587. ],
  1588. // 变桨关键参数表格
  1589. bjgjcs: [
  1590. {
  1591. gjcs: "变桨电机温度1",
  1592. edz: "55",
  1593. yxfw: "<100",
  1594. qz: "0.12",
  1595. scz: "68",
  1596. df: "0.24",
  1597. },
  1598. {
  1599. gjcs: "变桨电机温度2",
  1600. edz: "55",
  1601. yxfw: "<100",
  1602. qz: "0.12",
  1603. scz: "87",
  1604. df: "0.59",
  1605. },
  1606. {
  1607. gjcs: "变桨电机温度3",
  1608. edz: "55",
  1609. yxfw: "<100",
  1610. qz: "0.12",
  1611. scz: "79",
  1612. df: "0.48",
  1613. },
  1614. {
  1615. gjcs: "变频器温度1",
  1616. edz: "25",
  1617. yxfw: "<45",
  1618. qz: "0.20",
  1619. scz: "31",
  1620. df: "0.34",
  1621. },
  1622. {
  1623. gjcs: "变频器温度2",
  1624. edz: "25",
  1625. yxfw: "<45",
  1626. qz: "0.20",
  1627. scz: "31",
  1628. df: "0.90",
  1629. },
  1630. {
  1631. gjcs: "变频器温度3",
  1632. edz: "25",
  1633. yxfw: "<45",
  1634. qz: "0.20",
  1635. scz: "30",
  1636. df: "0.12",
  1637. },
  1638. ],
  1639. scatterLineData: {
  1640. data: [
  1641. {
  1642. title: "男",
  1643. value: [
  1644. [14.49, 1537.0],
  1645. [5.78, 368.0],
  1646. [5.08, 247.0],
  1647. [4.79, 171.0],
  1648. [4.05, 120.0],
  1649. [3.17, 49.0],
  1650. [2.45, 5.0],
  1651. [2.93, 28.0],
  1652. [2.55, 6.0],
  1653. [2.39, -6.0],
  1654. [1.51, 0.0],
  1655. [1.21, 0.0],
  1656. [9.85, 1233.0],
  1657. [11.21, 1540.0],
  1658. [11.15, 1554.0],
  1659. [11.64, 1534.0],
  1660. [11.44, 1531.0],
  1661. [10.96, 1522.0],
  1662. [10.23, 1540.0],
  1663. [11.26, 816.0],
  1664. [12.43, 673.0],
  1665. [10.37, 693.0],
  1666. [10.83, 715.0],
  1667. [12.66, 718.0],
  1668. [13.49, 739.0],
  1669. [14.78, 732.0],
  1670. [13.16, 1414.0],
  1671. [14.48, 1532.0],
  1672. [12.24, 1539.0],
  1673. [11.48, 1535.0],
  1674. [12.82, 1538.0],
  1675. [11.93, 1547.0],
  1676. [10.42, 1410.0],
  1677. [10.05, 1532.0],
  1678. [10.05, 1497.0],
  1679. [10.07, 1486.0],
  1680. [9.67, 1454.0],
  1681. [11.3, 1419.0],
  1682. [11.14, 1510.0],
  1683. [10.77, 1538.0],
  1684. [10.55, 1542.0],
  1685. [10.43, 1517.0],
  1686. [12.58, 1541.0],
  1687. [11.05, 1551.0],
  1688. [10.85, 1535.0],
  1689. [11.87, 1540.0],
  1690. [13.79, 1530.0],
  1691. [13.63, 1537.0],
  1692. [12.01, 1535.0],
  1693. [12.12, 1532.0],
  1694. [11.53, 1524.0],
  1695. [10.62, 1541.0],
  1696. [10.23, 1409.0],
  1697. [10.89, 1541.0],
  1698. [10.45, 1541.0],
  1699. [11.59, 1536.0],
  1700. [12.1, 1544.0],
  1701. [11.83, 1534.0],
  1702. [12.57, 1544.0],
  1703. [10.88, 1538.0],
  1704. [11.15, 1539.0],
  1705. [11.37, 1536.0],
  1706. [11.62, 1546.0],
  1707. [11.98, 1537.0],
  1708. [11.72, 1533.0],
  1709. [10.92, 1530.0],
  1710. [11.77, 1547.0],
  1711. [10.46, 1414.0],
  1712. [10.08, 1308.0],
  1713. [10.82, 1487.0],
  1714. [9.68, 1485.0],
  1715. [10.13, 1279.0],
  1716. ],
  1717. },
  1718. ],
  1719. lineData: {
  1720. xTitle: "风速",
  1721. yTitle: "功率",
  1722. legends: [],
  1723. data: [
  1724. [
  1725. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
  1726. 19, 20, 21, 22, 23, 24, 25,
  1727. ],
  1728. [
  1729. 0, 0, 0, 93.67, 98.38, 165, 295.84, 471.84, 648.28, 871.72,
  1730. 1124.84, 1296.42, 1448.63, 1548, 1548, 1548, 1548, 1548, 1548,
  1731. 1548, 1548, 1548, 1548, 1548, 1548, 1548,
  1732. ],
  1733. ],
  1734. },
  1735. },
  1736. qrqc: [
  1737. {
  1738. xm: "发电机转速",
  1739. xfqr: "1700",
  1740. xfqc: "2000",
  1741. dfqr: "0.35",
  1742. dfqc: "1500",
  1743. },
  1744. {
  1745. xm: "发电机转速",
  1746. xfqr: "1700",
  1747. xfqc: "2000",
  1748. dfqr: "0.35",
  1749. dfqc: "1500",
  1750. },
  1751. ],
  1752. gzfltj: [
  1753. {
  1754. fl: "xxx",
  1755. pc1: "1500",
  1756. pc2: "1500",
  1757. pc3: "1500",
  1758. sc1: "1500",
  1759. sc2: "1500",
  1760. sc3: "1500",
  1761. },
  1762. {
  1763. fl: "xxx",
  1764. pc1: "1500",
  1765. pc2: "1500",
  1766. pc3: "1500",
  1767. sc1: "1500",
  1768. sc2: "1500",
  1769. sc3: "1500",
  1770. },
  1771. ],
  1772. dialogVisible: false, // 弹窗是否显示
  1773. chartmap: {
  1774. fdj: [
  1775. {
  1776. title: "发电机",
  1777. yAxisIndex: 0,
  1778. value: [],
  1779. },
  1780. ],
  1781. clx: [
  1782. {
  1783. title: "齿轮箱",
  1784. yAxisIndex: 0,
  1785. value: [],
  1786. },
  1787. ],
  1788. zk: [
  1789. {
  1790. title: "主轴",
  1791. yAxisIndex: 0,
  1792. value: [],
  1793. },
  1794. ],
  1795. bj: [
  1796. {
  1797. title: "变桨",
  1798. yAxisIndex: 0,
  1799. value: [],
  1800. },
  1801. ],
  1802. },
  1803. djpg: [],
  1804. fnlyl: [
  1805. {
  1806. name: "name",
  1807. q1ysj: "1500",
  1808. q2ysj: "1500",
  1809. q3ysj: "1500",
  1810. },
  1811. {
  1812. name: "name",
  1813. q1ysj: "1500",
  1814. q2ysj: "1500",
  1815. q3ysj: "1500",
  1816. },
  1817. ],
  1818. jczbmap: {},
  1819. kkxfx: [
  1820. {
  1821. name: "name",
  1822. q1ysj: "1500",
  1823. q2ysj: "1500",
  1824. q3ysj: "1500",
  1825. },
  1826. {
  1827. name: "name",
  1828. q1ysj: "1500",
  1829. q2ysj: "1500",
  1830. q3ysj: "1500",
  1831. },
  1832. ],
  1833. fnlylItem: {},
  1834. sbklylItem: {},
  1835. reqData: {},
  1836. };
  1837. },
  1838. props: {
  1839. show: {
  1840. type: Boolean,
  1841. default: false,
  1842. },
  1843. params: {
  1844. type: Boolean,
  1845. default: () => {},
  1846. },
  1847. },
  1848. created() {
  1849. this.getReport();
  1850. },
  1851. beforeUpdate() {
  1852. var that = this;
  1853. that.$nextTick(() => {
  1854. that.others();
  1855. });
  1856. },
  1857. mounted() {
  1858. this.dialogVisible = this.show;
  1859. },
  1860. methods: {
  1861. others() {
  1862. $(".bjyhdb .el-table__header-wrapper table .is-group tr").eq(1).remove();
  1863. },
  1864. yhmxdbMethod({ row, column, rowIndex, columnIndex }) {
  1865. if (rowIndex < 8) {
  1866. if (rowIndex === 0 && columnIndex === 0) {
  1867. return [8, 1];
  1868. } else if (rowIndex >= 1 && columnIndex === 0) {
  1869. return [0, 0];
  1870. }
  1871. } else if (rowIndex >= 8 && rowIndex < 13) {
  1872. if (rowIndex === 8 && columnIndex === 0) {
  1873. return [5, 1];
  1874. } else if (rowIndex >= 9 && columnIndex === 0) {
  1875. return [0, 0];
  1876. }
  1877. } else if (rowIndex >= 13 && rowIndex < 27) {
  1878. if (rowIndex === 13 && columnIndex === 0) {
  1879. return [14, 1];
  1880. } else if (rowIndex >= 14 && columnIndex === 0) {
  1881. return [0, 0];
  1882. }
  1883. } else if (rowIndex >= 27 && rowIndex < 63) {
  1884. if (rowIndex === 27 && columnIndex === 0) {
  1885. return [36, 1];
  1886. } else if (rowIndex >= 28 && columnIndex === 0) {
  1887. return [0, 0];
  1888. }
  1889. } else if (rowIndex >= 63 && rowIndex < 78) {
  1890. if (rowIndex === 63 && columnIndex === 0) {
  1891. return [15, 1];
  1892. } else if (rowIndex >= 64 && columnIndex === 0) {
  1893. return [0, 0];
  1894. }
  1895. } else if (rowIndex >= 78 && rowIndex < 85) {
  1896. if (rowIndex === 78 && columnIndex === 0) {
  1897. return [7, 1];
  1898. } else if (rowIndex >= 79 && columnIndex === 0) {
  1899. return [0, 0];
  1900. }
  1901. } else if (rowIndex >= 85 && rowIndex < 88) {
  1902. if (rowIndex === 85 && columnIndex === 0) {
  1903. return [3, 1];
  1904. } else if (rowIndex >= 86 && columnIndex === 0) {
  1905. return [0, 0];
  1906. }
  1907. }
  1908. },
  1909. // 导出PDF
  1910. exportPDF(name) {
  1911. this.BASE.showMsg({
  1912. type: "success",
  1913. msg: "正在导出...请稍后...",
  1914. });
  1915. Get_PDF.downloadPDF(
  1916. document.querySelector(".pdfDom"),
  1917. "健康评价报告概述"
  1918. );
  1919. },
  1920. // 关闭弹窗
  1921. dialogClosed() {
  1922. this.dialogVisible = false;
  1923. this.$emit("closed", false);
  1924. },
  1925. // 改变列颜色
  1926. columnStyle({ row, column, rowIndex, columnIndex }) {
  1927. if (columnIndex === 0) {
  1928. return "background:rgb(204,255,255);";
  1929. }
  1930. },
  1931. // 获取报告详情
  1932. getReport(wtid, recorddate) {
  1933. if (!wtid) {
  1934. return;
  1935. }
  1936. // wtid = "SXJ_KGDL_ZK_F_WT_0048_EQ";
  1937. // recorddate = "2023-05-18";
  1938. api
  1939. .getAlarmcountVoList({
  1940. wtId: wtid,
  1941. recordDate: recorddate,
  1942. })
  1943. .then((res) => {
  1944. this.alarmcountVoList = res.data;
  1945. });
  1946. api
  1947. .healthreportHealthReport({
  1948. wtid: wtid,
  1949. date: recorddate,
  1950. })
  1951. .then((res) => {
  1952. if (res.code == 200) {
  1953. this.reportInfo1 = res.data;
  1954. }
  1955. });
  1956. // 获得健康报告指标列表信息
  1957. axios({
  1958. baseURL: process.env.VUE_APP_NEW_WISDOM,
  1959. url: `/health/getconHealthReportTargetMap?wtId=${wtid}&recordDate=${recorddate}`,
  1960. }).then((res) => {
  1961. if (res.data.code === 200) {
  1962. const data = res.data.data;
  1963. this.ls1 = data.ls1 || [];
  1964. this.ls2 = data.ls2 || [];
  1965. this.ls3 = data.ls3 || [];
  1966. }
  1967. });
  1968. // 获得等级评估结果
  1969. axios({
  1970. baseURL: process.env.VUE_APP_NEW_WISDOM,
  1971. url: `/health/getEquipmentInfoDayTopVoList?wtId=${wtid}&recordDate=${recorddate}`,
  1972. }).then((res) => {
  1973. if (res.data.code === 200) {
  1974. const data = res.data.data;
  1975. let datas = {};
  1976. let pjmxs = [
  1977. {
  1978. indicator: [],
  1979. data: [
  1980. {
  1981. name: data[0].wtName,
  1982. value: [],
  1983. },
  1984. ],
  1985. },
  1986. ];
  1987. data?.forEach((ele) => {
  1988. for (let key in ele) {
  1989. if (key !== "topls") {
  1990. datas[key] = ele[key];
  1991. }
  1992. }
  1993. });
  1994. data?.[0].topls?.forEach((ele) => {
  1995. if (ele.types) {
  1996. pjmxs[0].indicator.push(ele.targetName);
  1997. pjmxs[0].data[0].value.push(ele.num);
  1998. }
  1999. });
  2000. datas.year = recorddate.split("-")[0];
  2001. datas.month = recorddate.split("-")[1];
  2002. this.xnpjmx = data?.[0].topls || [];
  2003. this.datas = datas;
  2004. this.pjmxs = pjmxs;
  2005. }
  2006. });
  2007. // 获取隐患模型对比
  2008. axios({
  2009. baseURL: process.env.VUE_APP_NEW_WISDOM,
  2010. url: `/health/getAlarmcountVoList?wtId=${wtid}&recordDate=${recorddate}`,
  2011. }).then((res) => {
  2012. if (res.data.code === 200) {
  2013. this.yjmxdb = res.data.data;
  2014. }
  2015. });
  2016. // 获取曲线拟合及偏差率折线图
  2017. axios({
  2018. baseURL: process.env.VUE_APP_NEW_WISDOM,
  2019. url: `/health/getHealthReportQxpc?wtId=${wtid}&recordDate=${recorddate}`,
  2020. }).then((res) => {
  2021. if (res.data.code === 200) {
  2022. let glqxnh = [];
  2023. let lineChartItem = {
  2024. title: "曲线偏差率",
  2025. smooth: true,
  2026. value: [],
  2027. };
  2028. res.data.data?.forEach((ele) => {
  2029. lineChartItem.value.push({
  2030. text: new Date(ele.recordDate).formatDate("yyyy-MM-dd hh:mm:ss"),
  2031. value: ele.value || 0,
  2032. });
  2033. });
  2034. glqxnh.push(lineChartItem);
  2035. this.glqxnh = glqxnh;
  2036. }
  2037. });
  2038. // 获取对风偏差率折线图
  2039. axios({
  2040. baseURL: process.env.VUE_APP_API,
  2041. url: `/winddeviation/getDeviationValue?wtId=${wtid}&recorddate=${recorddate}`,
  2042. }).then(({ data: res }) => {
  2043. if (res.data.code === 200) {
  2044. if (
  2045. res.data.data.deviationls.length &&
  2046. res.data.data.powerresultList.length &&
  2047. res.data.data.speedresultList.length
  2048. ) {
  2049. this.healthreport = res.data.data;
  2050. this.dfpc = {
  2051. nipples: [
  2052. {
  2053. title: "频次",
  2054. smooth: true,
  2055. value: this.healthreport.deviationls.map((i) => {
  2056. return { text: i.value, value: i.bhg };
  2057. }),
  2058. },
  2059. ],
  2060. dfpclpowers: [
  2061. {
  2062. title: "功率",
  2063. smooth: true,
  2064. value: this.healthreport.powerresultList.map((i) => {
  2065. return { text: i.power, value: i.dfpcl };
  2066. }),
  2067. },
  2068. ],
  2069. dfpclSpeeds: [
  2070. {
  2071. title: "风速",
  2072. smooth: true,
  2073. value: this.healthreport.speedresultList.map((i) => {
  2074. return { text: i.speed, value: i.dfpcl };
  2075. }),
  2076. },
  2077. ],
  2078. };
  2079. } else {
  2080. this.healthreport = null;
  2081. }
  2082. }
  2083. });
  2084. // 获取部件劣化状态
  2085. axios({
  2086. baseURL: process.env.VUE_APP_NEW_WISDOM,
  2087. url: `/health/getHealthNumVoList?wtId=${wtid}&recordDate=${recorddate}`,
  2088. }).then((res) => {
  2089. if (res.data.code === 200) {
  2090. let bjlhzt = {
  2091. fdj: 0,
  2092. clx: 0,
  2093. bj: 0,
  2094. zz: 0,
  2095. };
  2096. res.data.data.forEach((ele) => {
  2097. for (let key in bjlhzt) {
  2098. bjlhzt[key] += ele[key] || 0;
  2099. }
  2100. });
  2101. bjlhzt.tableData = res.data.data || [];
  2102. this.bjlhzt = bjlhzt;
  2103. }
  2104. });
  2105. // 获取部件劣化状态发电机、齿轮箱、主轴、变桨折线图
  2106. [
  2107. { key: "fdjLineChartOptions", title: "发电机" },
  2108. { key: "clxLineChartOptions", title: "齿轮箱" },
  2109. { key: "zzLineChartOptions", title: "主轴" },
  2110. { key: "bjLineChartOptions", title: "变桨" },
  2111. ].forEach((item) => {
  2112. const key = item.key;
  2113. const title = item.title;
  2114. axios({
  2115. baseURL: process.env.VUE_APP_NEW_WISDOM,
  2116. url: `/health/getHealthDataVlueVo?wtId=${wtid}&recordDate=${recorddate}&type=${
  2117. key.split("LineChart")[0]
  2118. }`,
  2119. }).then((res) => {
  2120. if (res.data.code === 200) {
  2121. let chartOptions = [];
  2122. let lineChartItem = {
  2123. title: `${title}健康趋势`,
  2124. smooth: true,
  2125. value: [],
  2126. };
  2127. res.data.data?.forEach((ele) => {
  2128. lineChartItem.value.push({
  2129. text: new Date(ele.recordDate).formatDate(
  2130. "yyyy-MM-dd hh:mm:ss"
  2131. ),
  2132. value: ele.value || 0,
  2133. });
  2134. });
  2135. chartOptions.push(lineChartItem);
  2136. this[key] = chartOptions;
  2137. }
  2138. });
  2139. });
  2140. // 获取推荐检修方案
  2141. axios({
  2142. baseURL: process.env.VUE_APP_NEW_WISDOM,
  2143. url: `/health/getStateJudgment?wtId=${wtid}&recordDate=${recorddate}`,
  2144. }).then((res) => {
  2145. if (res.data.code === 200) {
  2146. this.tjjxfa = res.data.data;
  2147. }
  2148. });
  2149. },
  2150. // 对象排序
  2151. compare(prop) {
  2152. return function (obj1, obj2) {
  2153. var val1 = obj1[prop];
  2154. var val2 = obj2[prop];
  2155. if (!isNaN(Number(val1)) && !isNaN(Number(val2))) {
  2156. val1 = Number(val1);
  2157. val2 = Number(val2);
  2158. }
  2159. return val1 > val2 ? -1 : val1 < val2 ? 1 : 0;
  2160. };
  2161. },
  2162. },
  2163. watch: {
  2164. show(value) {
  2165. this.dialogVisible = value;
  2166. // if (value) {
  2167. // this.datas();
  2168. // }
  2169. },
  2170. params(res) {
  2171. this.reqData = res;
  2172. },
  2173. },
  2174. };
  2175. </script>
  2176. <style lang="less" scoped>
  2177. .cDialog {
  2178. position: relative;
  2179. .pdfDom {
  2180. padding: 30px 50px;
  2181. }
  2182. .title {
  2183. text-align: center;
  2184. font-size: 24px;
  2185. font-weight: 700;
  2186. }
  2187. .tableBox {
  2188. width: 100%;
  2189. display: flex;
  2190. justify-content: space-between;
  2191. align-items: center;
  2192. .l,
  2193. .r {
  2194. width: 49%;
  2195. align-self: flex-start;
  2196. }
  2197. .fw {
  2198. font-weight: 700;
  2199. }
  2200. }
  2201. .infoBox {
  2202. margin-top: 10px;
  2203. font-size: 16px;
  2204. .red {
  2205. color: #f25656;
  2206. }
  2207. .purple {
  2208. color: rgb(112, 88, 209);
  2209. }
  2210. .info {
  2211. color: #1595fa;
  2212. }
  2213. p {
  2214. text-indent: 2em;
  2215. }
  2216. }
  2217. .textBox {
  2218. width: 100%;
  2219. margin-top: 10px;
  2220. font-size: 16px;
  2221. }
  2222. }
  2223. .logHead {
  2224. display: flex;
  2225. width: 100%;
  2226. height: 40px;
  2227. line-height: 40px;
  2228. background: rgba(96, 103, 105, 0.6);
  2229. color: #ffffff;
  2230. justify-content: center;
  2231. margin-top: 15px;
  2232. }
  2233. .border-b {
  2234. border-bottom: 1px solid #c0ccda;
  2235. }
  2236. .p-5 {
  2237. padding: 5px;
  2238. }
  2239. .m-b-10 {
  2240. margin-bottom: 10px;
  2241. }
  2242. .text-indent-2 {
  2243. text-indent: 2em;
  2244. }
  2245. .text-indent-4 {
  2246. text-indent: 4em;
  2247. }
  2248. </style>
  2249. <style lang="less">
  2250. .cDialog {
  2251. // .cell {
  2252. // text-align: center;
  2253. // }
  2254. .el-dialog__body {
  2255. max-height: 850px;
  2256. overflow-y: scroll;
  2257. padding: 0;
  2258. }
  2259. .el-form-item.imp {
  2260. .el-form-item__content {
  2261. font-size: 24px;
  2262. }
  2263. }
  2264. .el-form-item {
  2265. margin-bottom: 0;
  2266. }
  2267. .el-table td {
  2268. color: black;
  2269. }
  2270. .tableBox {
  2271. .el-table .sort-caret.ascending {
  2272. border-bottom-color: #000;
  2273. }
  2274. .el-table .sort-caret.descending {
  2275. border-top-color: #000;
  2276. }
  2277. .el-table .ascending .sort-caret.ascending {
  2278. border-bottom-color: #05bb4c;
  2279. }
  2280. .el-table .descending .sort-caret.descending {
  2281. border-top-color: #05bb4c;
  2282. }
  2283. }
  2284. }
  2285. </style>