UNPKG

ttk-app-core

Version:
114 lines (96 loc) 3.5 kB
import { Map, List, fromJS } from 'immutable' import { reducer as MetaReducer } from 'edf-meta-engine' import utils from 'edf-utils' import config from './config' import * as data from './data' import extend from './extend' 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, allList) => { if (!list) { return this.metaReducer.sf(state, 'data.list', fromJS([])) } 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) item.jkqx = item.jkqx.substring(0, 10) if (item.ybtse != 0) { item.ybtse = utils.number.addThousPos(item.ybtse) } if (item.se != 0) { item.se = utils.number.addThousPos(item.se) } if (item.znje != 0) { item.znje = utils.number.addThousPos(item.znje) } } state = this.metaReducer.sf(state, 'data.allList', fromJS(allList)) return this.metaReducer.sf(state, 'data.list', fromJS(list)) } loadYhxxs = (state, yhxxsList) => { if (!yhxxsList) { return this.metaReducer.sf(state, 'data.paymentMethodList', fromJS([])) } let item for (var i = 0; i < yhxxsList.length; i++) { item = yhxxsList[i] item.sortNo = i+1 } return this.metaReducer.sf(state, 'data.paymentMethodList', fromJS(yhxxsList)) } checkboxChange = (state, total, selectedRows, selectedRowKeys) => { state = this.metaReducer.sf(state, 'data.total', fromJS(total)) state = this.metaReducer.sf(state, 'data.tableCheckbox.selectedRows', fromJS(selectedRows)) state = this.metaReducer.sf(state, 'data.tableCheckbox.selectedRowKeys', fromJS(selectedRowKeys)) return state } //跳到选择缴款方式列表 setPaymentMethod = (state, value) => { if (value == data.PAGETYPE_LJJK) { state = this.metaReducer.sf(state, 'data.other.listClassName', 'ttk-taxapply-app-batchchargeback-content') } if (value == data.PAGETYPE_SFXY) { state = this.metaReducer.sf(state, 'data.other.pureText', '暂无数据') } if (value == data.PAGETYPE_LIST) { state = this.metaReducer.sf(state, 'data.other.pureText', '') } state = this.metaReducer.sf(state, 'data.other.pageType', value) return state } radioBoxChange = (state, text, record, index) => { if(text) return state let paymentMethodList = this.metaReducer.gf(state, 'data.paymentMethodList').toJS() paymentMethodList.map((m, n)=>{ if(n == index){ m.c1 = true }else{ m.c1 = false } }) state = this.metaReducer.sf(state, 'data.paymentMethodList', fromJS(paymentMethodList)) return state } setReceipt = (state, receiptList) => { for (var i = 0; i < receiptList.length; i++) { receiptList[i].se = utils.number.addThousPos(receiptList[i].se) } return this.metaReducer.sf(state, 'data.payInResult', fromJS(receiptList)) } } 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 } }