From a898abd9e42a4b428d6daf1d34fa400ed18e8689 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期三, 23 十一月 2022 17:35:34 +0800 Subject: [PATCH] 2022-11-23 --- src/menu/components/table/normal-table/columns/editColumn/formconfig.jsx | 280 +++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 197 insertions(+), 83 deletions(-) diff --git a/src/menu/components/table/normal-table/columns/editColumn/formconfig.jsx b/src/menu/components/table/normal-table/columns/editColumn/formconfig.jsx index 4126c3c..f1ff2b1 100644 --- a/src/menu/components/table/normal-table/columns/editColumn/formconfig.jsx +++ b/src/menu/components/table/normal-table/columns/editColumn/formconfig.jsx @@ -1,46 +1,68 @@ -import zhCN from '@/locales/zh-CN/model.js' -import enUS from '@/locales/en-US/model.js' - -const Formdict = localStorage.getItem('lang') !== 'en-US' ? zhCN : enUS - /** * @description 鑾峰彇鏄剧ず鍒楄〃鍗曢厤缃俊鎭� * @param {object} card // 鎼滅储鏉′欢瀵硅薄 - * @param {Array} menulist // 鑿滃崟鍒楄〃-鐢ㄤ簬瀛楁閫忚 */ -export function getColumnForm (card, menulist = [], fields = []) { +export function getColumnForm (card, fields = []) { + let appType = sessionStorage.getItem('appType') let roleList = sessionStorage.getItem('sysRoles') if (roleList) { try { roleList = JSON.parse(roleList) - } catch { + } catch (e) { roleList = [] } } else { roleList = [] } + let menulist = [] + + if (appType === 'pc') { + menulist = sessionStorage.getItem('appMenus') + } else if (!appType) { + menulist = sessionStorage.getItem('fstMenuList') + } + + if (menulist) { + try { + menulist = JSON.parse(menulist) + } catch (e) { + menulist = [] + } + } else { + menulist = [] + } + let options = [{ value: 'text', - text: Formdict['model.form.text'] + text: '鏂囨湰' }, { value: 'number', - text: Formdict['model.form.number'] + text: '鏁板瓧' }, { value: 'picture', - text: Formdict['model.form.picture'] + text: '鍥剧墖' + }, { + value: 'video', + text: '瑙嗛' }, { value: 'link', - text: Formdict['model.form.href'] + text: '閾炬帴' }, { value: 'textarea', - text: Formdict['model.form.textarea'] + text: '澶氳鏂囨湰' }, { value: 'custom', text: '鑷畾涔夊垪' }, { value: 'colspan', text: '鍚堝苟鍒�' + }, { + value: 'formula', + text: '鍏紡' + }, { + value: 'index', + text: '搴忓彿' }] if (!card.isSub) { @@ -48,6 +70,10 @@ value: 'action', text: '鎿嶄綔' }) + } + + if (!card.linkurl && (!card.linkmenu || card.linkmenu.length === 0)) { + card.perspective = '' } return [ @@ -61,7 +87,7 @@ { type: 'select', key: 'type', - label: Formdict['model.form.type'], + label: '绫诲瀷', initVal: card.type, required: true, options: options @@ -69,7 +95,7 @@ { type: 'select', key: 'field', - label: Formdict['model.form.field'], + label: '瀛楁', initVal: card.field, required: true, options: fields @@ -77,7 +103,7 @@ { type: 'select', key: 'nameField', - label: Formdict['model.name'] + Formdict['model.form.field'], + label: '鍚嶇О瀛楁', initVal: card.nameField || '', required: false, options: [{uuid: 'empty', field: '', label: '绌�'}, ...fields] @@ -88,69 +114,88 @@ min: 20, max: 1000, decimal: 0, - label: Formdict['model.form.columnWidth'], + label: '鍒楀', initVal: card.Width || 120, required: true }, { type: 'radio', key: 'joint', - label: Formdict['model.form.paramJoint'], + label: '鎷兼帴鍙傛暟', initVal: card.joint || 'true', required: true, options: [{ value: 'true', - text: Formdict['model.true'] + text: '鏄�' }, { value: 'false', - text: Formdict['model.false'] + text: '鍚�' }] }, { type: 'radio', key: 'Hide', - label: Formdict['model.hidden'], + label: '闅愯棌', initVal: card.Hide || 'false', required: true, options: [{ value: 'true', - text: Formdict['model.true'] + text: '鏄�' }, { value: 'false', - text: Formdict['model.false'] + text: '鍚�' }] }, { type: 'radio', key: 'IsSort', - label: Formdict['model.sort'], - initVal: card.IsSort || 'true', + label: '鎺掑簭', + initVal: card.IsSort || (card.isSub ? 'false' : 'true'), required: true, - forbidden: card.isSub, options: [{ value: 'true', - text: Formdict['model.true'] + text: '鏄�' }, { value: 'false', - text: Formdict['model.false'] + text: '鍚�' }] }, { type: 'radio', key: 'Align', - label: Formdict['model.form.align'], + label: '瀵归綈鏂瑰紡', initVal: card.Align || 'left', required: true, options: [{ value: 'left', - text: Formdict['model.form.alignLeft'] + text: '宸﹀榻�' }, { value: 'center', - text: Formdict['model.form.alignCenter'] + text: '灞呬腑' }, { value: 'right', - text: Formdict['model.form.alignRight'] + text: '鍙冲榻�' }] + }, + { + type: 'number', + key: 'startTime', + precision: 0, + label: '寮�濮嬫椂闂�', + initVal: card.startTime || 0, + tooltip: '瑙嗛寮�濮嬫挱鏀剧殑鏃堕棿锛岀敤浜庤皟鏁磋棰戝垵濮嬪寲灞曠ず鐨勭晫闈€��', + required: false + }, + { + type: 'select', + key: 'aspectRatio', + label: '闀垮姣�', + initVal: card.aspectRatio || '16:9', + required: true, + options: [ + { value: '4:3', text: '4:3' }, + { value: '16:9', text: '16:9' } + ] }, { type: 'radio', @@ -161,10 +206,10 @@ required: false, options: [{ value: 'true', - text: Formdict['model.true'] + text: '鏄�' }, { value: 'false', - text: Formdict['model.false'] + text: '鍚�' }] }, { @@ -176,11 +221,12 @@ required: false, options: [{ value: 'true', - text: Formdict['model.true'] + text: '鏄�' }, { value: 'false', - text: Formdict['model.false'] - }] + text: '鍚�' + }], + forbid: card.isSub }, { type: 'number', @@ -188,35 +234,41 @@ min: 0, max: 18, decimal: 0, - label: Formdict['header.form.decimal'], - initVal: card.decimal || 0, - required: true + label: '灏忔暟浣�', + initVal: card.decimal, + required: false }, { type: 'select', key: 'format', - label: Formdict['header.form.format'], + label: '鏍煎紡鍖�', initVal: card.format || 'none', options: [{ value: 'none', - text: Formdict['model.empty'] + text: '鏃�' }, { value: 'thdSeparator', - text: Formdict['header.form.thdSeparator'] + text: '鍗冨垎浣�' }, { value: 'percent', text: '鐧惧垎姣�' + }, { + value: 'abs', + text: '缁濆鍊�' }], required: false }, { type: 'select', key: 'textFormat', - label: Formdict['header.form.format'], + label: '鏍煎紡鍖�', initVal: card.textFormat || 'none', options: [{ value: 'none', - text: Formdict['model.empty'] + text: '鏃�' + }, { + value: 'encryption', + text: '鍔犲瘑' }, { value: 'YYYY-MM-DD', text: 'YYYY-MM-DD' @@ -229,7 +281,7 @@ { type: 'text', key: 'prefix', - label: Formdict['header.form.prefix'], + label: '鍓嶇紑', initVal: card.prefix || '', required: false, readonly: false @@ -237,95 +289,157 @@ { type: 'text', key: 'postfix', - label: Formdict['header.form.postfix'], + label: '鍚庣紑', initVal: card.postfix || '', - tooltipClass: 'middle', required: false, readonly: false }, { - type: 'radio', + type: 'number', + key: 'span', + min: 1, + max: 24, + precision: 0, + label: '鍥剧墖瀹藉害', + initVal: card.span || 24, + tooltip: '鏍呮牸甯冨眬锛岀瓑鍒嗕负24浠姐��', + required: true + }, + { + type: 'select', key: 'lenWidRadio', label: '闀垮姣�', initVal: card.lenWidRadio || '1:1', required: true, options: [ { value: '1:1', text: '1:1' }, - { value: '3:2', text: '3:2' }, { value: '4:3', text: '4:3' }, - { value: '16:9', text: '16:9' } + { value: '3:2', text: '3:2' }, + { value: '16:9', text: '16:9' }, + { value: '2:1', text: '2:1' }, + { value: '3:1', text: '3:1' }, + { value: '4:1', text: '4:1' }, + { value: '5:1', text: '5:1' }, + { value: '6:1', text: '6:1' }, + { value: '7:1', text: '7:1' }, + { value: '8:1', text: '8:1' }, + { value: '9:1', text: '9:1' }, + { value: '10:1', text: '10:1' }, + { value: '3:4', text: '3:4' }, + { value: '2:3', text: '2:3' }, + { value: '9:16', text: '9:16' }, ] }, { type: 'radio', - key: 'picSort', - label: '鍥剧墖鎺掑垪', - initVal: card.picSort || '1', - tooltip: '鍚屼竴鍗曞厓鏍煎唴锛屽惈鏈夊寮犲浘鐗囨椂鐨勫垪鏁般��', + key: 'backgroundSize', + label: '鍥惧儚澶у皬', + initVal: card.backgroundSize || 'cover', required: false, - options: [{ - value: '1', - text: '1' - }, { - value: '2', - text: '2' - }, { - value: '3', - text: '3' - }, { - value: '4', - text: '4' - }] + options: [ + { value: 'cover', text: '瑕嗙洊' }, + { value: 'contain', text: '鍖呭惈' }, + { value: 'auto', text: '鑷�傚簲' }, + ] }, { type: 'radio', key: 'scale', - label: Formdict['header.form.clickscale'], - initVal: card.scale || 'false', + label: '鐐瑰嚮缂╂斁', + initVal: card.scale || 'true', required: false, options: [{ value: 'true', - text: Formdict['model.true'] + text: '鏄�' }, { value: 'false', - text: Formdict['model.false'] + text: '鍚�' }] }, { type: 'radio', key: 'perspective', label: '瀛楁閫忚', - initVal: card.perspective || 'linkmenu', + initVal: card.perspective || '', options: [{ + value: '', + text: '鏃�' + }, { value: 'linkmenu', text: '鑿滃崟' }, { value: 'linkurl', text: '閾炬帴' - }] + }], + forbid: appType === 'mob' }, { - type: 'cascader', + type: appType === 'pc' ? 'select' : 'cascader', key: 'linkmenu', - label: Formdict['model.menu'], - initVal: card.linkmenu || [], - required: false, - options: menulist + label: '鑿滃崟', + initVal: card.linkmenu || (appType === 'pc' ? '' : []), + required: true, + options: menulist, + forbid: appType === 'mob' }, { - type: 'text', + type: 'textarea', key: 'linkurl', label: '閾炬帴鍦板潃', initVal: card.linkurl || '', - required: false + required: true, + forbid: appType === 'mob' + }, + { + type: 'multiselect', + key: 'linkfields', + label: '鍏宠仈瀛楁', + initVal: card.linkfields || [], + required: false, + options: fields, + forbid: appType === 'mob' + }, + { + type: 'radio', + key: 'open', + label: '鎵撳紑鏂瑰紡', + initVal: card.open || 'blank', + required: false, + forbid: appType !== 'pc', + options: [ + { value: 'blank', text: '鏂扮獥鍙�' }, + { value: 'self', text: '褰撳墠绐楀彛' } + ] + }, + { + type: 'radio', + key: 'eval', + label: '瑙f瀽', + initVal: card.eval || 'true', + tooltip: '褰撳叕寮忓唴瀹规秹鍙婅绠楁椂璇烽�夋嫨鈥滄槸鈥濓紝褰撳叕寮忓唴瀹逛负瀛楁鎷兼帴鏃惰閫夋嫨鈥滃惁鈥濄��', + required: false, + options: [ + { value: 'true', text: '鏄�' }, + { value: 'false', text: '鍚�' } + ] + }, + { + type: 'textarea', + key: 'formula', + label: '鍏紡', + initVal: card.formula || '', + tooltip: '鎵ц鏃朵細浣跨敤鏌ヨ鍒扮殑鏁版嵁鏇挎崲鐩稿簲鐨勫瓧娈碉紝灞曠ず鑾峰緱鐨勭粨鏋滐紝鍦ㄤ笉浣跨敤瑙f瀽鏃舵崲琛岀鎴栫┖鏍间細鏇挎崲涓洪〉闈㈠厓绱犮�傚彲浣跨敤JS鐨勪竴浜涜娉曪紝濡傦細涓夊厓琛ㄨ揪寮� @field1@ > @field2@ ? 0 : 1锛汳ath瀵硅薄锛屽彇缁濆鍊� Math.abs(@field@)銆佸洓鑸嶄簲鍏� Math.round(@field@)绛�', + placeholder: '渚嬪锛欯price@ * @number@', + required: true }, { type: 'multiselect', key: 'blacklist', - label: Formdict['header.form.blacklist'], + label: '榛戝悕鍗�', initVal: card.blacklist || [], required: false, - options: roleList + options: roleList, + forbid: appType === 'mob' } ] } -- Gitblit v1.8.0