weaver_trunk_cli/pc4mobx/hrmAttendance/components/vacationBalanceReportCopy/CheckboxGroup.js

59 lines
1.3 KiB
JavaScript

import {
inject,
observer
} from 'mobx-react';
import {
WeaCheckbox
} from 'ecCom';
import {
toJS
} from 'mobx';
@inject('hrmVacationBalanceReportCopy')
@observer
class CheckboxGroup extends React.Component {
constructor(props) {
super(props);
}
render() {
const {
hrmVacationBalanceReportCopy
} = this.props, {
checkboxConfig,
checkedItems,
collectCheckedItem,
} = hrmVacationBalanceReportCopy;
return (
<div style={{padding: '2px 0 10px 2px'}}>{
toJS(checkboxConfig).map((opt, i) => {
if (Array.isArray(opt)) {
return (
<div>{opt.map((obj, index) => {
const {
key,
showname
} = obj;
return (
<WeaCheckbox ecId={`${this && this.props && this.props.ecId || ''}_WeaCheckbox@rfr3v6@${index}`} id={key} content={showname} value={checkedItems.includes(key)} onChange={val => collectCheckedItem(val,key)}/>
)
})}</div>
)
} else {
const {
key,
showname
} = opt;
return (
<WeaCheckbox ecId={`${this && this.props && this.props.ecId || ''}_WeaCheckbox@lpuvz8@${i}`} id={key} content={showname} value={checkedItems.includes(key)} onChange={val => collectCheckedItem(val,key)}/>
)
}
})
}</div>
);
}
}
export default CheckboxGroup