king
2022-10-17 e8edfdadb561cd83bf6e1c3e00d55b8cc2aee6d5
src/menu/components/share/markcomponent/index.jsx
@@ -1,29 +1,29 @@
import React, {Component} from 'react'
import PropTypes from 'prop-types'
import { fromJS } from 'immutable'
import { Icon, Modal, Col } from 'antd'
import { Modal, Col } from 'antd'
import { AntDesignOutlined } from '@ant-design/icons'
import Utils from '@/utils/utils.js'
import asyncComponent from '@/utils/asyncComponent'
import MarkForm from './markform'
import './index.scss'
import MkIcon from '@/components/mk-icon'
import { minkeIconSystem } from '@/utils/option.js'
import zhCN from '@/locales/zh-CN/model.js'
import enUS from '@/locales/en-US/model.js'
import '@/assets/css/table.scss'
import './index.scss'
const EditTable = asyncComponent(() => import('@/templates/zshare/editTable'))
const { confirm } = Modal
class MarkColumn extends Component {
  static propTpyes = {
    field: PropTypes.any,
    columns: PropTypes.array,  // 显示列
    marks: PropTypes.object,
    onSubmit: PropTypes.func
  }
  state = {
    dict: sessionStorage.getItem('lang') !== 'en-US' ? zhCN : enUS,
    marks: null,
    columns: null,
    visible: false,
@@ -92,7 +92,7 @@
          }
          return (
            <div>{sign[text[0]]} {text[2] ? <Icon type={text[text.length - 1]} /> : null}</div>
            <div>{sign[text[0]]} {text[2] ? <MkIcon type={text[text.length - 1]} /> : null}</div>
          )
        }
      }
@@ -166,7 +166,7 @@
        children: minkeIconSystem.direction.map(cell => {
          return {
            value: cell,
            label: (<Icon type={cell} />)
            label: (<MkIcon type={cell} />)
          }
        })
      },
@@ -176,7 +176,7 @@
        children: minkeIconSystem.hint.map(cell => {
          return {
            value: cell,
            label: (<Icon type={cell} />)
            label: (<MkIcon type={cell} />)
          }
        })
      },
@@ -186,7 +186,7 @@
        children: minkeIconSystem.edit.map(cell => {
          return {
            value: cell,
            label: (<Icon type={cell} />)
            label: (<MkIcon type={cell} />)
          }
        })
      },
@@ -196,7 +196,7 @@
        children: minkeIconSystem.data.map(cell => {
          return {
            value: cell,
            label: (<Icon type={cell} />)
            label: (<MkIcon type={cell} />)
          }
        })
      },
@@ -206,7 +206,7 @@
        children: minkeIconSystem.normal.map(cell => {
          return {
            value: cell,
            label: (<Icon type={cell} />)
            label: (<MkIcon type={cell} />)
          }
        })
      }
@@ -241,6 +241,7 @@
    ]
    if (type === 'line' || type === 'sequence') {
      signs.pop()
      signs.pop()
    } else if (type === 'slider') {
      markColumns = markColumns.filter(col => {
@@ -322,23 +323,23 @@
  }
  render() {
    const { marks, markColumns, visible, options, signs, dict } = this.state
    const { marks, markColumns, visible, options, signs } = this.state
    return (
      <div style={{display: 'inline-block'}}>
        <Icon className="profile" title="标记" type="ant-design" onClick={this.resetMark} />
        <AntDesignOutlined className="profile" title="标记" onClick={this.resetMark} />
        <Modal
          wrapClassName="model-table-column-mark-modal"
          title={'标记设置'}
          visible={visible}
          width={'75vw'}
          maskClosable={false}
          okText={dict['model.submit']}
          okText="提交"
          onOk={this.markSubmit}
          onCancel={() => { this.setState({ visible: false }) }}
          destroyOnClose
        >
          <MarkForm dict={dict} signs={signs} columns={options} markChange={this.markChange}/>
          <MarkForm field={this.props.field} signs={signs} columns={options} markChange={this.markChange}/>
          <Col style={{fontSize: '12px', color: '#757575', paddingLeft: '10px'}} span={24}>注:从上到下,匹配第一个符合条件的标记。</Col>
          <EditTable actions={['edit', 'move', 'del']} data={marks} columns={markColumns} onChange={(marks) => this.setState({marks})}/>
        </Modal>