From fc8c8d714687a22f711d642d192bd4149f3b7e88 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期一, 22 四月 2024 11:15:14 +0800 Subject: [PATCH] 2024-04-22 --- src/tabviews/zshare/automatic/index.jsx | 60 +++++++++++++++++++++++++++++++++++++++++------------------- 1 files changed, 41 insertions(+), 19 deletions(-) diff --git a/src/tabviews/zshare/automatic/index.jsx b/src/tabviews/zshare/automatic/index.jsx index 6644e5e..d165c28 100644 --- a/src/tabviews/zshare/automatic/index.jsx +++ b/src/tabviews/zshare/automatic/index.jsx @@ -1,14 +1,15 @@ import React, {Component} from 'react' import PropTypes from 'prop-types' import { is, fromJS } from 'immutable' -import { Button, message } from 'antd' +import { Button, message, Tooltip } from 'antd' import MKEmitter from '@/utils/events.js' -import './index.scss' +// import './index.scss' class AutoMatic extends Component { static propTpyes = { autoMatic: PropTypes.object, + tabId: PropTypes.string, config: PropTypes.object } @@ -21,10 +22,18 @@ timer = null UNSAFE_componentWillMount() { - const { autoMatic } = this.props + const { autoMatic, tabId } = this.props if (autoMatic.gap && autoMatic.gap >= 1) { this.setState({gap: autoMatic.gap * 1000}) + } + + if (tabId && tabId === sessionStorage.getItem('autoExecId')) { + sessionStorage.removeItem('autoExecId') + + setTimeout(() => { + this.trigger() + }, 10000) } } @@ -129,7 +138,13 @@ let node = document.querySelector('.ant-modal-confirm-btns >.ant-btn-primary') node && node.click() } else if (autoMatic.OpenType === 'pop') { - MKEmitter.emit('triggerBtnPopSubmit', autoMatic.action) + let node = document.querySelector('.ant-modal-confirm-btns >.ant-btn-primary') + + if (node) { + node.click() + } else { + MKEmitter.emit('triggerBtnPopSubmit', autoMatic.action) + } } }, delay) } @@ -174,7 +189,7 @@ } autoMaticOver = (MenuID) => { - const { config, autoMatic } = this.props + const { config, autoMatic, tabId } = this.props if (!this.state.running || MenuID !== config.MenuID) return @@ -183,16 +198,24 @@ if (autoMatic.onFinish !== 'over') { let interval = autoMatic.interval * 1000 || 10 - if (autoMatic.restart === 'first') { - this.setState({line: 1}) + if (autoMatic.restart === 'refresh') { + this.timer = setTimeout(() => { + sessionStorage.setItem('ThirdMenu', tabId) + sessionStorage.setItem('autoExecId', tabId) + window.location.reload() + }, interval) } else { - this.setState({line: this.state.line + 1}) + if (autoMatic.restart === 'first') { + this.setState({line: 1}) + } else { + this.setState({line: this.state.line + 1}) + } + + this.timer = setTimeout(() => { + this.setState({running: true}) + MKEmitter.emit('autoQueryData', config.MenuID, this.state.line) + }, interval) } - - this.timer = setTimeout(() => { - this.setState({running: true}) - MKEmitter.emit('autoQueryData', config.MenuID, this.state.line) - }, interval) } } @@ -200,12 +223,11 @@ const { running } = this.state return ( - <Button - icon={running ? 'pause' : 'forward'} - shape="circle" - className={'auto-matic ' + (window.GLOB.systemType === 'production' ? 'low' : '')} - onClick={this.trigger} - /> + <div className="tool-wrap"> + <Tooltip placement="left" title="鏃犱汉鍊煎畧"> + <Button icon={running ? 'pause' : 'forward'} shape="circle" onClick={this.trigger}/> + </Tooltip> + </div> ) } } -- Gitblit v1.8.0