From b6591ebaf58b84b82f24d72142acd96b060c1b68 Mon Sep 17 00:00:00 2001 From: augushong Date: Sat, 9 Jul 2022 11:52:17 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=9E=E7=8E=B0=E8=A1=A8=E6=A0=BC=E9=80=89?= =?UTF-8?q?=E6=8B=A9=E5=99=A8=E5=B7=B2=E9=80=89=E6=8B=A9=E7=9A=84=E7=A6=81?= =?UTF-8?q?=E7=94=A8=EF=BC=9B=E5=AE=8C=E5=96=84=E9=83=A8=E5=88=86=E5=BA=95?= =?UTF-8?q?=E5=B1=82=E6=96=87=E4=BB=B6=E7=BB=86=E8=8A=82=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- composer.json | 1 + public/static/plugs/easy-admin/easy-admin.js | 31 +++++++++++++++++++ .../plugs/lay-module/layuimini/miniMenu.js | 2 +- .../plugs/lay-module/tableData/tableData.js | 11 +++---- 4 files changed, 37 insertions(+), 8 deletions(-) diff --git a/composer.json b/composer.json index 0ab6635..c9804f7 100644 --- a/composer.json +++ b/composer.json @@ -55,4 +55,5 @@ "@php think vendor:publish" ] } + } diff --git a/public/static/plugs/easy-admin/easy-admin.js b/public/static/plugs/easy-admin/easy-admin.js index 40e6ce3..efdbfca 100644 --- a/public/static/plugs/easy-admin/easy-admin.js +++ b/public/static/plugs/easy-admin/easy-admin.js @@ -367,6 +367,37 @@ define(["jquery", "tableSelect", "ckeditor", 'miniTheme', 'tableData'], function options.cols = admin.table.renderTrueHide(options.cols, options.elem); + var parseData = function (res) { return res } + + if (typeof options.parseData === 'function') { + parseData = options.parseData; + } + + options.parseData = function (res) { + + // 初始化已经选择的值 + if (selectMode == 'checkbox' || selectMode == 'radio') { + + var selectedIds = admin.getQueryVariable('selectedIds', ''); + + if (selectedIds.length > 0) { + var selectedIdArr = selectedIds.split(','); + console.log(selectedIdArr); + + for (let index = 0; index < res.data.length; index++) { + const dataItem = res.data[index]; + console.log(dataItem); + + if (selectedIdArr.indexOf(dataItem.id.toString()) > -1) { + res.data[index].LAY_DISABLED = true; + } + } + } + } + + res = parseData(res) + return res; + } // 初始化表格 diff --git a/public/static/plugs/lay-module/layuimini/miniMenu.js b/public/static/plugs/lay-module/layuimini/miniMenu.js index 4211225..40bbdd4 100644 --- a/public/static/plugs/lay-module/layuimini/miniMenu.js +++ b/public/static/plugs/lay-module/layuimini/miniMenu.js @@ -55,7 +55,7 @@ define(["jquery"], function ($) { compileMenu: function(menu,isSub){ var menuHtml = '' ; if(isSub){ - menuHtml = '' + menuHtml = '' } return laytpl(menuHtml).render(menu); }, diff --git a/public/static/plugs/lay-module/tableData/tableData.js b/public/static/plugs/lay-module/tableData/tableData.js index 1701169..4c0d7a9 100644 --- a/public/static/plugs/lay-module/tableData/tableData.js +++ b/public/static/plugs/lay-module/tableData/tableData.js @@ -45,7 +45,7 @@ define(['jquery', 'vue'], function ($, Vue) { } var options = $.extend(defaultOption, data); - console.log(options); + var valueField = options.valueField; @@ -68,12 +68,9 @@ define(['jquery', 'vue'], function ($, Vue) { }, watch: { listSelected(value) { - console.log(value); var valueList = value.map(itemValue => itemValue[valueField]) - - this.value = valueList.join(',') } }, @@ -97,19 +94,19 @@ define(['jquery', 'vue'], function ($, Vue) { methods: { openSelectPage() { + var selectedIds = this.listSelected.map(item => item.id); + var index = layer.open({ title: '选择数据', type: 2, area: [options.width, options.height], - content: options.index, + content: options.index+'&selectedIds='+selectedIds.join(','), maxmin: true, moveOut: true, shadeClose: true, success: (layero, index) => { window[options.selectConfirmCallback] = (data) => { - console.log(data); - data.forEach(dataItem => { var itemFind = this.listSelected.find(itemSelect => itemSelect[valueField] == dataItem[valueField])