/******************************************** * 地图服务 - 访问排行 - 更多页面 * *******************************************/ //控制器:DiTuFuWuController //------------------------------------------ //F1.定义Ext列表实体字段 //F2.获取Ext列表数据 //F3.Ext加载后创建建列表 //F4.获取查询条件 //F5.页面初始化 //F6.查询 //F7.清除 //F8.导出 //------------------------------------------ //F1.定义Ext列表实体字段 Ext.define('ResModel', { extend: 'Ext.data.Model', fields:[ 'resourceid','title','mulu','resourceclass', 'pubunitid', 'createuserid', 'pubdate','fangwenpaihang' ], idProperty: 'resourceid' }); //F2.获取Ext列表数据 var ResStore = new Ext.data.Store({ autoDestroy: true, pageSize: 15, model: 'ResModel', proxy: { type: 'ajax', url: '/res/ditufuwu/getFangWenPaiHangGD', reader: { root: 'topics', totalProperty: 'totalCount' }, simpleSortMode: true }, remoteSort: true }); //F3.Ext加载后创建建列表 var formdata = {}; Ext.onReady(function () { Ext.state.Manager.setProvider(new Ext.state.CookieProvider()); Ext.tip.QuickTipManager.init(); Ext.Ajax.timeout = 900000; Ext.require([ 'Ext.ux.PagingToolbar' ]); Ext.create('Ext.grid.Panel', { id: 'gridexample', renderTo: 'grid', // height: 803, // width: 2400, layout: 'fit', autoScroll: false, //bodyStyle: 'width:100%', store: ResStore, stateful: false, stateId: 'ZYMLZiYuan-Grid', viewConfig: { forceFit: true, enableTextSelection: true //列表数据可复制 }, columns: [ { xtype: 'rownumberer', text: "序号", width: '5%', align: 'center' }, { text: "资源名称", dataIndex: 'title', width: '30%', flex: 1, sortable: true, align: 'left', filter: { type: 'string' }, renderer: function (value, p, record) { var ziYuanId = record.getData()["resourceid"]; var tit = htmlEncodeByRegExp(value); return Ext.String.format( '{2}', ziYuanId, value, tit ); } }, { text: "资源类型", dataIndex: 'resourceclass', width: '15%', sortable: false, align: 'center', filter: { type: 'string' }, renderer: function (value, p, record) { var color = ""; if (value == "基础底图" || value == "三维影像") { color = "label-success"; } else if (value == "业务图层" || value == "接口服务") { color = "label-danger"; } else if (value == "空间分析") { color = "label-warning"; } else if (value == "专题地图" || value == "三维地形") { color = "label-pink"; } else if (value == "专题应用程序" || value == "数据文件") { color = "label-default"; } else if (value == "业务集成") { color = "label-info"; } else if (value == "文档数据" || value == "数据库表" || value == "三维模型") { color = "label-primary"; } return Ext.String.format( '{1}', color, value ); } }, { text: "发布单位", dataIndex: 'pubunitid', width: '25%', sortable: false, align: 'center', filter: { type: 'string' }}, { text: "发布时间", dataIndex: 'pubdate', width: '15%', sortable: true, filter: { type: 'string' }, align: 'center' }, { text: "访问次数", dataIndex: 'fangwenpaihang', width: '15%', sortable: true, filter: { type: 'string' }, align: 'center' } ], bbar: Ext.create('Ext.ux.PagingToolbar', { id: "Page", name: "Page", store: ResStore, displayInfo: true, firstText: "首页", prevText: "上一页", nextText: "下一页", lastText: "尾页", refreshText: '刷新', beforePageText: '第', afterPageText: '页,共 {0} 页', displayMsg: '显示 {0} - {1} 条,共 {2} 条', emptyMsg: "没有数据显示", items: [ { xtype: 'label', text: '' } ] }) }); ResStore.on('beforeload', function () { GetSearchWhere("SearchForm"); ResStore.proxy.extraParams = []; Ext.apply(ResStore.proxy.extraParams, formdata); }); ResStore.on('load', function (store, records, successful, eOpts) { var totalCount = store.totalCount; if (totalCount == "") totalCount = "0"; }); Search(); //添加resize监听防止切换tab或者收起左栏导致grid不自适应宽度 $(window).resize(function () { Ext.getCmp('gridexample').doLayout();//panel重新布局 }); }); //F4.获取查询条件 function GetSearchWhere(formId) { var form = document.forms[formId]; for (var i = 0; i < form.elements.length; i++) { var strID = form.elements[i].id; if(strID=="thisYear"){ break; } var value = form.elements[i].value; if (form.elements[i].type == "checkbox") { if (form.elements[i].checked == true) value = "on"; else value = ""; } if (form.elements[i].type == "radio") { if (form.elements[i].checked == true) { strID = form.elements[i].name; value = form.elements[i].value; } } formdata[strID] = (value == "全部" || value == "None" ? "" : value + ""); } if(formdata.resourceclass == "") { formdata.resourceclass = "KJ_"; } } //F5.页面初始化 $(function(){ $(".date-picker").datepicker({format: 'yyyy-mm-dd', language: 'zh-CN'}); //初始化时间控件 $("select option").each(function () { //遍历所有option var txt = $(this).val().substring(0, 3); //获取option值 var isKJ = $(this).text(); if (txt == "KJ_") { if (isKJ != "空间服务") { $(this).html("-- " + isKJ); }; }; }); }); //F6.查询 function Search() { if(!checkDate()) { $("#pubdatefinish").focus(); $("#pubdatefinish").focus(); return false; } Ext.getCmp('gridexample').dockedItems.items[1].store.currentPage = 1; ResStore.load(); } //F7.清除 function Clear() { document.getElementById("SearchForm").reset(); } //F8.导出 function Export() { GetSearchWhere("SearchForm"); Ext.MessageBox.wait("正在进行导出,请稍后...", "操作提示", { interval: 100 }); formdata.PageSize = ResStore.pageSize; formdata.PageIndex = ResStore.currentPage; Ext.Ajax.request({ url: '/res/resActionRecord/FangWenPaiHangexcel', params: eval(formdata), success: function (response) { Ext.MessageBox.hide(); //加载 window.open(response.responseText); } }); }