UNPKG

ttk-app-core

Version:
61 lines (54 loc) 2.57 kB
import { Map, fromJS } from 'immutable' import { reducer as MetaReducer } from 'edf-meta-engine' import config from './config' import { getInitState } from './data' class reducer { constructor(option) { this.metaReducer = option.metaReducer this.config = config.current } init = (state, option) => { const initState = getInitState() return this.metaReducer.init(state, initState) } load = (state, res) => { res.cerficateData.map(item => { item.checked = false }) // state = this.metaReducer.sf(state, 'data.currentAccount', fromJS(res.currentAccount)) state = this.metaReducer.sf(state, 'data.monthList', fromJS(res.monthList)) state = this.metaReducer.sf(state, 'data.dataList', fromJS(res.dataList)) state = this.metaReducer.sf(state, 'data.finalRecord', fromJS(res.finalRecord)) state = this.metaReducer.sf(state, 'data.list', fromJS(res.cerficateData)) return state } setSelectYear = (state, res) => { state = this.metaReducer.sf(state, 'data.selectYear', fromJS(res)) return state } account = (state, res) =>{ state = this.metaReducer.sf(state, 'data.accountCheck', fromJS(res)) if(state.get('data').get('accountCheck')&&state.get('data').get('accountCheck').get('profitLoss') == 0){ state = this.metaReducer.sf(state,'data.profitLossAccount', '损益结转未完成,请处理') }else if(state.get('data').get('accountCheck')&&state.get('data').get('accountCheck').get('profitLoss') == 1){ state = this.metaReducer.sf(state, 'data.profitLossAccount', '损益结转已经完成') } return state } setActiveKey = (state, res) => { state = this.metaReducer.sf(state, 'data.activeKey', fromJS(res)) return state } btnState = (state, res) => { state = this.metaReducer.sf(state, 'data.isBtnShow', fromJS(res.isBtnShow)) state = this.metaReducer.sf(state, 'data.isAgainShow', fromJS(res.isAgainShow)) state = this.metaReducer.sf(state, 'data.isAccountShow', fromJS(res.isAccountShow)) state = this.metaReducer.sf(state, 'data.immediatelyAccountBtn', fromJS(res.immediatelyAccountBtn)) return state } } export default function creator(option) { const metaReducer = new MetaReducer(option), o = new reducer({ ...option, metaReducer }) return { ...metaReducer, ...o } }