/** * patrolplan.js * 巡检任务管理界面 * emial: yaoqiang@chinausky.com * create: 2018-12-08 */ Ext.Loader.setConfig({ enabled: true }); Ext.Loader.setPath('Ext.ux', '../../res/extjs/examples/ux'); Ext.require([ 'Ext.grid.*', 'Ext.data.*', 'Ext.ux.RowExpander', 'Ext.selection.CheckboxModel' ]); var sm = Ext.create('Ext.selection.CheckboxModel'); //var sm1 = Ext.create('Ext.selection.CheckboxModel'); var menuidx = ''; var mouseon; var mouseoff; var menu_click; var AllSelectedRecords = []; var sm1; var initflag = false; Ext.define('czjl',{ extend: 'Ext.data.Model', fields: [ {name:'id', type:'string'}, {name:'xh', type:'int'}, {name:'company_name', type:'string'}, {name:'czcs', type:'string'}, {name:'czsj', type:'string'}, {name:'czbz', type:'string'}, {name:'data1', type:'string'}, {name:'data2', type:'string'}, {name:'data3', type:'string'}, ] }); var body_resize = function(){ maxHeight = document.documentElement.clientHeight; maxWidth = document.documentElement.clientWidth; Ext.getCmp('PatrolPlanPiebar').setHeight(maxHeight); Ext.getCmp('PatrolPlanPiebar').setWidth(maxWidth); } Ext.onReady(function(){ var baseUrl = document.getElementById('basePath').value; var theme = document.getElementById('theme').value; company_code = document.getElementById('company_code').value; $("#V_LOGINNAME").val(sessionStorage.getItem('V_LOGINNAME')); $("#V_PASSWORD").val(sessionStorage.getItem('V_PASSWORD')); var V_LOGINNAME = $("#V_LOGINNAME").val(); var V_PASSWORD = $("#V_PASSWORD").val(); var chkIcon = '' var unchkIcon = '' var countPerPage = 15; var maxHeight = 10000; var chkBoolean = function(flag) { if(flag) return chkIcon; return unchkIcon; } var deselect_fun = function(record){ var index = AllSelectedRecords.indexOf(record.get("id")); if (index > -1) { AllSelectedRecords.splice(index, 1); return AllSelectedRecords; } } sm1 = Ext.create('Ext.selection.CheckboxModel',{ mode: "MULTI", listeners: { deselect: function (me, record, index, opts) { if(initflag){ // alert("初始化"); }else{ deselect_fun(record); } }, select: function (me, record, index, opts) { var index = AllSelectedRecords.indexOf(record.get("id")); if (index > -1) { return AllSelectedRecords; }else{ AllSelectedRecords.push(record.get("id")); return AllSelectedRecords; } } } }); var queryJson = new Object(); // queryJson.V_LOGINNAME = V_LOGINNAME; // queryJson.V_PASSWORD = V_PASSWORD; queryJson.COMMSTATUS = 'NO'; if((company_code!=null)&&(company_code!='null')&&(company_code.length>0)) queryJson.company_code = company_code; var myStore = Ext.create('Ext.data.Store', { model: 'czjl', pageSize: countPerPage, proxy: { type: 'ajax', url: baseUrl+'iot/pzb/getCzjlList', reader: { type: 'json', root: 'RESULT', totalProperty: 'totalCount' }, extraParams:{ queryJson:Ext.JSON.encode(queryJson) } }, remoteSort: true }); Ext.define('CompanyUser',{ extend:'Ext.data.Model', fields: [ {name:'company_name', type:'string'}, {name:'id',type:'int'} ] }); var getCompanyUser = Ext.create('Ext.data.Store',{ model: 'CompanyUser', proxy: { type: 'ajax', actionMethods: { create : 'POST', read : 'POST', // by default GET update : 'POST', destroy: 'POST' }, url: baseUrl+'iot/pzb/getCompanyUser', reader: { type: 'json', root: 'RESULT', totalProperty: 'totalCount' }, extraParams:{ queryJson:Ext.JSON.encode(queryJson) } } }); var states = Ext.create('Ext.data.Store', { fields: ['status', 'name'], data : [ {"status":"1", "name":"1个月"}, {"status":"3", "name":"3个月"}, {"status":"6", "name":"半年年"}, {"status":"12", "name":"1年"}, ] }); var data =Ext.Date.format(new Date(), 'm/d/Y'); var clear_append_form = function (){ Ext.getCmp('fa_company_name').setValue(""); // Ext.getCmp('fa_krq').setValue(""); // Ext.getCmp('fa_jrq').setValue(""); Ext.getCmp('fa_xysj').setValue(""); Ext.getCmp('fa_czed').setValue(""); Ext.getCmp('PatrolPlanListPageToolbar').getStore().reload(); } var AppendForm = Ext.create('Ext.form.Panel', { id: 'companyxxAppendForm1', labelWidth: 55, url: baseUrl+'iot/pzb/appendCz', defaultType: 'textfield', bodyPadding: 15, items: [{ fieldLabel:'单位', id:'fa_company_name', name:'company_name', xtype:'combo', store:getCompanyUser, displayField : 'company_name', valueField : 'id', editable : false, anchor:'75%', },{ fieldLabel:'充值额度', id: 'fa_czed', name:'czed', maxLength:20, maxLengthText:'长度不得超出{0}', anchor:'75%' },{ fieldLabel:'开通时间', id:'fa_xysj', name:'xysj', xtype:'combo', store:states, displayField : 'name', valueField : 'status', editable : false, anchor:'75%', } // ,{ // xtype:'datefield', // fieldLabel:"开始日期", // minValue:data, // minText:"当前日期选择应大于当天日期", // format:"Y-m-d", // id: 'fa_krq', // name:"krq", // editable:false,//只读约束 // anchor:'75%' // },{ // xtype:'datefield', // fieldLabel:"结束日期", // minValue:data, // // '07/07/2017', // minText:"当前日期选择应大于当天日期", // format:"Y-m-d", // id: 'fa_jrq', // name:"jrq", // editable:false,//只读约束 // anchor:'75%' // } ,{ id:'fa_Inspectors_queryJson1', name:'queryJson', hidden:true }], buttons: [{ text: '提交', iconCls:'ok_btn', handler: function() { var form = this.up('form').getForm(); if (form.isValid()) { var query = new Object(); // query.V_LOGINNAME = $("#V_LOGINNAME").val(); query.company_name = Ext.getCmp('fa_company_name').getValue(); query.czed = Ext.getCmp('fa_czed').getValue(); query.xysj = Ext.getCmp('fa_xysj').getValue(); // query.krq = Ext.getCmp('fa_krq').getValue(); // query.jrq = Ext.getCmp('fa_jrq').getValue(); var jsonstr = Ext.JSON.encode(query); Ext.getCmp('fa_Inspectors_queryJson1').setValue(jsonstr); form.submit({ method:'post', success:function(form, action) { Ext.Msg.alert('操作成功', '已保存', function(btn,txt){ clear_append_form(); }); }, failure: function(form, action) { Ext.Msg.alert('操作失败', action.result.Msg , function(btn,txt){ clear_append_form(); }); } }); } } },{ text: '关闭', iconCls: 'cancel_btn', handler: function() { this.up('window').hide(); } }] }); var appendwin = function(){ var zfappendwin = Ext.getCmp('zfappendwin'); if(zfappendwin==undefined) Ext.create('Ext.window.Window', { id:'zfappendwin', title: '新增', height: 350, width: 400, modal: true, layout: 'fit', items: AppendForm, closeAction: 'hide' }).show(); else zfappendwin.show(); } var show_page = function(){ var company_name = document.getElementById('czjl_title2_input').value; var czsj1 = document.getElementById('czjl_title3_input3').value; var czsj2 = document.getElementById('czjl_title3_input2').value; var query = new Object(); if(company_name.length>0){ query.company_name = company_name; $("#company_name").val(company_name); } if(czsj1.length>0){ query.czsj1 = czsj1; $("#czsj1").val(czsj1); } if(czsj2.length>0){ query.czsj2 = czsj2; $("#czsj2").val(czsj2); } // query.V_LOGINNAME = V_LOGINNAME; // query.V_PASSWORD = V_PASSWORD; var jsonstr = Ext.JSON.encode(query); myStore.getProxy().extraParams = { queryJson : jsonstr }; Ext.getCmp('PatrolPlanListPageToolbar').moveFirst(); } var reset1 = function(){ document.getElementById('czjl_title2_input').value = ''; document.getElementById('czjl_title3_input3').value = ''; document.getElementById('czjl_title3_input2').value = ''; $("#company_name").val(''); $("#czsj1").val(''); $("#czsj2").val(''); show_page(); } mouseon = function(obj){ var id = obj.id; $("#"+id).removeClass(id); $("#"+id).addClass(id+'_on'); } mouseoff = function(obj){ var mid = "czjl1_"; for(var i=1;i<4;i++){ var id = "czjl1_title"+i+"_div"; $("#"+id).removeClass(id+'_on'); $("#"+id).addClass(id); } if(menuidx=='m1'){ mid += 'title1_div'; $("#"+mid).removeClass(mid); $("#"+mid).addClass(mid+'_on'); } else if(menuidx=='m2'){ mid += 'title2_div'; $("#"+mid).removeClass(mid); $("#"+mid).addClass(mid+'_on'); } else if(menuidx=='m3'){ mid += 'title3_div'; $("#"+mid).removeClass(mid); $("#"+mid).addClass(mid+'_on'); } } menu_click = function(obj){ var id = obj.id; if(id=='czjl1_title1_div'){ menuidx = 'm1'; show_page(); } else if(id=='czjl1_title2_div'){ menuidx = 'm2'; reset1(); } else if(id=='czjl1_title3_div'){ menuidx = 'm3'; appendwin(); } } var piedarHtml = function() { var date=new Date; var dates=Ext.util.Format.date(date, 'Y-m-d'); var preDate = new Date(date.getTime() - 24*60*60*1000); var dates2=Ext.util.Format.date(preDate, 'Y-m-d'); var maintenancePlanHtml = document.getElementById('patrolPlanHtml'); ; var divhiddle = document.createElement('div'); divhiddle.id='pzd_div_1'; divhiddle.setAttribute('class','czjlHandleHtml3DivHiddle'); maintenancePlanHtml.appendChild(divhiddle); var title = document.createElement('div'); title.setAttribute('class','czjl_Title'); title.innerHTML='充值记录'; maintenancePlanHtml.appendChild(title); var title2 = document.createElement('div'); title2.setAttribute('class','czjl_title2_div'); title2.innerHTML='单位名称'; maintenancePlanHtml.appendChild(title2); var input = document.createElement('input'); input.setAttribute('class','czjl_input_class'); input.setAttribute('id','czjl_title2_input'); input.setAttribute('type','text'); input.setAttribute('value',''); maintenancePlanHtml.appendChild(input); var title3 = document.createElement('div'); title3.setAttribute('class','czjl_title3_div'); title3.innerHTML='充值时间'; maintenancePlanHtml.appendChild(title3); var input3 = document.createElement('input'); input3.setAttribute('class','czjl_input3_class'); input3.setAttribute('id','czjl_title3_input3'); input3.setAttribute('type','text'); input3.setAttribute('readonly','true'); input3.setAttribute('value',dates2); maintenancePlanHtml.appendChild(input3); var title8 = document.createElement('div'); title8.setAttribute('class','czjl_title8_div'); title8.innerHTML='~'; maintenancePlanHtml.appendChild(title8); var input2 = document.createElement('input'); input2.setAttribute('class','czjl_input2_class'); input2.setAttribute('id','czjl_title3_input2'); input2.setAttribute('type','text'); input2.setAttribute('readonly','true'); input2.setAttribute('value',dates); maintenancePlanHtml.appendChild(input2); //设置开始时间 var startDate = laydate.render({ elem: '#czjl_title3_input3', done: function (value, date) { if (value !== '') { endDate.config.min.year = date.year; endDate.config.min.month = date.month - 1; endDate.config.min.date = date.date; } else { endDate.config.min.year = ''; endDate.config.min.month = ''; endDate.config.min.date = ''; } } }); //设置结束时间 var endDate = laydate.render({ elem: '#czjl_title3_input2', done: function (value, date) { if (value !== '') { startDate.config.max.year = date.year; startDate.config.max.month = date.month - 1; startDate.config.max.date = date.date; } else { startDate.config.max.year = ''; startDate.config.max.month = ''; startDate.config.max.date = ''; } } }); // var title3 = document.createElement('div'); // title3.setAttribute('class','czjl_title3_div'); // title3.innerHTML='充值时间'; // maintenancePlanHtml.appendChild(title3); // var input3 = document.createElement('input'); // input3.setAttribute('class','czjl_input3_class'); // input3.setAttribute('id','czjl_title3_input3'); // input3.setAttribute('type','text'); // input3.setAttribute('readonly','true'); // input3.setAttribute('value',dates2); // maintenancePlanHtml.appendChild(input3); //设置开始时间 // var startDate = laydate.render({ // elem: '#czjl_title3_input3', // done: function (value, date) { // if (value !== '') { // endDate.config.min.year = date.year; // endDate.config.min.month = date.month - 1; // endDate.config.min.date = date.date; // } else { // endDate.config.min.year = ''; // endDate.config.min.month = ''; // endDate.config.min.date = ''; // } // } // }); var title4 = document.createElement('div'); title4.setAttribute('class','czjl1_title1_div'); title4.setAttribute('id','czjl1_title1_div'); title4.setAttribute('onmouseover',"mouseon(this)"); title4.setAttribute('onmouseout',"mouseoff(this)"); title4.setAttribute('onclick',"menu_click(this)"); maintenancePlanHtml.appendChild(title4); var title5 = document.createElement('div'); title5.setAttribute('class','czjl1_title2_div'); title5.setAttribute('id','czjl1_title2_div'); title5.setAttribute('onmouseover',"mouseon(this)"); title5.setAttribute('onmouseout',"mouseoff(this)"); title5.setAttribute('onclick',"menu_click(this)"); maintenancePlanHtml.appendChild(title5); var title7 = document.createElement('div'); title7.setAttribute('class','czjl1_title3_div'); title7.setAttribute('id','czjl1_title3_div'); title7.setAttribute('onmouseover',"mouseon(this)"); title7.setAttribute('onmouseout',"mouseoff(this)"); title7.setAttribute('onclick',"menu_click(this)"); maintenancePlanHtml.appendChild(title7); } var MaintenancePlanPanel =Ext.create('Ext.grid.Panel', { header :{ height:0, border:'0px solid #000000' }, id: 'PatrolPlanListPanel', store: myStore, selModel: sm, columns: [ { header: 'ID', dataIndex: 'id',hidden:true, menuDisabled:true }, { header: '序号', dataIndex: 'xh', width:77, menuDisabled:true }, { header: '单位名称', dataIndex: 'company_name', width:320,align:'center', menuDisabled:true }, { header: '剩余次数', dataIndex: 'czbz', width:185, align:'center', menuDisabled:true }, { header: '充值额度(次)', dataIndex: 'czcs', width:185,align:'center', menuDisabled:true }, { header: '套餐时间', dataIndex: 'data1', width:320,align:'center', menuDisabled:true }, { header: '充值时间', dataIndex: 'czsj',width:350, align:'center', menuDisabled:true }, // ], columnLines: true, height: maxHeight, width: '100%', bbar: new Ext.PagingToolbar({ store: myStore, id:'PatrolPlanListPageToolbar', displayInfo: true, pageSize: countPerPage, prependButtons: true, displayMsg : '显示第 {0}条到 {1}条记录,总共 {2}条', emptyMsg : "没有记录", firstText: '第一页', prevText: '前一页', nextText: '后一页', lastText: '最后一页', refreshText: '刷新', }), // frame: true, border:false, iconCls: 'icon-grid' // renderTo: Ext.getBody() }); var piebar = Ext.create('Ext.panel.Panel',{ id:'patrolPlanHtml', width:'100%', height:188, region:'north', layout:'form', defaults:{ border:false } // items: [childPanel1] }); new Ext.create('Ext.panel.Panel',{ width:'100%', id: 'PatrolPlanPiebar', layout:'border', items:[ piebar,MaintenancePlanPanel ], renderTo: Ext.getBody() }); // piedarHtml(); myStore.reload(); myStore.addListener('load',function(store,record,opts){ if(document.getElementById('pzd_div_1')==undefined) piedarHtml(); }); $(window).resize(function(){ body_resize(); }); body_resize(); });