rtudataSearch.js 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635
  1. /**
  2. *
  3. */
  4. Ext.Loader.setConfig({
  5. enabled: true
  6. });
  7. Ext.Loader.setPath('Ext.ux', '../../res/extjs/examples/ux');
  8. Ext.require([
  9. 'Ext.grid.*',
  10. 'Ext.data.*',
  11. 'Ext.ux.RowExpander',
  12. 'Ext.selection.CheckboxModel'
  13. ]);
  14. var myStore=null;
  15. var StatusStore;
  16. var baseUrl;
  17. var centerLng;
  18. var centerLat;
  19. var company_code;
  20. var theme;
  21. var ConfirmStore
  22. var pieWidth;
  23. var pieMask;
  24. var myMask;
  25. var V_LOGINNAME='',V_PASSWORD='';
  26. var maxHeight = 10000;
  27. var maxWidth = 10000;
  28. var dwtype;
  29. var sm = Ext.create('Ext.selection.CheckboxModel');
  30. Ext.define('VDevices',{
  31. extend: 'Ext.data.Model',
  32. fields: [
  33. { name:'id', type:'int'},
  34. { name:'orderIdx', type:'int'},
  35. { name:'company', type:'string' },
  36. { name:'name', type:'string' },
  37. { name:'device_id', type:'string' },
  38. { name:'data_time', type:'string' },
  39. { name:'point_name', type:'string' },
  40. { name:'point_code', type:'string' },
  41. { name:'point_data', type:'string' },
  42. { name:'device_type', type:'string' },
  43. { name:'company_code', type:'string' },
  44. { name:'dwtype', type:'int' }
  45. ]
  46. });
  47. Ext.define('CompanyComboStore',{
  48. extend:'Ext.data.Model',
  49. fields: [
  50. {name:'owner_name', type:'string'},
  51. {name:'owner_id',type:'string'}
  52. ]
  53. });
  54. //var body_resize = function(){
  55. // maxHeight = document.documentElement.clientHeight;
  56. // maxWidth = document.documentElement.clientWidth;
  57. // Ext.getCmp('DeviceDataPanel').setHeight(maxHeight);
  58. // Ext.getCmp('DeviceDataPanel').setWidth(maxWidth);
  59. //}
  60. var draw_confirm = function(record){
  61. // $("#WaterPiePanel_title_string").html(ConfirmStore[0].company+'.'+ConfirmStore[0].name+'.水系统监控设备电池电量情况');
  62. var data_0 = new Array();
  63. var data_1 = new Array();
  64. var data_2 = new Array();
  65. var d_time = new Array();
  66. var tmp_0 = null, tmp_1 = null, tmp_2 = null,tmp_t = null;
  67. var themecolor = ((theme=='')||(theme=='access'))?'#ffffff':'#000000';
  68. if(ConfirmStore==null)
  69. return;
  70. for(var i=0;i<ConfirmStore.length;i++){
  71. var rec = ConfirmStore[i];
  72. tmp_0 = parseFloat(rec.point_data);
  73. tmp_t = rec.data_time;
  74. data_0.push(tmp_0);
  75. d_time.push(tmp_t);
  76. $("#operation_num_1").html(data_0[0].toFixed(4));
  77. $("#operation_num_2").html(d_time[0]);
  78. }
  79. var max = data_0[0];
  80. for(var i = 1; i < data_0.length; i++) {
  81. var cur = data_0[i];
  82. cur >= max ? max = cur : null
  83. if(max == cur){
  84. time = d_time[i];
  85. }
  86. }
  87. $("#operation_num_3").html(max.toFixed(4));
  88. $("#operation_num_4").html(time);
  89. var min = data_0[0];
  90. for(var i = 1; i < data_0.length; i++) {
  91. var cur = data_0[i];
  92. cur <= min ? min = cur : null
  93. if(min == cur){
  94. min_time = d_time[i];
  95. }
  96. }
  97. $("#operation_num_5").html(min.toFixed(4));
  98. $("#operation_num_6").html(min_time);
  99. var mColor1= '#34abf5';//[ '#DDDF0D','#f66167', '#34abf5']
  100. if(data_0[0]<60)
  101. mColor1 = '#f66167';
  102. else if(data_0[0]<80)
  103. mColor1 = '#DDDF0D';
  104. var mColor2= '#34abf5';//[ '#DDDF0D','#f66167', '#34abf5']
  105. if(data_1[0]<3)
  106. mColor2 = '#f66167';
  107. else if(data_1[0]<4)
  108. mColor2 = '#DDDF0D';
  109. Highcharts.getOptions().colors = Highcharts.map([mColor2,mColor2,mColor1,mColor1], function (color) {
  110. return {
  111. radialGradient: { cx: 0.5, cy: 0.3, r: 0.7 },
  112. stops: [
  113. [0, color],
  114. [1, Highcharts.Color(color).brighten(-0.3).get('rgb')] // darken
  115. ]
  116. };
  117. });
  118. var point_name = record.get('point_name');
  119. Highcharts.chart('operation_area',{
  120. chart:{
  121. type:'area',
  122. // zoomType: 'x',
  123. zoomType: 'xy',
  124. backgroundColor: 'rgba(0,0,0,0)'
  125. },
  126. // color:['#f66167', '#34abf5'],
  127. title:{
  128. // text:(companyName==null)?'水系统监控告警处理情况跟踪':companyName+'.水系统监控告警处理情况跟踪',
  129. text:'RTU近两周数据',
  130. float:true,
  131. style:{fontSize:'14px',color:themecolor,fontWeight:'bold'},
  132. enabled:false
  133. },
  134. legend:{
  135. // enabled:false,
  136. floating:true,
  137. x:410,
  138. y:-230,
  139. itemStyle:{fontSize:'12px',color:themecolor,fontWeight:'bold'}
  140. },
  141. exporting: {
  142. enabled: false
  143. },
  144. credits: {
  145. enabled: false
  146. },
  147. xAxis:[{
  148. categories:d_time,
  149. labels:{
  150. enabled:false
  151. },
  152. crosshair: true
  153. }],
  154. yAxis:[{
  155. title:{
  156. text:point_name,
  157. style:{fontSize:'10px',color:themecolor,fontWeight:'bold'}
  158. },
  159. gridLineColor:'rgba(0,0,0,0.2)',
  160. labels:{
  161. format:'{value}',
  162. style:{fontSize:'10px',color:themecolor,fontWeight:'bold'}
  163. },
  164. max:max+max*0.3,
  165. min:0
  166. }],
  167. tooltip:{
  168. shared:true
  169. },
  170. plotOptions:{
  171. area:{
  172. stackiung:'normal',
  173. marker:{
  174. lineWidth:0,
  175. enabled:false,
  176. radius:0
  177. }
  178. }
  179. },
  180. series:[{
  181. name:point_name,
  182. type: 'area',
  183. data:data_0,
  184. lineWidth:1,
  185. tooltip:{
  186. valueSuffix: ''
  187. },
  188. fillColor: {
  189. linearGradient: {
  190. x1: 0,
  191. y1: 0,
  192. x2: 0,
  193. y2: 1
  194. },
  195. stops: [
  196. [0, '#34abf5'],
  197. [1, Highcharts.Color('#34abf5').setOpacity(0.0).get('rgba')]
  198. ]
  199. }
  200. }
  201. ]
  202. });
  203. }
  204. var show_datapie = function(record){
  205. if(myStore==null)
  206. return;
  207. var themecolor = ((theme=='')||(theme=='access'))?'#ffffff':'#000000';
  208. var nrow = myStore.getCount();
  209. var device_id = record.get('device_id');
  210. var point_code = record.get('point_code');
  211. for(var i=0;i<nrow;i++){
  212. if(myStore.getAt(i).get('device_id')==device_id){
  213. $("#operation_num_1").html('');
  214. $("#operation_num_2").html('');
  215. $("#operation_num_3").html('');
  216. $("#operation_pie").html('');
  217. $("#operation_area").html('');
  218. pieMask.show();
  219. var query = new Object();
  220. // query.V_LOGINNAME = V_LOGINNAME;
  221. // query.V_PASSWORD = V_PASSWORD;
  222. query.device_id = device_id;
  223. query.point_code = point_code;
  224. $.ajax({
  225. type:'POST',
  226. url: baseUrl+"iot/data/view/getSyncDataRList",
  227. data: {
  228. queryJson : Ext.JSON.encode(query)
  229. },
  230. success: function(result){
  231. var json = eval('(' + result + ')');
  232. if(json.action=='getSyncDataVList'){
  233. ConfirmStore = json.RESULT;
  234. draw_confirm(record);
  235. }
  236. pieMask.hide();
  237. }
  238. });
  239. break;
  240. }
  241. }
  242. // pieMask.hide();
  243. }
  244. var getCurrentData = function(){
  245. var div = Ext.getCmp('VWaterOptionListPanel');
  246. var model = div.getSelectionModel();
  247. var record = model.getSelection()[0];
  248. show_datapie(record);
  249. }
  250. var body_resize = function(){
  251. maxHeight = document.documentElement.clientHeight;
  252. maxWidth = document.documentElement.clientWidth;
  253. Ext.getCmp('WaterAlarmPanel').setHeight(maxHeight);
  254. Ext.getCmp('WaterAlarmPanel').setWidth(maxWidth);
  255. }
  256. function exportbtn_click(){
  257. if(myStore==null)
  258. return;
  259. var div = Ext.getCmp('VWaterOptionListPanel');
  260. var model = div.getSelectionModel();
  261. var record = model.getSelection()[0];
  262. var nrow = myStore.getCount();
  263. var fields = '';
  264. var device_id = record.get('device_id');
  265. var point_code = record.get('point_code');
  266. var point_name = record.get('point_name');
  267. var array = ['id','device_id','name','point_code','point_data','company','data_time'];
  268. var name = ['编号','设备编号','设备名称','端口号','数据值','公司名称','添加时间'];
  269. for(var i=0;i<7;i++){
  270. if(i>0)
  271. fields += ',';
  272. fields += '{id:"'+array[i]+'",title:"'+name[i]+'",shown:"'+true+'"}';
  273. }
  274. var query = new Object();
  275. query.device_id = device_id;
  276. query.point_code = point_code;
  277. query.EXPORT_FILE = 'RTU'+point_name+'数据监控列表';
  278. query.fields = '['+fields+']';
  279. $.ajax({
  280. type:'POST',
  281. url: baseUrl+"iot/excel/view/rtuexportexl",
  282. data: {
  283. queryJson : Ext.JSON.encode(query)
  284. },
  285. success: function(result){
  286. var json = eval('(' + result + ')');
  287. if(json.action=='dormExport'){
  288. ConfirmStore = json.RESULT;
  289. var elemIF = document.createElement("iframe");
  290. elemIF.src = baseUrl+json.filename;
  291. elemIF.style.display = "none";
  292. document.body.appendChild(elemIF);
  293. }
  294. }
  295. });
  296. }
  297. Ext.onReady(function(){
  298. baseUrl = document.getElementById('basePath').value;
  299. theme = document.getElementById('theme').value;
  300. company_code = document.getElementById('company_code').value;
  301. $("#V_LOGINNAME").val(sessionStorage.getItem('V_LOGINNAME'));
  302. $("#V_PASSWORD").val(sessionStorage.getItem('V_PASSWORD'));
  303. V_LOGINNAME = $("#V_LOGINNAME").val();
  304. V_PASSWORD = $("#V_PASSWORD").val();
  305. var currentWidth = document.documentElement.clientWidth;
  306. pieWidth = currentWidth/7;
  307. var chkIcon = '<img src="'+baseUrl+'res/img/common/check.gif"/>'
  308. var unchkIcon = '<img src="'+baseUrl+'res/img/common/uncheck.gif"/>'
  309. var countPerPage = 20;
  310. var chkBoolean = function(flag) {
  311. if(flag)
  312. return chkIcon;
  313. return unchkIcon;
  314. }
  315. var queryJson = new Object();
  316. // queryJson.V_LOGINNAME = V_LOGINNAME;
  317. // queryJson.V_PASSWORD = V_PASSWORD;
  318. queryJson.COMMSTATUS = 'NO';
  319. if((company_code!=null)&&(company_code!='null')&&(company_code.length>0))
  320. queryJson.company_code = company_code;
  321. myStore = Ext.create('Ext.data.Store', {
  322. model: 'VDevices',
  323. pageSize: countPerPage,
  324. proxy: {
  325. type: 'ajax',
  326. actionMethods: {
  327. create : 'POST',
  328. read : 'POST', // by default GET
  329. update : 'POST',
  330. destroy: 'POST'
  331. },
  332. url: baseUrl+'iot/data/view/getSyncrtuDataVList',
  333. reader: {
  334. type: 'json',
  335. root: 'RESULT',
  336. totalProperty: 'totalCount'
  337. },
  338. extraParams:{
  339. queryJson:Ext.JSON.encode(queryJson)
  340. }
  341. },
  342. sorters:[{
  343. property:'data_time',
  344. direction:'DESC'
  345. }],
  346. remoteSort: true
  347. });
  348. var CompanyStory = Ext.create('Ext.data.Store',{
  349. model: 'CompanyComboStore',
  350. proxy: {
  351. type: 'ajax',
  352. actionMethods: {
  353. create : 'POST',
  354. read : 'POST', // by default GET
  355. update : 'POST',
  356. destroy: 'POST'
  357. },
  358. url: baseUrl+'iot/company/view/getNameList',
  359. reader: {
  360. type: 'json',
  361. root: 'RESULT',
  362. totalProperty: 'totalCount'
  363. },
  364. extraParams:{
  365. queryJson:Ext.JSON.encode(queryJson)
  366. }
  367. }
  368. });
  369. var ClztStory = Ext.create('Ext.data.Store',{
  370. fields:['abbr','name'],
  371. data:[
  372. {'abbr':0,'name':'未处理'},
  373. {'abbr':1,'name':'已处理'}
  374. ]
  375. });
  376. var FilterForm = Ext.create('Ext.form.Panel', {
  377. id: 'VFireOptionFilterForm',
  378. labelWidth: 55,
  379. defaultType: 'textfield',
  380. bodyPadding: 15,
  381. items: [{
  382. xtype:'combo',
  383. fieldLabel:'单位名称',
  384. id: 'ff_company_code',
  385. name:'ff_company_code',
  386. displayField : 'owner_name',
  387. valueField : 'owner_id',
  388. editable : false,
  389. width:330,
  390. store:CompanyStory
  391. },{
  392. xtype:'datefield',
  393. fieldLabel:"开始日期",
  394. minValue:'07/07/2017',
  395. minText:"当前日期选择应大于当天日期",
  396. format:"Y-m-d",
  397. columnWidth:0.5,
  398. id: 'ff_start_data',
  399. name:"ff_start_data",
  400. editable:false,//只读约束
  401. width:330
  402. },{
  403. xtype:'datefield',
  404. fieldLabel:"结束日期",
  405. minValue:'07/07/2017',
  406. minText:"当前日期选择应大于当天日期",
  407. format:"Y-m-d",
  408. columnWidth:0.5,
  409. id: 'ff_end_data',
  410. name:"ff_end_data",
  411. editable:false,//只读约束
  412. width:330
  413. },{
  414. fieldLabel:'设备名称',
  415. id: 'ff_clzt',
  416. name: 'ff_clzt',
  417. maxLength: 12,
  418. maxLengthText:'长度不得超出{0}',
  419. width:330
  420. }],
  421. buttons: [{
  422. text: '筛选',
  423. iconCls:'ok_btn',
  424. handler: function() {
  425. var form = this.up('form').getForm();
  426. if (form.isValid()) {
  427. var query = new Object();
  428. // var tmp = Ext.getCmp('ff_company_code');
  429. if(Ext.getCmp('ff_company_code').getValue()){
  430. query.company_code = Ext.getCmp('ff_company_code').getValue();
  431. $("#company_code").val(query.company_code);
  432. company_code = query.company_code;
  433. $("#FirePiePanel_title_string").html(Ext.getCmp('ff_company_code').getRawValue( )+'.监测设备列表');
  434. }else{
  435. $("#company_code").val('');
  436. $("#FirePiePanel_title_string").html('监测设备列表');
  437. company_code = null;
  438. }
  439. if(Ext.getCmp('ff_clzt').getValue()){
  440. query.name = Ext.getCmp('ff_clzt').getValue();
  441. $("#clzt").val(query.name);
  442. }else{
  443. $("#clzt").val('');
  444. }
  445. if(Ext.getCmp('ff_start_data').getValue()){
  446. query.time_start = Ext.getCmp('ff_start_data').getValue();
  447. var datetime=query.time_start.getFullYear() + '-' + (query.time_start.getMonth() + 1) + '-' + query.time_start.getDate() + ' ' + query.time_start.getHours() + ':' + query.time_start.getMinutes() + ':' + query.time_start.getSeconds();
  448. $("#time_start").val(datetime);
  449. }else{
  450. $("#time_start").val('');
  451. }
  452. if(Ext.getCmp('ff_end_data').getValue()){
  453. query.time_end = Ext.getCmp('ff_end_data').getValue();
  454. var datetime1=query.time_end.getFullYear() + '-' + (query.time_end.getMonth() + 1) + '-' + query.time_end.getDate() + ' ' + query.time_end.getHours() + ':' + query.time_end.getMinutes() + ':' + query.time_end.getSeconds();
  455. $("#time_end").val(datetime1);
  456. }else{
  457. $("#time_end").val('');
  458. }
  459. // query.name = Ext.getCmp('ff_clzt').getValue()==null?"":Ext.getCmp('ff_clzt').getValue();
  460. // query.V_LOGINNAME = V_LOGINNAME;
  461. // query.V_PASSWORD = V_PASSWORD;
  462. query.COMMSTATUS = 'NO';
  463. var jsonstr = Ext.JSON.encode(query);
  464. myStore.getProxy().extraParams = {
  465. queryJson : jsonstr
  466. };
  467. Ext.getCmp('VFireOptionListPageToolbar').moveFirst();
  468. Ext.getCmp('ff_company_code').setValue('');
  469. Ext.getCmp('ff_clzt').setValue('');
  470. Ext.getCmp('VFireOptionFilterWin').hide();
  471. // getCurrentData();
  472. }
  473. }
  474. },{
  475. text: '关闭',
  476. iconCls: 'cancel_btn',
  477. handler: function() {
  478. Ext.getCmp('VFireOptionFilterWin').hide();
  479. }
  480. }]
  481. });
  482. var filterwin = function() {
  483. if(Ext.getCmp('VFireOptionFilterWin')==undefined){
  484. Ext.create('Ext.window.Window',{
  485. id: 'VFireOptionFilterWin',
  486. title: '监测设备筛选',
  487. height: 210,
  488. width: 400,
  489. layout: 'fit',
  490. items: FilterForm,
  491. closable:false,
  492. modal:true,
  493. closeAction: 'hide'
  494. }).show();
  495. }else
  496. Ext.getCmp('VFireOptionFilterWin').show();
  497. CompanyStory.reload();
  498. }
  499. var WaterOptionPanel = Ext.create('Ext.grid.Panel', {
  500. header :{
  501. height:0,
  502. border:'0px solid #000000'
  503. },
  504. titleCollapse:true,
  505. id: 'VWaterOptionListPanel',
  506. region:'center',
  507. store: myStore,
  508. columns: [
  509. { header: 'id', dataIndex:'id',hidden:true, menuDisabled:true},
  510. { header: '序号', dataIndex: 'orderIdx',width:50, menuDisabled:true },
  511. { header: '单位名称', dataIndex: 'company',width:240, menuDisabled:true },
  512. { header: '设备名称', dataIndex: 'name', width:240, menuDisabled:true },
  513. { header: '设备编号', dataIndex: 'device_id', width:240, menuDisabled:true },
  514. { header: '设备类型', dataIndex: 'device_type', width:240, menuDisabled:true },
  515. { header: '端口名称', dataIndex: 'point_name', width:230, menuDisabled:true },
  516. { header: '端口编号', dataIndex: 'point_code', width:100, menuDisabled:true },
  517. { header: '数据上传时间', dataIndex: 'data_time', width:560,minWidth:400, maxWidth:1600,menuDisabled:true }
  518. ],
  519. columnLines: true,
  520. height: maxHeight,
  521. width: '100%',
  522. tbar: new Ext.create('Ext.toolbar.Toolbar',{
  523. items:[{
  524. html:'<span id="FirePiePanel_title_string" style="color:#ffffff;background-color:rgba(0,0,0,0)">监测设备列表</span>'
  525. },'->',{
  526. xtype: 'button',
  527. iconCls:'back_btn',
  528. text: '<span style="color:#ffffff;background-color:rgba(0,0,0,0)">返回</span>',
  529. listeners: {
  530. click: function(){
  531. location.href=baseUrl+'view/frontpage/map.jsp?&theme='+theme+'&company_code='+company_code;
  532. }
  533. }
  534. },'-',
  535. {
  536. xtype: 'button',
  537. iconCls:'filter_btn',
  538. text: '<span style="color:#ffffff;background-color:rgba(0,0,0,0)">筛选</span>',
  539. listeners: {
  540. click: filterwin
  541. }
  542. },'-',
  543. {
  544. xtype: 'button',
  545. iconCls:'filter_btn',
  546. text: '<span style="color:#ffffff;background-color:rgba(0,0,0,0)">导出</span>',
  547. listeners: {
  548. click: exportbtn_click
  549. }
  550. },'-']
  551. }),
  552. bbar: new Ext.PagingToolbar({
  553. store: myStore,
  554. id:'VFireOptionListPageToolbar',
  555. displayInfo: true,
  556. pageSize: countPerPage,
  557. prependButtons: true,
  558. displayMsg : '显示第 {0}条到 {1}条记录,总共 {2}条',
  559. emptyMsg : "没有记录",
  560. firstText: '第一页',
  561. prevText: '前一页',
  562. nextText: '后一页',
  563. lastText: '最后一页',
  564. refreshText: '刷新'
  565. }),
  566. frame: true,
  567. border:false,
  568. iconCls: 'icon-grid',
  569. listeners:{
  570. 'celldblclick' : function(grid, td, cellIndex, record, tr, rowIndex, e, eOpts){
  571. show_datapie(record);
  572. }
  573. }
  574. });
  575. // myStore.reload();
  576. // getCurrentData();
  577. var piebar = Ext.create('Ext.panel.Panel',{
  578. id:'FirePiePanel',
  579. width:'100%',
  580. height:498,
  581. region:'north',
  582. layout:'border',
  583. defaults:{
  584. border:false
  585. },
  586. html:'<div id="operation_body" class="operation_body"><div id="operation_dock_l" class="operation_dock_l"></div><div id="operation_dock_r" class="operation_dock_r"></div><img id="operation_title_icon" class="operation_title_icon" width="48" height="48" src="../../res/img/icons/3.png"/><div id="operation_title_text" class="operation_title_text">RTU数据情况</div><div id="operation_label_1" class="operation_label_11">最新数据</div><div id="operation_label_2" class="operation_label_12">最大数据</div><div id="operation_label_3" class="operation_label_13">最小数据</div><div id="operation_label_4" class="operation_label_14">时间</div><div id="operation_label_5" class="operation_label_15">时间</div><div id="operation_label_6" class="operation_label_16">时间</div><div id="operation_num_1" class="operation_num_11"></div><div id="operation_num_2" class="operation_num_12"></div><div id="operation_num_3" class="operation_num_13"></div><div id="operation_num_4" class="operation_num_14"></div><div id="operation_num_5" class="operation_num_15"></div><div id="operation_num_6" class="operation_num_16"></div><div id="operation_area_bg" class="operation_area_bg"></div><div id="operation_area" class="operation_area"></div></div>'
  587. });
  588. pieMask = new Ext.LoadMask(piebar,{msg:"Loading..."});
  589. myMask = new Ext.LoadMask(document.body,{msg:"Loading..."});
  590. new Ext.create('Ext.panel.Panel',{
  591. width:'100%',
  592. id: 'WaterAlarmPanel',
  593. layout:'border',
  594. items:[
  595. piebar,WaterOptionPanel
  596. ],
  597. renderTo: Ext.getBody()
  598. });
  599. pieMask.show();
  600. myStore.addListener('load',function(store,record,opts){
  601. pieMask.show();
  602. WaterOptionPanel.getSelectionModel().select(0,true);
  603. getCurrentData();
  604. });
  605. myStore.reload();
  606. $(window).resize(function(){
  607. body_resize();
  608. });
  609. body_resize();
  610. });