zoo-frontend/src/store/index.js

153 lines
4.4 KiB
JavaScript

import {createStore} from "vuex";
import {copy, generateAnimals, generateArchives, generateBreedingPlans, generateUsers} from "@/utils/common.js";
const actions = {
//获取登录用户
getLoginUser(context, user) {
//此处接入后端登录接口验证登录用户名和密码,验证通过方可通行
//密码错误
if (false) {
return ElMessage({
message: '用户名不存在或密码错误',
type: 'error',
})
}
//登录成功
context.commit('updateLoginUser', user);//存储登录用户,这里拉取远程登录的用户作为参数
},
//获取用户数据
getUsers(context) {
console.log('getUsers')
//通过后端获取数据
// context.commit('updateUsers', generateUsers())
context.commit('updateUsers', context.state.users);
},
//获取动物数据
getAnimals(context) {
console.log('getAnimals')
// 通过后端获取数据
// context.commit('updateAnimals', generateAnimals())
context.commit('updateAnimals', context.state.animals);
},
//获取饲养计划
getBreedingPlans(context) {
console.log('getBreedingPlans')
// 通过后端获取数据
// context.commit('updateBreedingPlans',generateBreedingPlans())
context.commit('updateBreedingPlans',context.state.breedingPlans);
},
//获取动物档案
getArchives(context) {
console.log('getArchives')
// 通过后端获取数据
// context.commit('updateArchives', generateArchives())
context.commit('updateArchives',context.state.archives);
},
//获取监控检测数据
getHealths(context) {
console.log('getHealths')
// 通过后端获取数据
// context.commit('updateHealths', generateHealths())
context.commit('updateHealths',context.state.healths);
}
}
const mutations = {
//更新已登录的用户
updateLoginUser(state, value) {
state.loginUser = value
},
//更新用户集合
updateUsers(state, value) {
state.users = value
//复制一份给前端表格展示,不轻易修改源数据
state.usersTableData = copy(state.users)
},
updateUsersTableData(state, value) {
state.usersTableData = value
},
//更新动物集合
updateAnimals(state, value) {
state.animals = value
//复制一份给前端表格展示,不轻易修改源数据
state.animalsTableData = copy(state.animals)
},
updateAnimalsTableData(state, value) {
state.animalsTableData = value
},
//更新饲养计划
updateBreedingPlans(state, value) {
state.breedingPlans = value
//复制一份给前端表格展示,不轻易修改源数据
state.breedingPlansTableData = copy(state.breedingPlans)
},
updateBreedingPlansTableData(state, value) {
state.breedingPlansTableData = value
},
//更新动物档案
updateArchives(state, value) {
state.archives = value
//复制一份给前端表格展示,不轻易修改源数据
state.archivesTableData = copy(state.archives)
},
updateArchivesTableData(state, value) {
state.archivesTableData = value
},
//更新健康检测
updateHealths(state, value) {
state.healths = value
//复制一份给前端表格展示,不轻易修改源数据
state.healthsTableData = copy(state.healths)
},
updateHealthsTableData(state, value) {
state.healthsTableData = value
}
}
const state = {
//登录用户数据
loginUser: {
id:0,
username: 'user1',
auth: 0
},
// //用户数据
// users: [],
// //动物数据
// animals: [],
// //饲养计划
// breedingPlans:[],
// //动物档案
// archives:[],
//用户数据
users: [],
usersTableData:[],//用户表格数据
//动物数据
animals: [],
animalsTableData:[],//动物表格数据
//饲养计划
breedingPlans:[],
breedingPlansTableData:[],//饲养计划表格数据
//动物档案
archives:[],
archivesTableData:[],//动物档案表格数据
//健康检测
healths:[],
healthsTableData:[],//健康检测表格数据
}
export default createStore({
actions,
mutations,
state
})