/******************************************** * 后台管理 - 资源申请列表 * *******************************************/ //控制器:ResApplyRecommendController //------------------------------------------ //F1.定义Ext列表实体字段 //F2.获取Ext列表数据 //F3.Ext加载后创建建列表 //F4.获取查询条件 //F5.页面初始化 //F6.查询 //F7.清除 //F8 弹出申请资源树 //------------------------------------------ //F1.定义Ext列表实体字段 Ext.define('ZYMLZiYuanModel', { extend: 'Ext.data.Model', fields:[ 'resourceid','title','mulu','resourceclass', 'pubunitid', 'createuserid','pubdate','appdate','appuserid','auditresult','audit' ], idProperty: 'resourceid' }); //获取地址栏参数 var search = window.location.search; var sysid = ""; if(search.indexOf("?") > -1){ search = search.replace("?", ""); sysid = search.split('=')[1]; } //F2.获取Ext列表数据 var ResStore = new Ext.data.Store({ autoDestroy: true, pageSize: 10, model: 'ZYMLZiYuanModel', proxy: { type: 'ajax', url: '/res/manage/applyrecommend/getlistbysystem?sysid='+sysid, 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: 310, layout: 'fit', autoScroll: false, store: ResStore, stateful: false, stateId: 'ZYMLZiYuan-Grid', viewConfig: { forceFit: true, enableTextSelection: true //列表数据可复制 }, columns: [ // { xtype: 'rownumberer', text: "序号", width: '4%', align: 'center' }, {text: "选择项", dataIndex: 'resourceid', width: '5%', sortable: false, align: 'center', filter: { type: 'string' }, renderer: function (value, p, record) { var ziYuanId = record.getData()["resourceid"]; var audit = record.getData()["audit"]; var flag = ''; if(audit == 1) { flag = ''; } return Ext.String.format( flag, ziYuanId ); } }, { text: "资源名称", dataIndex: 'title', width: '26%', 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: 'mulu', width: '16%', sortable: false, filter: { type: 'string' }, align: 'left', renderer: function (value, p, record) { return Ext.String.format('{0}', value); } }, { text: "资源类型", dataIndex: 'resourceclass', width: '8%', sortable: true, 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: 'pubdate', width: '10%', sortable: true, filter: { type: 'string' }, align: 'center' }, { text: "发布单位", dataIndex: 'pubunitid', width: '12%', sortable: true, align: 'center', filter: { type: 'string' }, renderer: function (value, p, record) { if(value == null || value == "null") { return ""; } else { return value; } } }, { text: "申请日期", dataIndex: 'appdate', width: '10%', sortable: true, align: 'center', filter: { type: 'string' } }, { text: "申请人", dataIndex: 'appuserid', width: '8%', sortable: true, align: 'center', filter: { type: 'string' } }, { text: "批复状态", dataIndex: 'auditresult', width: '8%', sortable: true, align: 'center', filter: { type: 'string' }}, { text: "调用情况", dataIndex: 'resourceid', width: '8%', sortable: true, align: 'center', filter: { type: 'string' }, renderer: function (value, p, record) { return Ext.String.format('', value); } } ], 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"; }); ResStore.load(); //添加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; 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 + ""); } } //F5.页面初始化 $(function () { $(".date-picker").datepicker({ language: 'zh-CN', format: 'yyyy-mm-dd' }); $("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() { Ext.getCmp('gridexample').dockedItems.items[1].store.currentPage = 1; ResStore.load(); } //F7.清除 function Clear() { document.getElementById("SearchForm").reset(); } var zTree; //F9 保存申请 function SaveApply(){ var nodes = zTree.getCheckedNodes(); console.log(nodes); var idStr = ""; for(var i = 0; i < nodes.length; i++) { if(nodes[i].isParent == false) { if(idStr != "") idStr+= ","; idStr += nodes[i].id.replace("ZiYuan_",""); } } window.open("/res/manage/applyrecommend/ziyuanapply?ids="+idStr+"&sysid="+sysid); } //F8 弹出申请资源树 function ApplyTree(){ /** * zTree配置 */ var setting = { view: { selectedMulti: false, showTitle : true }, check: { enable: false }, data: { simpleData: { enable: true }, key: { title:"title"//1 json中要有一个key是 title就可以了 }, }, check: { enable: true, chkStyle: "checkbox", }, // async: { // enable: true, // url: "/res/manage/applyrecommend/getSelectZiYuan", // autoParam: ["id=parentid"], // otherParam:{ // sysid:sysid // } // }, // callback: { // //onClick: ztreeonClick // } }; var data = ""; $.ajax({ type: "GET", url: "/res/manage/applyrecommend/getSelectZiYuan", dataType: 'text', data: {parentid: 0, sysid:sysid}, success: function (r) { data = eval('(' + r + ')'); var zNodes = { id: 0, name: "资源目录", pId: -1, isParent: true, open:true, title:"",iconOpen:"/image/classicons/folderOpen.png",//update:dsh(2018/12/05) iconClose:"/image/classicons/folder.png", "children": data }; zTree = $.fn.zTree.init($("#menuTree"), setting, zNodes); //初始化zTree" } }); // zTree.reAsyncChildNodes(zTree.getNodes()[0], "refresh", false); //强行异步加载父节点的子节点。 layer.open({ type: 1, title: "选择资源", shadeClose: true, area: ["600px", "450px"], content: jQuery("#zydiv"), cancel: function(index, layero){ layer.close(index); $("#zydiv").hide(); } }); } //F9 填写系统地址 function SystemUrl() { layer.open({ type: 1, title: "系统地址", shadeClose: true, area: ["420px", "270px"], content: jQuery("#sysurl"), cancel: function(index, layero){ layer.close(index); $("#sysurl").hide(); } }); } //关闭窗口 function closeLayer(){ $(".layui-layer-close1").click(); } //F10 批量获取资源地址 function GetResourceUrl() { var resourceids = ""; var sysUrl = $("#systemUrl").text(); $("input[name='resourceids']:checked").each(function (i) { if(i != 0) resourceids += ","; resourceids += $(this).val(); }); if(resourceids != "") { //提示获取 layer.msg('获取中…',{icon: 16,shade: 0.5}); $.ajax({ type: 'GET', url: '/res/manage/applyrecommend/getResourcesUrl', data: {resourceids: resourceids, sysUrl: sysUrl, appid: sysid}, success: function (response) { //获取成功关闭提示框 layer.closeAll('loading'); closeLayer(); window.open(response); }, error: function (e) { //获取失败关闭提示框 layer.closeAll('loading'); alert(e.message); } }) } else { alert("请选择所要获取地址的资源!"); } } function checkAction(resourceid) { layer.open({ type: 2, title: "资源调用情况", shadeClose: true, area: ["600px", "500px"], content: '/res/manage/actionrecord/appcount?resourceid='+ resourceid }); }