From 6c919b7a55f15af56b212d059f1a5ea44d1ed5b8 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期五, 04 十一月 2022 17:05:46 +0800 Subject: [PATCH] 2022-11-04 --- src/utils/utils-custom.js | 65 +++++++++++++++++++++++++++++++- 1 files changed, 62 insertions(+), 3 deletions(-) diff --git a/src/utils/utils-custom.js b/src/utils/utils-custom.js index 7284446..eb23ab6 100644 --- a/src/utils/utils-custom.js +++ b/src/utils/utils-custom.js @@ -171,7 +171,7 @@ * @description 鑾峰彇涓婄骇妯″潡 * @return {String} selfId 褰撳墠缁勪欢id */ - static getSupModules (components, selfId) { + static getSupModules (components, selfId, interfaces) { let modules = [] components.forEach(item => { if (item.uuid === selfId) { @@ -264,7 +264,41 @@ } }) + if (interfaces && interfaces.length > 0) { + interfaces.forEach(item => { + modules.push({ + value: item.uuid, + label: item.name + }) + }) + } + return modules + } + + /** + * @description 鑾峰彇涓婄骇妯″潡 + * @return {String} selfId 褰撳墠缁勪欢id + */ + static checkSupModules (modules, supId) { + let has = false + + let check = (list) => { + list.forEach(m => { + if (has) return + if (supId === m.value) { + has = true + return + } + if (m.children) { + check(m.children) + } + }) + } + + check(modules) + + return has } /** @@ -806,6 +840,9 @@ if (em) { item.setting.supModule = '' } + if (item.wrap && item.wrap.supModule) { + item.wrap.supModule = item.setting.supModule + } } if (item.wrap && item.wrap.doubleClick) { @@ -849,7 +886,7 @@ let cutreg = /(from|update|insert\s+into)\s+(@db@)?[a-z_]+/ig let trimreg = /(from|update|insert\s+into)\s+(@db@)?/ig - if (!config.wrap || !config.wrap.datatype || config.wrap.datatype === 'dynamic') { + if (config.setting && (!config.wrap || !config.wrap.datatype || config.wrap.datatype === 'dynamic')) { if (config.setting.interType === 'system') { if (config.setting.execute !== 'false') { let tbs = config.setting.dataresource.match(cutreg) @@ -860,7 +897,7 @@ let tbs = script.sql.match(cutreg) tbs && cuts.push(...tbs) }) - } else { + } else if (config.setting.tableName) { let tb = config.setting.tableName.replace(/@db@|\s+/ig, '') if (/[a-z_]+/ig.test(tb)) { tables.push(tb) @@ -868,11 +905,24 @@ } } + config.search && config.search.forEach(cell => { + if (cell.resourceType === '1' && cell.dataSource) { + let tbs = cell.dataSource.match(cutreg) + tbs && cuts.push(...tbs) + } + }) + let action = [] if (config.type === 'form') { config.subcards.forEach(item => { action.push(item.subButton) + item.fields && item.fields.forEach(cell => { + if (cell.resourceType === '1' && cell.dataSource) { + let tbs = cell.dataSource.match(cutreg) + tbs && cuts.push(...tbs) + } + }) }) } else if (config.subcards) { config.subcards.forEach(item => { @@ -905,6 +955,7 @@ } }) } + config.cols && config.cols.forEach(col => { if (col.type === 'action') { col.elements.forEach(cell => { @@ -980,6 +1031,14 @@ tbs && cuts.push(...tbs) } } else { + if (btn.OpenType === 'pop' && btn.modal && btn.modal.fields) { + btn.modal.fields.forEach(cell => { + if (cell.resourceType === '1' && cell.dataSource) { + let tbs = cell.dataSource.match(cutreg) + tbs && cuts.push(...tbs) + } + }) + } if (btn.intertype === 'inner') return if (btn.intertype === 'outer' || btn.intertype === 'custom') { if (btn.procMode === 'system' && btn.verify) { -- Gitblit v1.8.0