From d59f518f466274b2caeb2e01c10c92deafe7c93b Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期三, 09 二月 2022 11:48:29 +0800
Subject: [PATCH] 2022-02-09

---
 src/templates/sharecomponent/tabscomponent/tabform/index.jsx |   58 ++++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 44 insertions(+), 14 deletions(-)

diff --git a/src/templates/sharecomponent/tabscomponent/tabform/index.jsx b/src/templates/sharecomponent/tabscomponent/tabform/index.jsx
index cb93c5b..efd6bec 100644
--- a/src/templates/sharecomponent/tabscomponent/tabform/index.jsx
+++ b/src/templates/sharecomponent/tabscomponent/tabform/index.jsx
@@ -1,10 +1,14 @@
 import React, {Component} from 'react'
 import PropTypes from 'prop-types'
-import { Form, Row, Col, Input, Select, Icon, Tooltip, Radio, InputNumber, notification } from 'antd'
+import { Form, Row, Col, Input, Select, Tooltip, Radio, InputNumber, notification } from 'antd'
+import { QuestionCircleOutlined } from '@ant-design/icons'
+
 import { formRule } from '@/utils/option.js'
 import Utils from '@/utils/utils.js'
-import './index.scss'
+import asyncComponent from '@/utils/asyncComponent'
+// import './index.scss'
 
+const MkEditIcon = asyncComponent(() => import('@/components/mkIcon'))
 
 class MainTab extends Component {
   static propTpyes = {
@@ -26,9 +30,9 @@
   UNSAFE_componentWillMount () {
     const { formlist } = this.props
 
-    let type = formlist.filter(cell => cell.key === 'type')[0].initVal
+    // let type = formlist.filter(cell => cell.key === 'type')[0].initVal
 
-    let _tabs = this.props.tabs.filter(tab => tab.type === type)
+    let _tabs = this.props.tabs.filter(tab => tab.type === 'SubTable')
 
     this.setState({
       formlist: formlist.map(item => {
@@ -54,7 +58,7 @@
       try {
         let _form = document.getElementById('label')
         _form.select()
-      } catch {
+      } catch (e) {
         console.warn('琛ㄥ崟focus澶辫触锛�')
       }
     }
@@ -125,7 +129,7 @@
             <Form.Item label={
               item.tooltip ?
               <Tooltip placement="topLeft" title={item.tooltip}>
-                <Icon type="question-circle" />
+                <QuestionCircleOutlined className="mk-form-tip" />
                 {item.label}
               </Tooltip> : item.label
             }>
@@ -152,7 +156,7 @@
             <Form.Item label={
               item.tooltip ?
               <Tooltip placement="topLeft" title={item.tooltip}>
-                <Icon type="question-circle" />
+                <QuestionCircleOutlined className="mk-form-tip" />
                 {item.label}
               </Tooltip> : item.label
             }>
@@ -164,7 +168,7 @@
                     message: this.props.dict['form.required.input'] + item.label + '!'
                   }
                 ]
-              })(<InputNumber disabled={item.readonly} min={item.min} max={item.max} precision={0} />)}
+              })(<InputNumber min={item.min} max={item.max} precision={0} />)}
             </Form.Item>
           </Col>
         )
@@ -188,10 +192,33 @@
                 >
                   {item.options.map((option, i) =>
                     <Select.Option id={'mk' + i} title={option.text} key={'mk' + i} value={option.value}>
-                      {item.key === 'icon' && i !== 0 ? <Icon type={option.text} /> : option.text}
+                      {option.text}
                     </Select.Option>
                   )}
                 </Select>
+              )}
+            </Form.Item>
+          </Col>
+        )
+      } else if (item.type === 'icon') { // 涓嬫媺鎼滅储
+        fields.push(
+          <Col span={12} key={index}>
+            <Form.Item label={item.tooltip ?
+              <Tooltip placement="topLeft" title={item.tooltip}>
+                <QuestionCircleOutlined className="mk-form-tip" />
+                {item.label}
+              </Tooltip> : item.label
+            }>
+              {getFieldDecorator(item.key, {
+                initialValue: item.initVal || '',
+                rules: [
+                  {
+                    required: !!item.required,
+                    message: this.props.dict['form.required.select'] + item.label + '!'
+                  }
+                ]
+              })(
+                <MkEditIcon options={['data', 'normal', 'edit', 'direction', 'hint']} allowClear/>
               )}
             </Form.Item>
           </Col>
@@ -202,7 +229,7 @@
             <Form.Item label={
               item.tooltip ?
               <Tooltip placement="topLeft" title={item.tooltip}>
-                <Icon type="question-circle" />
+                <QuestionCircleOutlined className="mk-form-tip" />
                 {item.label}
               </Tooltip> : item.label
             }>
@@ -227,7 +254,7 @@
           <Col span={12} key={index}>
             <Form.Item label={item.tooltip ?
               <Tooltip placement="topLeft" title={item.tooltip}>
-                <Icon type="question-circle" />
+                <QuestionCircleOutlined className="mk-form-tip" />
                 {item.label}
               </Tooltip> : item.label
             }>
@@ -272,13 +299,16 @@
           }
           if (values.level === undefined) {
             values.level = ''
-          } else if (values.supMenu && values.level === 0) {
+          } else if (values.supMenu && values.supMenu === 'mainTable' && values.level === 0) {
             notification.warning({
               top: 92,
-              message: '瀛樺湪涓婄骇鏍囩锛屼笖璁剧疆鏄剧ず绾у埆涓�0鏃讹紝浼氶�犳垚瀛愯〃涓寜閽笉鍙敤锛�',
+              message: '鏄剧ず绾у埆涓�0鏃讹紝涓婄骇鏍囩涓嶅彲鍏宠仈涓昏〃锛�',
               duration: 5
             })
+            return
           }
+
+          values.type = 'SubTable' // 绫诲瀷涓哄瓙琛�
 
           resolve(values)
         } else {
@@ -300,7 +330,7 @@
       }
     }
     return (
-      <Form {...formItemLayout} className="model-tab-form">
+      <Form {...formItemLayout} style={{minHeight: '180px'}}>
         <Row gutter={24}>{this.getFields()}</Row>
       </Form>
     )

--
Gitblit v1.8.0