import { createAction, NavigationActions } from '../../utils' import * as authService from '../../services/auth' import Theme from '../../containers/common/theme/config' import deviceStorage from '../../utils/storage' export default { namespace: 'orderlist', state: { listData: [], returnReqData: [], isRefreshing: false, totalPages: 2, // 0:隐藏footer 1:已加载完成,没有更多数据 2 :显示加载中 showFoot: 0, returnData: {}, copyData: {}, routerParams: '' }, reducers: { listReducer(state, { payload }) { return { ...state, ...payload } }, filterListReducer(state, { payload }) { return { ...state, ...payload } }, returnList(state, { payload }) { return { ...state, ...payload } }, copyReqReducer(state, { payload }) { return { ...state, ...payload } }, supListReducer(state, { payload }) { return { ...state, ...payload } }, setRouterParamsReducer(state, { payload }) { return { ...state, ...payload } }, }, effects: { *getOrderList(action, { call, put }) { try { let foot = 0, postInfo = {} if (action.payload.forUse !== 'slipOn') { yield put( createAction('listReducer')({ isRefreshing: true, }) ) } else { yield put( createAction('listReducer')({ showFoot: 2, }) ) } customerId = { search_EQ_customer: CUSTOMERINFO.id } postInfo = { ...action.payload.pageInfo, ...action.payload.searchInfo, ...customerId, } if ( action.payload && Object.keys(action.payload).indexOf('touchCode') !== -1 && action.payload.touchCode ) { if (action.payload.touchCode != 0) { postInfo.search_EQ_orderStatus = action.payload.touchCode } } const listdata = yield call(() => authService.getOrderList(postInfo)) if (listdata && listdata.data) { if (action.payload.pageInfo.page >= listdata.data.totalPages) { foot = 1 } yield put( createAction('filterListReducer')({ listData: action.payload.listData.concat(listdata.data.content), totalPages: listdata.data.totalPages, isRefreshing: false, showFoot: foot, }) ) } } catch (error) { yield put( createAction('listReducer')({ isRefreshing: false, }) ) console.log( error, '-----error的完整信息' + '\n' + error.response.data.message, '-----相关错误信息' ) } }, *deleteOrder(action, { call, put }) { try { const delResult = yield call(() => authService.deleteOrder({ id: action.payload.id }) ) if (delResult) { yield put( createAction('getOrderList')({ listData: [], pageInfo: { page: 0, size: action.payload.size }, touchName: action.payload.touchName, searchInfo: action.payload.searchInfo, }) ) } } catch (error) { yield put( createAction('listReducer')({ isRefreshing: false, }) ) console.log( error, '-----error的完整信息' + '\n' + error.response.data.message, '-----相关错误信息' ) } }, // 复制订单 *copyFromReq(action, { call, put }) { try { const data = yield call(() => authService.getOrderCopy({ id: action.payload.id, type: 'copy' }) ) if (data && data.data && Object.keys(data.data).length > 0) { yield put( createAction('orderedit/getProm')({ promInfo: { customerId: CUSTOMERINFO.id, saleOrgId: data.data.saleOrgId, reqOrderItems: data.data.reqOrderItems, }, }) ) yield put( createAction('copyReqReducer')({ copyData: data.data, }) ) } } catch (error) { yield put( createAction('copyReqReducer')({ isRefreshing: false, }) ) console.log( error, '-----error的完整信息' + '\n' + error.response.data.message, '-----相关错误信息' ) } }, // 基于订单退货 returnReqData *returnFromReq(action, { call, put }) { try { const returnReqData = yield call(() => authService.getReturnBaseReq({ id: action.payload.id }) ) // console.log(returnReqData, 87771); if ( returnReqData && returnReqData.data && Object.keys(returnReqData.data).length > 0 ) { // console.log(returnReqData.data); yield put( createAction('returnList')({ returnData: returnReqData.data, }) ) let returnData = action.payload.orderData returnData.reqOrderItems = returnReqData.data.reqOrderItems yield put( NavigationActions.navigate({ routeName: 'ReturnApplication', params: { orderData: JSON.parse(JSON.stringify(returnData)), }, }) ) } } catch (error) { yield put( createAction('returnList')({ isRefreshing: false, }) ) console.log( error, '-----error的完整信息' + '\n' + error.response.data.message, '-----相关错误信息' ) } }, }, }