From 137fb8ea6af2789b3238b22bac31d80bced41dfe Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期三, 28 七月 2021 11:39:39 +0800
Subject: [PATCH] 2021-07-28

---
 src/menu/components/share/actioncomponent/index.jsx |   52 +++++++++++++++++++++++++++++++++-------------------
 1 files changed, 33 insertions(+), 19 deletions(-)

diff --git a/src/menu/components/share/actioncomponent/index.jsx b/src/menu/components/share/actioncomponent/index.jsx
index c6964ec..32764df 100644
--- a/src/menu/components/share/actioncomponent/index.jsx
+++ b/src/menu/components/share/actioncomponent/index.jsx
@@ -32,6 +32,7 @@
 
   state = {
     dict: sessionStorage.getItem('lang') !== 'en-US' ? zhCN : enUS,
+    appType: sessionStorage.getItem('appType'),
     card: null,          // 缂栬緫涓厓绱�
     formlist: null,      // 琛ㄥ崟淇℃伅
     actionlist: null,    // 鎸夐挳缁�
@@ -43,8 +44,20 @@
    * @description 鎼滅储鏉′欢鍒濆鍖�
    */
   UNSAFE_componentWillMount () {
+    const { config } = this.props
+
+    let actionlist = fromJS(config.action).toJS() || []
+
     this.setState({
-      actionlist: fromJS(this.props.config.action).toJS()
+      actionlist: actionlist.map(item => {
+        if (item.btnstyle) { // 鍏煎
+          item.style = item.style || {}
+          item.style = {...item.style, ...item.btnstyle}
+          delete item.btnstyle
+        }
+
+        return item
+      })
     })
   }
 
@@ -85,7 +98,7 @@
     if (comIds[0] !== config.uuid || comIds[1] !== 'actionlist') return
 
     let _card = fromJS(card).toJS()
-    _card.btnstyle = style
+    _card.style = style
 
     let _actionlist = actionlist.map(cell => {
       if (cell.uuid === _card.uuid) return _card
@@ -102,8 +115,8 @@
   changeBtnStyle = (element) => {
     const { config } = this.props
 
-    let _style = element.btnstyle ? fromJS(element.btnstyle).toJS() : {}
-    let options = ['font', 'border', 'background', 'margin']
+    let _style = element.style ? fromJS(element.style).toJS() : {}
+    let options = ['font', 'border', 'background', 'margin', 'padding']
 
     this.setState({
       card: element
@@ -175,7 +188,7 @@
     this.setState({
       visible: true,
       card: card,
-      formlist: getActionForm(card, functip, config.setting, usefulFields, this.props.type, menulist, modules)
+      formlist: getActionForm(card, functip, config, usefulFields, this.props.type, menulist, modules)
     })
   }
 
@@ -221,15 +234,15 @@
         }
 
         if (item.uuid === btn.uuid) {
-          btn.btnstyle = item.btnstyle || {}
+          btn.style = item.style || {}
 
-          if (btn.class !== item.class || btn.show !== item.show || !btn.btnstyle.color) {
+          if (btn.class !== item.class || btn.show !== item.show || !btn.style.color) {
             if (btn.show === 'link' || btn.show === 'icon') {
-              btn.btnstyle.color = color[btn.class]
-              btn.btnstyle.backgroundColor = 'transparent'
+              btn.style.color = color[btn.class]
+              btn.style.backgroundColor = 'transparent'
             } else {
-              btn.btnstyle.color = '#ffffff'
-              btn.btnstyle.backgroundColor = color[btn.class]
+              btn.style.color = '#ffffff'
+              btn.style.backgroundColor = color[btn.class]
             }
           }
           return btn
@@ -261,7 +274,7 @@
    */
   deleteElement = (card) => {
     const { config } = this.props
-    const { dict } = this.state
+    const { dict, appType } = this.state
     let _this = this
 
     confirm({
@@ -270,10 +283,6 @@
         let _actionlist = fromJS(_this.state.actionlist).toJS()
 
         _actionlist = _actionlist.filter(item => item.uuid !== card.uuid)
-
-        if (!card.origin) {
-          MKEmitter.emit('delButtons', [card.uuid])
-        }
 
         let btnlog = config.btnlog || []
         if (card.OpenType === 'popview' || card.verify || card.modal) {
@@ -285,6 +294,11 @@
         }, () => {
           _this.props.updateaction({...config, action: _actionlist, btnlog})
         })
+
+        if (card.origin || appType === 'mob') return
+        if (appType === 'pc' && card.OpenType !== 'popview') return
+
+        MKEmitter.emit('delButtons', [card.uuid])
       },
       onCancel() {}
     })
@@ -354,7 +368,7 @@
         let _param = {
           funcName: btn.innerFunc,
           name: _config.setting.tableName || '',
-          fields: btn.fields,
+          fields: btn.modal ? btn.modal.fields : [],
           menuNo: menu.MenuNo
         }
         newLText = Utils.formatOptions(FuncUtils.getfunc(_param, btn, menu, _config))
@@ -392,8 +406,8 @@
    * @description 鎸夐挳鍙屽嚮瑙﹀彂瀛愰厤缃�
    */
   btnDoubleClick = (element) => {
-    if (sessionStorage.getItem('style-control') && sessionStorage.getItem('style-control') !== 'false') return
-    
+    if (sessionStorage.getItem('style-control') && sessionStorage.getItem('style-control') === 'true') return
+
     if (element.OpenType === 'pop' || element.OpenType === 'popview' || element.execMode === 'pop') {
       this.props.setSubConfig(element)
     } else if (element.OpenType === 'innerpage' && element.pageTemplate === 'page') {

--
Gitblit v1.8.0