| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208 |
- import Vue from 'vue';
- import Vuex from 'vuex';
- import fa from "element-ui/src/locale/lang/fa";
- Vue.use(Vuex);
- /**
- * 设置全局访问的state对象
- store
- */
- const state = {
- user_info: localStorage.getItem('user'), //用户(客服)信息
- sessionList: [],//会话列表
- offlineList: [],//离线列表
- current_session: [],//当前会话详情信息
- sessionType: 1,//选择列表状态默认未1(1是会话中,2是离线)
- data_num: 0,//定位当前会话,默认是0
- navState: localStorage.getItem('titleActive'),//导航状态
- session_name: '',//当前会话用户名
- session_message: '',//接收会话信息
- stateValue: '',//状态值
- is_init: false,//初始化,
- new_drawer: false, //显示消息中心
- session_user_info: {},//当前会话用户信息
- socket_open: false,// socket链接状态
- evaluate_id: 0,//访客接入是否评价状态
- megnum: 0,
- meg: false,
- }
- /**
- * 实时监听state里面值的变法(最新变法)
- */
- const getters = {
- get_user_info(state) {
- // console.log(state.user_info);
- return state.user_info ? state.user_info : '';
- },
- get_session(state) {
- return state.sessionList;
- },
- get_offline(state) {
- return state.offlineList;
- },
- get_current(state) {
- return state.current_session;
- },
- get_type(state) {
- return state.sessionType;
- },
- get_num(state) {
- return state.data_num;
- },
- get_navState(state) {
- return state.navState;
- },
- get_session_name(state) {
- return state.session_name;
- },
- get_session_message(state) {
- return state.session_message;
- },
- get_stateValue(state) {
- return state.stateValue;
- },
- get_is_init(state) {
- return state.is_init;
- },
- get_drawer(state) {
- return state.new_drawer;
- },
- get_session_user(state) {
- return state.session_user_info;
- },
- get_socket_open(state) {
- return state.socket_open;
- },
- get_evaluate_id(state) {
- return state.evaluate_id;
- },
- get_megnum(state) {
- return state.megnum;
- },
- get_meg(state, val) {
- return state.meg;
- },
- }
- /**
- * 设置对外可调用的方法
- */
- const mutations = {
- new_user_info(state, val) {
- state.user_info = val;
- localStorage.setItem('user', JSON.stringify(val));
- },
- new_session(state, val) {
- state.sessionList = val;
- },
- new_offline(state, val) {
- state.offlineList = val;
- },
- new_current(state, val) {
- state.current_session = val;
- },
- new_type(state, val) {
- state.sessionType = val;
- },
- new_num(state, val) {
- state.data_num = val;
- },
- new_navState(state, val) {
- state.navState = val;
- localStorage.setItem('titleActive', val);
- },
- new_session_name(state, val) {
- state.session_name = val;
- },
- new_session_message(state, val) {
- state.session_message = val;
- },
- new_stateValue(state, val) {
- state.stateValue = val;
- },
- new_is_init(state, val) {
- state.is_init = val;
- },
- new_drawer(state, val) {
- state.new_drawer = val;
- },
- new_session_user(state, val) {
- state.session_user_info = val;
- },
- new_socket_open(state, val) {
- state.socket_open = val;
- },
- new_evaluate_id(state, val) {
- state.evaluate_id = val;
- },
- new_megnum(state, val) {
- state.megnum = val;
- },
- new_meg(state, val) {
- state.meg = val;
- },
- }
- /**
- * 这里面的方法是用来异步触发mutations里面的方法
- */
- const actions = {
- SET_USER(context, val) {
- context.commit('new_user_info', val)
- },
- SET_SESSION(context, val) {
- context.commit('new_session', val);
- },
- SET_OFFLINE(context, val) {
- context.commit('new_offline', val);
- },
- SET_CURRENT(context, val) {
- context.commit('new_current', val);
- },
- SET_TYPE(context, val) {
- context.commit('new_type', val);
- },
- SET_NUM(context, val) {
- context.commit('new_num', val);
- },
- SET_NAVSTATE(context, val) {
- context.commit('new_navState', val);
- },
- SET_SESSION_NAME(context, val) {
- context.commit('new_session_name', val);
- },
- SET_SESSION_MESSAGE(context, val) {
- context.commit('new_session_message', val);
- },
- SET_STATEVALUE(context, val) {
- context.commit('new_stateValue', val);
- },
- SET_IS_INIT(context, val) {
- context.commit('new_is_init', val);
- },
- SET_DRAWER(context, val) {
- context.commit('new_drawer', val);
- },
- SET_SESSSION_USER(context, val) {
- context.commit('new_session_user', val);
- },
- SET_SOCKET_OPEN(context, val) {
- context.commit('new_socket_open', val);
- },
- SET_EVALUATE_ID(context, val) {
- context.commit('new_evaluate_id', val);
- },
- SET_MEGNNUM(context, val) {
- context.commit('new_megnum', val);
- },
- SET_MEG(context, val) {
- context.commit('new_meg', val);
- }
- }
- const store = new Vuex.Store({
- state,
- getters,
- mutations,
- actions
- });
- export default store;
|