From a181fc113d024ed34d6b488c65882961bd1de3f4 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期二, 02 六月 2020 19:00:57 +0800
Subject: [PATCH] 2020-06-02

---
 src/templates/sharecomponent/tabscomponent/tabform/index.jsx |   46 ++++++++++++++++++++++++++++++++++------------
 1 files changed, 34 insertions(+), 12 deletions(-)

diff --git a/src/templates/sharecomponent/tabscomponent/tabform/index.jsx b/src/templates/sharecomponent/tabscomponent/tabform/index.jsx
index eb0bedf..37d686b 100644
--- a/src/templates/sharecomponent/tabscomponent/tabform/index.jsx
+++ b/src/templates/sharecomponent/tabscomponent/tabform/index.jsx
@@ -1,6 +1,6 @@
 import React, {Component} from 'react'
 import PropTypes from 'prop-types'
-import { Form, Row, Col, Input, Select, Icon, Tooltip, Radio } from 'antd'
+import { Form, Row, Col, Input, Select, Icon, Tooltip, Radio, InputNumber } from 'antd'
 import { formRule } from '@/utils/option.js'
 import Utils from '@/utils/utils.js'
 import './index.scss'
@@ -11,6 +11,7 @@
     tabs: PropTypes.array,       // 鍙叧鑱旀爣绛鹃泦
     dict: PropTypes.object,      // 瀛楀吀椤�
     formlist: PropTypes.any,     // 琛ㄥ崟
+    levels: PropTypes.any,       // 鏍囩鏄剧ず绾у埆
     card: PropTypes.object,      // 鏍囩椤典俊鎭�
     inputSubmit: PropTypes.any   // 鍥炶溅鎻愪氦浜嬩欢
   }
@@ -79,20 +80,19 @@
               ..._tabs
             ]
             item.initVal = ''
-            item.hidden = true
           }
           return item
         })
       }, () => {
-        this.setState({
-          formlist: this.state.formlist.map(item => {
-            if (item.key === 'linkTab') {
-              item.hidden = false
-            }
-            return item
-          })
-        })
+        if (this.props.form.getFieldValue('linkTab') !== undefined) {
+          this.props.form.setFieldsValue({linkTab: ''})
+        }
       })
+    } else if (key === 'supMenu' && this.props.levels) {
+
+      if (value && value !== 'mainTable') {
+        this.props.form.setFieldsValue({level: this.props.levels[value]})
+      }
     }
   }
 
@@ -111,7 +111,7 @@
     this.state.formlist.forEach((item, index) => {
       if (item.hidden || item.forbid) return
 
-      if (item.type === 'text') { // 鏂囨湰鎼滅储
+      if (item.type === 'text') {
         let rules = []
 
         if (item.key === 'foreignKey') {
@@ -143,6 +143,28 @@
                   ...rules
                 ]
               })(<Input placeholder="" autoComplete="off" disabled={item.readonly} onPressEnter={this.handleSubmit} />)}
+            </Form.Item>
+          </Col>
+        )
+      } else if (item.type === 'number') {
+        fields.push(
+          <Col span={12} key={index}>
+            <Form.Item label={
+              item.tooltip ?
+              <Tooltip placement="topLeft" title={item.tooltip}>
+                <Icon type="question-circle" />
+                {item.label}
+              </Tooltip> : item.label
+            }>
+              {getFieldDecorator(item.key, {
+                initialValue: item.initVal,
+                rules: [
+                  {
+                    required: !!item.required,
+                    message: this.props.dict['form.required.input'] + item.label + '!'
+                  }
+                ]
+              })(<InputNumber disabled={item.readonly} min={item.min} max={item.max} precision={0} />)}
             </Form.Item>
           </Col>
         )
@@ -269,7 +291,7 @@
       }
     }
     return (
-      <Form {...formItemLayout} className="ant-advanced-search-form commontable-tab-form">
+      <Form {...formItemLayout} className="model-tab-form">
         <Row gutter={24}>{this.getFields()}</Row>
       </Form>
     )

--
Gitblit v1.8.0