innationBenchmarkParticulars.js 9.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. import * as echarts from "echarts";
  2. export default {
  3. data(){
  4. return{
  5. pickerOptions: {
  6. disabledDate(time) {
  7. return time.getTime() > Date.now();
  8. },
  9. },
  10. tb2:false,
  11. formInline: {
  12. windfarm: "",
  13. project: "",
  14. line: "",
  15. },
  16. options: [],
  17. value: '',
  18. value2:'',
  19. timedate: [],
  20. multipleSelection:[],
  21. multipleSelection1:[],
  22. multipleSelection2:[],
  23. orderByColumn:'',
  24. isAsc:'asc',
  25. fdcLineData:[],
  26. fdcLineData2:[],
  27. currentPage2: 1,
  28. pagesize: 10,
  29. wpId:'',
  30. beginDate:'',
  31. endDate:'',
  32. dialogTableVisible:false,
  33. sortInOrder:[],
  34. sortInOrderTop:[],
  35. fdcName1:'',
  36. fdcName2:'',
  37. sortInOrde2:[],
  38. getTableData:[],
  39. fdcND:[],
  40. fdcND1:[],
  41. fdcND2:[],
  42. loading:true,
  43. loading2:true,
  44. wp_n_1: {},
  45. wp_n_2: {},
  46. }
  47. },
  48. filters: {
  49. rounding (value) {
  50. return value.toFixed(2)
  51. }
  52. },
  53. /**
  54. * 获取跳转数据
  55. */
  56. activated(){
  57. this.timedate = [];
  58. this.value = this.$route.query.wpId;
  59. // this.timedate[0] = this.$route.query.beginDate;
  60. // this.timedate[1] = this.$route.query.endDate;
  61. this.timedate.push(this.$route.query.beginDate,this.$route.query.endDate);
  62. this.YardTableData();
  63. },
  64. methods:{
  65. /**
  66. * 查询场内风机列表信息
  67. */
  68. queryApData() {
  69. this.YardTableData();
  70. if(this.value2 != null || this.value2 != undefined){
  71. this.tb2 = true;
  72. if(this.timedate == ''){
  73. this.beginDate = this.$route.query.beginDate;
  74. this.endDate = this.$route.query.endDate;
  75. }else{
  76. this.beginDate = this.timedate[0];
  77. this.endDate = this.timedate[1];
  78. }
  79. var guilty = new URLSearchParams();
  80. guilty.append('pageNum',this.currentPage2);
  81. guilty.append('pageSize',this.pagesize);
  82. guilty.append('orderByColumn',this.orderByColumn);
  83. guilty.append('isAsc',this.isAsc);
  84. guilty.append('wpId',this.value2);
  85. guilty.append('beginDate',this.beginDate);
  86. guilty.append('endDate',this.endDate);
  87. this.API.post('/contrast/benchmarkWpInWtList',guilty).then((res) => {
  88. this.fdcLineData2 = res.data;
  89. this.loading2=false;
  90. }).catch(error =>{
  91. this.$message.error('获取数据失败');
  92. });
  93. }
  94. },
  95. /**
  96. * 判断是否选择两个场站
  97. */
  98. queryApDataMx() {
  99. if(this.multipleSelection1.length+this.multipleSelection2.length==2){
  100. this.multipleSelection = this.multipleSelection1.concat(this.multipleSelection2);
  101. }else{
  102. this.$message.error("请选两个风场!");
  103. return;
  104. }
  105. this.wp_n_1 = {};
  106. this.wp_n_2 = {};
  107. if(this.multipleSelection.length==2){
  108. this.wp_n_1 = this.multipleSelection[0];
  109. this.wp_n_2 = this.multipleSelection[1];
  110. this.fdcName1 = this.multipleSelection[0].wtName;
  111. this.fdcName2 = this.multipleSelection[1].wtName;
  112. this.fdcND1 = this.multipleSelection[0].wtName;
  113. this.fdcND2 = this.multipleSelection[1].wtName;
  114. this.fdcND.push(this.fdcND1,this.fdcND2);
  115. this.sortInOrder.push(this.multipleSelection[0].fnlyl,this.multipleSelection[0].xqjsl,
  116. this.multipleSelection[0].ztzhjsl,this.multipleSelection[0].fwjsl,this.multipleSelection[0].slssl,
  117. this.multipleSelection[0].xnssl,this.multipleSelection[0].qfl,this.multipleSelection[0].jxssl,
  118. this.multipleSelection[0].gzssl);
  119. this.sortInOrderTop.push(this.multipleSelection[1].fnlyl,this.multipleSelection[1].xqjsl,
  120. this.multipleSelection[1].ztzhjsl,this.multipleSelection[1].fwjsl,this.multipleSelection[1].slssl,
  121. this.multipleSelection[1].xnssl,this.multipleSelection[1].qfl,this.multipleSelection[1].jxssl,
  122. this.multipleSelection[1].gzssl);
  123. this.getTableData.push({index:'发电量',data1:this.multipleSelection[0].scadafdl,data2:this.multipleSelection[1].scadafdl});
  124. this.getTableData.push({index:'故障损失电量',data1:this.multipleSelection[0].gzss,data2:this.multipleSelection[1].gzss});
  125. this.getTableData.push({index:'检修损失电量',data1:this.multipleSelection[0].jxssl,data2:this.multipleSelection[1].jxssl});
  126. this.getTableData.push({index:'性能未达标损失电量',data1:this.multipleSelection[0].xnsslfraction,data2:this.multipleSelection[1].xnsslfraction});
  127. this.getTableData.push({index:'受累损失电量',data1:this.multipleSelection[0].slss,data2:this.multipleSelection[1].slss});
  128. this.getTableData.push({index:'风能利用率',data1:this.multipleSelection[0].fnlyl,data2:this.multipleSelection[1].fnlyl});
  129. this.getTableData.push({index:'故障损失率',data1:this.multipleSelection[0].gzssl,data2:this.multipleSelection[1].gzssl});
  130. this.getTableData.push({index:'检修损失率',data1:this.multipleSelection[0].jxssl,data2:this.multipleSelection[1].jxssl});
  131. this.getTableData.push({index:'弃风率',data1:this.multipleSelection[0].qfl,data2:this.multipleSelection[1].qfl});
  132. this.getTableData.push({index:'性能损失率',data1:this.multipleSelection[0].xnssl,data2:this.multipleSelection[1].xnssl});
  133. this.getTableData.push({index:'受累损失率',data1:this.multipleSelection[0].slssl,data2:this.multipleSelection[1].slssl});
  134. this.getTableData.push({index:'复位及时率',data1:this.multipleSelection[0].fwjsl,data2:this.multipleSelection[1].fwjsl});
  135. this.getTableData.push({index:'消缺及时率',data1:this.multipleSelection[0].xqjsl,data2:this.multipleSelection[1].xqjsl});
  136. this.getTableData.push({index:'状态转换率',data1:this.multipleSelection[0].ztzhjsl,data2:this.multipleSelection[1].ztzhjsl});
  137. this.dialogTableVisible = true;
  138. this.$nextTick(function() {
  139. this.ECZM.leida_tc("leiDaTu5" , this.sortInOrder,this.fdcND1,this.sortInOrderTop,this.fdcND2);
  140. this.ECZM.bar_tc("leiDaTu6" , this.wp_n_1 , this.wp_n_2 ,this.wp_n_1.wtId , this.wp_n_2.wtId);
  141. //this.drawPie2('leiDaTu6')
  142. })
  143. }
  144. },
  145. /**
  146. * 格式转化(取小数点)
  147. */
  148. filter_fdl(cellValue){
  149. return parseFloat(cellValue.scadafdl).toFixed(2);
  150. },
  151. /**
  152. * 查询场内风机列表信息
  153. */
  154. YardTableData(){
  155. this.API.get('/powercompare/windfarmAjax').then((res) => {
  156. this.options = res.data;
  157. }).catch(error =>{
  158. this.$message.error('获取数据失败');
  159. });
  160. this.wpId = this.$route.query.wpId;
  161. if(this.timedate == ''){
  162. this.beginDate = this.$route.query.beginDate;
  163. this.endDate = this.$route.query.endDate;
  164. }else{
  165. this.beginDate = this.timedate[0];
  166. this.endDate = this.timedate[1];
  167. }
  168. var guilty = new URLSearchParams();
  169. guilty.append('pageNum',this.currentPage2);
  170. guilty.append('pageSize',this.pagesize);
  171. guilty.append('orderByColumn',this.orderByColumn);
  172. guilty.append('isAsc',this.isAsc);
  173. if(this.value == ''){
  174. guilty.append('wpId',this.wpId);
  175. }else{
  176. guilty.append('wpId',this.value);
  177. }
  178. guilty.append('beginDate',this.beginDate);
  179. guilty.append('endDate',this.endDate);
  180. this.API.post('/contrast/benchmarkWpInWtList',guilty).then((res) => {
  181. this.fdcLineData = res.data;
  182. this.loading = false;
  183. }).catch(error =>{
  184. this.$message.error('获取数据失败');
  185. });
  186. },
  187. headStyle() {
  188. return "text-align:left"
  189. },
  190. handleSelectionChange(val) {
  191. this.sortInOrder = [];
  192. this.sortInOrderTop = [];
  193. this.getTableData = [];
  194. this.sortInOrde2 = [];
  195. this.multipleSelection1=[];
  196. this.multipleSelection1 = val;
  197. },
  198. handleSelectionChange2(val) {
  199. this.sortInOrder = [];
  200. this.sortInOrderTop = [];
  201. this.getTableData = [];
  202. this.sortInOrde2 = [];
  203. this.multipleSelection2=[];
  204. this.multipleSelection2 = val;
  205. },
  206. changeTableSort(column){
  207. this.orderByColumn = column.prop;
  208. if(column.order == "descending"){
  209. this.isAsc = 'desc';
  210. }else if(column.order == "ascending"){
  211. this.isAsc = "asc";
  212. }
  213. this.YardTableData();
  214. },
  215. /**
  216. * 日期格式转换
  217. */
  218. filter_date(cellValue) {
  219. let date = new Date(cellValue.recordDate);
  220. return this.BASE.getBzDate(date,0);
  221. },
  222. /**
  223. * 返回按钮
  224. */
  225. goReturn(){
  226. this.$router.push('/internationalBenchmark')
  227. },
  228. }
  229. }