import React, { Component } from 'react'; import { observer } from 'mobx-react'; import { toJS } from 'mobx'; import { WeaDialog, WeaTransfer, WeaSelect, WeaInputSearch, WeaLocaleProvider } from 'ecCom'; import {Spin} from 'antd'; import {cloneDeep} from 'lodash'; const getLabel = WeaLocaleProvider.getLabel; @observer export default class FieldSetting extends Component { constructor(props) { super(props); this.state = { options: [ { key: "0", selected: true, showname: "" },{ key: "1", selected: false, showname: "" } ], keyFieldOptions: [ { key: "1", selected: true, showname: "" },{ key: "2", selected: false, showname: "" },{ key: "3", selected: false, showname: "" } ], t: new Date().getTime() } } renderItem = (item) => { const { store } = this.props; const {_setRealPath, _realPath, _keyfield, _setKeyField} = store; //departmentid 部门 subcompanyid1 分部 if(['departmentid', 'subcompanyid1'].indexOf(item.id) > -1){ let options = cloneDeep(this.state.options); options[0].showname = item.id === 'departmentid' ? getLabel('18916',"仅本部门") : getLabel('18919',"仅本分部"); options[1].showname = item.id === 'departmentid' ? getLabel('388381',"部门全路径") : getLabel('388382',"分部全路径"); return (
{item.name}
{item.gName}
{_setRealPath(item.id === 'departmentid', v);this.setState({t: new Date().getTime()})}}/>
) }else if(item.id === 'managerid'){ let options = cloneDeep(this.state.keyFieldOptions); options[0].showname = getLabel('714',"编号"); options[1].showname = getLabel('412',"登录名"); options[2].showname = getLabel('25034',"姓名"); return (
{item.name}
{item.gName}
) } return (
{item.name}
{item.gName}
) } render() { const {t} = this.state; const { store } = this.props; const { refreshTransfer, getDialogBtn, getTransferData, selectOptions, _setSelectedGroup, _getSelectedGroup, _filterLeft, _filterRight, _searchField, _onTransChange, fieldSettingEditDialogParams, _selectedKeys, } = store; const {buttons, menus} = getDialogBtn('fieldSettingEdit'); const transferProps = { height: 425, data: getTransferData(), leftHeader: (
{getLabel(83302, '待选')}
{_setSelectedGroup(v);this.setState({t: new Date().getTime()})}}/>
_searchField(v)} onSearch={v => _searchField(v)}/>
), rightHeader: (
{getLabel(83303, '已选')}
_searchField(v, false)} onSearch={v => _searchField(v, false)} />
), renderItem: this.renderItem, filterLeft: (items) => { const groupInfo = _getSelectedGroup(); items = items.filter((item) => { if(groupInfo.key === '0'){ return (_filterLeft === '' ? true : (item.name.indexOf(_filterLeft) != -1)); }else{ return item.gName === groupInfo.showname && (_filterLeft === '' ? true : (item.name.indexOf(_filterLeft) != -1)); } }) return items; }, filterRight: (items) => { items = items.filter((item) => { return _filterRight === '' ? true : (item.name.indexOf(_filterRight) != -1); }) return items; }, onChange: _onTransChange, selectedKeys: _selectedKeys } return ( ) } }