import Vue from 'vue' import {Toast} from 'vant'; import Util from "../../../util"; import {services as Services} from '../../../api/index' var qs = require('qs'); Vue.use(Toast); const state = { loginUrl:'/v3/login?referer='+encodeURIComponent(window.location.href),//登录地址 userInfo:"", loading:false, getUserCurrentPoint:0,//积分 isSignInToday:false,//是否签到 isSignInTodayStateGo:false,//签到后是否执行获取积分动作 checkInfoState:false,//资料是否完善 navlist:[],//奖品分类列表名称 listdata:[]//所有奖品数据 } const mutations = { getPointPrize(state, payload){ var list_=payload.data||[]; if(list_.length>0){ //重新排列数据 var data_={},prise_type=[],prise_type_text=[],prise_type_list=[],prize_sort_arr=[]; for(var p=0;p<list_.length;p++){ prise_type.push(list_[p]['prize_type']) prize_sort_arr.push(list_[p]['prize_sort']) prise_type_text.push((list_[p]['prize_type_text']).replace(/\s/g,"")) } prise_type=Util.distinct(prise_type); prise_type_text=Util.distinct(prise_type_text); prize_sort_arr=Util.distinct(prize_sort_arr); for(var a=0;a<prise_type.length;a++){ prise_type_list.push({ prise_type:prise_type[a], prise_type_text:prise_type_text[a], prize_sort:prize_sort_arr[a] }) } prise_type_list=prise_type_list.sort(Util.compare('prise_type',1)) state.navlist=prise_type_list; state.listdata=list_ } } } const actions = { getPointPrize({commit},payload){ state.loading=true; var params = { limit: 1000 } Services.getPointPrize(qs.stringify(params)).then((res) => { state.loading=false; let data = res.data; if (data.errcode == 0) { commit({ type: 'getPointPrize', data: data.data.data }); } }).catch(function (err) { state.loading = false; }); }, loginCheckp({commit}, payload) { Services.loginCheck().then((res) => { let data = res.data; if (data.err_code == 0||data.err_code==11030) { state.userInfo=data.data; } }) }, getUserCurrentPoint({commit}, payload) { var params = { user_id: Util.getCookie("Yo4teW_uid") } Services.getUserCurrentPoint(qs.stringify(params)).then((res) => { let data = res.data; if (data.errcode == 0) { state.getUserCurrentPoint=data.data; } }) }, isSignInToday({commit}, payload) { Services.isSignInToday().then((res) => { let data = res.data; if (data.err_code == 0) { state.isSignInToday=data.data; } }) }, signIn({commit}, payload) { state.loading=true; Services.signIn().then((res) => { state.loading=false; let data = res.data; if (data.err_code == 0) { state.isSignInToday=true; state.isSignInTodayStateGo=true; Toast({ message: '签到完成,恭喜您获得100个积分!', duration: 3000 }); } }).catch(function (err) { state.loading = false; }); }, checkMktScore({commit}, payload) { state.loading=true; Services.checkMktScore().then((res) => { state.loading=false; let data = res.data; if (data.err_code == 0) { if(data.data==1){ state.checkInfoState=true; }else{ state.checkInfoState=false; } } }).catch(function (err) { state.loading = false; }); }, exchangePrize({commit}, payload) { state.loading=true; var params = { user_id: Util.getCookie("Yo4teW_uid"), point_prize_id:payload.point_prize_id } Services.exchangePrize(qs.stringify(params)).then((res) => { state.loading=false; let data = res.data; if (data.errcode == 0) { var point_exchange_id_=data.data.point_exchange_id; window.location.href='/h5/view/#/pointchange?point_exchange_id='+point_exchange_id_+'&prize_type='+data.data.prize_type }else{ Toast({ message: data.errmsg, duration: 2500 }); } }).catch(function (err) { state.loading = false; }); }, } const getters = {} export default { state, mutations, actions, getters }