zoukankan      html  css  js  c++  java
  • 处理分页 当前页>1时, 操作的最后一页的最后一条数据后,向前提前一页

    * handleAgentJobs({ payload }, { call, put }) {
    const data = yield call(handleAgentJob, payload)
    if (data && data.code === 200) {
    yield put({
    type: 'handleAgentAbandonPage',
    payload
    });
    } else {
    message.error(data && data.message || '请求失败');
    }
    },
    * handleAbabonJobs({ payload }, { call, put }) {
    const data = yield call(handleAbandonJob, payload)
    if (data && data.code === 200) {
    yield put({
    type: 'handleAgentAbandonPage',
    payload
    })
    } else {
    message.error(data && data.message || '请求失败');
    }
    },




    * handleAgentAbandonPage({ payload }, { call, put, select }) {
    const pagination = yield select(_ => _.jobManage.agentJobs.pagination);
    let page = pagination.page;
    let total = pagination.total || 10;
    let current = pagination.current || 1;
    if (current > 1 && (total%10 === 1)) { // 当前页>1时, 操作的最后一页的最后一条数据后,向前提前一页
    payload.page = page - 1;
    yield put({
    type: COMMON_LOADING,
    stateKey: 'agentJobs'
    });
    payload.callback && payload.callback();
    let data = '';
    if(payload.status === AGENT_TABS_KEYS.AGENT){
    data = yield call(queryAgentJobs, payload);
    }else if(payload.status === AGENT_TABS_KEYS.NEWS){
    data = yield call(queryNewJobs, payload);
    }else if(payload.status === AGENT_TABS_KEYS.ABANDON){
    data = yield call(queryGiveUpJobs, payload);
    }
    if (data && data.code === 200) {
    yield put({
    type: COMMON_LOAD_SUCCESS,
    stateKey: 'agentJobs',
    result: {
    ...data.data,
    dataMessage: data.message,
    dataCode: data.code
    }
    });

    yield put({
    type: 'setPagination',
    stateKey: 'agentJobs',
    payload: {
    total: data.data.totalElements - 1,
    current: data.data.number || 1
    }
    });
    } else {
    yield put({
    type: COMMON_LOAD_FAIL,
    stateKey: 'agentJobs',
    error: data
    });
    message.error(data && data.message || '请求失败');
    }

    } else {
    payload.callback && payload.callback();
    yield put({
    type: 'setPagination',
    stateKey: 'agentJobs',
    payload: {
    total: total - 1,
    current: current
    }
    });
    }
    }
  • 相关阅读:
    C#学习笔记-代理模式
    SqlDbx连接oracle
    C# 连接oracle,用32位client和64位Client,可能导致结果不同
    PHP&Java 调用C#的WCF
    DevExpress GridControl 控件二表连动
    SSAS 非重复计数
    Corn 表达式
    C# 实现Tree,包含parentId和children
    jsfiddle.net上的记录
    【慕课网实战】Spark Streaming实时流处理项目实战笔记十二之铭文升级版
  • 原文地址:https://www.cnblogs.com/liuerpeng/p/10123377.html
Copyright © 2011-2022 走看看