| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- import consts from '@/consts'
- import { queryCompilationList, queryProvinceList } from '@/services/product'
- import { roadpricingEnum } from './index'
- export default {
- namespace: 'cloud',
- state: {
- compilation: {
- [roadpricingEnum.BUILDING]: [],
- [roadpricingEnum.CURING]: [],
- [roadpricingEnum.GS]: [],
- [roadpricingEnum.HIGHWAY]: []
- },
- province: {
- [roadpricingEnum.BUILDING]: [],
- [roadpricingEnum.CURING]: [],
- [roadpricingEnum.GS]: [],
- [roadpricingEnum.HIGHWAY]: []
- }
- },
- effects: {
- *fetchCompilation({ payload }, { call, put }) {
- const response = yield call(queryCompilationList, payload)
- if (response && response.code === consts.RET_CODE.SUCCESS) {
- yield put({
- type: 'changeCompilationState',
- payload: {
- key: payload?.projectPype,
- data: response.data
- }
- })
- }
- },
- *fetchProvince({ payload }, { call, put }) {
- const response = yield call(queryProvinceList, payload)
- if (response && response.code === consts.RET_CODE.SUCCESS) {
- yield put({
- type: 'changeProvinceState',
- payload: {
- key: payload?.projectPype,
- data: response.data.map((item, idx) => ({ label: item, value: idx + 1 }))
- }
- })
- }
- }
- },
- reducers: {
- changeCompilationState(state, action) {
- return {
- ...state,
- compilation: { ...state.compilation, [action.payload.key]: action.payload.data }
- }
- },
- changeProvinceState(state, action) {
- return {
- ...state,
- province: { ...state.province, [action.payload.key]: action.payload.data }
- }
- }
- }
- }
|