import types from "../types"; import api from "../../api/Bill" let period = {}; let summary = {}; let hosting = {}; let record = {}; let receiptList = {}; let receiptDetail = {}; const state = { summary, period, hosting, record, receiptList, receiptDetail }; const getters = { getPeriod(state) { const temp = localStorage.getItem("bill_period"); if (temp) { state.period = JSON.parse(temp); } return state.period; }, getSummary(state) { //state.summary = localStorage.getItem("bill_summary"); return state.summary; }, getHosting(state) { const temp = localStorage.getItem("bill_hosting"); if (temp) { state.hosting = JSON.parse(temp); } return state.hosting; }, getRecord(state) { const temp = localStorage.getItem('record'); if (temp) { state.record = JSON.parse(temp); } return state.record; }, getReceiptDetail(state) { const temp = localStorage.getItem('receiptDetail'); if (temp) { state.receiptDetail = JSON.parse(temp); } return state.receiptDetail; }, getReceiptList(state) { const temp = localStorage.getItem('receiptList'); if (temp) { state.receiptList = JSON.parse(temp); } return state.receiptList; } }; const mutations = { [types.CHANGE_BILL_PERIOD](state, period) { state.period = period; try { localStorage.setItem("bill_period", JSON.stringify(period)); } catch (error) { } }, [types.CHANGE_BILL_SUMMARY](state, summary) { state.summary = summary; try { // localStorage.setItem("bill_summary", summary); } catch (error) { } }, [types.CHANGE_BILL_HOSTING](state, hosting) { state.hosting = hosting; try { localStorage.setItem("bill_hosting", JSON.stringify(hosting)); } catch (error) { } }, [types.CHANGE_RECORD](state, record) { state.record = record; try { //localStorage.setItem("record", JSON.stringify(record)); } catch (error) { } }, [types.CHANGE_RECEIPT_LIST](state, receiptList) { state.receiptList = receiptList; try { localStorage.setItem("receiptList", JSON.stringify(receiptList)); } catch (error) { } }, [types.CHANGE_RECEIPT_DETAIL](state, receiptDetail) { state.receiptDetail = receiptDetail; try { localStorage.setItem("receiptDetail", JSON.stringify(receiptDetail)); } catch (error) { } }, }; const actions = { loadBillPeriod({ commit }) { return new Promise((resolve, reject) => { api.getPeriod() .then(res => { if (res && res.status) { period = res.data; commit(types.CHANGE_BILL_PERIOD, period); resolve(period); } else { reject(res.message) } }); }); }, loadBillSummary({ commit }, param) { return new Promise((resolve, reject) => { api.getBillSummary(param.accountId) .then(res => { if (res && res.status) { summary = res.data; commit(types.CHANGE_BILL_SUMMARY, summary); resolve(summary); } else { reject(res.message) } }); }); }, loadBillHosting({ commit }, param) { return new Promise((resolve, reject) => { api.getBillHosting(param.accountId) .then(res => { if (res && res.status) { hosting = res.data; commit(types.CHANGE_BILL_HOSTING, hosting); resolve(hosting); } else { reject(res.message) } }); }); }, loadRecord({ commit }, param) { return new Promise((resolve, reject) => { api.getRecord(param.accountId, param.page, param.pageSize) .then(res => { if (res && res.status) { record = res.data; commit(types.CHANGE_RECORD, record); resolve(record); } else { reject(res.message) } }); }); }, loadReceiptList({ commit }, accountId) { return new Promise((resolve, reject) => { api.getReceiptList(accountId) .then(res => { if (res && res.status) { receiptList = res.data; commit(types.CHANGE_RECEIPT_LIST, receiptList); resolve(receiptList); } else { reject(res.message) } }); }); }, loadReceiptDetail({ commit }, param) { return new Promise((resolve, reject) => { api.getReceiptDetail(param.accountId, param.type) .then(res => { if (res && res.status) { receiptDetail = res.data; commit(types.CHANGE_RECEIPT_DETAIL, receiptDetail); resolve(receiptDetail); } else { reject(res.message) } }); }); } }; // 最后统一导出 export default { state, getters, actions, mutations };