import Vue from 'vue'
import {
    Toast
} from 'vant';
import {
    services as Services
} from '../../../api/index'
Vue.use(Toast);
const state = {
    classList: [],
    goodList: [],
    loading: false,
    finished: false,
    goodCount: 0
}
const mutations = {
    classListM(state, payload) {
        state.classList = payload.data
    },
    goodList(state, payload) {
        let arr = [];
        for (let k in payload.data) {
            arr.push(payload.data[k])
        }
        state.goodList = state.goodList.concat(arr)
    }
}
const actions = {
    getClasslist({
        commit,
    }) {
        Services.sampleClassList().then((res) => {
            let data = res.data;
            if (data.err_code == 0) {
                commit("classListM", {
                    data: data.data || [],
                });
            } else {
                commit("classListM", {
                    data: [],
                })
            }
        }).catch(function (err) {
            commit("classListM", {
                data: [],
            })
        });
    },
    getGoodList({
        commit
    }, payload) {
        state.loading = true;
        state.finished = false;
        let p = payload.data.p;
        if (p == 1) {
            state.goodList = [];
        }
        let params = {
            ...payload.data,
            limit: 10,
        }
        Services.sampleList(params).then((res) => {
            state.loading = false;
            let data = res.data;
            if (data.err_code == 0) {
                let totalPage = 0;
                if (data.data.total) {
                    totalPage = Math.ceil(data.data.total / 10);
                }
                if (p == totalPage || !totalPage) {
                    state.finished = true;
                }
                if (data.data.total) {
                    commit('goodList', {
                        data: data.data.data
                    })
                }
            } else {
                state.loading = false;
                state.finished = true;
            }
        }).catch(function (err) {
            state.loading = false;
            state.finished = true;
        });
    }
}
export default {
    state,
    actions,
    mutations
}