From b8850f414a19119699a3a12dbf9950dfe950dc95 Mon Sep 17 00:00:00 2001 From: guoxin <371864209@qq.com> Date: Mon, 4 Sep 2023 16:09:01 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=EF=BC=9A=E7=BB=BC=E5=90=88?= =?UTF-8?q?=E6=B5=81=E9=87=8F=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=E9=85=8D=E7=BD=AE=E4=B8=8D=E7=94=9F?= =?UTF-8?q?=E6=95=88=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/static/js/browser.js | 43 +++++++++++++------ .../impl/SysTheadConfigServiceImpl.java | 2 +- 2 files changed, 32 insertions(+), 13 deletions(-) diff --git a/shandan-browser/src/main/resources/static/js/browser.js b/shandan-browser/src/main/resources/static/js/browser.js index 51a9108..d574f0d 100644 --- a/shandan-browser/src/main/resources/static/js/browser.js +++ b/shandan-browser/src/main/resources/static/js/browser.js @@ -218,7 +218,7 @@ layui.use(['layer', 'listPage', 'globalTree', 'gtable', 'form', 'element', 'drop } }) - new THeadSetLayer(metaListTable, layui); + new THeadSetLayer(layui, metaListTable, [...sourceTableConfigMap.values()]); } function initFileSearchTable(id) { @@ -290,7 +290,7 @@ layui.use(['layer', 'listPage', 'globalTree', 'gtable', 'form', 'element', 'drop openMaxLayerWithURL(`${ctx}/sys/file/view?fileId=${obj.id}`) }) - new THeadSetLayer(dirFileTable, layui); + new THeadSetLayer(layui, dirFileTable, [...fileTableConfigMap.values()]); } /** @@ -520,12 +520,13 @@ layui.use(['layer', 'listPage', 'globalTree', 'gtable', 'form', 'element', 'drop * 表格表头配置组件 */ class THeadSetLayer { - constructor(pageTable, lay) { + constructor(lay, pageTable, configData) { this.layer = lay.layer; this.form = lay.form; this.gtable = lay.gtable; this.pageTable = pageTable; - this.id = pageTable.id + 'Set'; + this.id = pageTable.table.id + 'Set'; + this.configData = configData; this.pageTable.addTableRowEvent('theadSet', () => this.show()) } @@ -557,7 +558,7 @@ class THeadSetLayer { const {gtable, form, id} = this; gtable.init({ id, - data: [...sourceTableConfigMap.values()], + data: this.configData, method: 'get', toolbar: false, height: 'full-310', @@ -581,13 +582,23 @@ class THeadSetLayer { ]], }); gtable.on(`edit(${id})`, ({field, value, data}) => { - sourceTableConfigMap.get(data.id)[field] = value; + this._setData(data.id, field, value); + if (this.id.startsWith('dirMetadataTable')) { + sourceTableConfigMap.get(data.id)[field] = value; + } else if (this.id.startsWith('dirFileTable')) { + fileTableConfigMap.get(data.id)[field] = value; + } }) // 监听switch按钮 form.on(`switch(${id}-switch)`, ({elem}) => { const id = $(elem).attr('id'), name = $(elem).attr('name'); - const value = sourceTableConfigMap.get(id)[name]; - sourceTableConfigMap.get(id)[name] = !value; + if (this.id.startsWith('dirMetadataTable')) { + const value = sourceTableConfigMap.get(id)[name]; + sourceTableConfigMap.get(id)[name] = !value; + } else if (this.id.startsWith('dirFileTable')) { + const value = fileTableConfigMap.get(id)[name]; + fileTableConfigMap.get(id)[name] = !value; + } }); function renderSwitch(colName, data) { @@ -596,13 +607,21 @@ class THeadSetLayer { } } + _setData(id, name, value) { + if (this.id.startsWith('dirMetadataTable')) { + sourceTableConfigMap.get(id)[name] = value; + } else if (this.id.startsWith('dirFileTable')) { + fileTableConfigMap.get(id)[name] = value; + } + } + _saveTheadSet() { return new Promise(resolve => { - Util.post(`/sys/thead/config/api/save`, {params: JSON.stringify([...sourceTableConfigMap.values()])}).then(res=>{ - if(res.flag){ + Util.post(`/sys/thead/config/api/save`, {params: JSON.stringify([...sourceTableConfigMap.values(), ...fileTableConfigMap.values()])}).then(res => { + if (res.flag) { showOkMsg('保存成功') - }else{ - showErrorMsg2('保存失败:'+res.msg) + } else { + showErrorMsg2('保存失败:' + res.msg) } }) resolve(); diff --git a/shandan-system/src/main/java/com/keyware/shandan/system/service/impl/SysTheadConfigServiceImpl.java b/shandan-system/src/main/java/com/keyware/shandan/system/service/impl/SysTheadConfigServiceImpl.java index 0676e04..cfb3550 100644 --- a/shandan-system/src/main/java/com/keyware/shandan/system/service/impl/SysTheadConfigServiceImpl.java +++ b/shandan-system/src/main/java/com/keyware/shandan/system/service/impl/SysTheadConfigServiceImpl.java @@ -61,7 +61,7 @@ public class SysTheadConfigServiceImpl extends ServiceImpl query = new LambdaQueryWrapper<>(); query.eq(SysTheadConfig::getCreateUser, userId); List list = list(query); - if (list.size() == 0) { + if (list.isEmpty()) { // 为默认数据生成包含用户主键的ID defaultConfig.forEach(conf -> conf.genId(userId)); return defaultConfig;