From 5046d0d13dc6a8563b8e54e31913bc44cfa1072f Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 26 四月 2022 19:23:18 +0800 Subject: [PATCH] 2022-04-26 --- src/components/normalform/modalform/mkTable/index.jsx | 27 ++++++++++++++++++++++++--- 1 files changed, 24 insertions(+), 3 deletions(-) diff --git a/src/components/normalform/modalform/mkTable/index.jsx b/src/components/normalform/modalform/mkTable/index.jsx index 2760640..c5ae0e9 100644 --- a/src/components/normalform/modalform/mkTable/index.jsx +++ b/src/components/normalform/modalform/mkTable/index.jsx @@ -3,9 +3,10 @@ import { fromJS } from 'immutable' import { DndProvider, DragSource, DropTarget } from 'react-dnd' import { Table, Input, InputNumber, Popconfirm, Form, Select, Radio, Cascader, notification, Typography, Button } from 'antd' -import { PlusOutlined, EditOutlined, DeleteOutlined } from '@ant-design/icons' +import { PlusOutlined, EditOutlined, DeleteOutlined, ArrowRightOutlined } from '@ant-design/icons' import Utils from '@/utils/utils.js' +import MKEmitter from '@/utils/events.js' import ColorSketch from '@/mob/colorsketch' import asyncComponent from '@/utils/asyncComponent' import './index.scss' @@ -86,8 +87,8 @@ return <MkEditIcon allowClear/> } else if (inputType === 'select') { return ( - <Select> - {options.map((item, i) => (<Select.Option key={i} value={item.field || item.value}> {item.label || item.text} </Select.Option>))} + <Select showSearch filterOption={(input, option) => option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0}> + {options.map((item, i) => (<Select.Option key={i} value={item.field || item.value}>{item.label || item.text}</Select.Option>))} </Select> ) } else if (inputType === 'multiStr') { @@ -165,6 +166,7 @@ } UNSAFE_componentWillMount () { + let actions = this.props.actions || [] let columns = fromJS(this.props.columns).toJS() let operation = { @@ -196,6 +198,7 @@ <span className="danger"><DeleteOutlined /></span> </Popconfirm> : null} {editingKey !== '' ? <span className="danger"><DeleteOutlined /></span> : null} + {actions.includes('view') ? <span className="copy" onClick={() => {editingKey === '' && this.changeMenu(record.menu)}}><ArrowRightOutlined /></span> : null} </div> ) } @@ -214,6 +217,24 @@ // return !is(fromJS(this.state), fromJS(nextState)) // } + changeMenu = (MenuId) => { + if (MenuId === 'IM') { + if (!sessionStorage.getItem('instantMessage')) return + + let param = { + MenuID: sessionStorage.getItem('instantMessage'), + copyMenuId: '', + type: 'view' + } + + param = window.btoa(window.encodeURIComponent(JSON.stringify(param))) + + MKEmitter.emit('changeEditMenu', {routerUrl: '/imdesign/' + param}) + } else { + MKEmitter.emit('changeEditMenu', {MenuID: MenuId}) + } + } + isEditing = record => record.uuid === this.state.editingKey cancel = () => { -- Gitblit v1.8.0