From c06e58c80240afd703d289bb1c584e08b9783383 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期五, 13 六月 2025 20:24:25 +0800
Subject: [PATCH] 2025-06-13

---
 src/pc/components/navbar/normal-navbar/menusetting/menuform/index.jsx |  132 ++++++++++++++++++++++++++------------------
 1 files changed, 78 insertions(+), 54 deletions(-)

diff --git a/src/pc/components/navbar/normal-navbar/menusetting/menuform/index.jsx b/src/pc/components/navbar/normal-navbar/menusetting/menuform/index.jsx
index 19e747f..76ad886 100644
--- a/src/pc/components/navbar/normal-navbar/menusetting/menuform/index.jsx
+++ b/src/pc/components/navbar/normal-navbar/menusetting/menuform/index.jsx
@@ -1,6 +1,7 @@
 import React, {Component} from 'react'
 import PropTypes from 'prop-types'
-import { Form, Row, Col, Input, Radio, Tooltip, Icon, Select } from 'antd'
+import { Form, Row, Col, Input, Radio, Tooltip, Select } from 'antd'
+import { QuestionCircleOutlined } from '@ant-design/icons'
 
 import './index.scss'
 
@@ -14,7 +15,7 @@
 
   state = {
     property: this.props.menu.property || 'menu',
-    linkIntId: this.props.menu.linkIntId || '',
+    copyMenu: this.props.menu.copyMenuId || '',
     appMenus: [],
   }
 
@@ -23,7 +24,7 @@
     if (appMenus) {
       try {
         appMenus = JSON.parse(appMenus)
-      } catch {
+      } catch (e) {
         appMenus = []
       }
     } else {
@@ -47,9 +48,6 @@
     return new Promise((resolve, reject) => {
       this.props.form.validateFieldsAndScroll((err, values) => {
         if (!err) {
-          if (values.linkmenuid) {
-            values.linkIntId = this.state.linkIntId || ''
-          }
           resolve(values)
         } else {
           reject(err)
@@ -72,14 +70,10 @@
     this.setState({property: val})
   }
 
-  changeLinkMenu = (val, { props }) => {
-    this.setState({linkIntId: props.intid})
-  }
-
   render() {
     const { menu } = this.props
     const { getFieldDecorator } = this.props.form
-    const { property, appMenus } = this.state
+    const { property, appMenus, copyMenu } = this.state
 
     const formItemLayout = {
       labelCol: {
@@ -108,6 +102,19 @@
               })(<Input placeholder={''} autoComplete="off" onPressEnter={this.handleSubmit} />)}
             </Form.Item>
           </Col>
+          {/* <Col span={22}>
+            <Form.Item label="鑿滃崟鍙傛暟">
+              {getFieldDecorator('MenuNo', {
+                initialValue: menu.MenuNo || '',
+                rules: [
+                  {
+                    required: true,
+                    message: '璇疯緭鍏ヨ彍鍗曞弬鏁�!'
+                  }
+                ]
+              })(<Input placeholder={''} autoComplete="off" onPressEnter={this.handleSubmit} />)}
+            </Form.Item>
+          </Col> */}
           <Col span={22}>
             <Form.Item label="鑿滃崟灞炴��">
               {getFieldDecorator('property', {
@@ -115,13 +122,66 @@
               })(
                 <Radio.Group onChange={this.changeProperty}>
                   <Radio value="menu">鑿滃崟</Radio>
-                  <Radio value="link">閾炬帴</Radio>
                   <Radio value="linkmenu">鍏宠仈鑿滃崟</Radio>
+                  <Radio value="link">閾炬帴</Radio>
                   {menu.level === 1 || menu.level === 2 ? <Radio value="classify">鍒嗙被</Radio> : null}
                 </Radio.Group>
               )}
             </Form.Item>
           </Col>
+          {property === 'linkmenu' ? <Col span={22}>
+            <Form.Item label={
+              <Tooltip placement="topLeft" title="鍏宠仈褰撳墠app涓凡鏈夌殑鑿滃崟銆�">
+                <QuestionCircleOutlined className="mk-form-tip" />
+                鍏宠仈鑿滃崟
+              </Tooltip>
+            }>
+              {getFieldDecorator('linkMenuId', {
+                initialValue: menu.linkMenuId || '',
+                rules: [{
+                  required: true,
+                  message: '璇烽�夋嫨鍏宠仈鑿滃崟!'
+                }]
+              })(
+                <Select>
+                  {appMenus.map(item => (<Select.Option key={item.MenuID} value={item.MenuID}>{item.MenuName}</Select.Option>))}
+                </Select>
+              )}
+            </Form.Item>
+          </Col> : null}
+          {property === 'menu' ? <Col span={22}>
+            <Form.Item label={
+              <Tooltip placement="topLeft" title="澶嶅埗鑿滃崟浠呭湪褰撳墠鑿滃崟涓嶅瓨鍦ㄦ椂鏈夋晥銆�">
+                <QuestionCircleOutlined className="mk-form-tip" />
+                澶嶅埗鑿滃崟
+              </Tooltip>
+            }>
+              {getFieldDecorator('copyMenuId', {
+                initialValue: menu.copyMenuId || ''
+              })(
+                <Select allowClear dropdownMatchSelectWidth={false} onChange={(val) => this.setState({copyMenu: val})}>
+                  {appMenus.map(item => (<Select.Option key={item.MenuID} value={item.MenuID}>{item.MenuName}</Select.Option>))}
+                </Select>
+              )}
+            </Form.Item>
+          </Col> : null}
+          {property === 'menu' && copyMenu ? <Col span={22}>
+            <Form.Item label={
+              <Tooltip placement="topLeft" title="澶嶅埗鑿滃崟鏃讹紝鏄惁娓呯┖鍘熼〉闈腑鐨勫叧鑱旇彍鍗曘��">
+                <QuestionCircleOutlined className="mk-form-tip" />
+                娓呯┖鍏宠仈鑿滃崟
+              </Tooltip>
+            }>
+              {getFieldDecorator('clearMenu', {
+                initialValue: menu.clearMenu || 'true'
+              })(
+                <Radio.Group>
+                  <Radio value="true">鏄�</Radio>
+                  <Radio value="false">鍚�</Radio>
+                </Radio.Group>
+              )}
+            </Form.Item>
+          </Col> : null}
           <Col span={22}>
             <Form.Item label="闅愯棌">
               {getFieldDecorator('hidden', {
@@ -134,17 +194,6 @@
               )}
             </Form.Item>
           </Col>
-          {property === 'link' ? <Col span={22}>
-            <Form.Item label="閾炬帴鍦板潃">
-              {getFieldDecorator('link', {
-                initialValue: menu.link || '',
-                rules: [{
-                  required: true,
-                  message: '璇疯緭鍏ラ摼鎺ュ湴鍧�!'
-                }]
-              })(<TextArea rows={2} />)}
-            </Form.Item>
-          </Col> : null}
           {property !== 'classify' ? <Col span={22}>
             <Form.Item label="鎵撳紑鏂瑰紡">
               {getFieldDecorator('open', {
@@ -157,40 +206,15 @@
               )}
             </Form.Item>
           </Col> : null}
-          {property === 'linkmenu' ? <Col span={22}>
-            <Form.Item label={
-              <Tooltip placement="topLeft" title="鍏宠仈褰撳墠app涓凡鏈夌殑鑿滃崟銆�">
-                <Icon type="question-circle" style={{color: '#c49f47', marginRight: '3px'}}/>
-                鍏宠仈鑿滃崟
-              </Tooltip>
-            }>
-              {getFieldDecorator('linkMenuId', {
-                initialValue: menu.linkMenuId || '',
+          {property === 'link' ? <Col span={22}>
+            <Form.Item label="閾炬帴鍦板潃">
+              {getFieldDecorator('link', {
+                initialValue: menu.link || '',
                 rules: [{
                   required: true,
-                  message: '璇烽�夋嫨鍏宠仈鑿滃崟!'
+                  message: '璇疯緭鍏ラ摼鎺ュ湴鍧�!'
                 }]
-              })(
-                <Select onChange={this.changeLinkMenu}>
-                  {appMenus.map(item => (<Select.Option key={item.MenuID} intid={item.menuid_int} value={item.MenuID}>{item.MenuName}</Select.Option>))}
-                </Select>
-              )}
-            </Form.Item>
-          </Col> : null}
-          {property === 'menu' ? <Col span={22}>
-            <Form.Item label={
-              <Tooltip placement="topLeft" title="澶嶅埗鑿滃崟浠呭湪褰撳墠鑿滃崟涓嶅瓨鍦ㄦ椂鏈夋晥銆�">
-                <Icon type="question-circle" style={{color: '#c49f47', marginRight: '3px'}}/>
-                澶嶅埗鑿滃崟
-              </Tooltip>
-            }>
-              {getFieldDecorator('copyMenuId', {
-                initialValue: menu.copyMenuId || ''
-              })(
-                <Select>
-                  {appMenus.map(item => (<Select.Option key={item.MenuID} value={item.MenuID}>{item.MenuName}</Select.Option>))}
-                </Select>
-              )}
+              })(<TextArea rows={2} />)}
             </Form.Item>
           </Col> : null}
         </Row>

--
Gitblit v1.8.0