| | |
| | | import { is, fromJS } from 'immutable' |
| | | import { connect } from 'react-redux' |
| | | import { Spin, notification, Button } from 'antd' |
| | | // import moment from 'moment' |
| | | |
| | | import Api from '@/api' |
| | | import Utils from '@/utils/utils.js' |
| | |
| | | } |
| | | |
| | | UNSAFE_componentWillMount () { |
| | | const { data, BID, config } = this.props |
| | | const { data, BID } = this.props |
| | | let config = fromJS(this.props.config).toJS() |
| | | |
| | | let _data = null |
| | | let _sync = false |
| | |
| | | } |
| | | } else { |
| | | _data = {} |
| | | } |
| | | |
| | | if (!config.wrap.groupLabel) { |
| | | if (config.subcards.length > 1) { |
| | | config.wrap.groupLabel = 'show' |
| | | } else { |
| | | config.wrap.groupLabel = 'hidden' |
| | | } |
| | | } |
| | | |
| | | let roleId = sessionStorage.getItem('role_id') || '' |
| | |
| | | } |
| | | |
| | | this.setState({sync: false, data: _data, group: _group, step: _group.sort - 1,}) |
| | | } else if (nextProps.mainSearch && !is(fromJS(this.props.mainSearch), fromJS(nextProps.mainSearch))) { |
| | | if (config.wrap.datatype !== 'static' && config.setting.syncRefresh === 'true') { |
| | | this.setState({}, () => { |
| | | this.loadData() |
| | | }) |
| | | } |
| | | } else if (config.setting.syncRefresh && nextProps.mainSearch && !is(fromJS(this.props.mainSearch), fromJS(nextProps.mainSearch))) { |
| | | this.setState({}, () => { |
| | | this.loadData() |
| | | }) |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | if (config.wrap.datatype === 'static' || (config.setting.supModule && !BID)) { |
| | | this.setState({ |
| | | data: {}, |
| | | loading: false |
| | | data: {} |
| | | }) |
| | | btn && this.execSuccess(btn) |
| | | return |
| | | } |
| | | |
| | | let searches = [] |
| | | if (mainSearch && mainSearch.length > 0) { // 主表搜索条件 |
| | | let keys = searches.map(item => item.key) |
| | | mainSearch.forEach(item => { |
| | | if (!keys.includes(item.key)) { |
| | | searches.push(item) |
| | | } |
| | | }) |
| | | } |
| | | let searches = config.setting.useMSearch && mainSearch ? mainSearch : [] |
| | | |
| | | let requireFields = searches.filter(item => item.required && (!item.value || item.value.length === 0)) |
| | | let requireFields = searches.filter(item => item.required && item.value === '') |
| | | if (requireFields.length > 0) { |
| | | this.setState({ |
| | | loading: false |
| | | }) |
| | | btn && this.execSuccess(btn) |
| | | return |
| | | } |
| | |
| | | <Spin /> |
| | | </div> : null |
| | | } |
| | | {config.subcards.length > 1 ? <div className="mk-normal-form-title"> |
| | | {config.wrap.groupLabel !== 'hidden' ? <div className="mk-normal-form-title"> |
| | | {config.subcards.map(card => ( |
| | | <div key={card.uuid} className={'form-title' + (card.sort <= step ? ' active' : '')}> |
| | | <span className="form-sort" style={{background: config.wrap.color}}>{card.sort}</span> |