| | |
| | | import React, {Component} from 'react' |
| | | import PropTypes from 'prop-types' |
| | | import { is, fromJS } from 'immutable' |
| | | import { Spin, Tooltip, message, Modal, notification, Switch } from 'antd' |
| | | import { UndoOutlined, RedoOutlined, VerticalAlignTopOutlined, VerticalAlignBottomOutlined, SaveOutlined, ZoomInOutlined, ZoomOutOutlined, OneToOneOutlined, QuestionCircleOutlined, ClearOutlined } from '@ant-design/icons' |
| | | import { Spin, Tooltip, message, Modal, notification, Switch, Button } from 'antd' |
| | | import { UndoOutlined, RedoOutlined, VerticalAlignTopOutlined, VerticalAlignBottomOutlined, ZoomInOutlined, ZoomOutOutlined, OneToOneOutlined, QuestionCircleOutlined, ClearOutlined } from '@ant-design/icons' |
| | | import { Graph, Shape } from '@antv/x6' |
| | | import { Stencil } from '@antv/x6-plugin-stencil' |
| | | import { Transform } from '@antv/x6-plugin-transform' |
| | |
| | | this.mkGraph.zoomTo(1) |
| | | } |
| | | |
| | | close = () => { |
| | | const { config } = this.state |
| | | |
| | | let nodes = this.mkGraph.toJSON() |
| | | |
| | | if (!is(fromJS(nodes.cells), fromJS(this.cells))) { |
| | | confirm({ |
| | | title: '流程图已修改,确定关闭吗?', |
| | | okText: '确定', |
| | | cancelText: '取消', |
| | | onOk() { |
| | | MKEmitter.emit('closeTabView', config.$pageId) |
| | | }, |
| | | onCancel() {} |
| | | }) |
| | | } else { |
| | | MKEmitter.emit('closeTabView', config.$pageId) |
| | | } |
| | | } |
| | | |
| | | save = () => { |
| | | const { BID, plot, status, flowname, flowcode } = this.state |
| | | |
| | |
| | | loading: false, |
| | | status: _status |
| | | }) |
| | | this.cells = nodes.cells |
| | | } else { |
| | | notification.error({ |
| | | top: 92, |
| | |
| | | loading: false, |
| | | status: _status |
| | | }) |
| | | this.cells = nodes.cells |
| | | } |
| | | } else { |
| | | notification.error({ |
| | |
| | | </div> |
| | | <div className="flow-name">{flowname}</div> |
| | | <div className="right-tool"> |
| | | <Tooltip title="启用/停用"> |
| | | <Switch size="large" style={{marginRight: '10px'}} checked={status === 10} onChange={this.changeStatus} /> |
| | | </Tooltip> |
| | | <Tooltip title="保存"> |
| | | <SaveOutlined style={{marginRight: '10px'}} onClick={this.save}/> |
| | | </Tooltip> |
| | | <Switch size="large" checked={status === 10} checkedChildren="启" unCheckedChildren="停" onChange={this.changeStatus} /> |
| | | <Button className="save" onClick={this.save}>保存</Button> |
| | | <Button className="close" onClick={this.close}>关闭</Button> |
| | | </div> |
| | | </div> |
| | | <div className="canvas" style={{width: '100%', minHeight: config.plot.height, height: config.plot.height}} id={config.uuid + 'canvas'}> |