From 3bb266595fbfa9af6b97405737496ed61c6b7c55 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期二, 01 三月 2022 17:10:57 +0800
Subject: [PATCH] 2022-03-01

---
 src/templates/zshare/formconfig.jsx | 1122 ++++++++++++++++++++++++++++++++++++++++------------------
 1 files changed, 765 insertions(+), 357 deletions(-)

diff --git a/src/templates/zshare/formconfig.jsx b/src/templates/zshare/formconfig.jsx
index f73bb3e..b714e61 100644
--- a/src/templates/zshare/formconfig.jsx
+++ b/src/templates/zshare/formconfig.jsx
@@ -1,6 +1,6 @@
 import zhCN from '@/locales/zh-CN/model.js'
 import enUS from '@/locales/en-US/model.js'
-import { formRule } from '@/utils/option.js'
+import { formRule, btnClasses } from '@/utils/option.js'
 
 const Formdict = sessionStorage.getItem('lang') !== 'en-US' ? zhCN : enUS
 
@@ -288,10 +288,11 @@
  */
 export function getSearchForm (card, linkableFields) {
   let roleList = sessionStorage.getItem('sysRoles')
+  let appType = sessionStorage.getItem('appType')
   if (roleList) {
     try {
       roleList = JSON.parse(roleList)
-    } catch {
+    } catch (e) {
       roleList = []
     }
   } else {
@@ -300,10 +301,10 @@
 
   let typeOptions = []
 
-  if (sessionStorage.getItem('appType') === 'mob') {
+  if (appType === 'mob') {
     typeOptions = [{
-      value: 'text',
-      text: Formdict['model.form.text']
+      value: 'range',
+      text: '鏁板�硷紙鍖洪棿锛�'
     }, {
       value: 'checkcard',
       text: '閫夐」鍗�'
@@ -313,10 +314,10 @@
     }, {
       value: 'datemonth',
       text: Formdict['model.form.datemonth']
+    // }, {
+    //   value: 'daterange',
+    //   text: Formdict['model.form.daterange']
     }]
-    if (!['text', 'checkcard', 'date', 'datemonth'].includes(card.type)) {
-      card.type = 'text'
-    }
   } else {
     typeOptions = [{
       value: 'text',
@@ -351,23 +352,42 @@
     }]
   }
 
+  if (card.focus) {
+    if (['text', 'multiselect'].includes(card.type)) {
+      card.match = 'like'
+    } else if (['select', 'link', 'checkcard'].includes(card.type)) {
+      card.match = '='
+    } else if (card.type === 'date') {
+      card.match = '>='
+    } else if (['datemonth', 'dateweek', 'daterange', 'range'].includes(card.type)) {
+      card.match = 'between'
+    }
+  }
+
+  let options = card.options || []
+  if (['select', 'link'].includes(card.type) && card.setAll === 'true') { // 鍏煎
+    options.unshift({
+      key: 'empty',
+      Value: '',
+      Text: '鍏ㄩ儴',
+      ParentID: ''
+    })
+  }
+
   return [
     {
       type: 'text',
       key: 'label',
       label: Formdict['model.name'],
       initVal: card.label || '',
-      required: true,
-      readonly: false
+      required: true
     },
     {
       type: 'text',
       key: 'field',
       label: Formdict['model.form.field'],
       initVal: card.field || '',
-      tooltipClass: 'middle',
-      required: true,
-      readonly: false
+      required: true
     },
     {
       type: 'select',
@@ -382,21 +402,20 @@
       key: 'datefield',
       label: '鏃堕棿瀛楁',
       initVal: card.datefield || '',
-      required: true,
-      readonly: false
+      required: true
     },
     {
       type: 'text',
       key: 'initval',
       label: Formdict['header.form.initval'],
-      tooltip: '绫诲瀷涓轰笅鎷夎彍鍗曟椂锛屽垵濮嬪�煎簲涓烘暟鎹殑Value鍊硷紙浣跨敤鏁版嵁婧愭椂锛屽簲涓恒�婂�悸峰瓧娈点�嬬殑鍊硷級',
+      tooltip: '绫诲瀷涓轰笅鎷夎彍鍗曟椂锛屽垵濮嬪�煎簲涓烘暟鎹殑Value鍊硷紙浣跨敤鏁版嵁婧愭椂锛屽簲涓恒�婂�悸峰瓧娈点�嬬殑鍊硷級;绫诲瀷涓烘暟鍊硷紙鍖洪棿锛夋椂锛屽垵濮嬪�间娇鐢ㄩ�楀彿鎷兼帴锛屼緥濡� 3,10',
       initVal: card.initval,
       required: false
     },
     {
       type: 'radio',
       key: 'resourceType',
-      label: Formdict['header.form.resourceType'],
+      label: '閫夐」鏉ユ簮',
       initVal: card.resourceType || '0',
       required: true,
       options: [{
@@ -407,19 +426,19 @@
         text: Formdict['header.form.datasource']
       }]
     },
-    {
-      type: 'radio',
-      key: 'setAll',
-      label: Formdict['header.form.setAll'],
-      initVal: card.setAll || 'true',
-      options: [{
-        value: 'true',
-        text: Formdict['model.true']
-      }, {
-        value: 'false',
-        text: Formdict['model.false']
-      }]
-    },
+    // {
+    //   type: 'radio',
+    //   key: 'setAll',
+    //   label: '璁剧疆鍏ㄩ儴',
+    //   initVal: card.setAll || 'true',
+    //   options: [{
+    //     value: 'true',
+    //     text: Formdict['model.true']
+    //   }, {
+    //     value: 'false',
+    //     text: Formdict['model.false']
+    //   }]
+    // },
     {
       type: 'radio',
       key: 'display',
@@ -440,7 +459,7 @@
       min: 1,
       max: 24,
       precision: 0,
-      label: '鍗$墖瀹藉害',
+      label: '鍏冪礌瀹藉害',
       initVal: card.width || 4,
       tooltip: '鏍呮牸甯冨眬锛屾瘡琛岀瓑鍒嗕负24鍒椼��',
       required: true
@@ -448,18 +467,16 @@
     {
       type: 'text',
       key: 'cardValField',
-      label: Formdict['header.form.valueField'],
+      label: '鍊悸峰瓧娈�',
       initVal: card.cardValField || 'Value',
-      required: true,
-      readonly: false
+      required: true
     },
     {
       type: 'text',
       key: 'urlField',
       label: '鍦板潃瀛楁',
       initVal: card.urlField || '',
-      required: true,
-      readonly: false
+      required: true
     },
     {
       type: 'radio',
@@ -486,24 +503,21 @@
       key: 'fields',
       label: '瀛楁闆�',
       initVal: card.fields || [],
-      required: true,
-      readonly: false
+      required: true
     },
     {
-      type: 'textarea',
+      type: 'codemirror',
       key: 'dataSource',
       label: Formdict['header.form.datasource'],
       initVal: card.dataSource || '',
-      required: true,
-      readonly: false
+      required: true
     },
     {
       type: 'options',
       key: 'options',
       label: '閫夐」',
-      initVal: card.options || [],
-      required: true,
-      readonly: false
+      initVal: options,
+      required: true
     },
     {
       type: 'checkbox',
@@ -511,7 +525,6 @@
       label: '閫夐」',
       initVal: card.items || ['day', 'week', 'month', 'quarter', 'year', 'customized'],
       required: true,
-      readonly: false,
       options: [{
         value: 'day',
         label: '鏃�'
@@ -533,42 +546,53 @@
       }]
     },
     {
+      type: 'radio',
+      key: 'multiple',
+      label: '閫夋嫨褰㈠紡',
+      initVal: card.multiple || 'false',
+      required: true,
+      options: [{
+        value: 'false',
+        text: '鍗曢��'
+      }, {
+        value: 'true',
+        text: '澶氶��'
+      }]
+    },
+    {
       type: 'select',
       key: 'linkField',
-      label: Formdict['header.form.linkField'],
+      label: '鍏宠仈瀛楁',
       initVal: card.linkField || '',
       required: true,
-      readonly: false,
+      allowClear: true,
       options: linkableFields
     },
     {
       type: 'text',
       key: 'valueField',
-      label: Formdict['header.form.valueField'],
+      label: '鍊悸峰瓧娈�',
       initVal: card.valueField || '',
-      required: true,
-      readonly: false
+      required: true
     },
     {
       type: 'text',
       key: 'valueText',
-      label: Formdict['header.form.valueText'],
+      label: '鏂囨湰路瀛楁',
       initVal: card.valueText || '',
-      required: true,
-      readonly: false
+      required: true
     },
     {
       type: 'text',
       key: 'orderBy',
-      label: Formdict['header.form.orderBy'],
+      label: '鎺掑簭路瀛楁',
       initVal: card.orderBy || '',
-      required: false,
-      readonly: false
+      required: false
     },
     {
       type: 'select',
       key: 'orderType',
-      label: Formdict['header.form.orderType'],
+      label: '鎺掑簭鏂瑰紡',
       initVal: card.orderType || 'asc',
       options: [{
         value: 'asc',
@@ -604,14 +628,14 @@
     {
       type: 'radio',
       key: 'database',
-      label: Formdict['header.form.database'],
+      label: '鏁版嵁搴�',
       initVal: card.database || 'local',
       options: [{
         value: 'local',
-        text: Formdict['header.form.database.local']
+        text: '鏈湴'
       }, {
         value: 'sso',
-        text: Formdict['header.form.database.sso']
+        text: '绯荤粺'
       }]
     },
     {
@@ -621,22 +645,9 @@
       max: 24,
       label: Formdict['header.form.ratio'],
       tooltip: '鏍呮牸甯冨眬锛屾瘡琛岀瓑鍒嗕负24鍒椼��',
-      initVal: card.ratio,
+      initVal: card.ratio || 6,
+      forbid: appType === 'mob',
       required: false
-    },
-    {
-      type: 'radio',
-      key: 'multiple',
-      label: '鍙閫�',
-      initVal: card.multiple || 'false',
-      required: true,
-      options: [{
-        value: 'true',
-        text: '鏄�'
-      }, {
-        value: 'false',
-        text: '鍚�'
-      }]
     },
     {
       type: 'radio',
@@ -664,6 +675,20 @@
         text: Formdict['model.false']
       }]
     },
+    {
+      type: 'radio',
+      key: 'query',
+      label: '鍙備笌鏌ヨ',
+      initVal: card.query || 'true',
+      tooltip: '鏄惁浣滀负 where 鏉′欢锛屽弬涓庢暟鎹煡璇€��',
+      options: [{
+        value: 'true',
+        text: '鏄�'
+      }, {
+        value: 'false',
+        text: '鍚�'
+      }]
+    },
     // {
     //   type: 'radio',
     //   key: 'transfer',
@@ -679,16 +704,41 @@
     //   }]
     // },
     {
+      type: 'number',
+      key: 'maxValue',
+      label: '鏈�澶у��',
+      initVal: card.maxValue,
+      forbid: appType !== 'mob',
+      required: true
+    },
+    {
+      type: 'number',
+      key: 'minValue',
+      label: '鏈�灏忓��',
+      initVal: card.minValue,
+      forbid: appType !== 'mob',
+      required: true
+    },
+    {
+      type: 'number',
+      key: 'step',
+      label: '姝ラ暱',
+      initVal: card.step,
+      tooltip: '姝ラ暱鍙栧�煎繀椤诲ぇ浜� 0锛屽苟涓斿彲琚� (max - min) 鏁撮櫎',
+      forbid: appType !== 'mob',
+      required: true
+    },
+    {
       type: 'radio',
       key: 'labelShow',
-      label: '鏄剧ず鍚嶇О',
+      label: '鍚嶇О',
       initVal: card.labelShow || 'true',
       options: [{
         value: 'true',
-        text: Formdict['model.true']
+        text: '鏄剧ず'
       }, {
         value: 'false',
-        text: Formdict['model.false']
+        text: '闅愯棌'
       }]
     },
     {
@@ -696,7 +746,7 @@
       key: 'advanced',
       label: '楂樼骇鎼滅储',
       initVal: card.advanced || 'false',
-      forbid: sessionStorage.getItem('appType') === 'mob',
+      forbid: appType === 'mob',
       options: [{
         value: 'true',
         text: Formdict['model.true']
@@ -707,11 +757,25 @@
     },
     {
       type: 'radio',
+      key: 'dropdown',
+      label: '涓嬫媺妗�',
+      initVal: card.dropdown || 'true',
+      forbid: appType === 'mob',
+      options: [{
+        value: 'true',
+        text: '瀹氬'
+      }, {
+        value: 'false',
+        text: '鑷�傚簲'
+      }]
+    },
+    {
+      type: 'radio',
       key: 'inputType',
       label: '杈撳叆鏍峰紡',
       initVal: card.inputType || 'input',
+      tooltip: '浣跨敤楂樼骇鎼滅储鏃舵棤鏁堛��',
       required: false,
-      forbid: sessionStorage.getItem('appType') === null,
       options: [{
         value: 'input',
         text: '杈撳叆妗�'
@@ -725,6 +789,7 @@
       key: 'backgroundColor',
       label: '鑳屾櫙鑹�',
       initVal: card.backgroundColor || '',
+      tooltip: '璁剧疆鑳屾櫙鑹插悗锛岄�変腑鏁堟灉鐢辫儗鏅鑹叉帶鍒躲��',
       required: false
     },
     {
@@ -748,12 +813,11 @@
 /**
  * @description 鑾峰彇鎸夐挳琛ㄥ崟閰嶇疆淇℃伅
  * @param {*} card           缂栬緫鎸夐挳
- * @param {*} functip        鐢熸垚瀛樺偍杩囩▼鎻愮ず
  * @param {*} config         椤甸潰閰嶇疆
  * @param {*} usefulFields   瀛樺偍杩囩▼鍙敤鐨勫紑濮嬪瓧娈�
  * @param {*} type           鎸夐挳绫诲瀷锛岀敤浜庡尯鍒嗗彲閫夌殑鎵撳紑鏂瑰紡
  */
-export function getActionForm (card, functip, config, usefulFields, type, menulist = [], printTemps = []) {
+export function getActionForm (card, config, usefulFields, type, menulist = [], printTemps = [], tabs = []) {
   let columns = (config.columns || []).filter(col => col.field)
 
   let opentypes = [
@@ -787,23 +851,19 @@
     }
   ]
 
-  // 鏍囩绫诲瀷锛屼富琛ㄦ墠浼氬瓨鍦ㄨ〃鍗曟爣绛鹃〉
-  let tabTems = [{
-    value: 'FormTab',
-    text: '琛ㄥ崟鏍囩椤�'
-  }]
-  if (type === 'subtable') {
-    tabTems = []
-  }
-
   if (card.execSuccess === 'view' || card.execSuccess === 'refresh') { // refresh涓鸿〃鍗曟爣绛鹃〉
     card.execSuccess = 'grid'
   }
-  if (card.execError === 'view' || card.execSuccess === 'refresh') {
+  if (card.execError === 'view' || card.execError === 'refresh') {
     card.execError = 'grid'
   }
   if (card.popClose === 'view') {
     card.popClose = 'grid'
+  }
+
+  if (card.OpenType === 'outerpage') {
+    card.pageTemplate = 'custom'
+    card.OpenType = 'innerpage'
   }
 
   let refresh = []
@@ -814,11 +874,18 @@
     }
     refresh.push({
       value: 'maingrid',
-      text: Formdict['header.form.refresh.maingrid']
+      text: '鍒锋柊涓昏〃锛堣锛�'
     }, {
       value: 'equaltab',
-      text: Formdict['header.form.refresh.equaltab']
+      text: '鍒锋柊鍚岀骇鏍囩'
     })
+  }
+
+  if (card.OpenType === 'blank') {
+    card.OpenType = 'tab'
+  }
+  if (!card.control && card.controlField) {
+    card.control = 'disabled'
   }
 
   return [
@@ -831,17 +898,20 @@
       options: opentypes
     },
     {
-      type: 'radio',
+      type: 'select',
       key: 'funcType',
-      label: Formdict['header.form.funcType'],
+      label: '鍔熻兘绫诲瀷',
       initVal: card.funcType || '',
       required: true,
       options: [{
         value: 'changeuser',
-        text: Formdict['header.form.func.changeuser']
+        text: '鍒囨崲鐢ㄦ埛'
       }, {
         value: 'print',
         text: '鏍囩鎵撳嵃'
+      }, {
+        value: 'closetab',
+        text: '鏍囩鍏抽棴'
       }]
     },
     {
@@ -911,30 +981,24 @@
       key: 'innerFunc',
       label: Formdict['header.form.innerFunc'],
       initVal: card.innerFunc || '',
-      tooltip: functip,
+      tooltip: `鍑芥暟鍚嶇О闇�浠�${usefulFields.join(', ')}绛夊瓧绗﹀紑濮嬨�俙,
       fields: usefulFields,
-      tooltipClass: 'middle',
       required: card.intertype === 'inner',
       readonly: false
     },
-    // {
-    //   type: 'select',
-    //   key: 'tabType',
-    //   label: Formdict['model.form.tabType'],
-    //   initVal: card.tabType || 'SubTable',
-    //   required: true,
-    //   options: [{
-    //     value: 'SubTable',
-    //     text: Formdict['model.menu.tab.subtable']
-    //   }]
-    // },
     {
       type: 'select',
       key: 'linkTab',
       label: '鍏宠仈鏍囩',
       initVal: card.linkTab || '',
       required: false,
-      options: []
+      options: [
+        {
+          value: '',
+          text: '鏂板缓'
+        },
+        ...tabs
+      ]
     },
     {
       type: 'select',
@@ -1074,7 +1138,7 @@
     {
       type: 'radio',
       key: 'position',
-      label: Formdict['header.form.position'],
+      label: '鏄剧ず浣嶇疆',
       initVal: card.position || 'toolbar',
       required: true,
       options: [{
@@ -1094,20 +1158,6 @@
       options: []
     },
     {
-      type: 'select',
-      key: 'tabTemplate',
-      label: '鏍囩绫诲瀷',
-      initVal: card.tabTemplate || '',
-      required: true,
-      options: [
-        {
-          value: 'ThdMenu',
-          text: Formdict['model.menu.level3']
-        },
-        ...tabTems
-      ]
-    },
-    {
       type: 'cascader',
       key: 'linkmenu',
       label: Formdict['model.form.linkmenu'],
@@ -1116,45 +1166,29 @@
       options: menulist
     },
     {
-      type: 'radio',
-      key: 'afterExecSuccess',
-      label: Formdict['header.form.afterExecSuccess'],
-      initVal: card.afterExecSuccess || 'close',
-      required: true,
-      options: [{
-        value: 'close',
-        text: Formdict['model.close']
-      }, {
-        value: 'notclose',
-        text: Formdict['model.notclose']
-      }]
-    },
-    {
-      type: 'radio',
-      key: 'afterExecError',
-      label: Formdict['header.form.afterExecError'],
-      initVal: card.afterExecError || 'notclose',
-      required: true,
-      options: [{
-        value: 'close',
-        text: Formdict['model.close']
-      }, {
-        value: 'notclose',
-        text: Formdict['model.notclose']
-      }]
+      type: 'cascader',
+      key: 'refreshTab',
+      label: '鍒锋柊鏍囩',
+      initVal: card.refreshTab || [],
+      required: false,
+      options: menulist
     },
     {
       type: refresh.length === 0 ? 'radio' : 'select',
       key: 'execSuccess',
       label: Formdict['model.form.afterSuccess'],
-      initVal: card.execSuccess || 'never',
+      initVal: card.execSuccess || 'grid',
+      tooltip: '閫夋嫨鍒锋柊琛屾椂锛屽鏋滈�夋嫨澶氭潯鏁版嵁浼氬埛鏂拌〃鏍笺��',
       required: true,
       options: [{
         value: 'never',
-        text: Formdict['header.form.refresh.never']
+        text: '涓嶅埛鏂�'
       }, {
         value: 'grid',
-        text: Formdict['header.form.refresh.grid']
+        text: '鍒锋柊琛ㄦ牸'
+      }, {
+        value: 'line',
+        text: '鍒锋柊琛�'
       },
       ...refresh]
     },
@@ -1163,13 +1197,17 @@
       key: 'execError',
       label: Formdict['model.form.afterError'],
       initVal: card.execError || 'never',
+      tooltip: '閫夋嫨鍒锋柊琛屾椂锛屽鏋滈�夋嫨澶氭潯鏁版嵁浼氬埛鏂拌〃鏍笺��',
       required: true,
       options: [{
         value: 'never',
-        text: Formdict['header.form.refresh.never']
+        text: '涓嶅埛鏂�'
       }, {
         value: 'grid',
-        text: Formdict['header.form.refresh.grid']
+        text: '鍒锋柊琛ㄦ牸'
+      }, {
+        value: 'line',
+        text: '鍒锋柊琛�'
       },
       ...refresh]
     },
@@ -1181,10 +1219,10 @@
       required: true,
       options: [{
         value: 'never',
-        text: Formdict['header.form.refresh.never']
+        text: '涓嶅埛鏂�'
       }, {
         value: 'grid',
-        text: Formdict['header.form.refresh.grid']
+        text: '鍒锋柊琛ㄦ牸'
       },
       ...refresh]
     },
@@ -1203,12 +1241,11 @@
       }]
     },
     {
-      type: 'select',
+      type: 'icon',
       key: 'icon',
       label: Formdict['model.icon'],
       initVal: card.icon,
-      required: false,
-      options: []
+      required: false
     },
     {
       type: 'select',
@@ -1216,7 +1253,32 @@
       label: Formdict['model.form.color'],
       initVal: card.class,
       required: false,
-      options: []
+      options: btnClasses
+    },
+    {
+      type: 'cascader',
+      key: 'openmenu',
+      label: '鎵撳紑鑿滃崟',
+      initVal: card.openmenu || [],
+      tooltip: '鎵ц鎴愬姛鍚庨渶瑕佹墦寮�鐨勮彍鍗曘��',
+      required: false,
+      options: menulist
+    },
+    {
+      type: 'text',
+      key: 'output',
+      label: '杩斿洖鍊�',
+      tooltip: '鎵ц鎴愬姛鍚庣殑杩斿洖鍊笺��',
+      initVal: card.output || '',
+      required: false
+    },
+    {
+      type: 'text',
+      key: 'tipTitle',
+      label: '纭鎻愮ず',
+      initVal: card.tipTitle || '',
+      tooltip: '娉細寮圭獥锛堣〃鍗曪級鍦ㄦ樉绀轰负鏄惁妗嗘椂鏈夋晥銆�',
+      required: false
     },
     {
       type: 'radio',
@@ -1242,7 +1304,7 @@
     {
       type: 'radio',
       key: 'pagination',
-      label: Formdict['header.form.pagination'],
+      label: '鍒嗛〉',
       initVal: card.pagination || 'false',
       required: false,
       options: [{
@@ -1268,22 +1330,108 @@
       }]
     },
     {
+      type: 'radio',
+      key: 'display',
+      label: '鏄剧ず鏂瑰紡',
+      initVal: card.display || 'modal',
+      required: true,
+      options: [{
+        value: 'modal',
+        text: '妯℃�佹'
+      }, {
+        value: 'drawer',
+        text: '鎶藉眽'
+      }]
+    },
+    {
+      type: 'number',
+      key: 'ratio',
+      min: 1,
+      max: 3000,
+      precision: 0,
+      label: '姣斾緥',
+      initVal: card.ratio || 85,
+      tooltip: '灏忎簬100涓哄搴︼紙鎴栭珮搴︼級鐧惧垎姣旓紝澶т簬100涓哄儚绱犲�笺��',
+      required: true
+    },
+    {
+      type: 'radio',
+      key: 'placement',
+      label: '鎶藉眽鏂瑰悜',
+      initVal: card.placement || 'right',
+      required: false,
+      options: [{
+        value: 'right',
+        text: '鍙充晶'
+      }, {
+        value: 'left',
+        text: '宸︿晶'
+      }, {
+        value: 'top',
+        text: '涓婁晶'
+      }, {
+        value: 'bottom',
+        text: '涓嬩晶'
+      }]
+    },
+    {
+      type: 'radio',
+      key: 'clickouter',
+      label: '鐐瑰嚮钂欏眰',
+      initVal: card.clickouter || 'unclose',
+      required: false,
+      options: [{
+        value: 'unclose',
+        text: '涓嶅叧闂�'
+      }, {
+        value: 'close',
+        text: '鍏抽棴'
+      }]
+    },
+    {
+      type: 'text',
+      key: 'preFunc',
+      label: '鍓嶇疆鍑芥暟',
+      initVal: card.preFunc || '',
+      tooltip: `鍑芥暟鍚嶇О闇�浠�${usefulFields.join(', ')}绛夊瓧绗﹀紑濮嬶紱鍓嶇疆鍑芥暟鎵ц瀹屾垚鍚庯紝缁撴灉浼氫紶鍏ュ唴閮ㄥ嚱鏁颁腑锛屾鏃跺唴閮ㄥ嚱鏁颁細寮傛鎵ц锛涘綋鍓嶇疆鍑芥暟杩斿洖涓璄rrCode绛変簬-1鏃讹紝灏嗕笉鍐嶆墽琛屽唴閮ㄥ嚱鏁般�俙,
+      fields: usefulFields,
+      required: false,
+      readonly: false
+    },
+    {
+      type: 'radio',
+      key: 'control',
+      label: '鎸夐挳鎺у埗',
+      initVal: card.control || '',
+      required: false,
+      options: [{
+        value: '',
+        text: '鏃�'
+      }, {
+        value: 'disabled',
+        text: '绂佺敤'
+      }, {
+        value: 'hidden',
+        text: '闅愯棌'
+      }]
+    },
+    {
       type: 'select',
       key: 'controlField',
       label: '鎺у埗瀛楁',
-      tooltip: '绂佺敤鎺у埗瀛楁锛屽彲鏍规嵁鏁版嵁鎺у埗鎸夐挳鏄惁绂佺敤銆�',
+      tooltip: '鎺у埗瀛楁锛屽彲鏍规嵁鏁版嵁鎺у埗鎸夐挳鐨勯殣钘忔垨绂佺敤銆�',
       initVal: card.controlField || '',
-      required: false,
-      options: [{label: '鏃�', field: ''}, ...columns]
+      required: true,
+      options: columns
     },
     {
       type: 'text',
       key: 'controlVal',
       label: '鎺у埗鍊�',
-      tooltip: '褰撻�夋嫨鎺у埗瀛楁锛屼笖瀛楁鍊间笌鎺у埗鍊肩浉绛夋椂锛屾寜閽細绂佺敤锛屽涓�肩敤閫楀彿鍒嗛殧銆�',
+      tooltip: '褰撻�夋嫨鎺у埗瀛楁锛屼笖瀛楁鍊间笌鎺у埗鍊肩浉绛夋椂锛屾寜閽細闅愯棌鎴栫鐢紝澶氫釜鍊肩敤閫楀彿鍒嗛殧銆�',
       initVal: card.controlVal || '',
       required: false
-    }
+    },
   ]
 }
 
@@ -1297,7 +1445,7 @@
   if (roleList) {
     try {
       roleList = JSON.parse(roleList)
-    } catch {
+    } catch (e) {
       roleList = []
     }
   } else {
@@ -1484,7 +1632,7 @@
         text: Formdict['model.empty']
       }, {
         value: 'thdSeparator',
-        text: Formdict['header.form.thdSeparator']
+        text: '鍗冨垎浣�'
       }, {
         value: 'percent',
         text: '鐧惧垎姣�'
@@ -1543,8 +1691,8 @@
     {
       type: 'radio',
       key: 'scale',
-      label: Formdict['header.form.clickscale'],
-      initVal: card.scale || 'false',
+      label: '鐐瑰嚮缂╂斁',
+      initVal: card.scale || 'true',
       required: false,
       options: [{
         value: 'true',
@@ -1616,7 +1764,7 @@
   if (roleList) {
     try {
       roleList = JSON.parse(roleList)
-    } catch {
+    } catch (e) {
       roleList = []
     }
   } else {
@@ -1824,8 +1972,8 @@
       readonly: !(setting.laypage === 'false'),
       forbid: !['line', 'bar'].includes(card.chartType),
       options: [
-        { value: 'query', text: Formdict['header.form.query'] },
-        { value: 'statistics', text: Formdict['header.form.statistics'] }
+        { value: 'query', text: '鏌ヨ' },
+        { value: 'statistics', text: '缁熻' }
       ]
     },
     {
@@ -2063,9 +2211,8 @@
  * @param {*} tabfields       // 鍙垏鎹㈣〃鍗�
  * @param {*} linkableFields  // 鍙叧鑱旇〃鍗�
  * @param {*} linksupFields   // 涓婄骇琛ㄥ崟
- * @param {*} subtable        // 鏄惁涓哄瓙琛ㄨ〃鍗�
  */
-export function getModalForm (card, inputfields = [], tabfields = [], linkableFields, linksupFields, subtable = false) {
+export function getModalForm (card, inputfields = [], tabfields = [], linkableFields, linksupFields) {
   let appType = sessionStorage.getItem('appType')
   let roleList = sessionStorage.getItem('sysRoles')
   if (roleList) {
@@ -2078,7 +2225,7 @@
           label: role.text
         }
       })
-    } catch {
+    } catch (e) {
       roleList = []
     }
   } else {
@@ -2128,6 +2275,9 @@
     value: 'textarea',
     text: Formdict['model.form.textarea']
   }, {
+    value: 'rate',
+    text: '璇勫垎'
+  }, {
     value: 'color',
     text: Formdict['model.form.color']
   }, {
@@ -2142,6 +2292,9 @@
   }, {
     value: 'split',
     text: '鍒嗛殧绾�'
+  }, {
+    value: 'linkMain',
+    text: '鍏宠仈涓昏〃'
   }]
 
   let _fieldlength = 50
@@ -2187,6 +2340,9 @@
       value: 'textarea',
       text: Formdict['model.form.textarea']
     }, {
+      value: 'rate',
+      text: '璇勫垎'
+    }, {
       value: 'funcvar',
       text: Formdict['header.form.funcvar']
     }, {
@@ -2195,18 +2351,37 @@
     }, {
       value: 'split',
       text: '鍒嗛殧绾�'
-    }]
-  } else if (subtable) {
-    _openType.push({
+    }, {
       value: 'linkMain',
-      text: Formdict['header.form.linkMain']
-    })
+      text: '鍏宠仈涓昏〃'
+    }]
   }
 
   if (['fileupload', 'multiselect', 'checkbox'].includes(card.type)) {
     _fieldlength = 512
   } else if (['textarea', 'brafteditor'].includes(card.type)) {
     _fieldlength = 8000
+  }
+
+  let options = card.options || []
+  if (['select', 'radio', 'link'].includes(card.type) && card.setAll === 'true') { // 鍏煎
+    options.unshift({
+      key: 'empty',
+      Value: '',
+      Text: card.emptyText || '绌�',
+      ParentID: ''
+    })
+  }
+
+  let initval = card.initval || ''
+  if (card.type === 'switch') {
+    initval = card.initval === true
+  } else if (card.type === 'number') {
+    initval = card.initval || 0
+  }
+
+  if (appType === 'mob' && ![24, 12, 8, 6].includes(card.span)) {
+    card.span = 24
   }
 
   return [
@@ -2238,8 +2413,7 @@
       type: 'text',
       key: 'initval',
       label: Formdict['header.form.initval'],
-      tooltip: '涓嬫媺澶氶�変笌澶氶�夋锛屾坊鍔犲涓垵濮嬪�艰浣跨敤鈥�,鈥濆彿鍒嗛殧銆傛敞锛氫笅鎷夐�夋嫨銆佽仈鍔ㄨ彍鍗曟垨鍗曢�夋涓�$first琛ㄧず閫夋嫨绗竴椤�',
-      initVal: card.initval || '',
+      initVal: initval,
       required: false
     },
     {
@@ -2269,21 +2443,19 @@
       key: 'openText',
       label: '寮�鍚彁绀�',
       initVal: card.openText || '',
-      required: false,
-      forbid: appType === 'mob'
+      required: false
     },
     {
       type: 'text',
       key: 'closeText',
       label: '鍏抽棴鎻愮ず',
       initVal: card.closeText || '',
-      required: false,
-      forbid: appType === 'mob'
+      required: false
     },
     {
       type: 'radio',
       key: 'resourceType',
-      label: Formdict['header.form.resourceType'],
+      label: '閫夐」鏉ユ簮',
       initVal: card.resourceType || '0',
       required: true,
       options: [{
@@ -2314,7 +2486,7 @@
       min: 1,
       max: 24,
       precision: 0,
-      label: '鍗$墖瀹藉害',
+      label: '鍏冪礌瀹藉害',
       initVal: card.width || 4,
       tooltip: '鏍呮牸甯冨眬锛屾瘡琛岀瓑鍒嗕负24鍒椼��',
       required: true
@@ -2322,7 +2494,7 @@
     {
       type: 'text',
       key: 'cardValField',
-      label: Formdict['header.form.valueField'],
+      label: '鍊悸峰瓧娈�',
       initVal: card.cardValField || 'Value',
       required: true,
       readonly: false
@@ -2355,19 +2527,19 @@
         text: '16:9'
       }]
     },
-    {
-      type: 'radio',
-      key: 'setAll',
-      label: '璁剧疆绌哄��',
-      initVal: card.setAll || 'false',
-      options: [{
-        value: 'true',
-        text: Formdict['model.true']
-      }, {
-        value: 'false',
-        text: Formdict['model.false']
-      }]
-    },
+    // {
+    //   type: 'radio',
+    //   key: 'setAll',
+    //   label: '璁剧疆绌哄��',
+    //   initVal: card.setAll || 'false',
+    //   options: [{
+    //     value: 'true',
+    //     text: Formdict['model.true']
+    //   }, {
+    //     value: 'false',
+    //     text: Formdict['model.false']
+    //   }]
+    // },
     {
       type: 'fields',
       key: 'fields',
@@ -2380,7 +2552,7 @@
       type: 'options',
       key: 'options',
       label: '閫夐」',
-      initVal: card.options || [],
+      initVal: options,
       required: true,
       readonly: false
     },
@@ -2393,18 +2565,33 @@
       readonly: false
     },
     {
+      type: 'radio',
+      key: 'multiple',
+      label: '閫夋嫨褰㈠紡',
+      initVal: card.multiple || 'false',
+      required: true,
+      options: [{
+        value: 'false',
+        text: '鍗曢��'
+      }, {
+        value: 'true',
+        text: '澶氶��'
+      }]
+    },
+    {
       type: 'select',
       key: 'linkField',
-      label: Formdict['header.form.linkField'],
+      label: '鍏宠仈瀛楁',
       initVal: card.linkField || '',
       required: true,
       readonly: false,
+      allowClear: true,
       options: linkableFields
     },
     {
       type: 'text',
       key: 'valueField',
-      label: Formdict['header.form.valueField'],
+      label: '鍊悸峰瓧娈�',
       initVal: card.valueField || '',
       required: true,
       readonly: false
@@ -2412,7 +2599,7 @@
     {
       type: 'text',
       key: 'valueText',
-      label: Formdict['header.form.valueText'],
+      label: '鏂囨湰路瀛楁',
       initVal: card.valueText || '',
       required: true,
       readonly: false
@@ -2420,7 +2607,7 @@
     {
       type: 'text',
       key: 'orderBy',
-      label: Formdict['header.form.orderBy'],
+      label: '鎺掑簭路瀛楁',
       initVal: card.orderBy || '',
       required: false,
       readonly: false
@@ -2428,7 +2615,7 @@
     {
       type: 'select',
       key: 'orderType',
-      label: Formdict['header.form.orderType'],
+      label: '鎺掑簭鏂瑰紡',
       initVal: card.orderType || 'asc',
       options: [{
         value: 'asc',
@@ -2439,18 +2626,13 @@
       }]
     },
     {
-      type: 'radio',
-      key: 'multiple',
-      label: '鍙閫�',
-      initVal: card.multiple || 'false',
-      required: true,
-      options: [{
-        value: 'true',
-        text: '鏄�'
-      }, {
-        value: 'false',
-        text: '鍚�'
-      }]
+      type: 'text',
+      key: 'disableField',
+      label: '绂佺敤路瀛楁',
+      initVal: card.disableField || '',
+      tooltip: '璁剧疆绂佺敤瀛楁锛屼笖瀛楁鍊间负true鏃讹紝閫夐」涓嶅彲閫夈��',
+      required: false,
+      readonly: false
     },
     {
       type: 'number',
@@ -2477,13 +2659,113 @@
       required: false
     },
     {
+      type: 'select',
+      key: 'minDate',
+      label: '鏈�灏忓��',
+      initVal: card.minDate || '',
+      required: false,
+      options: [{
+        value: '',
+        text: '鏃�'
+      }, {
+        value: '0',
+        text: '褰撳ぉ'
+      }, {
+        value: '1',
+        text: '鍚庝竴澶�'
+      }, {
+        value: '2',
+        text: '鍚庝袱澶�'
+      }, {
+        value: '3',
+        text: '鍚庝笁澶�'
+      }, {
+        value: '7',
+        text: '鍚庝竷澶�'
+      }, {
+        value: '30',
+        text: '鍚�30澶�'
+      }, {
+        value: '90',
+        text: '鍚�90澶�'
+      }, {
+        value: '-1',
+        text: '鍓嶄竴澶�'
+      }, {
+        value: '-2',
+        text: '鍓嶄袱澶�'
+      }, {
+        value: '-3',
+        text: '鍓嶄笁澶�'
+      }, {
+        value: '-7',
+        text: '鍓嶄竷澶�'
+      }, {
+        value: '-30',
+        text: '鍓�30澶�'
+      }, {
+        value: '-90',
+        text: '鍓�90澶�'
+      }]
+    },
+    {
+      type: 'select',
+      key: 'maxDate',
+      label: '鏈�澶у��',
+      initVal: card.maxDate || '',
+      required: false,
+      options: [{
+        value: '',
+        text: '鏃�'
+      }, {
+        value: '0',
+        text: '褰撳ぉ'
+      }, {
+        value: '1',
+        text: '鍚庝竴澶�'
+      }, {
+        value: '2',
+        text: '鍚庝袱澶�'
+      }, {
+        value: '3',
+        text: '鍚庝笁澶�'
+      }, {
+        value: '7',
+        text: '鍚庝竷澶�'
+      }, {
+        value: '30',
+        text: '鍚�30澶�'
+      }, {
+        value: '90',
+        text: '鍚�90澶�'
+      }, {
+        value: '-1',
+        text: '鍓嶄竴澶�'
+      }, {
+        value: '-2',
+        text: '鍓嶄袱澶�'
+      }, {
+        value: '-3',
+        text: '鍓嶄笁澶�'
+      }, {
+        value: '-7',
+        text: '鍓嶄竷澶�'
+      }, {
+        value: '-30',
+        text: '鍓�30澶�'
+      }, {
+        value: '-90',
+        text: '鍓�90澶�'
+      }]
+    },
+    {
       type: 'number',
       key: 'fieldlength',
       min: 1,
-      max: 1000000,
+      max: 100000,
       precision: 0,
       label: Formdict['model.form.field'] + Formdict['model.length'],
-      tooltip: '鏂囨湰銆佷笅鎷夋銆佹棩鏈熺瓑瀛楁榛樿闀垮害涓�50锛屽琛屾枃鏈笌鏂囦欢涓婁紶瀛楁榛樿闀垮害涓�512',
+      // tooltip: '鏂囨湰銆佷笅鎷夋銆佹棩鏈熺瓑瀛楁榛樿闀垮害涓�50锛屽琛屾枃鏈笌鏂囦欢涓婁紶瀛楁榛樿闀垮害涓�512',
       initVal: card.fieldlength || _fieldlength,
       required: false
     },
@@ -2493,7 +2775,7 @@
       min: 1,
       max: 100,
       precision: 0,
-      label: appType === 'mob' ? '琛屾暟' : Formdict['header.form.maxRows'],
+      label: appType === 'mob' ? '琛屾暟' : '鏈�澶ц鏁�',
       tooltip: appType === 'mob' ? '琛屾暟涓虹┖鏃讹紝楂樺害鑷�傚簲' : '',
       initVal: card.maxRows || (appType === 'mob' ? '' : 6),
       required: false
@@ -2501,7 +2783,7 @@
     {
       type: 'select',
       key: 'regular',
-      label: Formdict['header.form.regular'],
+      label: '姝e垯鏍¢獙',
       initVal: card.regular || '',
       options: [{
         value: '',
@@ -2514,24 +2796,30 @@
         text: Formdict['header.form.letter']
       }, {
         value: 'letter&number',
-        text: Formdict['header.form.letter&number']
+        text: '瀛楁瘝+鏁板瓧'
+      }, {
+        value: 'phone',
+        text: '鎵嬫満鍙�'
       }]
     },
     {
       type: 'select',
       key: 'fileType',
       label: '鏄剧ず鏂瑰紡',
-      initVal: card.fileType || (appType === 'mob' ? 'picture-card' : 'text'),
+      initVal: card.fileType || 'text',
       options: [{
         value: 'text',
         text: '鏂囦欢'
-      }, {
+      },
+      {
         value: 'picture',
         text: '鍥炬枃淇℃伅'
-      }, {
+      },
+      {
         value: 'picture-card',
         text: '鍥剧墖鍗�'
-      }]
+      }],
+      forbid: appType === 'mob'
     },
     {
       type: 'number',
@@ -2546,21 +2834,21 @@
     },
     {
       type: 'radio',
-      key: 'hidelabel',
-      label: '闅愯棌鍚嶇О',
-      initVal: card.hidelabel || 'false',
+      key: 'allowHalf',
+      label: '鍗婇��',
+      initVal: card.allowHalf || 'false',
       options: [{
         value: 'true',
-        text: Formdict['model.true']
+        text: '鏀寔'
       }, {
         value: 'false',
-        text: Formdict['model.false']
+        text: '涓嶆敮鎸�'
       }]
     },
     {
       type: 'radio',
       key: 'readonly',
-      label: Formdict['header.form.readonly'],
+      label: '鍙',
       initVal: card.readonly || 'false',
       options: [{
         value: 'true',
@@ -2599,14 +2887,14 @@
     {
       type: 'radio',
       key: 'database',
-      label: Formdict['header.form.database'],
+      label: '鏁版嵁搴�',
       initVal: card.database || 'local',
       options: [{
         value: 'local',
-        text: Formdict['header.form.database.local']
+        text: '鏈湴'
       }, {
         value: 'sso',
-        text: Formdict['header.form.database.sso']
+        text: '绯荤粺'
       }]
     },
     {
@@ -2615,11 +2903,11 @@
       label: '鍏夋爣',
       initVal: card.cursor || 'left',
       options: [{
-        value: 'right',
-        text: '鍙冲榻�'
-      }, {
         value: 'left',
         text: '宸﹀榻�'
+      }, {
+        value: 'right',
+        text: '鍙冲榻�'
       }],
       forbid: appType !== 'mob'
     },
@@ -2643,8 +2931,8 @@
     {
       type: 'radio',
       key: 'readin',
-      label: Formdict['header.form.readin'],
-      tooltip: Formdict['header.form.readin.tooltip'],
+      label: '鑷姩濉厖',
+      tooltip: '鏄惁灏嗚〃鏍奸�変腑鐨勬暟鎹嚜鍔ㄥ~鍏呭埌琛ㄥ崟锛堝瓧娈电浉鍚岋級',
       initVal: card.readin || 'true',
       options: [{
         value: 'true',
@@ -2652,6 +2940,9 @@
       }, {
         value: 'false',
         text: Formdict['model.false']
+      }, {
+        value: 'top',
+        text: '棣栬'
       }]
     },
     {
@@ -2669,10 +2960,70 @@
       }]
     },
     {
+      type: 'number',
+      min: 1,
+      max: 100,
+      precision: 0,
+      key: 'rateCount',
+      label: '鎬绘暟',
+      initVal: card.rateCount || 5,
+      tooltip: '榛樿鍊间负5銆�',
+      required: false
+    },
+    {
+      type: 'icon',
+      key: 'character',
+      label: '鑷畾涔夊浘鏍�',
+      initVal: card.character || '',
+      required: false
+    },
+    {
+      type: 'radio',
+      key: 'dropdown',
+      label: '涓嬫媺妗�',
+      initVal: card.dropdown || 'true',
+      forbid: appType === 'mob',
+      options: [{
+        value: 'true',
+        text: '瀹氬'
+      }, {
+        value: 'false',
+        text: '鑷�傚簲'
+      }]
+    },
+    {
+      type: 'radio',
+      key: 'hidelabel',
+      label: '闅愯棌鍚嶇О',
+      initVal: card.hidelabel || 'false',
+      options: [{
+        value: 'true',
+        text: Formdict['model.true']
+      }, {
+        value: 'false',
+        text: Formdict['model.false']
+      }]
+    },
+    {
+      type: 'radio',
+      key: 'arrange',
+      label: '鍏冪礌鎺掑垪',
+      initVal: card.arrange || 'adaptive',
+      forbid: appType !== 'mob',
+      options: [{
+        value: 'line',
+        text: '鏁磋'
+      }, {
+        value: 'adaptive',
+        text: '鑷�傚簲'
+      }]
+    },
+    {
       type: 'color',
       key: 'backgroundColor',
       label: '鑳屾櫙鑹�',
       initVal: card.backgroundColor || '',
+      tooltip: '璁剧疆鑳屾櫙鑹插悗锛岄�変腑鏁堟灉鐢辫儗鏅鑹叉帶鍒躲��',
       required: false
     },
     {
@@ -2696,43 +3047,90 @@
         text: 'nvarchar(50)'
       }]
     },
+    // {
+    //   type: 'radio',
+    //   key: 'mode',
+    //   label: '妯″紡',
+    //   initVal: card.mode || 'picker',
+    //   options: [{
+    //     value: 'picker',
+    //     text: '閫夋嫨鍣�'
+    //   }, {
+    //     value: 'calendar',
+    //     text: '鏃ュ巻'
+    //   }],
+    //   forbid: appType !== 'mob'
+    // },
     {
       type: 'radio',
-      key: 'mode',
-      label: '妯″紡',
-      initVal: card.mode || 'picker',
+      key: 'encryption',
+      label: '鍔犲瘑浼犺緭',
+      initVal: card.type === 'brafteditor' ? (card.encryption || 'true') : (card.encryption || 'false'),
       options: [{
-        value: 'picker',
-        text: '閫夋嫨鍣�'
+        value: 'true',
+        text: Formdict['model.true']
       }, {
-        value: 'calendar',
-        text: '鏃ュ巻'
+        value: 'false',
+        text: Formdict['model.false']
+      }]
+    },
+    {
+      type: 'radio',
+      key: 'interception',
+      label: '鎴彇绌烘牸',
+      initVal: card.interception || 'true',
+      tooltip: '鎻愪氦鏃讹紝鏄惁鎴彇棣栧熬鐨勭┖鐧藉瓧绗︺��',
+      options: [{
+        value: 'true',
+        text: Formdict['model.true']
+      }, {
+        value: 'false',
+        text: Formdict['model.false']
+      }]
+    },
+    {
+      type: 'radio',
+      key: 'splitline',
+      label: '鍒嗗壊绾�',
+      initVal: card.splitline || 'true',
+      forbid: appType !== 'mob',
+      options: [{
+        value: 'true',
+        text: '鏄剧ず'
+      }, {
+        value: 'false',
+        text: '闅愯棌'
+      }]
+    },
+    {
+      type: 'radio',
+      key: 'place',
+      label: '鎺掑垪',
+      initVal: card.place || 'left_right',
+      tooltip: '鎻愮ず鏂囧瓧涓庤緭鍏ユ鐨勪綅缃叧绯汇��',
+      forbid: appType !== 'mob',
+      options: [{
+        value: 'left_right',
+        text: '宸﹀彸'
+      }, {
+        value: 'up_down',
+        text: '涓婁笅'
+      }]
+    },
+    {
+      type: 'radio',
+      key: 'count',
+      label: '璁℃暟鍔熻兘',
+      initVal: card.count || 'false',
+      tooltip: '鏄剧ず杈撳叆鐨勫瓧绗︽暟锛岃缃鏁版椂鐢熸晥锛屾敞锛氬姞瀵嗕紶杈撴椂鏈�澶у�间笌瀛楁闀垮害涓嶇瓑銆�',
+      options: [{
+        value: 'true',
+        text: '寮�鍚�'
+      }, {
+        value: 'false',
+        text: '鍏抽棴'
       }],
       forbid: appType !== 'mob'
-    },
-    {
-      type: 'number',
-      key: 'span',
-      min: 1,
-      max: 24,
-      precision: 0,
-      label: '琛ㄥ崟瀹藉害',
-      initVal: card.span || (['textarea', 'hint', 'checkcard', 'brafteditor'].includes(card.type) ? 24 : 12),
-      tooltip: '鏍呮牸甯冨眬鏁磋24绛夊垎銆�',
-      required: true,
-      forbid: appType === 'mob'
-    },
-    {
-      type: 'number',
-      key: 'labelwidth',
-      min: 1,
-      max: 100,
-      precision: 1,
-      label: '鍚嶇О瀹藉害',
-      initVal: card.labelwidth || 33.3,
-      tooltip: '鍚嶇О鍗犳嵁琛ㄥ崟瀹藉害鐨勭櫨鍒嗘瘮銆傛敞锛氬瓨鍦ㄥ鍒楄〃鍗曟椂锛屽綋鍓嶈〃鍗曞鏋滄兂瑕佸崰鎹暣琛屽彲鍙傜収浠ヤ笅姣斾緥锛屼袱鍒楋紙16.2锛夈�佷笁鍒楋紙10.5锛夈�佸洓鍒楋紙7.7锛�',
-      required: true,
-      forbid: appType === 'mob'
     },
     {
       type: 'radio',
@@ -2758,6 +3156,52 @@
       initVal: card.limit || 2,
       tooltip: '鍘嬬缉璧风偣锛屽皬浜庤捣鐐瑰�肩殑鏂囦欢涓嶈繘琛屽帇缂┿��',
       required: true
+    },
+    {
+      type: 'number',
+      key: 'span',
+      min: 1,
+      max: 24,
+      precision: 0,
+      label: '琛ㄥ崟瀹藉害',
+      initVal: card.span || (['textarea', 'hint', 'checkcard', 'brafteditor'].includes(card.type) ? 24 : 12),
+      tooltip: '鏍呮牸甯冨眬鏁磋24绛夊垎銆�',
+      required: true,
+      forbid: appType === 'mob'
+    },
+    {
+      type: 'radio',
+      key: 'span',
+      label: '琛ㄥ崟瀹藉害',
+      initVal: card.span || 24,
+      tooltip: '鏍呮牸甯冨眬鏁磋24绛夊垎銆�',
+      required: true,
+      forbid: appType !== 'mob',
+      options: [{
+        value: 24,
+        text: 24
+      }, {
+        value: 12,
+        text: 12
+      }, {
+        value: 8,
+        text: 8
+      }, {
+        value: 6,
+        text: 6
+      }]
+    },
+    {
+      type: 'number',
+      key: 'labelwidth',
+      min: 1,
+      max: 100,
+      precision: 1,
+      label: '鍚嶇О瀹藉害',
+      initVal: card.labelwidth || 33.3,
+      tooltip: '鍚嶇О鍗犳嵁琛ㄥ崟瀹藉害鐨勭櫨鍒嗘瘮銆傛敞锛氬瓨鍦ㄥ鍒楄〃鍗曟椂锛屽綋鍓嶈〃鍗曞鏋滄兂瑕佸崰鎹暣琛屽彲鍙傜収浠ヤ笅姣斾緥锛屼袱鍒楋紙16.2锛夈�佷笁鍒楋紙10.5锛夈�佸洓鍒楋紙7.7锛�',
+      required: true,
+      forbid: appType === 'mob'
     },
     {
       type: 'textarea',
@@ -2788,65 +3232,26 @@
       required: false,
       readonly: false
     },
-    {
-      type: 'radio',
-      key: 'encryption',
-      label: '鍔犲瘑浼犺緭',
-      initVal: card.type === 'brafteditor' ? (card.encryption || 'true') : (card.encryption || 'false'),
-      options: [{
-        value: 'true',
-        text: Formdict['model.true']
-      }, {
-        value: 'false',
-        text: Formdict['model.false']
-      }]
-    },
-    {
-      type: 'radio',
-      key: 'interception',
-      label: '鎴彇绌烘牸',
-      initVal: card.interception || 'false',
-      tooltip: '鎻愪氦鏃讹紝鏄惁鎴彇棣栧熬鐨勭┖鐧藉瓧绗︺��',
-      options: [{
-        value: 'true',
-        text: Formdict['model.true']
-      }, {
-        value: 'false',
-        text: Formdict['model.false']
-      }]
-    },
-    {
-      type: 'radio',
-      key: 'count',
-      label: '璁℃暟鍔熻兘',
-      initVal: card.count || 'false',
-      tooltip: '鏄剧ず杈撳叆鐨勫瓧绗︽暟锛岃缃鏁版椂鐢熸晥锛屾敞锛氬姞瀵嗕紶杈撴椂鏈�澶у�间笌瀛楁闀垮害涓嶇瓑銆�',
-      options: [{
-        value: 'true',
-        text: '寮�鍚�'
-      }, {
-        value: 'false',
-        text: '鍏抽棴'
-      }],
-      forbid: appType !== 'mob'
-    },
+    
     {
       type: 'select',
       key: 'supField',
       label: '涓婄骇琛ㄥ崟',
-      tooltip: '涓婄骇琛ㄥ崟涓轰笅鎷夐�夋嫨銆佽仈鍔ㄨ彍鍗曘�佸崟閫夋鍙婂閫夋锛屾坊鍔犲悗璇ヨ〃鍗曟樉绀哄強闅愯棌灏嗗彈涓婄骇琛ㄥ崟鎺у埗锛屾敞锛氬彈鎺у叧绯诲湪璇ヨ〃鍗曢殣钘忔椂澶辨晥銆�',
+      tooltip: '璇ヨ〃鍗曟樉绀烘垨闅愯棌鍙椾笂绾ц〃鍗曟帶鍒躲��',
       initVal: card.supField || '',
       required: false,
       readonly: false,
+      allowClear: true,
       options: linksupFields
     },
     {
       type: 'text',
       key: 'supvalue',
+      max: 512,
       label: '鏄剧ず鍊�',
-      tooltip: '璇峰~鍐欐樉绀哄�硷紝鍙湁涓婄骇琛ㄥ崟鍊间笌鏄剧ず鍊肩浉鍚屾椂锛岃琛ㄥ崟鎵嶄細鏄剧ず锛屾敞锛氬涓�肩敤閫楀彿鍒嗛殧銆�',
+      tooltip: '璇峰~鍐欐樉绀哄�硷紝鍙湁涓婄骇琛ㄥ崟鍊间笌鏄剧ず鍊肩浉鍚屾椂锛岃琛ㄥ崟鎵嶄細鏄剧ず锛屾敞锛�1銆佸涓�肩敤閫楀彿鍒嗛殧锛�2銆佷笂绾ц〃鍗曞垵濮嬪�间负$first鏃舵殏鏈鐞嗐��',
       initVal: card.supvalue || '',
-      required: true,
+      required: false,
       readonly: false
     },
     {
@@ -2869,12 +3274,20 @@
     },
     {
       type: 'text',
-      key: 'emptyText',
-      label: '绌哄�兼枃鏈�',
-      tooltip: '绌哄�肩殑鎻愮ず鏂囨湰锛岄�夋嫨璁剧疆绌哄�兼椂鏈夋晥锛岄粯璁ゅ�间负銆婄┖銆嬨��',
-      initVal: card.emptyText || '',
+      key: 'placeholder',
+      label: '鎻愮ず淇℃伅',
+      tooltip: '瀛楁棰勬湡鍊肩殑鎻愮ず淇℃伅銆�',
+      initVal: card.placeholder || '',
       required: false
     },
+    // {
+    //   type: 'text',
+    //   key: 'emptyText',
+    //   label: '绌哄�兼枃鏈�',
+    //   tooltip: '绌哄�肩殑鎻愮ず鏂囨湰锛岄�夋嫨璁剧疆绌哄�兼椂鏈夋晥锛岄粯璁ゅ�间负銆婄┖銆嬨��',
+    //   initVal: card.emptyText || '',
+    //   required: false
+    // },
     {
       type: 'radio',
       key: 'enter',
@@ -2903,10 +3316,32 @@
     {
       type: 'multiselect',
       key: 'linkSubField',
-      label: Formdict['model.form.linkform'],
-      tooltip: '鍦ㄥ垏鎹㈤�夐」鏃朵細鎶婁俊鎭嚜鍔ㄥ~鍏ュ叧鑱旂殑琛ㄥ崟锛堟枃鏈垨鏁板瓧琛ㄥ崟锛変腑銆傛敞锛氫娇鐢ㄩ�夐」鍗′笖璁句负鍙閫夋椂鏃犳晥銆�',
+      label: '濉厖琛ㄥ崟',
+      tooltip: '鍦ㄥ垏鎹㈤�夐」鏃朵細鎶婁俊鎭嚜鍔ㄥ~鍏ュ叧鑱旂殑琛ㄥ崟锛堟枃鏈垨鏁板瓧琛ㄥ崟锛変腑銆�',
       initVal: card.linkSubField || [],
       options: inputfields
+    },
+    {
+      type: 'number',
+      key: 'marginTop',
+      label: '涓婅竟璺濓紙px锛�',
+      initVal: card.marginTop || 0,
+      min: 0,
+      max: 1000,
+      precision: 0,
+      required: false,
+      forbid: appType !== 'mob'
+    },
+    {
+      type: 'number',
+      key: 'marginBottom',
+      label: '涓嬭竟璺濓紙px锛�',
+      initVal: card.marginBottom || 0,
+      min: 0,
+      max: 1000,
+      precision: 0,
+      required: false,
+      forbid: appType !== 'mob'
     },
     {
       type: 'multiselect',
@@ -2937,17 +3372,6 @@
       initVal: card.label || '',
       required: true
     },
-    // {
-    //   type: 'select',
-    //   key: 'type',
-    //   label: Formdict['model.form.tabType'],
-    //   initVal: card.type || 'SubTable',
-    //   required: true,
-    //   options: [{
-    //     value: 'SubTable',
-    //     text: Formdict['model.menu.tab.subtable']
-    //   }]
-    // },
     {
       type: 'select',
       key: 'linkTab',
@@ -2957,27 +3381,11 @@
       options: []
     },
     {
-      type: 'select',
+      type: 'icon',
       key: 'icon',
       label: Formdict['model.icon'],
       initVal: card.icon || '',
       required: false,
-      options: [{
-        value: '',
-        text: Formdict['model.empty']
-      }, {
-        value: 'table',
-        text: 'table'
-      }, {
-        value: 'bar-chart',
-        text: 'bar-chart'
-      }, {
-        value: 'pie-chart',
-        text: 'pie-chart'
-      }, {
-        value: 'line-chart',
-        text: 'line-chart'
-      }],
       forbid: type === 'CalendarPage'
     },
     {

--
Gitblit v1.8.0