import React from 'react'; import { inject, observer} from 'mobx-react'; import {WeaTop, WeaTab,WeaRightMenu,WeaErrorPage,WeaSearchGroup,WeaFormItem,WeaSelect,WeaAlertPage,} from 'ecCom'; import {Row,Col,Button,Form} from 'antd'; import * as mobx from 'mobx'; import isEmpty from 'lodash/isEmpty'; const toJS = mobx.toJS; import * as PublicFunc from '../util/pulic-func'; window.openFullWindowForXtable = PublicFunc.openFullWindowForXtable; import moment from 'moment'; import {WeaTableNew,WeaSwitch} from 'comsMobx'; import {i18n} from '../public/i18n'; const WeaTable = WeaTableNew.WeaTable; @inject('hrmOnline') @observer class HrmOnline extends React.Component { constructor(props) { super(props); } componentDidMount() { const { hrmOnline } = this.props; hrmOnline.getData(); } onKeyDown = (e) =>{ if ( e.keyCode == 13 && e.target.tagName === "INPUT") { this.props.hrmOnline.doSearch(); this.props.hrmOnline.setShowSearchAd(false) } } onSearchChange = v => { this.props.hrmOnline.form.updateFields({ lastname:{name:'lastname',value:v}, }); } render(){ const { hrmOnline } = this.props; const {title,form,table,showSearchAd,searchParamsAd} = hrmOnline; const formParams = form.getFormParams(); return (
} iconBgcolor='#217346' buttons={this.getTopButtons()} buttonSpace={10} showDropIcon={true} dropMenuDatas={this.getRightMenu()} > hrmOnline.setShowSearchAd(false)} searchsAd={
{this.getSearchs()}
} showSearchAd={showSearchAd} onSearch={hrmOnline.doSearch} onSearchChange={this.onSearchChange} />
); } getSearchs = () => { const { hrmOnline } = this.props; const { form,condition } = hrmOnline; const {isFormInit} = form; let group = []; const formParams = form.getFormParams(); isFormInit && !isEmpty(condition) && condition.map((c, i) =>{ let items = []; c.items.map((fields, j) => { let hide = false; let dom = ; items.push({ com:( {dom} ), colSpan:1, hide: hide }) }); group.push() }); return group; } reRenderColumns = (columns) => { columns.forEach(c=>{ if(c.dataIndex=='lastname'){ c.render = (text, record) => { return this.jumpToHrmCard(record.id)}>{record.lastname} } } else { // c.render = function(text, record){ // let valueSpan = record[c.dataIndex + "span"] !== undefined ? record[c.dataIndex + "span"] : record[c.dataIndex]; // return // } } }) return columns; } onOperatesClick = (record,index,operate,flag,argumentString) => { const { hrmOnline } = this.props; const fn = operate.href ? operate.href.split(':')[1].split('(')[0] : ''; const id = record.id ? record.id : ''; if(fn == 'forcedOffline'){ hrmOnline.forcedOffline(id); }else{ PublicFunc[fn](id); } } jumpToHrmCard = (hrmId) => { PublicFunc.jumpToHrmCard(hrmId); } getRightMenu = () => { const { hrmOnline } = this.props; const arr = [{ icon: , content:i18n.button.search(), key: 'search', onClick: hrmOnline.doSearch }, { icon: , content:i18n.button.columnVisibleSetting(), key: 'definedColumn', onClick: this.definedColumn } ]; return arr; } onRightMenuClick = (key) => { const { hrmOnline } = this.props; switch(key){ case '0': hrmOnline.doSearch(); break; case '1': this.definedColumn(); break; } } getSelectedRowKeys = () => { const { hrmOnline } = this.props; const { table } = hrmOnline; const selectedRowKeys = table.selectedRowKeys; return selectedRowKeys; } definedColumn = () => { const { hrmOnline } = this.props; const { table} = hrmOnline; table.setColSetVisible(true); table.tableColSet(true); } getTabButtonsAd = () => { const { hrmOnline } = this.props; const { form,searchParamsAd } = hrmOnline; return [ (), (), () ] } getTopButtons = () => { const { hrmOnline } = this.props; return [ () ] } } export default HrmOnline