companyxx.js 33 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078
  1. /**
  2. * patrolplan.js
  3. * 巡检任务管理界面
  4. * emial: yaoqiang@chinausky.com
  5. * create: 2018-12-08
  6. */
  7. Ext.Loader.setConfig({
  8. enabled: true
  9. });
  10. Ext.Loader.setPath('Ext.ux', '../../res/extjs/examples/ux');
  11. Ext.require([
  12. 'Ext.grid.*',
  13. 'Ext.data.*',
  14. 'Ext.ux.RowExpander',
  15. 'Ext.selection.CheckboxModel'
  16. ]);
  17. var sm = Ext.create('Ext.selection.CheckboxModel');
  18. //var sm1 = Ext.create('Ext.selection.CheckboxModel');
  19. var menuidx = '';
  20. var mouseon;
  21. var mouseoff;
  22. var menu_click;
  23. var AllSelectedRecords = [];
  24. var sm1;
  25. var initflag = false;
  26. Ext.define('companyxx',{
  27. extend: 'Ext.data.Model',
  28. fields: [
  29. {name:'id', type:'string'},
  30. {name:'xh', type:'int'},
  31. {name:'username', type:'string'},
  32. {name:'bjhm', type:'string'},
  33. {name:'bjxh', type:'string'},
  34. {name:'zed', type:'string'},
  35. {name:'krq', type:'string'},
  36. {name:'jrq', type:'string'},
  37. {name:'pzlb', type:'string'},
  38. {name:'zq', type:'string'},
  39. {name:'sbtype', type:'string'},
  40. {name:'sbtype_name_list', type:'string'},
  41. {name:'company_name', type:'string'},
  42. {name:'name', type:'string'},
  43. {name:'czccs', type:'int'},
  44. ]
  45. });
  46. var body_resize = function(){
  47. maxHeight = document.documentElement.clientHeight;
  48. maxWidth = document.documentElement.clientWidth;
  49. Ext.getCmp('PatrolPlanPiebar').setHeight(maxHeight);
  50. Ext.getCmp('PatrolPlanPiebar').setWidth(maxWidth);
  51. }
  52. Ext.onReady(function(){
  53. var baseUrl = document.getElementById('basePath').value;
  54. var theme = document.getElementById('theme').value;
  55. company_code = document.getElementById('company_code').value;
  56. $("#V_LOGINNAME").val(sessionStorage.getItem('V_LOGINNAME'));
  57. $("#V_PASSWORD").val(sessionStorage.getItem('V_PASSWORD'));
  58. var V_LOGINNAME = $("#V_LOGINNAME").val();
  59. var V_PASSWORD = $("#V_PASSWORD").val();
  60. var chkIcon = '<img src="'+baseUrl+'res/img/common/check.gif"/>'
  61. var unchkIcon = '<img src="'+baseUrl+'res/img/common/uncheck.gif"/>'
  62. var countPerPage = 15;
  63. var maxHeight = 10000;
  64. var chkBoolean = function(flag) {
  65. if(flag)
  66. return chkIcon;
  67. return unchkIcon;
  68. }
  69. var deselect_fun = function(record){
  70. var index = AllSelectedRecords.indexOf(record.get("id"));
  71. if (index > -1) {
  72. AllSelectedRecords.splice(index, 1);
  73. return AllSelectedRecords;
  74. }
  75. }
  76. sm1 = Ext.create('Ext.selection.CheckboxModel',{
  77. mode: "MULTI",
  78. listeners: {
  79. deselect: function (me, record, index, opts) {
  80. if(initflag){
  81. // alert("初始化");
  82. }else{
  83. deselect_fun(record);
  84. }
  85. },
  86. select: function (me, record, index, opts) {
  87. var index = AllSelectedRecords.indexOf(record.get("id"));
  88. if (index > -1) {
  89. return AllSelectedRecords;
  90. }else{
  91. AllSelectedRecords.push(record.get("id"));
  92. return AllSelectedRecords;
  93. }
  94. }
  95. }
  96. });
  97. var queryJson = new Object();
  98. // queryJson.V_LOGINNAME = V_LOGINNAME;
  99. // queryJson.V_PASSWORD = V_PASSWORD;
  100. queryJson.COMMSTATUS = 'NO';
  101. if((company_code!=null)&&(company_code!='null')&&(company_code.length>0))
  102. queryJson.company_code = company_code;
  103. var myStore = Ext.create('Ext.data.Store', {
  104. model: 'companyxx',
  105. pageSize: countPerPage,
  106. proxy: {
  107. type: 'ajax',
  108. url: baseUrl+'iot/pzb/getCompanyxxList',
  109. reader: {
  110. type: 'json',
  111. root: 'RESULT',
  112. totalProperty: 'totalCount'
  113. },
  114. extraParams:{
  115. queryJson:Ext.JSON.encode(queryJson)
  116. }
  117. },
  118. remoteSort: true
  119. });
  120. Ext.define('xhxx',{
  121. extend:'Ext.data.Model',
  122. fields: [
  123. {name:'xh', type:'string'},
  124. {name:'id',type:'int'}
  125. ]
  126. });
  127. var getXhList = Ext.create('Ext.data.Store',{
  128. model: 'xhxx',
  129. proxy: {
  130. type: 'ajax',
  131. actionMethods: {
  132. create : 'POST',
  133. read : 'POST', // by default GET
  134. update : 'POST',
  135. destroy: 'POST'
  136. },
  137. url: baseUrl+'iot/pzb/getXhList',
  138. reader: {
  139. type: 'json',
  140. root: 'RESULT',
  141. totalProperty: 'totalCount'
  142. },
  143. extraParams:{
  144. queryJson:Ext.JSON.encode(queryJson)
  145. }
  146. }
  147. });
  148. var states = Ext.create('Ext.data.Store', {
  149. fields: ['status', 'name'],
  150. data : [
  151. {"status":"0", "name":"天"},
  152. {"status":"1", "name":"月"},
  153. {"status":"2", "name":"年"},
  154. ]
  155. });
  156. var clear_append_form = function (){
  157. Ext.getCmp('fa_company_name').setValue("");
  158. Ext.getCmp('fa_name').setValue("");
  159. Ext.getCmp('fa_bjhm').setValue("");
  160. Ext.getCmp('fa_bjxh').setValue("");
  161. Ext.getCmp('fa_pzlb').setValue("");
  162. Ext.getCmp('fa_lbsl').setValue("");
  163. Ext.getCmp('fa_username').setValue("");
  164. Ext.getCmp('fa_sbtype').setValue("");
  165. Ext.getCmp('PatrolPlanListPageToolbar').getStore().reload();
  166. }
  167. var AppendForm = Ext.create('Ext.form.Panel', {
  168. id: 'companyxxAppendForm1',
  169. labelWidth: 55,
  170. url: baseUrl+'iot/pzb/appendCompanyxx',
  171. defaultType: 'textfield',
  172. bodyPadding: 15,
  173. items: [{
  174. fieldLabel:'单位名称',
  175. id: 'fa_company_name',
  176. name:'company_name',
  177. maxLength:20,
  178. maxLengthText:'长度不得超出{0}',
  179. anchor:'75%'
  180. },{
  181. fieldLabel:'责任人姓名',
  182. id: 'fa_name',
  183. name:'name',
  184. maxLength:20,
  185. maxLengthText:'长度不得超出{0}',
  186. anchor:'75%'
  187. },{
  188. fieldLabel:'责任人手机号',
  189. id: 'fa_bjhm',
  190. name:'bjhm',
  191. maxLength:20,
  192. maxLengthText:'长度不得超出{0}',
  193. anchor:'75%'
  194. },{
  195. fieldLabel:'显号',
  196. id:'fa_bjxh',
  197. name:'bjxh',
  198. xtype:'combo',
  199. store:getXhList,
  200. displayField : 'xh',
  201. valueField : 'id',
  202. editable : false,
  203. anchor:'75%'
  204. },{
  205. fieldLabel:'周期',
  206. id:'fa_pzlb',
  207. name:'pzlb',
  208. xtype:'combo',
  209. store:states,
  210. displayField : 'name',
  211. valueField : 'status',
  212. editable : false,
  213. anchor:'75%',
  214. },{
  215. fieldLabel:'周期次数',
  216. id: 'fa_lbsl',
  217. name:'lbsl',
  218. maxLength:20,
  219. maxLengthText:'长度不得超出{0}',
  220. anchor:'75%',
  221. },{
  222. fieldLabel:'用户名',
  223. id: 'fa_username',
  224. name:'username',
  225. maxLength:20,
  226. maxLengthText:'长度不得超出{0}',
  227. anchor:'75%'
  228. },{
  229. xtype: 'checkboxgroup',
  230. fieldLabel: '报警类型',
  231. id:"fa_sbtype",
  232. listeners:{
  233. change:function(gp,nv,ov,eOpts){
  234. var i=0;
  235. if(nv.all && !ov.all){
  236. Ext.getCmp('fa_all_checkbox').setValue(true);
  237. Ext.getCmp('fa_monday_checkbox').setValue(true);
  238. Ext.getCmp('fa_tuesday_checkbox').setValue(true);
  239. Ext.getCmp('fa_wednesday_checkbox').setValue(true);
  240. Ext.getCmp('fa_thursday_checkbox').setValue(true);
  241. Ext.getCmp('fa_friday_checkbox').setValue(true);
  242. Ext.getCmp('fa_saturday_checkbox').setValue(true);
  243. Ext.getCmp('fa_sunday_checkbox').setValue(true);
  244. return true;
  245. }
  246. if(ov.all && !nv.all && nv.monday && nv.tuesday && nv.wednesday && nv.thursday && nv.friday && nv.saturday && nv.sunday){
  247. Ext.getCmp('fa_all_checkbox').setValue(false);
  248. Ext.getCmp('fa_monday_checkbox').setValue(false);
  249. Ext.getCmp('fa_tuesday_checkbox').setValue(false);
  250. Ext.getCmp('fa_wednesday_checkbox').setValue(false);
  251. Ext.getCmp('fa_thursday_checkbox').setValue(false);
  252. Ext.getCmp('fa_friday_checkbox').setValue(false);
  253. Ext.getCmp('fa_saturday_checkbox').setValue(false);
  254. Ext.getCmp('fa_sunday_checkbox').setValue(false);
  255. return true;
  256. }
  257. if(nv.monday && nv.tuesday && nv.wednesday && nv.thursday && nv.friday && nv.saturday && nv.sunday){
  258. Ext.getCmp('fa_all_checkbox').setValue(true);
  259. return true;
  260. }else{
  261. Ext.getCmp('fa_all_checkbox').setValue(false);
  262. return true;
  263. }
  264. }
  265. },
  266. columns: 3,
  267. items: [
  268. {boxLabel: '全选', name: 'all',inputValue:"0",id:"fa_all_checkbox"},
  269. {boxLabel: '火警', name: 'monday',inputValue:"1",id:"fa_monday_checkbox"},
  270. {boxLabel: '消防水', name: 'tuesday',inputValue:"2",id:"fa_tuesday_checkbox"},
  271. {boxLabel: '烟感', name: 'wednesday',inputValue:"3",id:"fa_wednesday_checkbox"},
  272. {boxLabel: '液位', name: 'thursday',inputValue:"5",id:"fa_thursday_checkbox"},
  273. {boxLabel: 'RTU', name: 'friday',inputValue:"6",id:"fa_friday_checkbox"},
  274. {boxLabel: '电气火灾', name: 'saturday',inputValue:"7",id:"fa_saturday_checkbox"},
  275. {boxLabel: '离线', name: 'sunday',inputValue:"8",id:"fa_sunday_checkbox"}
  276. ]},{
  277. id:'fa_Inspectors_queryJson1',
  278. name:'queryJson',
  279. hidden:true
  280. }],
  281. buttons: [{
  282. text: '提交',
  283. iconCls:'ok_btn',
  284. handler: function() {
  285. var form = this.up('form').getForm();
  286. if (form.isValid()) {
  287. var query = new Object();
  288. // query.V_LOGINNAME = $("#V_LOGINNAME").val();
  289. query.username = Ext.getCmp('fa_username').getValue();
  290. query.bjxh = Ext.getCmp('fa_bjxh').getValue();
  291. query.bjhm = Ext.getCmp('fa_bjhm').getValue();
  292. query.pzlb = Ext.getCmp('fa_pzlb').getValue();
  293. query.lbsl = Ext.getCmp('fa_lbsl').getValue();
  294. query.company_name = Ext.getCmp('fa_company_name').getValue();
  295. query.name = Ext.getCmp('fa_name').getValue();
  296. var sbtypeValue = Ext.getCmp('fa_sbtype').getChecked();
  297. var fa_sbtype1='';
  298. Ext.Array.each(sbtypeValue, function(item){
  299. fa_sbtype1 +=item.inputValue+',';
  300. });
  301. query.sbtype = fa_sbtype1;
  302. var jsonstr = Ext.JSON.encode(query);
  303. Ext.getCmp('fa_Inspectors_queryJson1').setValue(jsonstr);
  304. form.submit({
  305. method:'post',
  306. success:function(form, action) {
  307. Ext.Msg.alert('操作成功', '已保存', function(btn,txt){
  308. clear_append_form();
  309. });
  310. },
  311. failure: function(form, action) {
  312. Ext.Msg.alert('操作失败', action.result.Msg , function(btn,txt){
  313. clear_append_form();
  314. });
  315. }
  316. });
  317. }
  318. }
  319. },{
  320. text: '关闭',
  321. iconCls: 'cancel_btn',
  322. handler: function() {
  323. this.up('window').hide();
  324. clear_append_form
  325. }
  326. }]
  327. });
  328. var appendwin = function(){
  329. var zfappendwin = Ext.getCmp('zfappendwin1');
  330. if(zfappendwin==undefined)
  331. Ext.create('Ext.window.Window', {
  332. id:'zfappendwin1',
  333. title: '新增',
  334. height: 400,
  335. width: 450,
  336. modal: true,
  337. layout: 'fit',
  338. items: AppendForm,
  339. closeAction: 'hide'
  340. }).show();
  341. else
  342. zfappendwin.show();
  343. }
  344. var del_sm = function() {
  345. if(sm.getCount()==1){
  346. var selected = sm.getSelection( );
  347. var query = new Object();
  348. var list = new Array();
  349. var o = new Object();
  350. o.id = selected[0].raw.id;
  351. list.push(o);
  352. query.ID_LIST = list;
  353. var jsonstr= Ext.JSON.encode(query);
  354. Ext.MessageBox.confirm('注销单位信息','是否注销'+selected[0].raw.username+' 单位信息?',function(btn){
  355. if(btn=='yes'){
  356. $.ajax({
  357. type:'POST',
  358. url: baseUrl+"iot/pzb/delCompanyxx",
  359. data: {
  360. queryJson : jsonstr
  361. },
  362. success: function(result){
  363. var json = eval('(' + result + ')');
  364. if(json.action=='deleteCompanyxx'){
  365. if(json.success==true){
  366. Ext.Msg.alert('操作成功', json.MSG , function(btn,txt){
  367. // Ext.getCmp('PatrolPlanListPageToolbar').getStore().reload();
  368. Ext.getCmp('PatrolPlanListPageToolbar').getStore().reload();
  369. });
  370. }else{
  371. Ext.Msg.alert('操作失败', json.MSG , function(btn,txt){
  372. Ext.getCmp('PatrolPlanListPageToolbar').getStore().reload();
  373. });
  374. }
  375. }
  376. }
  377. });
  378. }
  379. },this);
  380. }else{
  381. if(sm.getCount()>1){
  382. var query = new Object();
  383. var list = new Array();
  384. for(var i=0;i<sm.getCount();i++){
  385. var selected = sm.getSelection( );
  386. var o = new Object();
  387. o.id = selected[i].raw.id;
  388. list.push(o);
  389. }
  390. query.ID_LIST = list;
  391. var jsonstr= Ext.JSON.encode(query);
  392. Ext.MessageBox.confirm('注销单位信息','是否注销选中的'+sm.getCount()+' 个单位信息?',function(btn){
  393. if(btn=='yes'){
  394. $.ajax({
  395. type:'POST',
  396. url: baseUrl+"iot/pzb/delCompanyxx",
  397. data: {
  398. queryJson : jsonstr
  399. },
  400. success: function(result){
  401. var json = eval('(' + result + ')');
  402. if(json.action=='deleteCompanyxx'){
  403. if(json.success==true){
  404. Ext.Msg.alert('操作成功', json.MSG , function(btn,txt){
  405. Ext.getCmp('PatrolPlanListPageToolbar').getStore().reload();
  406. });
  407. }else{
  408. Ext.Msg.alert('操作失败', json.MSG , function(btn,txt){
  409. Ext.getCmp('PatrolPlanListPageToolbar').getStore().reload();
  410. });
  411. }
  412. }
  413. }
  414. });
  415. }
  416. },this);
  417. }else{
  418. Ext.Msg.alert('请先选择','至少选择一条记录,再点击删除');
  419. }
  420. }
  421. }
  422. var show_page = function(){
  423. var company_name = document.getElementById('companyxx_title2_input').value;
  424. var name = document.getElementById('companyxx_title3_input1').value;
  425. var bjhm = document.getElementById('companyxx_title88_input1').value;
  426. var bjxh = document.getElementById('companyxx_title89_input1').value;
  427. // alert(company_name);
  428. var query = new Object();
  429. if(company_name.length>0){
  430. query.company_name = company_name;
  431. $("#company_name").val(company_name);
  432. }
  433. if(name.length>0){
  434. query.name = name;
  435. $("#name").val(name);
  436. }
  437. if(bjhm.length>0){
  438. query.bjhm = bjhm;
  439. $("#bjhm").val(bjhm);
  440. }
  441. if(bjxh.length>0){
  442. query.bjxh = bjxh;
  443. $("#bjxh").val(bjxh);
  444. }
  445. // query.V_LOGINNAME = V_LOGINNAME;
  446. // query.V_PASSWORD = V_PASSWORD;
  447. var jsonstr = Ext.JSON.encode(query);
  448. myStore.getProxy().extraParams = {
  449. queryJson : jsonstr
  450. };
  451. Ext.getCmp('PatrolPlanListPageToolbar').moveFirst();
  452. }
  453. var reset1 = function(){
  454. document.getElementById('companyxx_title2_input').value = '';
  455. document.getElementById('companyxx_title3_input1').value = '';
  456. document.getElementById('companyxx_title88_input1').value = '';
  457. document.getElementById('companyxx_title89_input1').value = '';
  458. $("#company_name").val('');
  459. $("#name").val('');
  460. $("#bjxh").val('');
  461. $("#bjhm").val('');
  462. show_page();
  463. }
  464. mouseon = function(obj){
  465. var id = obj.id;
  466. $("#"+id).removeClass(id);
  467. $("#"+id).addClass(id+'_on');
  468. }
  469. mouseoff = function(obj){
  470. var mid = "companyxx_";
  471. for(var i=1;i<6;i++){
  472. var id = "companyxx_title"+i+"_div";
  473. $("#"+id).removeClass(id+'_on');
  474. $("#"+id).addClass(id);
  475. }
  476. if(menuidx=='m1'){
  477. mid += 'title1_div';
  478. $("#"+mid).removeClass(mid);
  479. $("#"+mid).addClass(mid+'_on');
  480. }
  481. else if(menuidx=='m2'){
  482. mid += 'title2_div';
  483. $("#"+mid).removeClass(mid);
  484. $("#"+mid).addClass(mid+'_on');
  485. }
  486. else if(menuidx=='m3'){
  487. mid += 'title3_div';
  488. $("#"+mid).removeClass(mid);
  489. $("#"+mid).addClass(mid+'_on');
  490. }
  491. else if(menuidx=='m4'){
  492. mid += 'title4_div';
  493. $("#"+mid).removeClass(mid);
  494. $("#"+mid).addClass(mid+'_on');
  495. }
  496. else if(menuidx=='m5'){
  497. mid += 'title5_div';
  498. $("#"+mid).removeClass(mid);
  499. $("#"+mid).addClass(mid+'_on');
  500. }
  501. }
  502. menu_click = function(obj){
  503. var id = obj.id;
  504. if(id=='companyxx_title1_div'){
  505. menuidx = 'm1';
  506. show_page();
  507. }
  508. else if(id=='companyxx_title2_div'){
  509. menuidx = 'm2';
  510. reset1();
  511. }
  512. else if(id=='companyxx_title3_div'){
  513. menuidx = 'm3';
  514. del_sm();
  515. }
  516. else if(id=='companyxx_title4_div'){
  517. menuidx = 'm4';
  518. appendwin();
  519. }
  520. else if(id=='companyxx_title5_div'){
  521. menuidx = 'm5';
  522. chk_sm();
  523. }
  524. }
  525. var piedarHtml = function() {
  526. var maintenancePlanHtml = document.getElementById('patrolPlanHtml');
  527. var divhiddle = document.createElement('div');
  528. divhiddle.id='pzd_div_1';
  529. divhiddle.setAttribute('class','pzdHandleHtml3DivHiddle');
  530. maintenancePlanHtml.appendChild(divhiddle);
  531. var title = document.createElement('div');
  532. title.setAttribute('class','companyxx_Title');
  533. title.innerHTML='参数配置';
  534. maintenancePlanHtml.appendChild(title);
  535. var title2 = document.createElement('div');
  536. title2.setAttribute('class','companyxx1_title2_div');
  537. title2.innerHTML='单位名称';
  538. maintenancePlanHtml.appendChild(title2);
  539. var input = document.createElement('input');
  540. input.setAttribute('class','companyxx_input_class');
  541. input.setAttribute('id','companyxx_title2_input');
  542. input.setAttribute('type','text');
  543. input.setAttribute('value','');
  544. maintenancePlanHtml.appendChild(input);
  545. var title3 = document.createElement('div');
  546. title3.setAttribute('class','companyxx1_title3_div');
  547. title3.innerHTML='责任人';
  548. maintenancePlanHtml.appendChild(title3);
  549. var input66 = document.createElement('input');
  550. input66.setAttribute('class','companyxx_input1_class');
  551. input66.setAttribute('id','companyxx_title3_input1');
  552. input66.setAttribute('type','text');
  553. input66.setAttribute('value','');
  554. maintenancePlanHtml.appendChild(input66);
  555. var title88 = document.createElement('div');
  556. title88.setAttribute('class','companyxx_title88_div');
  557. title88.innerHTML='责任人手机号';
  558. maintenancePlanHtml.appendChild(title88);
  559. var input88 = document.createElement('input');
  560. input88.setAttribute('class','companyxx_input88_class');
  561. input88.setAttribute('id','companyxx_title88_input1');
  562. input88.setAttribute('type','text');
  563. input88.setAttribute('value','');
  564. maintenancePlanHtml.appendChild(input88);
  565. var title89 = document.createElement('div');
  566. title89.setAttribute('class','companyxx_title89_div');
  567. title89.innerHTML='显号';
  568. maintenancePlanHtml.appendChild(title89);
  569. var select = document.createElement('select');
  570. select.setAttribute('class','xhinput1_class');
  571. select.setAttribute('id','companyxx_title89_input1');
  572. maintenancePlanHtml.appendChild(select);
  573. var option2 = document.createElement('option');
  574. option2.innerHTML='所有';
  575. option2.setAttribute('value','0');
  576. select.appendChild(option2);
  577. for(var i=0;i<ConfirmStore.length;i++){
  578. var option3 = document.createElement('option');
  579. option3.innerHTML=ConfirmStore[i].xh;
  580. option3.setAttribute('value',ConfirmStore[i].id);
  581. select.appendChild(option3);
  582. }
  583. var title4 = document.createElement('div');
  584. title4.setAttribute('class','companyxx_title1_div');
  585. title4.setAttribute('id','companyxx_title1_div');
  586. title4.setAttribute('onmouseover',"mouseon(this)");
  587. title4.setAttribute('onmouseout',"mouseoff(this)");
  588. title4.setAttribute('onclick',"menu_click(this)");
  589. maintenancePlanHtml.appendChild(title4);
  590. var title5 = document.createElement('div');
  591. title5.setAttribute('class','companyxx_title2_div');
  592. title5.setAttribute('id','companyxx_title2_div');
  593. title5.setAttribute('onmouseover',"mouseon(this)");
  594. title5.setAttribute('onmouseout',"mouseoff(this)");
  595. title5.setAttribute('onclick',"menu_click(this)");
  596. maintenancePlanHtml.appendChild(title5);
  597. var title7 = document.createElement('div');
  598. title7.setAttribute('class','companyxx_title3_div');
  599. title7.setAttribute('id','companyxx_title3_div');
  600. title7.setAttribute('onmouseover',"mouseon(this)");
  601. title7.setAttribute('onmouseout',"mouseoff(this)");
  602. title7.setAttribute('onclick',"menu_click(this)");
  603. maintenancePlanHtml.appendChild(title7);
  604. var title8 = document.createElement('div');
  605. title8.setAttribute('class','companyxx_title4_div');
  606. title8.setAttribute('id','companyxx_title4_div');
  607. title8.setAttribute('onmouseover',"mouseon(this)");
  608. title8.setAttribute('onmouseout',"mouseoff(this)");
  609. title8.setAttribute('onclick',"menu_click(this)");
  610. maintenancePlanHtml.appendChild(title8);
  611. var title9 = document.createElement('div');
  612. title9.setAttribute('class','companyxx_title5_div');
  613. title9.setAttribute('id','companyxx_title5_div');
  614. title9.setAttribute('onmouseover',"mouseon(this)");
  615. title9.setAttribute('onmouseout',"mouseoff(this)");
  616. title9.setAttribute('onclick',"menu_click(this)");
  617. maintenancePlanHtml.appendChild(title9);
  618. }
  619. var piedarHtml_fun = function(){
  620. var query = new Object();
  621. // query.V_LOGINNAME = $("#V_LOGINNAME").val();
  622. $.ajax({
  623. type:'POST',
  624. url: baseUrl+"iot/pzb/getXhList",
  625. data: {
  626. queryJson : Ext.JSON.encode(query)
  627. },
  628. success: function(result){
  629. var json = eval('(' + result + ')');
  630. if(json.action=='getXhList'){
  631. ConfirmStore = json.RESULT;
  632. if(document.getElementById('pzd_div_1')==undefined)
  633. piedarHtml();
  634. }
  635. }
  636. });
  637. }
  638. var states1 = Ext.create('Ext.data.Store', {
  639. fields: ['pzlb', 'name'],
  640. data : [
  641. {"pzlb":"天", "name":"天"},
  642. {"pzlb":"月", "name":"月"},
  643. {"pzlb":"年", "name":"年"},
  644. ]
  645. });
  646. Ext.define('xhxx',{
  647. extend:'Ext.data.Model',
  648. fields: [
  649. {name:'xh', type:'string'},
  650. {name:'xh',type:'string'}
  651. ]
  652. });
  653. var getXhList2 = Ext.create('Ext.data.Store',{
  654. model: 'xhxx',
  655. proxy: {
  656. type: 'ajax',
  657. actionMethods: {
  658. create : 'POST',
  659. read : 'POST', // by default GET
  660. update : 'POST',
  661. destroy: 'POST'
  662. },
  663. url: baseUrl+'iot/pzb/getXhList',
  664. reader: {
  665. type: 'json',
  666. root: 'RESULT',
  667. totalProperty: 'totalCount'
  668. },
  669. extraParams:{
  670. queryJson:Ext.JSON.encode(queryJson)
  671. }
  672. }
  673. });
  674. var clear_modify_form = function (){
  675. Ext.getCmp('fm_company_name').setValue("");
  676. Ext.getCmp('fm_name').setValue("");
  677. Ext.getCmp('fm_bjxh').setValue("");
  678. Ext.getCmp('fm_bjhm').setValue("");
  679. Ext.getCmp('fm_pzlb').setValue("");
  680. Ext.getCmp('fm_lbsl').setValue("");
  681. Ext.getCmp('fm_sbtype').setValue("");
  682. Ext.getCmp('PatrolPlanListPageToolbar').getStore().reload();
  683. }
  684. var ModifyForm = Ext.create('Ext.form.Panel', {
  685. id: 'InspectorsEditForm',
  686. labelWidth: 55,
  687. url: baseUrl+'iot/pzb/updateCompanyxx',
  688. defaultType: 'textfield',
  689. bodyPadding: 15,
  690. items: [{
  691. fieldLabel:'单位名称',
  692. id: 'fm_company_name',
  693. name:'company_name',
  694. maxLength:20,
  695. maxLengthText:'长度不得超出{0}',
  696. anchor:'75%'
  697. },{
  698. fieldLabel:'责任人姓名',
  699. id: 'fm_name',
  700. name:'name',
  701. maxLength:20,
  702. maxLengthText:'长度不得超出{0}',
  703. anchor:'75%'
  704. },{
  705. fieldLabel:'责任人手机号',
  706. id: 'fm_bjhm',
  707. name:'bjhm',
  708. maxLength:20,
  709. maxLengthText:'长度不得超出{0}',
  710. anchor:'75%'
  711. },{
  712. fieldLabel:'显号',
  713. id:'fm_bjxh',
  714. name:'bjxh',
  715. xtype:'combo',
  716. store:getXhList2,
  717. displayField : 'xh',
  718. valueField : 'xh',
  719. editable : false,
  720. anchor:'75%'
  721. },{
  722. fieldLabel:'周期',
  723. id:'fm_pzlb',
  724. name:'pzlb',
  725. xtype:'combo',
  726. store:states1,
  727. displayField : 'name',
  728. valueField : 'pzlb',
  729. editable : false,
  730. anchor:'75%',
  731. },{
  732. fieldLabel:'周期次数',
  733. id: 'fm_lbsl',
  734. name:'lbsl',
  735. maxLength:20,
  736. maxLengthText:'长度不得超出{0}',
  737. anchor:'75%',
  738. },{
  739. xtype: 'checkboxgroup',
  740. fieldLabel: '报警类型',
  741. id:"fm_sbtype",
  742. columns: 3,
  743. items: [
  744. {boxLabel: '火警', name: 'monday',inputValue:"1",id:"fm_monday"},
  745. {boxLabel: '消防水', name: 'tuesday',inputValue:"2",id:"fm_tuesday"},
  746. {boxLabel: '烟感', name: 'wednesday',inputValue:"3",id:"fm_wednesday"},
  747. {boxLabel: '液位', name: 'thursday',inputValue:"5",id:"fm_thursday"},
  748. {boxLabel: 'RTU', name: 'friday',inputValue:"6",id:"fm_friday"},
  749. {boxLabel: '电气火灾', name: 'saturday',inputValue:"7",id:"fm_saturday"},
  750. {boxLabel: '离线', name: 'sunday',inputValue:"8",id:"fm_sunday"}
  751. ]},{
  752. id: 'fm_id',
  753. name:'id',
  754. hidden:true
  755. },{
  756. id:'fm_inspectors_queryJson',
  757. name:'queryJson',
  758. hidden:true
  759. }],
  760. buttons: [{
  761. text: '修改',
  762. iconCls:'ok_btn',
  763. handler: function() {
  764. var form = this.up('form').getForm();
  765. if (form.isValid()) {
  766. var query = new Object();
  767. query.id = Ext.getCmp('fm_id').getValue();
  768. if(Ext.getCmp('fm_pzlb').getValue()=='天'){
  769. query.pzlb = 0;
  770. }else if(Ext.getCmp('fm_pzlb').getValue()=='月'){
  771. query.pzlb = 1;
  772. }else if(Ext.getCmp('fm_pzlb').getValue()=='年'){
  773. query.pzlb = 2;
  774. }
  775. query.lbsl = Ext.getCmp('fm_lbsl').getValue();
  776. var sbtypeValue = Ext.getCmp('fm_sbtype').getChecked();
  777. var fm_sbtype1='';
  778. Ext.Array.each(sbtypeValue, function(item){
  779. fm_sbtype1 +=item.inputValue+',';
  780. });
  781. query.sbtype = fm_sbtype1;
  782. query.company_name = Ext.getCmp('fm_company_name').getValue();
  783. query.bjxh = Ext.getCmp('fm_bjxh').getValue();
  784. query.bjhm = Ext.getCmp('fm_bjhm').getValue();
  785. //
  786. query.name = Ext.getCmp('fm_name').getValue();
  787. var jsonstr = Ext.JSON.encode(query);
  788. Ext.getCmp('fm_inspectors_queryJson').setValue(jsonstr);
  789. form.submit({
  790. method:'post',
  791. success: function(form, action) {
  792. Ext.Msg.alert('操作成功', '已修改', function(btn,txt){
  793. clear_modify_form();
  794. });
  795. },
  796. failure: function(form, action) {
  797. Ext.Msg.alert('操作失败', action.Msg , function(btn,txt){
  798. clear_modify_form();
  799. });
  800. }
  801. });
  802. this.up('window').hide();
  803. }
  804. }
  805. },{
  806. text: '关闭',
  807. iconCls: 'cancel_btn',
  808. handler: function() {
  809. this.up('window').hide();
  810. clear_modify_form();
  811. }
  812. }]
  813. });
  814. var modifywin = function(){
  815. Ext.create('Ext.window.Window', {
  816. title: '修改',
  817. height: 400,
  818. width: 450,
  819. modal: true,
  820. layout: 'fit',
  821. items: ModifyForm,
  822. closeAction: 'hide'
  823. }).show();
  824. }
  825. var chk_sm = function() {
  826. if(sm.getCount()==1){
  827. modifywin();;
  828. var selected = sm.getSelection( );
  829. Ext.getCmp('fm_id').setValue(selected[0].raw.id);
  830. Ext.getCmp('fm_company_name').setValue(selected[0].raw.company_name);
  831. Ext.getCmp('fm_name').setValue(selected[0].raw.name);
  832. Ext.getCmp('fm_bjxh').setValue(selected[0].raw.bjxh);
  833. Ext.getCmp('fm_bjhm').setValue(selected[0].raw.bjhm);
  834. Ext.getCmp('fm_pzlb').setValue(selected[0].raw.pzlb_name);
  835. Ext.getCmp('fm_lbsl').setValue(selected[0].raw.lbsl);
  836. var a = selected[0].raw.sbtype;
  837. var arr = a.split(",");
  838. for(var i = 0 ;i < arr.length;i++) {
  839. switch(arr[i]) {
  840. case "1":
  841. Ext.getCmp('fm_monday').setValue(true);
  842. break;
  843. case "2":
  844. Ext.getCmp('fm_tuesday').setValue(true);
  845. break;
  846. case "3":
  847. Ext.getCmp('fm_wednesday').setValue(true);
  848. break;
  849. case "5":
  850. Ext.getCmp('fm_thursday').setValue(true);
  851. break;
  852. case "6":
  853. Ext.getCmp('fm_friday').setValue(true);
  854. break;
  855. case "7":
  856. Ext.getCmp('fm_saturday').setValue(true);
  857. break;
  858. case "8":
  859. Ext.getCmp('fm_sunday').setValue(true);
  860. break;
  861. }
  862. }
  863. }else{
  864. Ext.Msg.alert('请先选择','请先选择一条记录,再点击修改');
  865. }
  866. }
  867. var maintenancedevice = function(){
  868. var maintenance_look_device = document.getElementById('patrolplan_look_device');
  869. var img = document.createElement('img');
  870. img.width=400;
  871. img.height=400;
  872. img.src = baseUrl+ConfirmStore[0].picture_route;
  873. img.setAttribute('class','maintenance_look_device_img');
  874. maintenance_look_device.appendChild(img);
  875. var div4 = document.createElement('div');
  876. div4.style.textAlign='center';
  877. div4.innerHTML=ConfirmStore[0].remarks;
  878. maintenance_look_device.appendChild(div4);
  879. }
  880. // var editMaintenance = function(spot_id){
  881. // var spot_id = spot_id;
  882. // Ext.create('Ext.window.Window', {
  883. // id:'patrolplan_data_win1',
  884. // height: 500,
  885. // width: 400,
  886. // layout: 'fit',
  887. // modal:true,
  888. // buttons:[
  889. // {
  890. // text:'关闭',
  891. // handler : function() {
  892. // Ext.getCmp('patrolplan_data_win1').destroy();
  893. // }
  894. // }
  895. // ],
  896. // closeAction:'destroy',
  897. // html:'<div id="patrolplan_look_device"></div>'
  898. // }).show();
  899. // var query = new Object();
  900. // query.V_LOGINNAME = $("#V_LOGINNAME").val();
  901. // query.V_PASSWORD = $("#V_PASSWORD").val();
  902. // query.id = spot_id;
  903. // $.ajax({
  904. // type:'POST',
  905. // url: baseUrl+"iot/inspectionpoints/getList",
  906. // data: {
  907. // queryJson : Ext.JSON.encode(query)
  908. // },
  909. // success: function(result){
  910. // var json = eval('(' + result + ')');
  911. // if(json.action=='getInspectionPointsList'){
  912. // ConfirmStore = json.RESULT;
  913. // maintenancedevice(ConfirmStore);
  914. //
  915. // }
  916. // }
  917. // });
  918. // }
  919. var MaintenancePlanPanel =Ext.create('Ext.grid.Panel', {
  920. header :{
  921. height:0,
  922. border:'0px solid #000000'
  923. },
  924. id: 'PatrolPlanListPanel',
  925. store: myStore,
  926. selModel: sm,
  927. columns: [
  928. { header: '', dataIndex: 'pzlb_name',hidden:true, menuDisabled:true },
  929. { header: '显号ID', dataIndex: 'bjxh_id',hidden:true, menuDisabled:true },
  930. { header: 'ID', dataIndex: 'id',hidden:true, menuDisabled:true },
  931. { header: '序号', dataIndex: 'xh', width:77, menuDisabled:true },
  932. { header: '单位名称', dataIndex: 'company_name', width:190,align:'center', menuDisabled:true },
  933. { header: '责任人姓名', dataIndex: 'name', width:180,align:'center', menuDisabled:true },
  934. { header: '责任人手机是', dataIndex: 'bjhm', width:200,align:'center', menuDisabled:true },
  935. { header: '显号', dataIndex: 'bjxh',width:200, align:'center', menuDisabled:true },
  936. { header: '余额(次数)', dataIndex: 'zed', width:120, align:'center', menuDisabled:true },
  937. { header: '个/时间', dataIndex: 'zq', width:120, align:'center', menuDisabled:true },
  938. { header: '报警类型', dataIndex: 'sbtype_name_list', width:350, align:'center', menuDisabled:true },
  939. ],
  940. columnLines: true,
  941. height: maxHeight,
  942. width: '100%',
  943. bbar: new Ext.PagingToolbar({
  944. store: myStore,
  945. id:'PatrolPlanListPageToolbar',
  946. displayInfo: true,
  947. pageSize: countPerPage,
  948. prependButtons: true,
  949. displayMsg : '显示第 {0}条到 {1}条记录,总共 {2}条',
  950. emptyMsg : "没有记录",
  951. firstText: '第一页',
  952. prevText: '前一页',
  953. nextText: '后一页',
  954. lastText: '最后一页',
  955. refreshText: '刷新',
  956. }),
  957. // frame: true,
  958. border:false,
  959. iconCls: 'icon-grid'
  960. // renderTo: Ext.getBody()
  961. });
  962. var piebar = Ext.create('Ext.panel.Panel',{
  963. id:'patrolPlanHtml',
  964. width:'100%',
  965. height:188,
  966. region:'north',
  967. layout:'form',
  968. defaults:{
  969. border:false
  970. }
  971. // items: [childPanel1]
  972. });
  973. new Ext.create('Ext.panel.Panel',{
  974. width:'100%',
  975. id: 'PatrolPlanPiebar',
  976. layout:'border',
  977. items:[
  978. piebar,MaintenancePlanPanel
  979. ],
  980. renderTo: Ext.getBody()
  981. });
  982. // piedarHtml();
  983. myStore.reload();
  984. myStore.addListener('load',function(store,record,opts){
  985. piedarHtml_fun();
  986. // if(document.getElementById('pzd_div_1')==undefined)
  987. // piedarHtml();
  988. });
  989. $(window).resize(function(){
  990. body_resize();
  991. });
  992. body_resize();
  993. });