| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174 |
- import { login, mobile_login } from "@/api/auth/login"
- import { register, registerMobile } from "@/api/auth/register"
- import { getToken, setToken, removeToken } from "@/utils/auth"
- import { memberDetail } from "@/api/member/member"
- import { memberInfo } from "@/api/member/index"
- const state = {
- token: getToken(),
- autoLoginRange: 0,
- member:''
- }
- const mutations = {
- SET_TOKEN: (state, token) => {
- state.token = token
- },
- SET_AUTOLOGIN_FLAG: (state, autologinRange) => {
- state.autoLogin = autologinRange
- },
- SET_MEMBER: (state, member) => {
- if(typeof member == 'object'){
- state.member = {};
- Object.assign(state.member,member)
- }else{
- state.member = member;
- }
- }
- }
- const actions = {
- login({ commit }, userInfo) {
- const { username, password, captcha_id, captcha_code, autoLoginRange } = userInfo
- return new Promise((resolve, reject) => {
- return login({ username, password, captcha_id, captcha_code, autoLoginRange })
- .then(res => {
- const { code, message, data } = res
- if (code == 0) {
- commit("SET_TOKEN", data.token)
- if (userInfo.autoLoginRange !== undefined) {
- commit("SET_AUTOLOGIN_FLAG", userInfo.autoLoginRange)
- }
- setToken(data.token, userInfo.autoLoginRange)
- resolve(res)
- }
- reject()
- })
- .catch(_err => {
- reject(_err)
- })
- })
- },
- mobile_login({ commit }, userInfo) {
- const { mobile, key, code } = userInfo
- return new Promise((resolve, reject) => {
- return mobile_login({ mobile, key, code })
- .then(res => {
- const { code, message, data } = res
- if (code == 0) {
- commit("SET_TOKEN", data.token)
- setToken(data.token, userInfo.autoLoginRange)
- resolve(res)
- }
- reject()
- })
- .catch(_err => {
- reject(_err)
- })
- })
- },
- remove_token({ commit }) {
- commit("SET_TOKEN", "")
- removeToken()
- },
- // 账号密码
- register_token({ commit }, userInfo) {
- const { username, password, captcha_id, captcha_code } = userInfo
- return new Promise((resolve, reject) => {
- return register({ username, password, captcha_id, captcha_code })
- .then(res => {
- const { code, message, data } = res
- if (code == 0) {
- commit("SET_TOKEN", data.token)
- setToken(data.token)
- resolve(res)
- }
- reject()
- })
- .catch(_err => {
- reject(_err)
- })
- })
- commit("SET_TOKEN", "")
- },
- // 手机号
- registerMobile_token({ commit }, userInfo) {
- const { mobile, key, code, captcha_id, captcha_code } = userInfo
- return new Promise((resolve, reject) => {
- return registerMobile({ mobile, key, code, captcha_id, captcha_code })
- .then(res => {
- const { code, message, data } = res
- if (code == 0) {
- commit("SET_TOKEN", data.token)
- setToken(data.token)
- resolve(res)
- }
- reject()
- })
- .catch(_err => {
- reject(_err)
- })
- })
- commit("SET_TOKEN", "")
- },
- auto_login_range({ commit }, autologinRange) {
- commit("SET_AUTOLOGIN_FLAG", autologinRange)
- },
- logout({ commit }) {
- commit("SET_TOKEN", "")
- commit("SET_MEMBER", "")
- removeToken()
- // resolve()
- },
- /**
- * params refresh:1 表示强制请求会员信息
- */
- member_detail({ commit, state }, params) {
- if (!state.member || (params && params.refresh)) {
- return new Promise((resolve, reject) => {
- return memberDetail({ token: getToken() })
- .then(res => {
- const { data } = res
- commit("SET_MEMBER", data)
- return resolve(res)
- })
- .catch(err => {
- return reject(err)
- })
- })
- }
- }
- }
- export default {
- namespaced: true,
- state,
- mutations,
- actions
- }
|