From b8e1395f02c929eaa96b949cf6027ee2a43856a6 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 06 九月 2022 19:03:37 +0800 Subject: [PATCH] 2022-09-06 --- src/menu/components/table/edit-table/columns/editColumn/formconfig.jsx | 479 ++++++++++++++++++++++++++++++++++++----------------------- 1 files changed, 291 insertions(+), 188 deletions(-) diff --git a/src/menu/components/table/edit-table/columns/editColumn/formconfig.jsx b/src/menu/components/table/edit-table/columns/editColumn/formconfig.jsx index e2b4ae1..06fefad 100644 --- a/src/menu/components/table/edit-table/columns/editColumn/formconfig.jsx +++ b/src/menu/components/table/edit-table/columns/editColumn/formconfig.jsx @@ -7,8 +7,7 @@ * @description 鑾峰彇鏄剧ず鍒楄〃鍗曢厤缃俊鎭� * @param {object} card // 鎼滅储鏉′欢瀵硅薄 */ -export function getColumnForm (card, fields = []) { - let appType = sessionStorage.getItem('appType') +export function getColumnForm (card, fields = [], columns = []) { let roleList = sessionStorage.getItem('sysRoles') if (roleList) { try { @@ -20,22 +19,8 @@ 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 = [] + if (['picture', 'link', 'colspan'].includes(card.type)) { + card.type = 'text' } let options = [{ @@ -45,35 +30,44 @@ value: 'number', text: Formdict['model.form.number'] }, { - value: 'picture', - text: Formdict['model.form.picture'] - }, { - value: 'link', - text: Formdict['model.form.href'] - }, { value: 'textarea', text: Formdict['model.form.textarea'] }, { value: 'custom', text: '鑷畾涔夊垪' }, { - value: 'colspan', - text: '鍚堝苟鍒�' + value: 'action', + text: '鎿嶄綔' + }, { + value: 'formula', + text: '鍏紡' }, { value: 'index', text: '搴忓彿' }] - if (!card.isSub) { - options.push({ - value: 'action', - text: '鎿嶄綔' - }) - } - - if (!card.linkurl && (!card.linkmenu || card.linkmenu.length === 0)) { - card.perspective = '' - } + let editCols = [ + { + field: '$sub', + label: '鎻愪氦' + }, + { + field: '$next', + label: '涓嬩竴琛�' + }, + { + field: '$noAct', + label: '鏃犲姩浣�' + } + ] + columns.forEach(col => { + if (col.editable === 'true' && col.uuid !== card.uuid) { + editCols.push({ + field: col.uuid, + label: col.label + }) + } + }) return [ { @@ -100,36 +94,14 @@ options: fields }, { - type: 'select', - key: 'nameField', - label: Formdict['model.name'] + Formdict['model.form.field'], - initVal: card.nameField || '', - required: false, - options: [{uuid: 'empty', field: '', label: '绌�'}, ...fields] - }, - { type: 'number', key: 'Width', min: 20, max: 1000, - decimal: 0, + precision: 0, label: Formdict['model.form.columnWidth'], initVal: card.Width || 120, required: true - }, - { - type: 'radio', - key: 'joint', - label: Formdict['model.form.paramJoint'], - initVal: card.joint || 'true', - required: true, - options: [{ - value: 'true', - text: Formdict['model.true'] - }, { - value: 'false', - text: Formdict['model.false'] - }] }, { type: 'radio', @@ -149,9 +121,8 @@ type: 'radio', key: 'IsSort', label: Formdict['model.sort'], - initVal: card.IsSort || 'true', + initVal: card.IsSort || 'false', required: true, - forbidden: card.isSub, options: [{ value: 'true', text: Formdict['model.true'] @@ -179,21 +150,6 @@ }, { type: 'radio', - key: 'rowspan', - label: '琛屽悎骞�', - initVal: card.rowspan || 'false', - tooltip: '鐩搁偦琛屼俊鎭浉鍚屾椂锛屽崟鍏冩牸鍚堝苟銆�', - required: false, - options: [{ - value: 'true', - text: Formdict['model.true'] - }, { - value: 'false', - text: Formdict['model.false'] - }] - }, - { - type: 'radio', key: 'sum', label: '鏄剧ず鍚堣', initVal: card.sum || 'false', @@ -208,14 +164,243 @@ }] }, { + type: 'radio', + key: 'editable', + label: '鍙紪杈�', + initVal: card.editable || 'false', + required: true, + options: [{ + value: 'false', + text: '鍚�' + }, { + value: 'true', + text: '鏄�' + }] + }, + { + type: 'radio', + key: 'editType', + label: '缂栬緫绫诲瀷', + initVal: card.editType || 'text', + required: true, + options: [{ + value: 'text', + text: '鏂囨湰' + }, { + value: 'select', + text: '涓嬫媺' + }, { + value: 'switch', + text: '寮�鍏�' + }] + }, + { + type: 'text', + key: 'initval', + label: '榛樿鍊�', + initVal: card.initval, + tooltip: '浣跨敤$copy鏃讹紝琛ㄧず鏂板鏃跺鍒朵笂涓�琛屼俊鎭��', + required: false + }, + { + type: 'text', + key: 'openVal', + label: '寮�鍚��', + initVal: card.openVal || '', + required: false + }, + { + type: 'text', + key: 'closeVal', + label: '鍏抽棴鍊�', + initVal: card.closeVal || '', + required: false + }, + { + type: 'text', + key: 'openText', + label: '寮�鍚彁绀�', + initVal: card.openText || '', + required: false + }, + { + type: 'text', + key: 'closeText', + label: '鍏抽棴鎻愮ず', + initVal: card.closeText || '', + required: false + }, + { + type: 'radio', + key: 'resourceType', + label: '閫夐」鏉ユ簮', + initVal: card.resourceType || '0', + required: true, + options: [{ + value: '0', + text: '鑷畾涔�' + }, { + value: '1', + text: '鏁版嵁婧�' + }] + }, + { + type: 'select', + key: 'editField', + label: '缂栬緫瀛楁', + initVal: card.editField || '', + tooltip: '褰撳�间笌鎻愮ず鏂囧瓧涓嶅悓鏃讹紝鍙澶栨坊鍔犵紪杈戝瓧娈碉紝浣滀负瀹為檯鍊肩殑褰曞叆瀛楁銆�', + allowClear: true, + required: false, + options: fields + }, + { + type: 'options', + key: 'options', + label: '閫夐」', + initVal: card.options || [], + required: true, + }, + { + type: 'codemirror', + key: 'dataSource', + label: '鏁版嵁婧�', + initVal: card.dataSource || '', + required: true, + }, + { + type: 'text', + key: 'valueField', + label: '鍊悸峰瓧娈�', + initVal: card.valueField || '', + required: true, + }, + { + type: 'text', + key: 'valueText', + label: '鏂囨湰路瀛楁', + initVal: card.valueText || '', + required: true, + }, + { + type: 'text', + key: 'orderBy', + label: '鎺掑簭路瀛楁', + initVal: card.orderBy || '', + required: false, + }, + { + type: 'select', + key: 'orderType', + label: '鎺掑簭鏂瑰紡', + initVal: card.orderType || 'asc', + options: [{ + value: 'asc', + text: Formdict['header.form.asc'] + }, { + value: 'desc', + text: Formdict['header.form.desc'] + }] + }, + { + type: 'text', + key: 'disableField', + label: '绂佺敤路瀛楁', + initVal: card.disableField || '', + tooltip: '璁剧疆绂佺敤瀛楁锛屼笖瀛楁鍊间负true鏃讹紝閫夐」涓嶅彲閫夈��', + required: false, + }, + { + type: 'radio', + key: 'dropdown', + label: '涓嬫媺瀹藉害', + initVal: card.dropdown || 'flex', + required: false, + options: [{ + value: 'flex', + text: '鑷�傚簲' + }, { + value: 'fixed', + text: '瀹氬' + }] + }, + { + type: 'radio', + key: 'required', + label: '蹇呭~', + initVal: card.required || 'false', + required: false, + options: [{ + value: 'false', + text: '鍚�' + }, { + value: 'true', + text: '鏄�' + }] + }, + { + type: 'radio', + key: 'database', + label: '鏁版嵁搴�', + initVal: card.database || 'local', + options: [{ + value: 'local', + text: '鏈湴' + }, { + value: 'sso', + text: '绯荤粺' + }] + }, + { + type: 'select', + key: 'enter', + label: '鍥炶溅鍒囨崲', + initVal: card.enter || '$next', + tooltip: '鍖呮嫭鏂囨湰鎴栨暟鍊煎洖杞︿簨浠躲�佷笅鎷夎彍鍗曢�変腑浜嬩欢銆佸紑鍏冲垏鎹簨浠躲��', + options: editCols + }, + // { + // type: 'radio', + // key: 'footEnter', + // label: '鏈鍥炶溅', + // initVal: card.footEnter || 'false', + // tooltip: '鏂板鍔熻兘浠呭湪琛ㄦ牸鍙柊澧炴椂鏈夋晥銆�', + // options: [{ + // value: 'sub', + // text: '鎻愪氦' + // }, { + // value: 'add', + // text: '鏂板' + // }, { + // value: 'false', + // text: '鏃犲姩浣�' + // }] + // }, + { type: 'number', key: 'decimal', min: 0, max: 18, - decimal: 0, + precision: 0, label: Formdict['header.form.decimal'], initVal: card.decimal || 0, - required: true + required: false + }, + { + type: 'number', + key: 'min', + label: '鏈�灏忓��', + initVal: card.min, + unlimit: true, + required: false + }, + { + type: 'number', + key: 'max', + label: '鏈�澶у��', + initVal: card.max, + unlimit: true, + required: false }, { type: 'select', @@ -224,13 +409,16 @@ 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 }, @@ -241,7 +429,10 @@ initVal: card.textFormat || 'none', options: [{ value: 'none', - text: Formdict['model.empty'] + text: '鏃�' + }, { + value: 'encryption', + text: '鍔犲瘑' }, { value: 'YYYY-MM-DD', text: 'YYYY-MM-DD' @@ -257,7 +448,6 @@ label: Formdict['header.form.prefix'], initVal: card.prefix || '', required: false, - readonly: false }, { type: 'text', @@ -265,122 +455,35 @@ label: Formdict['header.form.postfix'], initVal: card.postfix || '', required: false, - readonly: false }, { - type: 'select', - key: 'lenWidRadio', - label: '闀垮姣�', - initVal: card.lenWidRadio || '1:1', - required: true, + type: 'radio', + key: 'eval', + label: '瑙f瀽', + initVal: card.eval || 'true', + tooltip: '褰撳叕寮忓唴瀹规秹鍙婅绠楁椂璇烽�夋嫨鈥滄槸鈥濓紝褰撳叕寮忓唴瀹逛负瀛楁鎷兼帴鏃惰閫夋嫨鈥滃惁鈥濄��', + required: false, options: [ - { value: '1:1', text: '1:1' }, - { value: '4:3', text: '4:3' }, - { 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' }, + { value: 'true', text: '鏄�' }, + { value: 'false', text: '鍚�' } ] - }, - { - type: 'radio', - key: 'picSort', - label: '鍥剧墖鎺掑垪', - initVal: card.picSort || '1', - tooltip: '鍚屼竴鍗曞厓鏍煎唴锛屽惈鏈夊寮犲浘鐗囨椂鐨勫垪鏁般��', - required: false, - options: [{ - value: '1', - text: '1' - }, { - value: '2', - text: '2' - }, { - value: '3', - text: '3' - }, { - value: '4', - text: '4' - }] - }, - { - type: 'radio', - key: 'scale', - label: Formdict['header.form.clickscale'], - initVal: card.scale || 'false', - required: false, - options: [{ - value: 'true', - text: Formdict['model.true'] - }, { - value: 'false', - text: Formdict['model.false'] - }] - }, - { - type: 'radio', - key: 'perspective', - label: '瀛楁閫忚', - initVal: card.perspective || '', - options: [{ - value: '', - text: '鏃�' - }, { - value: 'linkmenu', - text: '鑿滃崟' - }, { - value: 'linkurl', - text: '閾炬帴' - }], - forbidden: appType === 'mob' - }, - { - type: appType === 'pc' ? 'select' : 'cascader', - key: 'linkmenu', - label: Formdict['model.menu'], - initVal: card.linkmenu || (appType === 'pc' ? '' : []), - required: true, - options: menulist, - forbidden: appType === 'mob' }, { type: 'textarea', - key: 'linkurl', - label: '閾炬帴鍦板潃', - initVal: card.linkurl || '', - required: true, - forbidden: appType === 'mob' + 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: 'linkfields', - label: '鍏宠仈瀛楁', - initVal: card.linkfields || [], - required: false, - options: fields, - forbidden: appType === 'mob' - }, - { - type: 'radio', - key: 'open', - label: '鎵撳紑鏂瑰紡', - initVal: card.open || 'blank', - required: false, - forbid: appType !== 'pc', - options: [ - { value: 'blank', text: '鏂扮獥鍙�' }, - { value: 'self', text: '褰撳墠绐楀彛' } - ] + key: 'linkSubField', + label: '濉厖琛ㄥ崟', + tooltip: '鍦ㄥ垏鎹㈤�夐」鏃朵細鎶婁俊鎭嚜鍔ㄥ~鍏ュ叧鑱旂殑瀛楁涓��', + initVal: card.linkSubField || [], + options: fields }, { type: 'multiselect', -- Gitblit v1.8.0