UNPKG

ttk-app-core

Version:
51 lines (43 loc) 1.5 kB
import { Map, List, fromJS } from 'immutable' import { reducer as MetaReducer } from 'edf-meta-engine' import config from './config' import * as data from './data' import moment from 'moment' import extend from './extend' import utils from 'edf-utils' class reducer { constructor(option) { this.metaReducer = option.metaReducer this.extendReducer = option.extendReducer this.config = config.current } init = (state, option) => { return this.metaReducer.init(state, data.getInitState()) } load = (state, list) => { let item for (var i = 0; i < list.length; i++) { item = list[i] item.sortNo = i+1 item.skssqq = item.skssqq.substring(0, 10) item.skssqz = item.skssqz.substring(0, 10) if (item.ynse != 0) { item.ynse = utils.number.addThousPos(item.ynse) } } state = this.metaReducer.sf(state, 'data.list', fromJS(list)) if (list.length > 0) { state = this.metaReducer.sf(state, 'data.other.cancelGridStyle', 'ttk-taxapply-app-declare-cancel-content') } return state } setCancelReason = (state, content) => { return this.metaReducer.sf(state, 'data.form.cancelReason', content) } } export default function creator(option) { const metaReducer = new MetaReducer(option), extendReducer = extend.reducerCreator({ ...option, metaReducer }), o = new reducer({ ...option, metaReducer, extendReducer }) return { ...metaReducer, ...extendReducer.gridReducer, ...o } }