From 2f3b614bb34f5e2865e91c949712f5ee5e8a18f2 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期三, 08 十一月 2023 21:43:52 +0800 Subject: [PATCH] Merge branch 'develop' --- src/menu/components/share/actioncomponent/formconfig.jsx | 149 ++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 132 insertions(+), 17 deletions(-) diff --git a/src/menu/components/share/actioncomponent/formconfig.jsx b/src/menu/components/share/actioncomponent/formconfig.jsx index c246b60..7456bc4 100644 --- a/src/menu/components/share/actioncomponent/formconfig.jsx +++ b/src/menu/components/share/actioncomponent/formconfig.jsx @@ -7,17 +7,16 @@ * @param {*} functip 鐢熸垚瀛樺偍杩囩▼鎻愮ず * @param {*} setting 缁勪欢閰嶇疆 * @param {*} usefulFields 瀛樺偍杩囩▼鍙敤鐨勫紑濮嬪瓧娈� - * @param {*} type 鎸夐挳绫诲瀷锛岀敤浜庡尯鍒嗗彲閫夌殑鎵撳紑鏂瑰紡 */ export function getActionForm (card, functip, config, usefulFields, modules = [], anchors = [], side) { let appType = sessionStorage.getItem('appType') let viewType = sessionStorage.getItem('editMenuType') // 寮圭獥 popview - let printTemps = window.GLOB.printTemps || [] let setting = config.setting || {} let columns = side === 'sub' && config.subColumns ? config.subColumns : (config.columns || []) let appMenus = [] let menulist = [] let type = '' + let alltype = config.type + '_' + config.subtype if (card.eleType === 'button') { type = 'card' @@ -83,7 +82,73 @@ return _list } - let tabs = getTabs(JSON.parse(JSON.stringify(window.GLOB.customMenu.components))) + let tabs = getTabs(window.GLOB.customMenu.components) + + let linkButtons = [] + let filterComponent = (components) => { + components.forEach(item => { + if (item.type === 'tabs') { + item.subtabs.forEach(tab => { + filterComponent(tab.components) + }) + } else if (item.type === 'group') { + filterComponent(item.components) + } else { + item.action && item.action.forEach(cell => { + if (cell.hidden === 'true' || cell.uuid === card.uuid) return + if (!['exec', 'prompt', 'pop'].includes(cell.OpenType)) return + + linkButtons.push({ + value: cell.uuid, + label: cell.label + '锛�' + item.name + '锛�' + }) + }) + + if (item.type === 'card' && item.subcards) { + item.subcards.forEach(m => { + if ((item.subtype === 'datacard' || item.subtype === 'dualdatacard') && m.$cardType !== 'extendCard') return + m.elements.forEach(cell => { + if (cell.eleType !== 'button' || cell.hidden === 'true' || cell.uuid === card.uuid) return + if (!['exec', 'prompt', 'pop'].includes(cell.OpenType)) return + + linkButtons.push({ + value: cell.uuid, + label: cell.label + '锛�' + item.name + '锛�' + }) + }) + }) + } else if (item.type === 'balcony') { + item.elements.forEach(cell => { + if (cell.eleType !== 'button' || cell.hidden === 'true' || cell.uuid === card.uuid) return + if (!['exec', 'prompt', 'pop'].includes(cell.OpenType)) return + + linkButtons.push({ + value: cell.uuid, + label: cell.label + '锛�' + item.name + '锛�' + }) + }) + } else if (item.type === 'form') { + item.subcards.forEach(group => { + if(group.uuid === card.uuid) return + + if (item.subcards.length > 1) { + linkButtons.push({ + value: group.uuid, + label: group.subButton.label + '锛�' + item.name + '-' + group.setting.title + '锛�' + }) + } else { + linkButtons.push({ + value: group.uuid, + label: group.subButton.label + '锛�' + item.name + '锛�' + }) + } + }) + } + } + }) + } + + filterComponent(window.GLOB.customMenu.components) let pageTemps = [ { value: 'billprint', text: '鍗曟嵁鎵撳嵃' }, @@ -399,12 +464,11 @@ options: pageTemps }, { - type: 'select', + type: 'printTemps', key: 'printTemp', label: '鎵撳嵃妯℃澘', initVal: card.printTemp || '', - required: true, - options: printTemps + required: true }, { type: isApp ? 'select' : 'cascader', @@ -612,10 +676,15 @@ text: '涓嶅埛鏂�' }, { value: 'line', - text: '鍒锋柊琛�' + text: '鍒锋柊琛�', + $disabled: !['table_normaltable', 'table_editable', 'table_basetable', 'card_datacard', 'card_dualdatacard'].includes(alltype) }, { value: 'grid', text: '鍒锋柊褰撳墠缁勪欢' + }, { + value: 'line_grid', + text: '鍒锋柊琛� / 缁勪欢', + $disabled: !['table_normaltable', 'table_editable', 'table_basetable', 'card_datacard', 'card_dualdatacard'].includes(alltype) }, { value: 'mainline', text: '鍒锋柊涓婄骇缁勪欢 - 琛�' @@ -635,10 +704,15 @@ text: '涓嶅埛鏂�' }, { value: 'line', - text: '鍒锋柊琛�' + text: '鍒锋柊琛�', + $disabled: !['table_normaltable', 'table_editable', 'table_basetable', 'card_datacard', 'card_dualdatacard'].includes(alltype) }, { value: 'grid', text: '鍒锋柊褰撳墠缁勪欢' + }, { + value: 'line_grid', + text: '鍒锋柊琛� / 缁勪欢', + $disabled: !['table_normaltable', 'table_editable', 'table_basetable', 'card_datacard', 'card_dualdatacard'].includes(alltype) }, { value: 'mainline', text: '鍒锋柊涓婄骇缁勪欢 - 琛�' @@ -649,7 +723,7 @@ type: 'select', key: 'popClose', label: '鍏抽棴鍚�', - initVal: card.popClose || 'never', + initVal: card.popClose || 'grid', required: true, options: [{ value: 'never', @@ -714,9 +788,6 @@ required: false, forbid: (type !== 'datacard' || appType !== 'mob'), options: [{ - // value: 'false', - // text: '鍚�' - // }, { value: 'left', text: '宸︽粦' }, { @@ -871,6 +942,16 @@ allowClear: true, options: appType === 'mob' || appType === 'pc' ? appMenus : menulist, forbid: viewType === 'popview' + }, + { + type: 'select', + key: 'preButton', + label: '鍓嶇疆鎸夐挳', + tooltip: '褰撳墠鎸夐挳鎵ц鍓嶏紝闇�瑕佹墽琛岀殑鎸夐挳銆�', + initVal: card.preButton || '', + required: false, + allowClear: true, + options: linkButtons }, { type: 'text', @@ -1060,6 +1141,21 @@ tooltip: '鍓嶇疆鍑芥暟鎵ц瀹屾垚鍚庯紝缁撴灉浼氫紶鍏ュ唴閮ㄥ嚱鏁颁腑锛屾鏃跺唴閮ㄥ嚱鏁颁細寮傛鎵ц锛涘綋鍓嶇疆鍑芥暟杩斿洖涓璄rrCode绛変簬-1鏃讹紝灏嗕笉鍐嶆墽琛屽唴閮ㄥ嚱鏁般��', required: false, forbid: appType === 'mob' + }, + { + type: 'radio', + key: 'recordUser', + label: '璁板綍鐢ㄦ埛', + initVal: card.recordUser || 'false', + tooltip: '褰撻�夋嫨鈥滄槸鈥濇椂锛屽唴閮ㄥ嚱鏁扮殑浼犲弬浼氬鍔� username 涓� fullname銆�', + required: false, + options: [{ + value: 'false', + text: '鍚�' + }, { + value: 'true', + text: '鏄�' + }] }, { type: 'radio', @@ -1282,7 +1378,6 @@ */ export function getBaseTableActionForm (card, functip, config, usefulFields, modules) { let viewType = sessionStorage.getItem('editMenuType') // 寮圭獥 popview - let printTemps = window.GLOB.printTemps || [] let setting = config.setting || {} let columns = config.columns || [] @@ -1504,12 +1599,11 @@ options: pageTemps }, { - type: 'select', + type: 'printTemps', key: 'printTemp', label: '鎵撳嵃妯℃澘', initVal: card.printTemp || '', - required: true, - options: printTemps + required: true }, { type: 'cascader', @@ -1714,6 +1808,9 @@ value: 'grid', text: '鍒锋柊褰撳墠缁勪欢' }, { + value: 'line_grid', + text: '鍒锋柊琛� / 缁勪欢', + }, { value: 'mainline', text: '鍒锋柊涓婄骇缁勪欢 - 琛�' }, @@ -1736,6 +1833,9 @@ value: 'grid', text: '鍒锋柊褰撳墠缁勪欢' }, { + value: 'line_grid', + text: '鍒锋柊琛� / 缁勪欢', + }, { value: 'mainline', text: '鍒锋柊涓婄骇缁勪欢 - 琛�' }, @@ -1745,7 +1845,7 @@ type: 'select', key: 'popClose', label: '鍏抽棴鍚�', - initVal: card.popClose || 'never', + initVal: card.popClose || 'grid', required: true, options: [{ value: 'never', @@ -2011,6 +2111,21 @@ }, { type: 'radio', + key: 'recordUser', + label: '璁板綍鐢ㄦ埛', + initVal: card.recordUser || 'false', + tooltip: '褰撻�夋嫨鈥滄槸鈥濇椂锛屽唴閮ㄥ嚱鏁扮殑浼犲弬浼氬鍔� username 涓� fullname銆�', + required: false, + options: [{ + value: 'false', + text: '鍚�' + }, { + value: 'true', + text: '鏄�' + }] + }, + { + type: 'radio', key: 'control', label: '鎸夐挳鎺у埗', initVal: card.control || (card.controlField ? 'disabled' : ''), -- Gitblit v1.8.0