From 8040a18c4b2a848d252bf01838f06c7aec1be9f3 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期五, 07 六月 2024 15:16:11 +0800
Subject: [PATCH] 2024-06-07

---
 src/menu/components/share/actioncomponent/index.jsx |  132 +++++++++++++++++++++++++------------------
 1 files changed, 77 insertions(+), 55 deletions(-)

diff --git a/src/menu/components/share/actioncomponent/index.jsx b/src/menu/components/share/actioncomponent/index.jsx
index 71fd65a..27bde39 100644
--- a/src/menu/components/share/actioncomponent/index.jsx
+++ b/src/menu/components/share/actioncomponent/index.jsx
@@ -2,11 +2,11 @@
 import PropTypes from 'prop-types'
 import { is, fromJS } from 'immutable'
 import { Modal, notification, Button } from 'antd'
+import moment from 'moment'
 
-import Utils, { FuncUtils } from '@/utils/utils.js'
+import Utils from '@/utils/utils.js'
 import { getActionForm, getBaseTableActionForm } from './formconfig'
 import asyncSpinComponent from '@/utils/asyncSpinComponent'
-
 import MKEmitter from '@/utils/events.js'
 import ActionForm from './actionform'
 import MenuUtils from '@/utils/utils-custom.js'
@@ -120,7 +120,17 @@
     const { card, actionlist } = this.state
 
     let _card = fromJS(card).toJS()
-    _card.style = style
+    _card.style = fromJS(style).toJS()
+
+    if (_card.style.paddingLeft === '15px') {
+      delete _card.style.paddingLeft
+    }
+    if (_card.style.paddingRight === '15px') {
+      delete _card.style.paddingRight
+    }
+    if (_card.style.minHeight === '28px') {
+      delete _card.style.minHeight
+    }
 
     let _actionlist = actionlist.map(cell => {
       if (cell.uuid === _card.uuid) return _card
@@ -136,7 +146,11 @@
 
   changeBtnStyle = (element) => {
     let _style = element.style ? fromJS(element.style).toJS() : {}
-    let options = ['font', 'border', 'background', 'margin', 'padding']
+    let options = ['font', 'border', 'background', 'margin', 'padding', 'minHeight']
+
+    _style.paddingLeft = _style.paddingLeft || '15px'
+    _style.paddingRight = _style.paddingRight || '15px'
+    _style.minHeight = _style.minHeight || '28px'
 
     this.setState({
       card: element
@@ -148,6 +162,8 @@
   addButton = (cardId, element) => {
     if (cardId !== this.props.config.uuid) return
 
+    delete element.eleType
+    
     const { actionlist } = this.state
 
     this.setState({actionlist: [...actionlist, element]})
@@ -206,8 +222,10 @@
         supId = ''
       }
     }
+
+    let menu = window.GLOB.customMenu
     
-    let modules = MenuUtils.getSubModules(window.GLOB.customMenu.components, config.uuid, supId)
+    let modules = MenuUtils.getSubModules(menu.components, config.uuid, supId, menu.interfaces || null)
 
     if (config.subtype === 'basetable') {
       delete card.eleType // 鍖哄垎鎸夐挳浣嶇疆
@@ -218,7 +236,7 @@
         formlist: getBaseTableActionForm(card, functip, config, usefulFields, modules)
       })
     } else {
-      let anchors = MenuUtils.getAnchors(window.GLOB.customMenu.components, config.uuid) || []
+      let anchors = MenuUtils.getAnchors(menu.components, config.uuid) || []
   
       this.setState({
         visible: true,
@@ -283,12 +301,17 @@
               output: 'true',
               required: 'false',
               type: 'text',
+              noValue: 'true',
               uuid: Utils.getuuid()
             }
   
             if (item.type === 'number') {
               cell.type = 'number'
               cell.decimal = item.decimal
+
+              if (item.noValue === 'hide') {
+                cell.noValue = 'false'
+              }
             }
   
             columns.push(cell)
@@ -407,10 +430,11 @@
             btn.style = item.style || {}
             if (btn.class) {
               if (btn.class !== item.class || btn.show !== item.show || !btn.style.color || (item.focus && !btn.style.color)) {
-                if (btn.show === 'icon') {
-                  btn.style.color = color[btn.class]
-                  btn.style.backgroundColor = 'transparent'
-                } else if (btn.class === 'default') {
+                // if (btn.show === 'icon') {
+                //   btn.style.color = color[btn.class]
+                //   btn.style.backgroundColor = 'transparent'
+                // } 
+                if (btn.class === 'default') {
                   btn.style.color = 'rgba(0, 0, 0, 0.65)'
                   btn.style.backgroundColor = '#fff'
                   btn.style.borderColor = '#d9d9d9'
@@ -419,6 +443,7 @@
                   btn.style.color = color[_c]
                   btn.style.backgroundColor = '#fff'
                   btn.style.borderColor = color[_c]
+                  btn.style.borderWidth = '1px'
                 } else if (btn.class === 'gray') {
                   btn.style.color = 'rgba(0, 0, 0, 0.65)'
                   btn.style.backgroundColor = color[btn.class]
@@ -433,6 +458,8 @@
               btn.style = {}
             }
           }
+
+          btn.updateTime = moment().format('YYYY-MM-DD HH:mm')
           return btn
         } else {
           return item
@@ -505,6 +532,7 @@
       _actionlist = _actionlist.map(item => {
         if (item.uuid === card.uuid) {
           item.verify = res
+          item.updateTime = moment().format('YYYY-MM-DD HH:mm')
         }
   
         return item
@@ -523,55 +551,47 @@
    * @description 鍒涘缓鎸夐挳瀛樺偍杩囩▼
    */
   creatFunc = () => {
+    const { config } = this.props
     const menu = window.GLOB.customMenu
-    let _config = fromJS(this.props.config).toJS()
 
-    this.actionFormRef.handleConfirm().then(res => {
-      let btn = res         // 鎸夐挳淇℃伅
-      let newLText = ''     // 鍒涘缓瀛樺偍杩囩▼sql
-      let DelText = ''      // 鍒犻櫎瀛樺偍杩囩▼sql
+    return new Promise((resolve) => {
+      this.actionFormRef.handleConfirm().then(res => {
+        let btn = fromJS(res).toJS()
+        let _config = fromJS(config).toJS()
 
-      // 鍒涘缓瀛樺偍杩囩▼锛屽繀椤诲~鍐欏唴閮ㄥ嚱鏁板悕
-      if (btn.intertype !== 'inner') {
-        notification.warning({
-          top: 92,
-          message: '浣跨敤鍐呴儴鍑芥暟鏃讹紝鎵嶅彲浠ュ垱寤哄瓨鍌ㄨ繃绋嬶紒',
-          duration: 5
-        })
-        return
-      }
+        if (btn.OpenType === 'excelIn') {
+          btn.func = btn.innerFunc
+          btn.menuNo = menu.MenuNo
+          btn.MenuName = menu.MenuName + _config.name
+          btn.$type = 'excelIn'
 
-      if (btn.OpenType === 'pop') {
-        let _param = {
-          funcName: btn.innerFunc,
-          name: _config.setting.tableName || '',
-          fields: btn.modal ? btn.modal.fields : [],
-          menuNo: menu.MenuNo
+          resolve(btn)
+        } else if (btn.OpenType === 'excelOut') {
+          _config.MenuName = menu.MenuName + '-' + _config.name
+          _config.menuNo = menu.MenuNo
+          _config.MenuID = menu.MenuID
+          _config.func = btn.innerFunc
+          _config.$type = 'table'
+          
+          resolve(_config)
+        } else {
+          btn.func = btn.innerFunc
+          btn.name = _config.setting.tableName || ''
+          btn.menuNo = menu.MenuNo
+          btn.MenuID = menu.MenuID
+          btn.MenuName = menu.MenuName + _config.name
+          btn.fields = []
+          btn.columns = _config.columns
+          btn.primaryKey = _config.setting.primaryKey || 'ID'
+          btn.$type = 'btn'
+
+          if (btn.OpenType === 'pop') {
+            btn.fields = btn.modal ? btn.modal.fields : []
+          }
+
+          resolve(btn)
         }
-        newLText = Utils.formatOptions(FuncUtils.getfunc(_param, btn, menu, _config))
-        DelText = Utils.formatOptions(FuncUtils.dropfunc(btn.innerFunc))
-      } else if (btn.OpenType === 'excelIn') {
-        let _param = {
-          funcName: btn.innerFunc,
-          menuNo: menu.MenuNo
-        }
-        newLText = Utils.formatOptions(FuncUtils.getexcelInfunc(_param, btn, menu))
-        DelText = Utils.formatOptions(FuncUtils.dropfunc(btn.innerFunc))
-      } else if (btn.OpenType === 'excelOut') {
-        newLText = Utils.formatOptions(FuncUtils.getTableFunc(btn.innerFunc, menu, _config)) // 鍒涘缓瀛樺偍杩囩▼sql
-        DelText = Utils.formatOptions(FuncUtils.dropfunc(btn.innerFunc))
-      } else {
-        let _param = {
-          funcName: btn.innerFunc,
-          name: _config.setting.tableName || '',
-          fields: '',
-          menuNo: menu.MenuNo
-        }
-        newLText = Utils.formatOptions(FuncUtils.getfunc(_param, btn, menu, _config))
-        DelText = Utils.formatOptions(FuncUtils.dropfunc(btn.innerFunc))
-      }
-
-      this.refs.btnCreatFunc.exec(btn.innerFunc, newLText, DelText)
+      })
     })
   }
 
@@ -701,18 +721,20 @@
         {/* 缂栬緫鎸夐挳锛氬鍒躲�佺紪杈� */}
         <Modal
           title="鎸夐挳路缂栬緫"
+          wrapClassName="mk-scroll-modal"
           visible={visible}
           width={920}
           maskClosable={false}
           onCancel={this.editModalCancel}
           footer={[
-            record && record.intertype === 'inner' ? <CreateFunc key="create" ref="btnCreatFunc" trigger={this.creatFunc}/> : null,
+            record && record.intertype === 'inner' ? <CreateFunc key="create" getMsg={this.creatFunc}/> : null,
             <Button key="cancel" onClick={this.editModalCancel}>鍙栨秷</Button>,
             <Button key="confirm" type="primary" onClick={this.handleSubmit}>纭畾</Button>
           ]}
           destroyOnClose
         >
           <ActionForm
+            type={config.type === 'tree' ? 'card' : ''}
             card={card}
             formlist={this.state.formlist}
             inputSubmit={this.handleSubmit}

--
Gitblit v1.8.0