From cb9ade2afd2a367ad767bc605ab7086c695dd010 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期五, 09 十二月 2022 15:53:32 +0800 Subject: [PATCH] 2022-12-09 --- src/tabviews/custom/components/card/cardItem/index.jsx | 84 ++++++++++++++++++----------------------- 1 files changed, 37 insertions(+), 47 deletions(-) diff --git a/src/tabviews/custom/components/card/cardItem/index.jsx b/src/tabviews/custom/components/card/cardItem/index.jsx index a5a6694..438e7a8 100644 --- a/src/tabviews/custom/components/card/cardItem/index.jsx +++ b/src/tabviews/custom/components/card/cardItem/index.jsx @@ -1,6 +1,5 @@ import React, {Component} from 'react' import PropTypes from 'prop-types' -import { connect } from 'react-redux' import { is, fromJS } from 'immutable' import { notification } from 'antd' @@ -44,7 +43,7 @@ openView = () => { const { card, data, cards } = this.props - if (!card.setting.click) return + if (!card.setting.click || data.$disabled) return if (card.setting.click === 'menus' && cards.subtype === 'datacard' && card.$cardType !== 'extendCard') { let menu = null @@ -65,44 +64,44 @@ return } - menu.type = menu.tabType - let newtab = { - ...menu, + MenuID: menu.MenuID, + MenuName: menu.MenuName, + MenuNo: menu.MenuNo || '', + type: menu.tabType, param: {} } if (card.setting.joint === 'true') { newtab.param.$BID = data.$$uuid || '' + + Object.keys(data).forEach(key => { + if (/^\$/.test(key)) return + newtab.param[key] = data[key] + }) } - if (['linkage_navigation', 'linkage', 'menu_board'].includes(window.GLOB.navBar)) { - MKEmitter.emit('modifyTabs', newtab, 'replace') - } else { - MKEmitter.emit('modifyTabs', newtab, 'plus', true) - } - } else if (card.setting.click === 'menu') { - let menu = null + MKEmitter.emit('modifyTabs', newtab, true) + } else if (card.setting.click === 'menu' && card.setting.menu) { + let menuId = card.setting.MenuID || card.setting.menu.slice(-1)[0] + let menu = window.GLOB.mkThdMenus.filter(m => m.MenuID === menuId)[0] - if (card.setting.MenuID) { + if (!menu && card.setting.MenuName && card.setting.tabType) { menu = { - MenuID: card.setting.MenuID, + MenuID: menuId, MenuName: card.setting.MenuName, - MenuNo: card.setting.MenuNo, + MenuNo: card.setting.MenuNo || '', type: card.setting.tabType } - } else if (card.setting.menu && card.setting.menu.length > 0) { - let menu_id = card.setting.menu.slice(-1)[0] - menu = this.props.permMenus.filter(m => m.MenuID === menu_id)[0] || '' + } - if (!menu) { - notification.warning({ - top: 92, - message: '鑿滃崟宸插垹闄ゆ垨娌℃湁璁块棶鏉冮檺锛�', - duration: 5 - }) - return - } + if (!menu) { + notification.warning({ + top: 92, + message: '鑿滃崟宸插垹闄ゆ垨娌℃湁璁块棶鏉冮檺锛�', + duration: 5 + }) + return } let newtab = { @@ -112,13 +111,14 @@ if (card.setting.joint === 'true') { newtab.param.$BID = data.$$uuid || '' + + Object.keys(data).forEach(key => { + if (/^\$/.test(key)) return + newtab.param[key] = data[key] + }) } - if (['linkage_navigation', 'linkage', 'menu_board'].includes(window.GLOB.navBar)) { - MKEmitter.emit('modifyTabs', newtab, 'replace') - } else { - MKEmitter.emit('modifyTabs', newtab, 'plus', true) - } + MKEmitter.emit('modifyTabs', newtab, true) } else if (card.setting.click === 'link') { let src = card.setting.linkurl @@ -135,11 +135,11 @@ window.open(src) } else if (card.setting.click === 'button' && card.setting.clickType !== 'multi' && card.setting.linkbtn) { if (data.$$type === 'extendCard') { - MKEmitter.emit('triggerBtnId', card.setting.linkbtn, []) + MKEmitter.emit('triggerBtnId', card.setting.linkbtn, data.$$selectedData || []) } else if (cards.subtype === 'datacard') { MKEmitter.emit('triggerBtnId', card.setting.linkbtn, [data], 'linkbtn') } else { - MKEmitter.emit('triggerBtnId', card.setting.linkbtn, [data]) + MKEmitter.emit('triggerBtnId', card.setting.linkbtn, data.$$empty ? [] : [data]) } } } @@ -147,15 +147,15 @@ doubleClick = () => { const { card, data, cards } = this.props - if (card.setting.click !== 'button' || card.setting.clickType !== 'multi') return + if (card.setting.click !== 'button' || card.setting.clickType !== 'multi' || data.$disabled) return if (card.setting.linkbtn) { if (data.$$type === 'extendCard') { - MKEmitter.emit('triggerBtnId', card.setting.linkbtn, []) + MKEmitter.emit('triggerBtnId', card.setting.linkbtn, data.$$selectedData || []) } else if (cards.subtype === 'datacard') { MKEmitter.emit('triggerBtnId', card.setting.linkbtn, [data], 'linkbtn') } else { - MKEmitter.emit('triggerBtnId', card.setting.linkbtn, [data]) + MKEmitter.emit('triggerBtnId', card.setting.linkbtn, data.$$empty ? [] : [data]) } } } @@ -174,14 +174,4 @@ } } -const mapStateToProps = (state) => { - return { - permMenus: state.permMenus - } -} - -const mapDispatchToProps = () => { - return {} -} - -export default connect(mapStateToProps, mapDispatchToProps)(CardBoxComponent) \ No newline at end of file +export default CardBoxComponent \ No newline at end of file -- Gitblit v1.8.0