From 78991bc6a9e603b32743843959542f772ebc43cf Mon Sep 17 00:00:00 2001 From: guoxin <371864209@qq.com> Date: Tue, 5 Sep 2023 15:24:46 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=EF=BC=9A=E7=BB=BC=E5=90=88?= =?UTF-8?q?=E6=B5=8F=E8=A7=88=E6=9F=A5=E8=AF=A2=E7=BB=93=E6=9E=9C=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E8=A1=A8=E5=A4=B4=E6=94=B9=E4=B8=BA=E6=A0=B9=E6=8D=AE?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E5=8A=A8=E6=80=81=E5=8A=A0=E8=BD=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/static/js/browser.js | 156 ++++++++---------- .../src/main/resources/view/browser.html | 10 +- 2 files changed, 70 insertions(+), 96 deletions(-) diff --git a/shandan-browser/src/main/resources/static/js/browser.js b/shandan-browser/src/main/resources/static/js/browser.js index d574f0d..7e5da0d 100644 --- a/shandan-browser/src/main/resources/static/js/browser.js +++ b/shandan-browser/src/main/resources/static/js/browser.js @@ -15,6 +15,7 @@ layui.use(['layer', 'listPage', 'globalTree', 'gtable', 'form', 'element', 'drop laydate = layui.laydate, globalTree = layui.globalTree, DataLabel = layui.datalabel; + const tHeadSetLayer = new THeadSetLayer(layui); let metaListTable, dirFileTable, tagSelector, tags = [], conditions = []; const unchecked_tags = new Set(); @@ -126,6 +127,7 @@ layui.use(['layer', 'listPage', 'globalTree', 'gtable', 'form', 'element', 'drop * 加载数据资源列表 */ function initMetadataTable(id) { + const theadConfig = THeadSetLayer.filterConfigData(resourceTableId); metaListTable = listPage.init({ table: { id: 'dirMetadataTable', @@ -137,27 +139,12 @@ layui.use(['layer', 'listPage', 'globalTree', 'gtable', 'form', 'element', 'drop autoSort: false, defaultToolbar: [ {title: '导出', layEvent: 'export', icon: 'layui-icon-export'}, - {title: '列表配置', layEvent: 'theadSet', icon: 'layui-icon-cols'} + {title: '列表配置', layEvent: 'theadSet1', icon: 'layui-icon-cols'} ], request: {pageName: 'page', limitName: 'size'}, limit: 30, - cols: [[ - {field: 'id', title: 'ID', hide: true}, - {field: 'resourceName', title: '数据名称', width: 300, sort: true}, - {field: 'resourceComment', title: '中文注释/描述', sort: true}, - {field: 'directoryPath', title: '资源路径', sort: true}, - {field: 'themeTask', title: '主题任务', hide: true, sort: true}, - { - field: 'dataSource', - title: '数据来源', - width: 160, - templet: (data) => DICT.getText("data_source", data.dataSource) || data.dataSource || '', - sort: true - }, - {field: 'taskTime', title: '任务时间', width: 180, align: 'center', sort: true}, - {field: 'modifyTime', title: '注册时间', width: 160, align: 'center', hide: true}, - {fixed: 'right', title: '操作', toolbar: '#rowToolBar', width: 100, align: 'center'} - ]], + minWidth: 80, + cols: THeadSetLayer.convertColumns(theadConfig, 'dirMetadataTable'), done: function (res, _table) { initConditionBlock(); if (_table.where) { @@ -218,10 +205,11 @@ layui.use(['layer', 'listPage', 'globalTree', 'gtable', 'form', 'element', 'drop } }) - new THeadSetLayer(layui, metaListTable, [...sourceTableConfigMap.values()]); + metaListTable.addTableRowEvent('theadSet1', () => tHeadSetLayer.show(resourceTableId)) } function initFileSearchTable(id) { + const theadConfig = THeadSetLayer.filterConfigData(fileTableId) dirFileTable = listPage.init({ table: { id: 'dirFileTable', @@ -232,45 +220,13 @@ layui.use(['layer', 'listPage', 'globalTree', 'gtable', 'form', 'element', 'drop height: 'full-110', request: {pageName: 'page', limitName: 'size'}, defaultToolbar: [ - {title: '列表配置', layEvent: 'theadSet', icon: 'layui-icon-cols'} + {title: '列表配置', layEvent: 'theadSet2', icon: 'layui-icon-cols'} ], autoSort: false, limit: 30, method: 'get', - cols: [[ - {field: 'id', title: 'ID', hide: true}, - {field: 'fileName', title: '文件名称', minWidth: 300, fixed: 'left'}, - { - field: 'source', - title: '文件来源', - minWidth: 160, - sort: true, - templet: data => DICT.getText('data_source', data.source) || data.source || '' - }, - {field: 'taskCode', title: '任务代号', sort: true, minWidth: 160}, - { - field: 'taskNature', - title: '任务性质', - minWidth: 160, - sort: true, - templet: data => DICT.getText('task_nature', data.taskNature) || data.taskNature || '' - }, - {field: 'troopCode', title: '部队代号', sort: true, minWidth: 160}, - {field: 'missileNumber', title: '导弹编号', sort: true, minWidth: 160}, - {field: 'equipmentModel', title: '装备型号', sort: true, minWidth: 160}, - { - field: 'targetNumber', - title: '目标/靶标类型', - minWidth: 160, - sort: true, - templet: data => DICT.getText('target_type', data.targetNumber) || data.targetNumber || '' - }, - {field: 'entryStaff', title: '录入人员', sort: true, minWidth: 160}, - {field: 'inputDate', title: '收文时间', sort: true, width: 160, align: 'center'}, - {field: 'remark', title: '文件描述', width: 300}, - {field: 'text', title: '文件内容', width: 300}, - {fixed: 'right', title: '操作', toolbar: '#fileRowToolBar', width: 100, align: 'center'} - ]], + minWidth: 80, + cols: THeadSetLayer.convertColumns(theadConfig, 'dirFileTable') }, }); @@ -290,7 +246,7 @@ layui.use(['layer', 'listPage', 'globalTree', 'gtable', 'form', 'element', 'drop openMaxLayerWithURL(`${ctx}/sys/file/view?fileId=${obj.id}`) }) - new THeadSetLayer(layui, dirFileTable, [...fileTableConfigMap.values()]); + dirFileTable.addTableRowEvent('theadSet2', () => tHeadSetLayer.show(fileTableId)) } /** @@ -520,18 +476,15 @@ layui.use(['layer', 'listPage', 'globalTree', 'gtable', 'form', 'element', 'drop * 表格表头配置组件 */ class THeadSetLayer { - constructor(lay, pageTable, configData) { + constructor(lay) { + this.id = 'theadConfig'; this.layer = lay.layer; this.form = lay.form; this.gtable = lay.gtable; - this.pageTable = pageTable; - this.id = pageTable.table.id + 'Set'; - this.configData = configData; - this.pageTable.addTableRowEvent('theadSet', () => this.show()) } - show() { - const {layer, pageTable, id} = this; + show(tableId) { + const {layer, id} = this; layer.open({ id: id + 'Layer', title: '数据列表配置', @@ -543,26 +496,27 @@ class THeadSetLayer { content: `