/** * inspectionrecord.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'); Ext.define('InspectionRecord',{ extend: 'Ext.data.Model', fields: [ {name:'id', type:'string'}, // {name:'personnel', type:'string'}, // {name:'route', type:'string'}, {name:'inspection_time', type:'string'}, // {name:'point_position', type:'string'}, {name:'xjzt', type:'string'}, {name:'qk', type:'string'}, {name:'equipment_id', type:'string'}, {name:'xj_name', type:'string'}, {name:'analysis_content', type:'string'}, {name:'name', type:'string'}, {name:'route_name', type:'string'}, ] }); Ext.onReady(function(){ var baseUrl = document.getElementById('basePath').value; var theme = document.getElementById('theme').value; var chkIcon = '' var unchkIcon = '' var countPerPage = 20; var maxHeight = 10000; var chkBoolean = function(flag) { if(flag) return chkIcon; return unchkIcon; } var myStore = Ext.create('Ext.data.Store', { model: 'InspectionRecord', pageSize: countPerPage, proxy: { type: 'ajax', url: baseUrl+'iot/inspectionrecord/getList1', reader: { type: 'json', root: 'RESULT', totalProperty: 'totalCount' } }, remoteSort: true }); var states1 = Ext.create('Ext.data.Store', { fields: ['status', 'name'], data : [ {"status":"全选", "name":"全选"}, {"status":"正常", "name":"正常"}, {"status":"异常", "name":"异常"}, {"status":"故障", "name":"故障"}, ] }); //筛选 var clear_filter_form = function(){ Ext.getCmp('ff_name').setValue(""); Ext.getCmp('ff_xj_name').setValue(""); Ext.getCmp('ff_equipment_id').setValue(""); Ext.getCmp('ff_analysis_content').setValue(""); Ext.getCmp('ff_route_name').setValue(""); // Ext.getCmp('ff_personnel').setValue(""); // Ext.getCmp('ff_route').setValue(""); // Ext.getCmp('ff_point_position').setValue(""); Ext.getCmp('ff_xjzt').setValue(""); // Ext.getCmp('ff_qk').setValue(""); Ext.getCmp('ff_inspection_time').setValue(""); } var FilterWin = Ext.create('Ext.form.Panel', { id: 'InspectionRecordFilterForm', labelWidth: 55, defaultType: 'textfield', bodyPadding: 15, items: [{ fieldLabel:'巡检人', id: 'ff_name', name:'name', maxLength:30, maxLengthText:'长度不得超出{0}', value : document.getElementById('name').value, anchor:'75%' },{ fieldLabel:'巡检点名称', id:'ff_xj_name', name:'xj_name', maxLength: 50, maxLengthText:'长度不得超出{0}', value : document.getElementById('xj_name').value, anchor:'75%' },{ fieldLabel:'巡检点对应的设备', id: 'ff_equipment_id', name: 'equipment_id', maxLength: 250, maxLengthText:'长度不得超出{0}', value : document.getElementById('equipment_id').value, anchor:'95%' },{ fieldLabel:'巡检标签', id: 'ff_analysis_content', name: 'analysis_content', maxLength: 250, maxLengthText:'长度不得超出{0}', value : document.getElementById('analysis_content').value, anchor:'95%' },{ fieldLabel:'巡检路线名称', id: 'ff_route_name', name: 'route_name', maxLength: 250, maxLengthText:'长度不得超出{0}', value : document.getElementById('route_name').value, anchor:'95%' }, // { // fieldLabel:'巡检人', // id: 'ff_personnel', // name:'personnel', // maxLength:20, // maxLengthText:'长度不得超出{0}', // value : document.getElementById('personnel').value, // anchor:'75%' // },{ // fieldLabel:'巡检路线', // id:'ff_route', // name:'route', // maxLength: 250, // maxLengthText:'长度不得超出{0}', // value : document.getElementById('route').value, // editable : false // },{ // fieldLabel:'巡检标签', // id: 'ff_point_position', // name: 'point_position', // maxLength: 250, // maxLengthText:'长度不得超出{0}', // value : document.getElementById('point_position').value, // anchor:'95%' // }, // { // fieldLabel:'巡检状态', // id:'ff_xjzt', // name:'xjzt', // maxLength: 250, // maxLengthText:'长度不得超出{0}', // value : document.getElementById('xjzt').value, // editable : false // } { fieldLabel:'巡检状态', id:'ff_xjzt', name:'xjzt', xtype:'combo', store:states1, displayField : 'name', valueField : 'status', value : "全选", editable : false },{ fieldLabel:'巡检时间', id:'ff_inspection_time', name:'inspection_time', maxLength: 250, maxLengthText:'长度不得超出{0}', value : document.getElementById('inspection_time').value, editable : false }, // { // fieldLabel:'巡检情况报说明', // id:'ff_qk', // name:'qk', // xtype: 'textareafield', // maxLength: 250, // maxLengthText:'长度不得超出{0}', // value : document.getElementById('qk').value, // anchor:'100%', // editable : false // }, { id:'ff_queryJson', name:'queryJson', hidden:true }], buttons: [{ text: '提交', iconCls:'ok_btn', handler: function() { var form = this.up('form').getForm(); if (form.isValid()) { var query = new Object(); if(Ext.getCmp('ff_name').getValue().length>0) query.name = Ext.getCmp('ff_name').getValue(); if(Ext.getCmp('ff_xj_name').getValue().length>0) query.xj_name = Ext.getCmp('ff_xj_name').getValue(); if(Ext.getCmp('ff_equipment_id').getValue().length>0) query.equipment_id = Ext.getCmp('ff_equipment_id').getValue(); if(Ext.getCmp('ff_analysis_content').getValue().length>0) query.analysis_content = Ext.getCmp('ff_analysis_content').getValue(); if(Ext.getCmp('ff_route_name').getValue().length>0) query.route_name = Ext.getCmp('ff_route_name').getValue(); // if(Ext.getCmp('ff_personnel').getValue().length>0) // query.personnel = Ext.getCmp('ff_personnel').getValue(); // if(Ext.getCmp('ff_route').getValue().length>0) // query.route = Ext.getCmp('ff_route').getValue(); // if(Ext.getCmp('ff_point_position').getValue().length>0) // query.point_position = Ext.getCmp('ff_point_position').getValue(); if(Ext.getCmp('ff_xjzt').getValue().length>0){ // query.xjzt = Ext.getCmp('ff_xjzt').getValue(); if(Ext.getCmp('ff_xjzt').getValue()=="正常") { query.xjzt = "0"; }else if(Ext.getCmp('ff_xjzt').getValue()=="异常") { query.xjzt = "1"; }else if(Ext.getCmp('ff_xjzt').getValue()=="故障") { query.xjzt = "2"; }else if(Ext.getCmp('ff_xjzt').getValue()=="全选") { // query.xjzt = null; } } // if(Ext.getCmp('ff_qk').getValue().length>0) // query.qk = Ext.getCmp('ff_qk').getValue(); if(Ext.getCmp('ff_inspection_time').getValue().length>0) query.inspection_time = Ext.getCmp('ff_inspection_time').getValue(); var jsonstr = Ext.JSON.encode(query); myStore.getProxy().extraParams = { queryJson : jsonstr }; Ext.getCmp('InspectionRecordListPageToolbar').moveFirst(); Ext.getCmp('name').setValue(query.name); Ext.getCmp('xj_name').setValue(query.xj_name); Ext.getCmp('equipment_id').setValue(query.equipment_id); Ext.getCmp('analysis_content').setValue(query.analysis_content); Ext.getCmp('route_name').setValue(query.route_name); // Ext.getCmp('personnel').setValue(query.personnel); // Ext.getCmp('route').setValue(query.route); // Ext.getCmp('point_position').setValue(query.point_position); Ext.getCmp('xjzt').setValue(query.xjzt); // Ext.getCmp('qk').setValue(query.qk); Ext.getCmp('inspection_time').setValue(query.inspection_time); // myStore.reload(); clear_filter_form(); this.up('window').hide(); } } },{ text: '关闭', iconCls: 'cancel_btn', handler: function() { this.up('window').hide(); } }] }); var filterwin = function() { Ext.create('Ext.window.Window',{ title: '筛选', height: 400, width: 400, layout: 'fit', items: FilterWin, closeAction: 'hide' }).show(); } Ext.create('Ext.grid.Panel', { title: '巡检点工作记录', id: 'InspectionRecordListPanel', store: myStore, selModel: sm, columns: [ //{ header: 'ID', dataIndex: 'UQ_POINT_ID',hidden:true, menuDisabled:true }, { header: 'ID', dataIndex: 'id', width:40, menuDisabled:true }, { header: '巡检点名称', dataIndex: 'xj_name', width:120,align:'center', menuDisabled:true }, { header: '巡检点对应设备', dataIndex: 'equipment_id', width:120,align:'center', menuDisabled:true }, { header: '巡检路线名称', dataIndex: 'route_name', width:160,align:'center', menuDisabled:true }, { header: '巡检标签', dataIndex: 'analysis_content', width:120,align:'center', menuDisabled:true }, { header: '巡检状态', dataIndex: 'xjzt', width:120,align:'center', menuDisabled:true }, { header: '巡检情况说明', dataIndex: 'qk', width:180, menuDisabled:true }, // { header: '巡检人', dataIndex: 'personnel', width:120,align:'center', menuDisabled:true }, { header: '巡检人', dataIndex: 'name', width:120,align:'center', menuDisabled:true }, // { header: '巡检路线', dataIndex: 'route', width:160,align:'center', menuDisabled:true }, // { header: '巡检标签', dataIndex: 'point_position', width:120,align:'center', menuDisabled:true }, { header: '巡检时间', dataIndex: 'inspection_time', width:160,align:'center', menuDisabled:true }, ], columnLines: true, tbar: [ { xtype: 'button', iconCls:'filter_btn', text: '筛选', listeners: { click: filterwin } },'-', {xtype: 'tbfill'},'-', ], height: maxHeight, width: '100%', bbar: new Ext.PagingToolbar({ store: myStore, id:'InspectionRecordListPageToolbar', displayInfo: true, pageSize: countPerPage, prependButtons: true, displayMsg : '显示第 {0}条到 {1}条记录,总共 {2}条', emptyMsg : "没有记录", firstText: '第一页', prevText: '前一页', nextText: '后一页', lastText: '最后一页', refreshText: '刷新', // doRefresh:function(start){ // alert(start); // relushDataFunction(start); // 调用函数刷新数据 // this.cursor = start; // 更新页签 // } }), frame: true, border:false, iconCls: 'icon-grid', renderTo: Ext.getBody() }); myStore.reload(); maxHeight = document.documentElement.clientHeight; Ext.getCmp('InspectionRecordListPanel').setHeight(maxHeight); });