| | |
| | | visible: false |
| | | } |
| | | |
| | | loaded = false |
| | | |
| | | UNSAFE_componentWillMount () { |
| | | const { data, initdata } = this.props |
| | | let _config = fromJS(this.props.config).toJS() |
| | | let _cols = new Map() |
| | | |
| | | let _data = {$$empty: true} |
| | | let _sync = false |
| | |
| | | BID = BData.$BID || '' |
| | | } |
| | | |
| | | if (_config.setting && _config.wrap.datatype === 'dynamic') { |
| | | if (_config.wrap.datatype === 'dynamic') { |
| | | _sync = _config.setting.sync === 'true' |
| | | |
| | | if (_sync && data) { |
| | |
| | | _data = _data[0] || {$$empty: true} |
| | | } |
| | | _sync = false |
| | | this.loaded = true |
| | | } else if (_sync && initdata) { |
| | | _data = initdata |
| | | if (Array.isArray(_data)) { |
| | | _data = _data[0] || {$$empty: true} |
| | | } |
| | | _sync = false |
| | | this.loaded = true |
| | | } |
| | | } else if (_config.wrap.datatype === 'static') { |
| | | this.loaded = true |
| | | } |
| | | |
| | | _data.$$uuid = _data[_config.setting.primaryKey] || '' |
| | | _data.$$BID = BID || '' |
| | | _data.$$BData = BData || '' |
| | | |
| | | _config.columns.forEach(item => { |
| | | if (item.type !== 'number') return |
| | | _cols.set(item.field, item) |
| | | }) |
| | | |
| | | if (!_config.wrap.height) { // 兼容 |
| | | _config.wrap.height = _config.style.height || '300px' |
| | |
| | | if (card.setting.click) { |
| | | card.style.cursor = 'pointer' |
| | | } |
| | | card.elements = card.elements.map(item => { |
| | | if (item.eleType === 'number' && item.field && _cols.has(item.field) && typeof(item.decimal) !== 'number') { |
| | | item.decimal = _cols.get(item.field).decimal || 0 |
| | | } |
| | | return item |
| | | }) |
| | | }) |
| | | |
| | | _config.wrap.speed = (_config.wrap.speed || 3) * 1000 |
| | |
| | | this.timer = new TimerTask() |
| | | this.timer.init(config.uuid, config.timer, config.timerRepeats, () => { |
| | | this.loadData('timer') |
| | | }) |
| | | } |
| | | |
| | | if (config.$cache && !this.loaded) { |
| | | Api.getLCacheConfig(config.uuid).then(res => { |
| | | if (!res || this.loaded) return |
| | | |
| | | let _data = res[0] |
| | | _data.$$uuid = _data[config.setting.primaryKey] || '' |
| | | |
| | | this.setState({data: _data}) |
| | | }) |
| | | } |
| | | } |
| | |
| | | _data.$$BID = BID || '' |
| | | _data.$$BData = BData || '' |
| | | |
| | | this.loaded = true |
| | | |
| | | this.setState({sync: false, data: _data}, () => { |
| | | if (config.wrap.display === 'modal') { |
| | | this.openModal() |
| | |
| | | } |
| | | } |
| | | |
| | | openModal = () => { |
| | | openModal = (ErrCode) => { |
| | | const { config, data } = this.state |
| | | |
| | | let code = config.wrap.code || ('modal' + config.uuid) |
| | |
| | | localStorage.setItem(code, data.$$uuid || 'true') |
| | | |
| | | Api.getAppVersion(true) |
| | | |
| | | if (ErrCode === '-1') { |
| | | return |
| | | } |
| | | } |
| | | |
| | | setTimeout(() => { |
| | |
| | | this.setState({ |
| | | data: {$$BID: BID || '', $$BData: BData, $$empty: true} |
| | | }) |
| | | |
| | | this.loaded = true |
| | | return |
| | | } |
| | | |
| | |
| | | if (result.status) { |
| | | let _data = {} |
| | | |
| | | this.loaded = true |
| | | if (config.$cache && config.setting.onload !== 'false') { |
| | | Api.writeCacheConfig(config.uuid, result.data || '') |
| | | } |
| | | |
| | | if (!result.data || !result.data[0]) { |
| | | _data.$$empty = true |
| | | } else { |
| | |
| | | loading: false |
| | | }, () => { |
| | | if (config.wrap.display === 'modal') { |
| | | this.openModal() |
| | | this.openModal(result.ErrCode) |
| | | } |
| | | }) |
| | | |
| | | if (config.timer && config.clearField && result.data && result.data[0]) { |
| | | let vals = (config.clearValue || '').split(',') |
| | | if (vals.includes(result.data[0][config.clearField])) { |
| | | this.timer && this.timer.stop() |
| | | } |
| | | } |
| | | } else { |
| | | this.setState({ |
| | | loading: false |