benchmarkwt.jsp 50 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265
  1. <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
  2. <%@include file="/pages/includes/taglibs.jsp" %>
  3. <head>
  4. <script type="text/javascript" src="<%=request.getContextPath() %>/resource/js/jquery-1.8.3.js"></script>
  5. <script type="text/ecmascript" src="<%=request.getContextPath() %>/resource/plugin/jqgrid/js/jquery.jqGrid.min.js"></script>
  6. <script type="text/ecmascript" src="<%=request.getContextPath() %>/resource/plugin/jqgrid/js/i18n/grid.locale-cn.js"></script>
  7. <script type="text/ecmascript" src="<%=request.getContextPath()%>/resource/js/system/jqdatagrid.js"></script>
  8. <script src="<%=request.getContextPath()%>/resource/js/datePicker/WdatePicker.js" type="text/javascript"></script>
  9. <link rel="stylesheet" type="text/css" href="<%=request.getContextPath() %>/resource/plugin/jqueryui/css/custom-theme/jquery-ui-1.9.2.custom.css" />
  10. <link rel="stylesheet" type="text/css" media="screen" href="<%=request.getContextPath() %>/resource/plugin/jqgrid/css/ui.jqgrid.css" />
  11. <link rel="stylesheet" href="<%=request.getContextPath() %>/resource/css/ztree/zTreeStyle.css" type="text/css">
  12. <script src="<%=request.getContextPath() %>/resource/js/ztree/jquery.ztree.all.min.js" type="text/javascript"></script>
  13. <script src="<%=request.getContextPath()%>/resource/js/highcharts/highcharts.src.js" type="text/javascript"></script>
  14. <script src="<%=request.getContextPath()%>/resource/js/highcharts/highcharts-more.js"></script>
  15. <script type="text/javascript" src="<%=request.getContextPath()%>/resource/plugin/highslide/highslide-with-html.js"></script>
  16. <link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/resource/plugin/highslide/highslide.css" />
  17. <style type="text/css">
  18. fieldset legend {
  19. color:#302A2A;
  20. font: bold 16px/2 Verdana, Geneva, sans-serif;
  21. font-weight: bold;
  22. text-align: left;
  23. text-shadow: 2px 2px 2px rgb(88, 126, 156);
  24. }
  25. #fzy {
  26. width: 480px;
  27. height: 480px;
  28. z-index: 1;
  29. }
  30. .ui-jqgrid tr.jqgrow td {
  31. white-space: normal !important;
  32. height:auto;
  33. vertical-align:text-top;
  34. padding-top:2px;
  35. }
  36. th.ui-th-column div{
  37. white-space:normal !important;
  38. height:auto !important;
  39. padding:0px;
  40. }
  41. </style>
  42. <script type="text/javascript">
  43. hs.graphicsDir = '<%=request.getContextPath()%>/resource/plugin/highslide/graphics/';
  44. hs.outlineType = 'rounded-white';
  45. hs.wrapperClassName = 'draggable-header';
  46. var options1;
  47. var options2;
  48. var chart1;
  49. var chart2;
  50. var setting = {
  51. check: {
  52. enable: true,
  53. chkStyle:"radio"
  54. },
  55. view: {
  56. dblClickExpand: false
  57. },
  58. data: {
  59. simpleData: {
  60. enable: true
  61. }
  62. },
  63. callback: {
  64. beforeClick: beforeClickWindfarm,
  65. onCheck: selectWindfarm
  66. },
  67. async: {
  68. enable: true,
  69. url:"../power/windfarmAjax.action",
  70. dataType:"json"
  71. }
  72. };
  73. function beforeClickWindfarm(treeId, treeNode) {
  74. var zTree = $.fn.zTree.getZTreeObj(treeId);
  75. zTree.checkNode(treeNode, !treeNode.checked, null, true);
  76. return false;
  77. }
  78. function showWindfarm() {
  79. var cityObj = $("#wpId");
  80. var cityOffset = $("#wpId").offset();
  81. $("#menuWindfarm").css({left:cityOffset.left + "px", top:cityOffset.top + cityObj.outerHeight() + "px"}).slideDown("fast");
  82. $("body").bind("mousedown", onBodyDown);
  83. }
  84. function showWindturbine(){
  85. if(wpids==""){
  86. alert("请选择风场!");
  87. return;
  88. }
  89. var setting2 = {
  90. check : {
  91. enable : true,
  92. chkboxType : {
  93. "Y" : "",
  94. "N" : ""
  95. }
  96. },
  97. view: {
  98. dblClickExpand: false
  99. },
  100. data: {
  101. simpleData: {
  102. enable: true
  103. }
  104. },
  105. callback: {
  106. beforeClick: beforeClickWindfarm,
  107. onCheck: selectWt
  108. },
  109. async: {
  110. enable: true,
  111. url:"../power/wtAjax.action?wpIds="+wpids,
  112. dataType:"json"
  113. }
  114. };
  115. $.fn.zTree.init($("#treeWt"), setting2);
  116. var cityObj = $("#wtId");
  117. var cityOffset = $("#wtId").offset();
  118. $("#menuWt").css({left:cityOffset.left + "px", top:cityOffset.top + cityObj.outerHeight() + "px"}).slideDown("fast");
  119. $("body").bind("mousedown", onBodyDown);
  120. //$("#menuWindfarm").fadeOut("fas
  121. }
  122. function hideMenuWindfarm() {
  123. $("#menuWindfarm").fadeOut("fast");
  124. }
  125. function hideMenuWt() {
  126. $("#menuWt").fadeOut("fast");
  127. }
  128. var wpids="";
  129. function selectWindfarm(e, treeId, treeNode) {
  130. var zTree = $.fn.zTree.getZTreeObj("treeWindfarm"),
  131. nodes = zTree.getCheckedNodes(true);
  132. v = "";
  133. d="";
  134. for (var i=0, l=nodes.length; i<l; i++) {
  135. v += nodes[i].name + ",";
  136. d+=nodes[i].id+",";
  137. }
  138. if (v.length > 0 ) v = v.substring(0, v.length-1);
  139. if (d.length > 0 ) d = d.substring(0, d.length-1);
  140. wpids=d;
  141. var cityObj = $("#wpId");
  142. cityObj.attr("value", v);
  143. //$("#menuWindfarm").fadeOut("fast");
  144. }
  145. var wtids="";
  146. function selectWt(e, treeId, treeNode){
  147. var zTree = $.fn.zTree.getZTreeObj("treeWt"),
  148. nodes = zTree.getCheckedNodes(true);
  149. v = "";
  150. d="";
  151. for (var i=0, l=nodes.length; i<l; i++) {
  152. v += nodes[i].name + ",";
  153. d+=nodes[i].id+",";
  154. }
  155. if (v.length > 0 ) v = v.substring(0, v.length-1);
  156. if (d.length > 0 ) d = d.substring(0, d.length-1);
  157. wtids=d;
  158. var cityObj = $("#wtId");
  159. cityObj.attr("value", v);
  160. //$("#menuXl").fadeOut("fast");
  161. }
  162. function onBodyDown(event) {
  163. if (( event.target.id != "wpId" && event.target.id != "menuWindfarm" && $(event.target).parents("#menuWindfarm").length<=0)) {
  164. hideMenuWindfarm();
  165. }
  166. //alert(event.target.id);
  167. //alert($(event.target).parents("#menuXl").length);
  168. if (!( event.target.id == "wtId" || event.target.id == "menuWt" || $(event.target).parents("#menuWt").length>0)) {
  169. hideMenuWt();
  170. }
  171. }
  172. function showDiv() {
  173. var hc = $("#container");
  174. return hs.htmlExpand(hc[0], {
  175. contentId : "showDiv",
  176. width : 1100,
  177. height : 1050,
  178. align : 'center',
  179. headingText : '对标信息分析'
  180. });
  181. }
  182. function showDiv2() {
  183. var hc = $("#container2");
  184. return hs.htmlExpand(hc[0], {
  185. contentId : "showDiv2",
  186. width : 800,
  187. height : 800,
  188. align : 'center',
  189. headingText : '损失应对措施'
  190. });
  191. }
  192. function displayInfo(str)
  193. {
  194. switch (str)
  195. {
  196. case 1:
  197. $("#xdsscs").css("display","");
  198. $("#gzsscs").css("display","none");
  199. $("#jxsscs").css("display","none");
  200. $("#xnsscs").css("display","none");
  201. $("#slsscs").css("display","none");
  202. break;
  203. case 2:
  204. $("#gzsscs").css("display","");
  205. $("#jxsscs").css("display","none");
  206. $("#xnsscs").css("display","none");
  207. $("#slsscs").css("display","none");
  208. $("#xdsscs").css("display","none");
  209. break;
  210. case 3:
  211. $("#gzsscs").css("display","none");
  212. $("#jxsscs").css("display","");
  213. $("#xnsscs").css("display","none");
  214. $("#slsscs").css("display","none");
  215. $("#xdsscs").css("display","none");
  216. break;
  217. case 4:
  218. $("#gzsscs").css("display","none");
  219. $("#jxsscs").css("display","none");
  220. $("#xnsscs").css("display","");
  221. $("#slsscs").css("display","none");
  222. $("#xdsscs").css("display","none");
  223. break;
  224. case 5:
  225. $("#gzsscs").css("display","none");
  226. $("#jxsscs").css("display","none");
  227. $("#xnsscs").css("display","none");
  228. $("#slsscs").css("display","");
  229. $("#xdsscs").css("display","none");
  230. break;
  231. }
  232. showDiv2();
  233. }
  234. function changeFc(fcId){
  235. var url1 = "../warn/changeFc.action?fcId="+fcId;
  236. $.ajax({
  237. type:"post",
  238. url:url1,
  239. dataType:"json",
  240. success: function(data){
  241. if(data.length != 0){
  242. eval(data);
  243. $("#wtId").empty();
  244. $("#wtId").append("<option value=''>请选择</option>");
  245. for(var i=0; i<data.length; i++){
  246. $("#wtId").append("<option value='"+data[i].id+"'>"+data[i].name+"</option>");
  247. }
  248. }else{
  249. $("#wtId").append("<option value=''>请选择</option>");
  250. $("#wtId").addOption("请选择","");
  251. }
  252. }
  253. });
  254. }
  255. function queryData(){
  256. if("" == $("#beginDate").val()){
  257. alert("请选择查询日期!");
  258. }
  259. else{
  260. //var type=$("#type").val();
  261. //var wpId=$("#wpId").find("option:selected").val();
  262. //var beginDate=$("#beginDate").val();
  263. //var endDate=$("#endDate").val();
  264. //var url = '<%=request.getContextPath() %>/charts/lossList.action?wpId='+wpId
  265. // +"&beginDate="+beginDate +"&endDate="+endDate+"&type="+type;
  266. //$("#gridTable").setGridParam({url:url}).trigger("reloadGrid");
  267. $("#gridTable").jqGrid('GridUnload');
  268. showJqGrid();
  269. }
  270. }
  271. function toExcel() {
  272. if("" == $("#beginDate").val()){
  273. alert("请选择查询开始日期!");
  274. }
  275. else{
  276. var wpId=$("#wpId").find("option:selected").val();
  277. var beginDate=$("#beginDate").val();
  278. var url = '<%=request.getContextPath() %>/charts/lossExcel.action?wpId='+wpId
  279. +"&beginDate="+beginDate ;
  280. }
  281. }
  282. $(document).ready(function () {
  283. initial();
  284. showJqGrid();
  285. });
  286. function showJqGrid() {
  287. var wpId=wpids;
  288. var beginDate=$("#beginDate").val();
  289. var endDate=$("#endDate").val();
  290. var wtId=wtids;
  291. var id = 'gridTable';
  292. var url = '<%=request.getContextPath() %>/benchmark/benchmarkWtList.action?wpId='+wpId
  293. +"&beginDate="+beginDate+"&endDate="+endDate+"&wtId="+wtId ;
  294. var datatype = 'json';
  295. var colNames = ['复位及时率分数','状态转换分数','状态转换分数','风能利用率分数','故障损失率分数','检修损失率分数'
  296. ,'弃风率分数','受累损失率分数','性能损失分数',
  297. '风机名称','日期','综合排名', '发电量排名', '发电量', '故障损失电量排名', '故障损失电量', '检修损失电量排名', '检修损失电量', '性能损失电量排名', '性能损失电量',
  298. '限电损失电量排名', '限电损失电量', '受累损失电量排名', '受累损失电量',
  299. '风能利用率排名', '风能利用率(%)', '故障损失率排名', '故障损失率(%)','检修损失率排名',
  300. '检修损失率(%)','弃风率排名','弃风率(%)','性能损失率排名','性能损失率(%)','受累损失率排名','受累损失率(%)', '复位及时率排名', '复位及时率(%)', '状态转换率排名', '状态转换率(%)',
  301. '消缺及时率排名', '消缺及时率(%)'];
  302. var colModel = [
  303. { name: 'fwjslfraction', index: 'fwjslfraction', width: 80, align: 'center',hidden:true},
  304. { name: 'ztzhjslfraction', index: 'ztzhjslfraction', width: 80, align: 'center',hidden:true},
  305. { name: 'xqjslfraction', index: 'xqjslfraction', width: 80, align: 'center',hidden:true},
  306. { name: 'fnlylfraction', index: 'fnlylfraction', width: 80, align: 'center',hidden:true},
  307. { name: 'gzsslfraction', index: 'gzsslfraction', width: 80, align: 'center',hidden:true},
  308. { name: 'jxsslfraction', index: 'jxsslfraction', width: 80, align: 'center',hidden:true},
  309. { name: 'qflfraction', index: 'qflfraction', width: 80, align: 'center',hidden:true},
  310. { name: 'slsslfraction', index: 'slsslfraction', width: 80, align: 'center',hidden:true},
  311. { name: 'xnsslfraction', index: 'xnsslfraction', width: 80, align: 'center',hidden:true},
  312. { name: 'wtName', index: 'wtName', width: 80, align: 'center'},
  313. { name: 'recordDate', index: 'recordDate', width: 80, align: 'center',formatter:'date',formatoptions:{srcformat: 'Y-m-d H:i:s', newformat: 'Y-m-d'}},
  314. { name: 'ordernum', index: 'ordernum', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'int'},
  315. { name: 'scadafdlnum', index: 'scadafdlnum', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'int'},
  316. { name: 'scadafdl', index: 'scadafdl', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'float'},
  317. { name: 'gzssnum', index: 'gzssnum', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'int'},
  318. { name: 'gzss', index: 'gzss', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'float'},
  319. { name: 'whssnum', index: 'whssnum', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'int'},
  320. { name: 'whss', index: 'whss', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'float'},
  321. { name: 'qfssnum', index: 'qfssnum', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'int'},
  322. { name: 'qfss', index: 'qfss', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'float'},
  323. { name: 'xdssnum', index: 'slssnum', width: 60, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'int'},
  324. { name: 'xdss', index: 'slss', width: 60, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'float'},
  325. { name: 'slssnum', index: 'slssnum', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'int'},
  326. { name: 'slss', index: 'slss', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'float'},
  327. { name: 'fnlylnum', index: 'fnlylnum', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'int'},
  328. { name: 'fnlyl', index: 'fnlyl', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'float'},
  329. { name: 'gzsslnum', index: 'gzsslnum', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'int'},
  330. { name: 'gzssl', index: 'gzssl', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'float'},
  331. { name: 'jxsslnum', index: 'jxsslnum', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'int'},
  332. { name: 'jxssl', index: 'jxssl', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'float'},
  333. { name: 'qflnum', index: 'qflnum', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'int'},
  334. { name: 'qfl', index: 'qfl', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'float'},
  335. { name: 'xnsslnum', index: 'xnsslnum', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'int'},
  336. { name: 'xnssl', index: 'xnssl', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'float'},
  337. { name: 'slsslnum', index: 'slsslnum', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'int'},
  338. { name: 'slssl', index: 'slssl', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'float'},
  339. { name: 'fwjslnum', index: 'fwjslnum', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'int'},
  340. { name: 'fwjsl', index: 'fwjsl', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'float'},
  341. { name: 'ztzhjslnum', index: 'ztzhjslnum', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'int'},
  342. { name: 'ztzhjsl', index: 'ztzhjsl', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'float'},
  343. { name: 'xqjslnum', index: 'xqjslnum', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'int'},
  344. { name: 'xqjsl', index: 'xqjsl', width: 50, align: 'center', formatter:'number', formatoptions:{decimalPlaces: 0},sorttype: 'float'}
  345. ];
  346. var caption = '场内对标列表明细';
  347. var sortname = 'total';
  348. var gridPagerID ='gridPager';
  349. var sortorder='desc';
  350. var height='auto';
  351. var width='auto';
  352. var rownumbers=true;
  353. var multiselect=true;
  354. myJqGrid(id, url, datatype, colNames, colModel, caption, sortname, gridPagerID,sortorder,height,width,
  355. multiselect,rownumbers);}
  356. function goback()
  357. {
  358. $("#f1").attr("action", "../benchmark/benchmarkWpindex.action").submit();
  359. }
  360. function initial()
  361. {
  362. $.fn.zTree.init($("#treeWindfarm"), setting);
  363. wpids='<s:property value="wpId"/>';
  364. $("#beginDate").val('<s:property value="beginDate"/>');
  365. $("#endDate").val('<s:property value="endDate"/>');
  366. $("#wpId").val('${wpName}');
  367. /******************************************玫瑰图1***********************************************/
  368. options1 = {
  369. colors: [
  370. '#7CB5EC',
  371. '#ACF19D'
  372. ],
  373. chart: {
  374. renderTo : 'fzy',
  375. polar: true,
  376. width:450,
  377. height:450,
  378. type: 'area'
  379. },
  380. title: {
  381. text: '对标排名分析',
  382. x: 0
  383. },
  384. pane: {
  385. size: '80%'
  386. },
  387. xAxis: {
  388. categories: ['风能利用率','故障损失率','检修损失率','弃风率','性能损失率','受累损失率','复位及时率','状态转换率','消缺及时率'
  389. ],
  390. tickmarkPlacement: 'on',
  391. lineWidth: 0
  392. },
  393. yAxis: {
  394. gridLineInterpolation: 'polygon',
  395. lineWidth: 0,
  396. min: 0
  397. },
  398. tooltip: {
  399. shared: true,
  400. pointFormat: '<span style="color:{series.color}"> <b>{point.y:,.0f}</b><br/>'
  401. },
  402. series: [{
  403. name: " ",
  404. data: [],
  405. pointPlacement: 'on'
  406. },{
  407. name: " ",
  408. data: [],
  409. pointPlacement: 'on'
  410. }]
  411. }
  412. /***************************************************************************************************/
  413. options2 = {
  414. colors: [
  415. '#D201D8', //限电
  416. '#FD0100',//故障
  417. '#FF7B16', //维护
  418. '#8085E9',//性能
  419. '#A6A6A6' //受累
  420. ],
  421. chart: {
  422. renderTo: 'containers',
  423. type: 'column',
  424. width:450,
  425. height:300,
  426. //backgroundColor:'#BFDFFF',
  427. //plotBackgroundColor:'#BFDFFF',
  428. zoomType: 'x'
  429. },
  430. title : {
  431. text : '损失电量分析'
  432. },
  433. xAxis: {
  434. type: 'category'
  435. },
  436. yAxis: [{ // Primary yAxis
  437. labels: {
  438. format: '{value}kw',
  439. style: {
  440. color: '#89A54E'
  441. }
  442. },
  443. title: {
  444. text: '电量',
  445. style: {
  446. color: '#89A54E'
  447. }
  448. }
  449. }],
  450. legend: {
  451. layout: 'vertical',
  452. // backgroundColor: '#FFFFFF',
  453. verticalAlign: 'top',
  454. x:-80,
  455. floating: true
  456. // shadow: true
  457. // layout: 'vertical',
  458. // align: 'right',
  459. // verticalAlign: 'middle',
  460. // borderWidth: 0
  461. },
  462. tooltip: {
  463. shared:true,
  464. xDateFormat:'%Y-%m-%d %H:%M'
  465. /*formatter: function() {
  466. return '<b>'+ this.series.name +'</b>:'+
  467. Highcharts.numberFormat(this.y, 2) +' kw<br/>时间:'+
  468. Highcharts.dateFormat('%Y-%m-%d %H:%M:%S', this.x);
  469. }*/
  470. },
  471. series: [{
  472. name: '限电损失电量(单位:kw)',
  473. yAxis:0
  474. },
  475. {name: '故障损失电量(单位:kw)',
  476. yAxis:0
  477. },{
  478. name: '检修损失电量(单位:kw)',
  479. yAxis:0
  480. },{
  481. name: '性能损失电量(单位:kw)',
  482. yAxis:0
  483. }
  484. ,{
  485. name: '受累损失电量(单位:kw)',
  486. yAxis:0
  487. }]
  488. };
  489. /***************************************************************************************************/
  490. }
  491. function contrast()
  492. {
  493. var wt1=" ";
  494. var wt2=" ";
  495. var arr=$("#gridTable").jqGrid('getGridParam', 'selarrrow');
  496. var i=0;
  497. var data1 = [];
  498. var data2 = [];
  499. var xddl = [];
  500. var gzdl = [];
  501. var whdl = [];
  502. var qfdl = [];
  503. var sldl = [];
  504. var names = [];
  505. $.each(arr,function(n,value) {
  506. var wtName= $("#gridTable").jqGrid('getCell',value,'wtName');
  507. var fnlylfraction= $("#gridTable").jqGrid('getCell',value,'fnlylfraction');
  508. var gzsslfraction= $("#gridTable").jqGrid('getCell',value,'gzsslfraction');
  509. var jxsslfraction= $("#gridTable").jqGrid('getCell',value,'jxsslfraction');
  510. var qflfraction= $("#gridTable").jqGrid('getCell',value,'qflfraction');
  511. var xnsslfraction= $("#gridTable").jqGrid('getCell',value,'xnsslfraction');
  512. var slsslfraction= $("#gridTable").jqGrid('getCell',value,'slsslfraction');
  513. var fwjslfraction= $("#gridTable").jqGrid('getCell',value,'fwjslfraction');
  514. var ztzhjslfraction= $("#gridTable").jqGrid('getCell',value,'ztzhjslfraction');
  515. var xqjslfraction= $("#gridTable").jqGrid('getCell',value,'xqjslfraction');
  516. var fnlyl= $("#gridTable").jqGrid('getCell',value,'fnlyl');
  517. var gzssl= $("#gridTable").jqGrid('getCell',value,'gzssl');
  518. var jxssl= $("#gridTable").jqGrid('getCell',value,'jxssl');
  519. var qfl= $("#gridTable").jqGrid('getCell',value,'qfl');
  520. var slssl= $("#gridTable").jqGrid('getCell',value,'slssl');
  521. var fwjsl= $("#gridTable").jqGrid('getCell',value,'fwjsl');
  522. var ztzhjsl= $("#gridTable").jqGrid('getCell',value,'ztzhjsl');
  523. var xqjsl= $("#gridTable").jqGrid('getCell',value,'xqjsl');
  524. var xnssl= $("#gridTable").jqGrid('getCell',value,'xnssl');
  525. var scadafdl= $("#gridTable").jqGrid('getCell',value,'scadafdl');
  526. var qfss= $("#gridTable").jqGrid('getCell',value,'qfss');
  527. var gzss= $("#gridTable").jqGrid('getCell',value,'gzss');
  528. var whss= $("#gridTable").jqGrid('getCell',value,'whss');
  529. var xdss= $("#gridTable").jqGrid('getCell',value,'xdss');
  530. var slss= $("#gridTable").jqGrid('getCell',value,'slss');
  531. if(i==0)
  532. {
  533. wt1=wtName;
  534. data1.push(parseInt(fnlylfraction));
  535. data1.push(parseInt(gzsslfraction));
  536. data1.push(parseInt(jxsslfraction));
  537. data1.push(parseInt(qflfraction));
  538. data1.push(parseInt(xnsslfraction));
  539. data1.push(parseInt(slsslfraction));
  540. data1.push(parseInt(fwjslfraction));
  541. data1.push(parseInt(ztzhjslfraction));
  542. data1.push(parseInt(xqjslfraction));
  543. $("#wtid1").html(wtName + "&nbsp;");
  544. $("#fnlyl1").html(fnlyl + "&nbsp;");
  545. if(gzssl>=5)
  546. {
  547. $("#gzssl1").css("background-color","red");
  548. $("#gzssl1").html("<a href='#' onclick='displayInfo(2)'>"+gzssl + "</a>");
  549. }else
  550. {
  551. $("#gzssl1").html(gzssl+ "&nbsp;");
  552. }
  553. if(jxssl>=5)
  554. {
  555. $("#jxssl1").css("background-color","red");
  556. $("#jxssl1").html("<a href='#' onclick='displayInfo(3)'>"+jxssl + "</a>");
  557. }else
  558. {
  559. $("#jxssl1").html(jxssl + "&nbsp;");
  560. }
  561. if(qfl>=5)
  562. {
  563. $("#qfl1").html("<a href='#' onclick='displayInfo(1)'>"+qfl + "</a>");
  564. $("#qfl1").css("background-color","red");
  565. }else
  566. {
  567. $("#qfl1").html(qfl + "&nbsp;");
  568. }
  569. if(slssl>=5)
  570. {
  571. $("#slssl1").html("<a href='#' onclick='displayInfo(5)'>"+slssl + "</a>");
  572. $("#slssl1").css("background-color","red");
  573. }else
  574. {
  575. $("#slssl1").html(slssl + "&nbsp;");
  576. }
  577. if(xnssl>=5)
  578. {
  579. $("#xnssl1").html("<a href='#' onclick='displayInfo(4)'>"+xnssl + "</a>");
  580. $("#xnssl1").css("background-color","red");
  581. }else
  582. {
  583. $("#xnssl1").html(xnssl + "&nbsp;");
  584. }
  585. $("#fwjsl1").html(fwjsl + "&nbsp;");
  586. $("#ztzhjsl1").html(ztzhjsl + "&nbsp;");
  587. $("#xqjsl1").html(xqjsl + "&nbsp;");
  588. $("#scadafdl1").html(scadafdl + "&nbsp;");
  589. $("#gzss1").html(gzss + "&nbsp;");
  590. $("#qfss1").html(qfss + "&nbsp;");
  591. $("#whss1").html(whss + "&nbsp;");
  592. $("#xdss1").html(xdss + "&nbsp;");
  593. $("#slss1").html(slss + "&nbsp;");
  594. names.push(wt1);
  595. if (xdss != null) {
  596. xddl.push( parseFloat(xdss) );
  597. }
  598. if (gzss != null) {
  599. gzdl.push( parseFloat(gzss) );
  600. }
  601. if (whss != null) {
  602. whdl.push( parseFloat(whss) );
  603. }
  604. if (qfss != null) {
  605. qfdl.push( parseFloat(qfss) );
  606. }
  607. sldl.push(parseFloat('0'));
  608. }else if(i==1)
  609. {
  610. wt2=wtName;
  611. data2.push(parseInt(fnlylfraction));
  612. data2.push(parseInt(gzsslfraction));
  613. data2.push(parseInt(jxsslfraction));
  614. data2.push(parseInt(qflfraction));
  615. data2.push(parseInt(xnsslfraction));
  616. data2.push(parseInt(slsslfraction));
  617. data2.push(parseInt(fwjslfraction));
  618. data2.push(parseInt(ztzhjslfraction));
  619. data2.push(parseInt(xqjslfraction));
  620. $("#wtid2").html(wtName + "&nbsp;");
  621. $("#fnlyl2").html(fnlyl + "&nbsp;");
  622. if(gzssl>=5)
  623. {
  624. $("#gzssl2").css("background-color","red");
  625. $("#gzssl2").html("<a href='#' onclick='displayInfo(2)'>"+gzssl + "</a>");
  626. }else
  627. {
  628. $("#gzssl2").html(gzssl+ "&nbsp;");
  629. }
  630. if(jxssl>=5)
  631. {
  632. $("#jxssl2").css("background-color","red");
  633. $("#jxssl2").html("<a href='#' onclick='displayInfo(3)'>"+jxssl + "</a>");
  634. }else
  635. {
  636. $("#jxssl2").html(jxssl + "&nbsp;");
  637. }
  638. if(qfl>=5)
  639. {
  640. $("#qfl2").html("<a href='#' onclick='displayInfo(1)'>"+qfl + "</a>");
  641. $("#qfl2").css("background-color","red");
  642. }else
  643. {
  644. $("#qfl2").html(qfl + "&nbsp;");
  645. }
  646. if(slssl>=5)
  647. {
  648. $("#slssl2").html("<a href='#' onclick='displayInfo(5)'>"+slssl + "</a>");
  649. $("#slssl2").css("background-color","red");
  650. }else
  651. {
  652. $("#slssl2").html(slssl + "&nbsp;");
  653. }
  654. if(xnssl>=5)
  655. {
  656. $("#xnssl2").html("<a href='#' onclick='displayInfo(4)'>"+xnssl + "</a>");
  657. $("#xnssl2").css("background-color","red");
  658. }else
  659. {
  660. $("#xnssl2").html(xnssl + "&nbsp;");
  661. }
  662. $("#fwjsl2").html(fwjsl + "&nbsp;");
  663. $("#ztzhjsl2").html(ztzhjsl + "&nbsp;");
  664. $("#xqjsl2").html(xqjsl + "&nbsp;");
  665. $("#scadafdl2").html(scadafdl + "&nbsp;");
  666. $("#gzss2").html(gzss + "&nbsp;");
  667. $("#qfss2").html(qfss + "&nbsp;");
  668. $("#whss2").html(whss + "&nbsp;");
  669. $("#xdss2").html(xdss + "&nbsp;");
  670. $("#slss2").html(slss + "&nbsp;");
  671. names.push(wt2);
  672. if (xdss != null) {
  673. xddl.push( parseFloat(xdss) );
  674. }
  675. if (gzss != null) {
  676. gzdl.push( parseFloat(gzss) );
  677. }
  678. if (whss != null) {
  679. whdl.push( parseFloat(whss) );
  680. }
  681. if (qfss != null) {
  682. qfdl.push( parseFloat(qfss) );
  683. }
  684. sldl.push(parseFloat('0'));
  685. }
  686. i++;
  687. })
  688. options1.series[0].data = data1;
  689. options1.series[0].name = wt1;
  690. options1.series[1].data = data2;
  691. options1.series[1].name = wt2;
  692. chart1 = new Highcharts.Chart(options1);
  693. options2.series[0].data = xddl;
  694. options2.series[1].data = gzdl;
  695. options2.series[2].data = whdl;
  696. options2.series[3].data = qfdl;
  697. options2.series[4].data = sldl;
  698. options2.xAxis.categories = names;
  699. chart2 = new Highcharts.Chart(options2);
  700. if(i>2)
  701. {
  702. alert("一次最多能选择两台风机!");
  703. return false;
  704. }else if(i<2)
  705. {
  706. alert("请选择两台风机!");
  707. return false;
  708. }
  709. showDiv();
  710. }
  711. </script>
  712. <style type="text/css">
  713. .text_title {
  714. font-family: "宋体";
  715. font-size: 12px;
  716. color: #000;
  717. text-decoration: none;
  718. }
  719. .text_unit {
  720. font-family: "宋体";
  721. font-size: 12px;
  722. color: #333;
  723. text-decoration: none;
  724. }
  725. .text_main{
  726. font-family: Arial, Helvetica, sans-serif;
  727. font-size: 12px;
  728. color: #000;
  729. text-decoration: none;
  730. font-weight: bold;
  731. }
  732. fieldset legend {
  733. color:#302A2A;
  734. font: bold 16px/2 Verdana, Geneva, sans-serif;
  735. font-weight: bold;
  736. text-align: left;
  737. text-shadow: 2px 2px 2px rgb(88, 126, 156);
  738. }
  739. .panelcontainer {
  740. width: 100%;
  741. height: 70px;
  742. border-style: solid;
  743. border-color: #f1f1f1;
  744. border-width:1px;
  745. }
  746. .panelquery {
  747. width:100%;
  748. height:25px;
  749. background-color:#f1f1f1;
  750. line-height:25px;
  751. }
  752. .panelquerytext {
  753. margin-left:3px;
  754. font-weight:bold;
  755. font-size: 12px;
  756. font-family: tahoma,arial,verdana,sans-serif;
  757. }
  758. .querycondcontainer {
  759. line-height:39px;
  760. padding:3px;
  761. float:left;
  762. font-size: 12px;
  763. }
  764. </style>
  765. </head>
  766. <body>
  767. <form action="/benchmark/benchmarkWpindex.action" method="post" id="f1">
  768. <div class="panelcontainer" style="width:1620px;" >
  769. <div class="querycondcontainer">
  770. 场站:<input id="wpId" type="text" readonly value="" style="width:150px;" onclick="showWindfarm();" />
  771. </div>
  772. <div id="pjpanel" class="querycondcontainer" >
  773. 设备:<input id="wtId" type="text" readonly value="" style="width:150px;" onclick="showWindturbine();" />
  774. </div>
  775. <div class="querycondcontainer">
  776. 开始日期:<input type="text" style="width:150px;" class="Wdate" onFocus="WdatePicker({dateFmt:'yyyy-MM-dd',isShowWeek:true,readOnly:true})"
  777. id="beginDate" name="beginDate"/>
  778. </div>
  779. <div class="querycondcontainer">
  780. 结束日期:<input type="text" style="width:150px;" class="Wdate" onFocus="WdatePicker({dateFmt:'yyyy-MM-dd',isShowWeek:true,readOnly:true})"
  781. id="endDate" name="endDate"/>
  782. </div>
  783. <div style="float:left;line-height:39px;margin-left:20px;width:80px;">
  784. <input id="backbuttona" type="button" value="查询" onClick="queryData()" />
  785. </div>
  786. <div style="float:left;line-height:39px;margin-left:20px;width:80px;">
  787. <input id="backbuttona" type="button" value="对标分析" onClick="contrast()" />
  788. </div>
  789. <div style="float:left;line-height:39px;margin-left:20px;width:80px;">
  790. <input id="backbuttona1" type="button" value="返回" onClick="goback()" />
  791. </div>
  792. </div>
  793. <div id="menuWindfarm" class="menuContent" style="overflow-y:scroll;overflow-x:auto;z-index:9999; border: 1px solid #617775;background: #f0f6e4;display:none;position: absolute;">
  794. <ul id="treeWindfarm" class="ztree" style="margin-top:0; width:180px; height: 300px;"></ul>
  795. </div>
  796. <div id="menuWt" class="menuContent" style="overflow-y:scroll;overflow-x:auto;z-index:9999; border: 1px solid #617775;background: #f0f6e4;display:none;position: absolute;">
  797. <ul id="treeWt" class="ztree" style="margin-top:0; width:180px; height: 300px;"></ul>
  798. </div>
  799. <table id='gridTable' >
  800. </table>
  801. <s:hidden id="wpName"></s:hidden>
  802. <div id='gridPager'></div>
  803. </form>
  804. <div class="highslide-html-content" id="showDiv" style="width: 1000">
  805. <div class="highslide-header">
  806. <ul>
  807. <li class="highslide-move">
  808. <a href="#" onclick="return false">Move</a>
  809. </li>
  810. <li class="highslide-close" style="width: 18px;height: 5px">
  811. <a href="#" onclick="return hs.close(this)" style="width: 18px;height: 5px"></a>
  812. </li>
  813. </ul>
  814. </div>
  815. <div class="highslide-body" id="container" style="width: 1100;height : 1050;">
  816. <table width="1000" border="0" cellspacing="0" cellpadding="0" bgcolor="#efefef">
  817. <tr>
  818. <td width="560" rowspan="15" align="center" bgcolor="#FFFFFF"><div id="fzy"></div><div id="containers"></div></td>
  819. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span class='text_main' >指标</span></td>
  820. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span class='text_main' id="wtid1" >指标</span></td>
  821. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span class='text_main' id="wtid2">指标</span></td>
  822. </tr>
  823. <tr>
  824. <td width="140" height="50" align="center" valign="middle" bgcolor="#FFFFFF"><span id="" class='text_title'>发电量</span></td>
  825. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="scadafdl1" class='text_title'></span></td>
  826. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="scadafdl2" class='text_title'></span></td>
  827. </tr>
  828. <tr>
  829. <td width="140" height="50" align="center" valign="middle" bgcolor="#FFFFFF"><span id="" class='text_title'>故障损失电量</span></td>
  830. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="gzss1" class='text_title'></span></td>
  831. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="gzss2" class='text_title'></span></td>
  832. </tr>
  833. <tr>
  834. <td width="140" height="50" align="center" valign="middle" bgcolor="#FFFFFF"><span id="" class='text_title'>检修损失电量</span></td>
  835. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="whss1" class='text_title'></span></td>
  836. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="whss2" class='text_title'></span></td>
  837. </tr>
  838. <tr>
  839. <td width="140" height="50" align="center" valign="middle" bgcolor="#FFFFFF"><span id="" class='text_title'>性能损失电量</span></td>
  840. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="qfss1" class='text_title'></span></td>
  841. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="qfss2" class='text_title'></span></td>
  842. </tr>
  843. <tr>
  844. <td width="140" height="50" align="center" valign="middle" bgcolor="#FFFFFF"><span id="" class='text_title'>受累损失电量</span></td>
  845. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="slss1" class='text_title'></span></td>
  846. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="slss2" class='text_title'></span></td>
  847. </tr>
  848. <tr>
  849. <td width="140" height="50" align="center" valign="middle" bgcolor="#FFFFFF"><span id="" class='text_title'>风能利用率</span></td>
  850. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="fnlyl1" class='text_title'></span></td>
  851. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="fnlyl2" class='text_title'></span></td>
  852. </tr>
  853. <tr>
  854. <td width="140" height="50" align="center" valign="middle" bgcolor="#FFFFFF"><span id="" class='text_title'>故障损失率</span></td>
  855. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="gzssl1" class='text_title'></span></td>
  856. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="gzssl2" class='text_title'></span></td>
  857. </tr>
  858. <tr>
  859. <td width="140" height="50" align="center" valign="middle" bgcolor="#FFFFFF"><span id="" class='text_title'>检修损失率</span></td>
  860. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="jxssl1" class='text_title'></span></td>
  861. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="jxssl2" class='text_title'></span></td>
  862. </tr>
  863. <tr>
  864. <td width="140" height="50" align="center" valign="middle" bgcolor="#FFFFFF"><span id="" class='text_title'>弃风率</span></td>
  865. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="qfl1" class='text_title'></span></td>
  866. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="qfl2" class='text_title'></span></td>
  867. </tr>
  868. <tr>
  869. <td width="140" height="50" align="center" valign="middle" bgcolor="#FFFFFF"><span id="" class='text_title'>性能损失率</span></td>
  870. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="xnssl1" class='text_title'></span></td>
  871. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="xnssl2" class='text_title'></span></td>
  872. </tr>
  873. <tr>
  874. <td width="140" height="50" align="center" valign="middle" bgcolor="#FFFFFF"><span id="" class='text_title'>受累损失率</span></td>
  875. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="slssl1" class='text_title'></span></td>
  876. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="slssl2" class='text_title'></span></td>
  877. </tr>
  878. <tr>
  879. <td width="140" height="50" align="center" valign="middle" bgcolor="#FFFFFF"><span id="" class='text_title'>复位及时率</span></td>
  880. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="fwjsl1" class='text_title'></span></td>
  881. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="fwjsl2" class='text_title'></span></td>
  882. </tr>
  883. <tr>
  884. <td width="140" height="50" align="center" valign="middle" bgcolor="#FFFFFF"><span id="" class='text_title'>消缺及时率</span></td>
  885. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="xqjsl1" class='text_title'></span></td>
  886. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="xqjsl2" class='text_title'></span></td>
  887. </tr>
  888. <tr>
  889. <td width="140" height="50" align="center" valign="middle" bgcolor="#FFFFFF"><span id="" class='text_title'>状态转换率</span></td>
  890. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="ztzhjsl1" class='text_title'></span></td>
  891. <td width="140" height="50" align="center" bgcolor="#FFFFFF"><span id="ztzhjsl2" class='text_title'></span></td>
  892. </tr>
  893. </table>
  894. </div>
  895. </div>
  896. <!--***************************************************************************************************************************-->
  897. <div class="highslide-html-content" id="showDiv2" style="width: 1000">
  898. <div class="highslide-header">
  899. <ul>
  900. <li class="highslide-move">
  901. <a href="#" onclick="return false">Move</a>
  902. </li>
  903. <li class="highslide-close" style="width: 18px;height: 10px">
  904. <a href="#" onclick="return hs.close(this)" ></a>
  905. </li>
  906. </ul>
  907. </div>
  908. <div class="highslide-body" id="container2" style="width: 1000">
  909. <!--***************************************************************************************************************************-->
  910. <div id="gzsscs" style="display:none">
  911. <table width="100%" border="0" cellspacing="1" cellpadding="0" bgcolor="#efefef">
  912. <tr>
  913. <td width="579" height="20" align="left" bgcolor="#FFFFFF"><span class='text_main' >故障损失应对措施</span><span id="wtid" class='text_title'></span></td>
  914. </tr>
  915. <tr>
  916. <td width="579" height="20" align="left" bgcolor="#FFFFFF"><span class='text_main' >1、加强风机大部件的维护、消缺工作,确保能够长周期运行。</span><span id="wtid" class='text_title'></span></td>
  917. </tr>
  918. <tr>
  919. <td width="579" height="26" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>2、定期针对风机易损件的更换、检查、维护,减少风机易损件故障的影响。</span><span id="level" class='text_title'></span></td>
  920. </tr>
  921. <tr>
  922. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>3、加强备品备件的管理;提前采购,并采购优质的备品备件;定期对备品备件进行维护。</span>
  923. </td>
  924. </tr>
  925. <tr>
  926. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>4、按期、保证质量的完成定检项目。</span>
  927. </td>
  928. </tr>
  929. <tr>
  930. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>5、加强技术力量的储备、培训,培养优秀的风机检修维护人员。</span>
  931. </td>
  932. </tr>
  933. <tr>
  934. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>6、采购适用各类型风机检修、检测的工器具、仪表。</span>
  935. </td>
  936. </tr>
  937. <tr>
  938. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>7、建立检修、维护时间定额、工艺确认、验收等管理机制。</span>
  939. </td>
  940. </tr>
  941. </table>
  942. </div>
  943. <!--***************************************************************************************************************************-->
  944. <div id="xnsscs" style="display:block">
  945. <table width="100%" border="0" cellspacing="1" cellpadding="0" bgcolor="#efefef">
  946. <tr>
  947. <td width="579" height="20" align="left" bgcolor="#FFFFFF"><span class='text_main' >性能损失应对措施</span><span id="wtid" class='text_title'></span></td>
  948. </tr>
  949. <tr>
  950. <td width="579" height="20" align="left" bgcolor="#FFFFFF"><span class='text_main' >1、积极协调风机厂家技术人员,进行风机控制策略升级,提高切入风速、额定风速合格率,使风机进入最佳状态。</span><span id="wtid" class='text_title'></span></td>
  951. </tr>
  952. <tr>
  953. <td width="579" height="26" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>2、加强风机大部件的维护、消缺工作,确保能够长周期运行。</span><span id="level" class='text_title'></span></td>
  954. </tr>
  955. <tr>
  956. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>3、定期针对风机易损件的更换、检查、维护,减少风机易损件故障的影响。</span>
  957. </td>
  958. </tr>
  959. <tr>
  960. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>4、加强备品备件的管理;提前采购,并采购优质的备品备件;定期对备品备件进行维护。</span>
  961. </td>
  962. </tr>
  963. <tr>
  964. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>5、制定年度技改项目计划,及时进行风机性能优化,风能利用率。</span>
  965. </td>
  966. </tr>
  967. <tr>
  968. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>6、申请技改费用,更换风速仪、风向标为声波或激光测风,提升风机控制。</span>
  969. </td>
  970. </tr>
  971. <tr>
  972. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>7、按期、保证质量的完成定检项目。</span>
  973. </td>
  974. </tr>
  975. <tr>
  976. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>8、加强技术力量的储备、培训,培养优秀的风机检修维护人员。</span>
  977. </td>
  978. </tr>
  979. <tr>
  980. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>9、采购适用各类型风机检修、检测的工器具、仪表。</span>
  981. </td>
  982. </tr>
  983. <tr>
  984. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>10、建立风机性能优化、提效的技术团队;建立检修维护工艺确认、验收管理等机制。</span>
  985. </td>
  986. </tr>
  987. </table>
  988. </div>
  989. <!--***************************************************************************************************************************-->
  990. <div id="jxsscs" style="display:block">
  991. <table width="100%" border="0" cellspacing="1" cellpadding="0" bgcolor="#efefef">
  992. <tr>
  993. <td width="579" height="20" align="left" bgcolor="#FFFFFF"><span class='text_main' >检修损失应对措施</span><span id="wtid" class='text_title'></span></td>
  994. </tr>
  995. <tr>
  996. <td width="579" height="20" align="left" bgcolor="#FFFFFF"><span class='text_main' >1、进行检修时间优化(年度计划时间的确定,检修工期的优化)。</span><span id="wtid" class='text_title'></span></td>
  997. </tr>
  998. <tr>
  999. <td width="579" height="26" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>2、季节检修向状态检修转变。</span><span id="level" class='text_title'></span></td>
  1000. </tr>
  1001. <tr>
  1002. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>3、通过制定详细、周密的检修计划,确定检修项目,定额情况,确保按计划或提前完成检修工作。</span>
  1003. </td>
  1004. </tr>
  1005. <tr>
  1006. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>4、提前安排备品备件的采购工作,确保检修工作前,备品备件到场。</span>
  1007. </td>
  1008. </tr>
  1009. <tr>
  1010. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>5、定期检查检修工具、仪器仪表等的配置、完好。提前联系大型车辆、机械等设备到场。做好其他车辆的检查、维护工作,保证车辆不出现异常情况。</span>
  1011. </td>
  1012. </tr>
  1013. <tr>
  1014. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>6、提前做好检修队伍的落实,人员资质、技术能力的审查。</span>
  1015. </td>
  1016. </tr>
  1017. <tr>
  1018. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>7、做好检修的设备性能、状态、可靠性、缺陷(故障)情况的详查,落实检修项目。</span>
  1019. </td>
  1020. </tr>
  1021. <tr>
  1022. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>8、检修工作中严格执行检修作业指导书,标准化检修。</span>
  1023. </td>
  1024. </tr>
  1025. <tr>
  1026. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>9、合理安排检修、运行人员,缩短工期。</span>
  1027. </td>
  1028. </tr>
  1029. <tr>
  1030. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>10、加强后勤保障能力,保证人员吃住行的安全。</span>
  1031. </td>
  1032. </tr>
  1033. <tr>
  1034. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>11、进行班前思想教育、统一思想,认真完成工作交底,确保人员、设备安全。</span>
  1035. </td>
  1036. </tr>
  1037. </table>
  1038. </div>
  1039. <!--***************************************************************************************************************************-->
  1040. <div id="slsscs" style="display:block">
  1041. <table width="100%" border="0" cellspacing="1" cellpadding="0" bgcolor="#efefef">
  1042. <tr>
  1043. <td width="579" height="20" align="left" bgcolor="#FFFFFF"><span class='text_main' >受累损失应对措施</span><span id="wtid" class='text_title'></span></td>
  1044. </tr>
  1045. <tr>
  1046. <td width="579" height="20" align="left" bgcolor="#FFFFFF"><span class='text_main' >1、关注电网计划检修时间,合理优化、适当建议电网检修避开大风天气、恶略天气。</span><span id="wtid" class='text_title'></span></td>
  1047. </tr>
  1048. <tr>
  1049. <td width="579" height="26" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>2、恶略天气关注电网的变化,根据实际情况适当变换运行方式,做好事故预想。</span><span id="level" class='text_title'></span></td>
  1050. </tr>
  1051. <tr>
  1052. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>3、电网出现故障后,积极联络、及时沟通、主动采取措施,尽快消除故障,恢复运行。</span>
  1053. </td>
  1054. </tr>
  1055. <tr>
  1056. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>4、电网检修时,安排专人负责联系检修人员、大客户经理、调度员等,确认检修进度,及时反馈。工作完成后,及时联系相关人员,争取提前恢复运行。安排风场做好恢复运行的准备工作。</span>
  1057. </td>
  1058. </tr>
  1059. </table>
  1060. </div>
  1061. <!--***************************************************************************************************************************-->
  1062. <div id="xdsscs" style="display:block">
  1063. <table width="100%" border="0" cellspacing="1" cellpadding="0" bgcolor="#efefef">
  1064. <tr>
  1065. <td width="579" height="20" align="left" bgcolor="#FFFFFF"><span class='text_main' >限电损失应对措施</span><span id="wtid" class='text_title'></span></td>
  1066. </tr>
  1067. <tr>
  1068. <td width="579" height="20" align="left" bgcolor="#FFFFFF"><span class='text_main' >1、关注国家、自治区、电网各级关于弃风限电的政策。按相关政策要求,及时应对和采取措施。</span><span id="wtid" class='text_title'></span></td>
  1069. </tr>
  1070. <tr>
  1071. <td width="579" height="26" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>2、在新能源电量与小火电置换、大用户直供、外送等方面增加营销力度。</span><span id="level" class='text_title'></span></td>
  1072. </tr>
  1073. <tr>
  1074. <td width="579" height="28" align="left" bgcolor="#FFFFFF"><span id="span" class='text_main'>3、积极与宁夏电网调度机构进行沟通,在负荷有空间时,有较高风速时,及时申请提高负荷。</span>
  1075. </td>
  1076. </tr>
  1077. </table>
  1078. </div>
  1079. <!--***************************************************************************************************************************-->
  1080. </div>
  1081. </div>
  1082. <!--***************************************************************************************************************************-->
  1083. </body>