From c7e0b8b1049f422e87e3c0d0ed252784aa69eb29 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期四, 09 三月 2023 23:28:45 +0800
Subject: [PATCH] 2023-03-09

---
 src/menu/components/form/simple-form/index.jsx |   10 ++++
 src/tabviews/zshare/mutilform/index.jsx        |    8 ++++
 src/templates/zshare/modalform/index.jsx       |    2 
 src/templates/modalconfig/index.jsx            |   10 ++++
 src/menu/components/form/step-form/index.jsx   |   10 ++++
 src/menu/modalconfig/index.jsx                 |   10 ++++
 src/mob/modalconfig/index.jsx                  |   10 ++++
 src/templates/zshare/formconfig.jsx            |   15 +++++++
 src/menu/components/form/tab-form/index.jsx    |   10 ++++
 9 files changed, 77 insertions(+), 8 deletions(-)

diff --git a/src/menu/components/form/simple-form/index.jsx b/src/menu/components/form/simple-form/index.jsx
index 1e19bcf..28dcb23 100644
--- a/src/menu/components/form/simple-form/index.jsx
+++ b/src/menu/components/form/simple-form/index.jsx
@@ -334,6 +334,7 @@
     let _tabfields = []
     let _linkableFields = []
     let _linksupFields = []
+    let _allFields = []
     let standardform = null
 
     let uniq = new Map()
@@ -343,6 +344,13 @@
     card.subcards[0].fields.forEach((item, i) => {
       if (_form.uuid === item.uuid) {
         index = i
+      }
+
+      if (item.field) {
+        _allFields.push({
+          field: item.field,
+          label: item.label
+        })
       }
 
       if (['text', 'number', 'textarea', 'color'].includes(item.type) && _item.field !== item.field) {
@@ -414,7 +422,7 @@
       standardform,
       visible: true,
       editform: _form,
-      formlist: getModalForm(_form, _inputfields, _tabfields, _linkableFields, _linksupFields, card.columns)
+      formlist: getModalForm(_form, _inputfields, _tabfields, _linkableFields, _linksupFields, _allFields, card.columns)
     })
   }
 
diff --git a/src/menu/components/form/step-form/index.jsx b/src/menu/components/form/step-form/index.jsx
index a8e7b35..0886155 100644
--- a/src/menu/components/form/step-form/index.jsx
+++ b/src/menu/components/form/step-form/index.jsx
@@ -435,6 +435,7 @@
     let _tabfields = []
     let _linkableFields = []
     let _linksupFields = []
+    let _allFields = []
     let standardform = null
 
     let uniq = new Map()
@@ -444,6 +445,13 @@
     group.fields.forEach((item, i) => {
       if (_form.uuid === item.uuid) {
         index = i
+      }
+
+      if (item.field) {
+        _allFields.push({
+          field: item.field,
+          label: item.label
+        })
       }
 
       if (['text', 'number', 'textarea', 'color'].includes(item.type) && _item.field !== item.field) {
@@ -516,7 +524,7 @@
       standardform,
       visible: true,
       editform: _form,
-      formlist: getModalForm(_form, _inputfields, _tabfields, _linkableFields, _linksupFields, card.columns)
+      formlist: getModalForm(_form, _inputfields, _tabfields, _linkableFields, _linksupFields, _allFields, card.columns)
     })
   }
 
diff --git a/src/menu/components/form/tab-form/index.jsx b/src/menu/components/form/tab-form/index.jsx
index 489a3c2..daac3de 100644
--- a/src/menu/components/form/tab-form/index.jsx
+++ b/src/menu/components/form/tab-form/index.jsx
@@ -441,6 +441,7 @@
     let _tabfields = []
     let _linkableFields = []
     let _linksupFields = []
+    let _allFields = []
     let standardform = null
 
     let uniq = new Map()
@@ -450,6 +451,13 @@
     group.fields.forEach((item, i) => {
       if (_form.uuid === item.uuid) {
         index = i
+      }
+
+      if (item.field) {
+        _allFields.push({
+          field: item.field,
+          label: item.label
+        })
       }
 
       if (['text', 'number', 'textarea', 'color'].includes(item.type) && _item.field !== item.field) {
@@ -521,7 +529,7 @@
       standardform,
       visible: true,
       editform: _form,
-      formlist: getModalForm(_form, _inputfields, _tabfields, _linkableFields, _linksupFields, card.columns)
+      formlist: getModalForm(_form, _inputfields, _tabfields, _linkableFields, _linksupFields, _allFields, card.columns)
     })
   }
 
diff --git a/src/menu/modalconfig/index.jsx b/src/menu/modalconfig/index.jsx
index c0da35b..fc9ed4f 100644
--- a/src/menu/modalconfig/index.jsx
+++ b/src/menu/modalconfig/index.jsx
@@ -113,6 +113,7 @@
     let _tabfields = []
     let _linkableFields = []
     let _linksupFields = []
+    let _allFields = []
     let standardform = null
 
     let uniq = new Map()
@@ -122,6 +123,13 @@
     config.fields.forEach((item, i) => {
       if (card.uuid === item.uuid) {
         index = i
+      }
+
+      if (item.field) {
+        _allFields.push({
+          field: item.field,
+          label: item.label
+        })
       }
 
       if (['text', 'number', 'textarea', 'color'].includes(item.type) && card.field !== item.field) {
@@ -200,7 +208,7 @@
       standardform,
       visible: true,
       card: card,
-      formlist: getModalForm(card, _inputfields, _tabfields, _linkableFields, _linksupFields, columns)
+      formlist: getModalForm(card, _inputfields, _tabfields, _linkableFields, _linksupFields, _allFields, columns)
     })
   }
 
diff --git a/src/mob/modalconfig/index.jsx b/src/mob/modalconfig/index.jsx
index 8bcad78..ac7c4ba 100644
--- a/src/mob/modalconfig/index.jsx
+++ b/src/mob/modalconfig/index.jsx
@@ -134,6 +134,7 @@
     let _tabfields = []
     let _linkableFields = []
     let _linksupFields = []
+    let _allFields = []
     let standardform = null
 
     let uniq = new Map()
@@ -143,6 +144,13 @@
     config.fields.forEach((item, i) => {
       if (card.uuid === item.uuid) {
         index = i
+      }
+
+      if (item.field) {
+        _allFields.push({
+          field: item.field,
+          label: item.label
+        })
       }
 
       if (['text', 'number', 'textarea', 'color'].includes(item.type) && card.field !== item.field) {
@@ -214,7 +222,7 @@
       standardform,
       visible: true,
       card: card,
-      formlist: getModalForm(card, _inputfields, _tabfields, _linkableFields, _linksupFields, columns)
+      formlist: getModalForm(card, _inputfields, _tabfields, _linkableFields, _linksupFields, _allFields, columns)
     })
   }
 
diff --git a/src/tabviews/zshare/mutilform/index.jsx b/src/tabviews/zshare/mutilform/index.jsx
index b7d6cd6..479a3d3 100644
--- a/src/tabviews/zshare/mutilform/index.jsx
+++ b/src/tabviews/zshare/mutilform/index.jsx
@@ -904,6 +904,14 @@
       if (item.empty === 'hidden' && item.oriOptions.length === 0) return
 
       if (item.type === 'split') {
+        if (item.splitctrl) {
+          let cell = formlist.filter(m => m.field === item.splitctrl)[0]
+
+          if (cell && (cell.hidden || (cell.empty === 'hidden' && !cell.oriOptions.length))) {
+            return null
+          }
+        }
+        
         fields.push(
           <Col span={24} key={index}>
             <p className="mk-form-split-line" style={item.style}>{item.label}</p>
diff --git a/src/templates/modalconfig/index.jsx b/src/templates/modalconfig/index.jsx
index b4d6d8b..375ded0 100644
--- a/src/templates/modalconfig/index.jsx
+++ b/src/templates/modalconfig/index.jsx
@@ -243,6 +243,7 @@
     let _tabfields = []
     let _linkableFields = []
     let _linksupFields = []
+    let _allFields = []
     let standardform = null
 
     let uniq = new Map()
@@ -252,6 +253,13 @@
     config.fields.forEach((item, i) => {
       if (card.uuid === item.uuid) {
         index = i
+      }
+
+      if (item.field) {
+        _allFields.push({
+          field: item.field,
+          label: item.label
+        })
       }
 
       if (['text', 'number', 'textarea', 'color'].includes(item.type) && card.field !== item.field) {
@@ -350,7 +358,7 @@
       standardform,
       visible: true,
       card: card,
-      formlist: getModalForm(card, _inputfields, _tabfields, _linkableFields, _linksupFields)
+      formlist: getModalForm(card, _inputfields, _tabfields, _linkableFields, _linksupFields, _allFields)
     })
   }
 
diff --git a/src/templates/zshare/formconfig.jsx b/src/templates/zshare/formconfig.jsx
index 3b38af4..c462ad6 100644
--- a/src/templates/zshare/formconfig.jsx
+++ b/src/templates/zshare/formconfig.jsx
@@ -2388,7 +2388,7 @@
  * @param {*} linkableFields  // 鍙叧鑱旇〃鍗�
  * @param {*} linksupFields   // 涓婄骇琛ㄥ崟
  */
-export function getModalForm (card, inputfields = [], tabfields = [], linkableFields, linksupFields, columns = []) {
+export function getModalForm (card, inputfields = [], tabfields = [], linkableFields, linksupFields, allFields = [], columns = []) {
   let appType = sessionStorage.getItem('appType')
   let roleList = sessionStorage.getItem('sysRoles')
   if (roleList) {
@@ -2442,6 +2442,10 @@
   })
 
   linksupFields = linksupFields.map((item, index) => {
+    item.label = `${index + 1}銆�${item.field || ''}锛�${item.label}锛塦
+    return item
+  })
+  allFields = allFields.map((item, index) => {
     item.label = `${index + 1}銆�${item.field || ''}锛�${item.label}锛塦
     return item
   })
@@ -3481,6 +3485,15 @@
       }]
     },
     {
+      type: 'select',
+      key: 'splitctrl',
+      label: '鏄剧ず鎺у埗',
+      initVal: card.splitctrl || '',
+      tooltip: '鍒嗗壊绾夸笌璇ヨ〃鍗曞悓姝ユ樉绀烘垨闅愯棌銆�',
+      allowClear: true,
+      options: allFields
+    },
+    {
       type: 'radio',
       key: 'place',
       label: '鎺掑垪',
diff --git a/src/templates/zshare/modalform/index.jsx b/src/templates/zshare/modalform/index.jsx
index f5a450a..312a6c0 100644
--- a/src/templates/zshare/modalform/index.jsx
+++ b/src/templates/zshare/modalform/index.jsx
@@ -37,7 +37,7 @@
   color: ['initval', 'readonly', 'required', 'hidden', 'readin', 'span', 'labelwidth', 'tooltip', 'colorType', 'extra', 'marginTop', 'marginBottom'],
   rate: ['initval', 'readonly', 'required', 'hidden', 'readin', 'span', 'labelwidth', 'splitline', 'tooltip', 'extra', 'marginTop', 'marginBottom', 'allowHalf', 'color', 'rateCount', 'character', 'place'],
   hint: ['label', 'field', 'type', 'blacklist', 'message', 'span', 'labelwidth', 'splitline', 'marginTop', 'marginBottom'],
-  split: ['label', 'type', 'marginTop', 'marginBottom', 'splitline'],
+  split: ['label', 'type', 'marginTop', 'marginBottom', 'splitline', 'splitctrl'],
   formula: ['label', 'type', 'marginTop', 'marginBottom', 'splitline', 'span', 'labelwidth', 'formula', 'eval', 'postfix'],
   brafteditor: ['required', 'hidelabel', 'hidden', 'readin', 'fieldlength', 'readonly', 'span', 'labelwidth', 'tooltip', 'extra', 'encryption', 'marginTop', 'marginBottom'],
   funcvar: ['span', 'labelwidth', 'splitline', 'marginTop', 'marginBottom'],

--
Gitblit v1.8.0