mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/learning-system-portal.git
synced 2025-12-12 04:16:45 +08:00
个人主页
This commit is contained in:
@@ -21,6 +21,8 @@ const getters = {
|
||||
portalBackUrl: state => state.portal.backUrl,
|
||||
resOwnerMap:state => state.resOwner.resOwnerMap,
|
||||
sysTypeMap:state => state.sysType.sysTypeMap,
|
||||
majorTypeMap:state => state.majorType.majorTypeMap,
|
||||
orgDomainMap:state => state.orgDomain.orgDomainMap,
|
||||
userMsg:state => state.user.msg,
|
||||
messagesBeReviewed:state => state.user.messagesBeReviewed,
|
||||
studyTaskCount:state => state.user.studyTaskCount,
|
||||
|
||||
@@ -9,6 +9,8 @@ import portal from './modules/portal'
|
||||
import getters from './getters'
|
||||
import sysType from './modules/sysType'
|
||||
import resOwner from './modules/resOwner'
|
||||
import majorType from './modules/majorType'
|
||||
import orgDomain from './modules/orgDomain'
|
||||
import pdf from './modules/pdf'
|
||||
|
||||
Vue.use(Vuex)
|
||||
@@ -23,6 +25,8 @@ const store = new Vuex.Store({
|
||||
portal,
|
||||
sysType,
|
||||
resOwner,
|
||||
majorType,
|
||||
orgDomain,
|
||||
pdf
|
||||
},
|
||||
getters
|
||||
|
||||
96
src/store/modules/majorType.js
Normal file
96
src/store/modules/majorType.js
Normal file
@@ -0,0 +1,96 @@
|
||||
import {getToken} from '@/utils/token'
|
||||
// import apiType from '../../api/modules/type.js'
|
||||
import apiDict from "../../api/modules/dict.js";
|
||||
|
||||
const state={
|
||||
majorTypeTree: [], //内容类型
|
||||
majorTypeMap:null,
|
||||
}
|
||||
|
||||
const mutations={
|
||||
setMajorTypeTree: (state, tree) => {
|
||||
state.majorTypeTree = tree
|
||||
},
|
||||
setMajorTypeMap: (state, map) => {
|
||||
state.majorTypeMap = map
|
||||
},
|
||||
}
|
||||
const actions={
|
||||
getMajorTypeTree({commit}) {
|
||||
return new Promise((resolve,reject)=>{
|
||||
if(state.majorTypeTree.length>0){
|
||||
resolve(state.majorTypeTree);
|
||||
}else{
|
||||
let hasData = sessionStorage.getItem('majorTypeTree');
|
||||
if(hasData){
|
||||
let treeData = JSON.parse(hasData);
|
||||
commit('setMajorTypeTree', treeData);
|
||||
resolve(treeData);
|
||||
}else{
|
||||
apiDict.items('major_type').then(res=>{
|
||||
if(res.status === 200) {
|
||||
sessionStorage.setItem('majorTypeTree',JSON.stringify(res.result));
|
||||
commit('setMajorTypeTree', res.result);
|
||||
//转化为map放到状态中
|
||||
let map=new Map();
|
||||
res.result.forEach(item=>{
|
||||
map.set(item.code, item.name);
|
||||
if(item.list && item.list!=''){
|
||||
item.list.forEach(child=>{
|
||||
map.set(child.code, child.name);
|
||||
if(child.list && child.list!=''){
|
||||
child.list.forEach(last=>{
|
||||
map.set(last.code, last.name);
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
commit('setMajorTypeMap', map);
|
||||
resolve(res.result)
|
||||
} else {
|
||||
reject('专业分类获取失败!');
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
loadMajorTypes(context){
|
||||
if(state.majorTypeMap==null){
|
||||
let hasData = sessionStorage.getItem('majorTypeMap');
|
||||
if(hasData){
|
||||
hasData=JSON.parse(hasData);
|
||||
}
|
||||
//console.log(hasData,"hasData");
|
||||
if(hasData && hasData.length>10){
|
||||
let map=new Map();
|
||||
hasData.forEach(item=>{
|
||||
map.set(item.code, item.name);
|
||||
});
|
||||
context.commit('setMajorTypeMap',map);
|
||||
}else{
|
||||
apiDict.items('major_type').then(res=>{
|
||||
if(res.status === 200) {
|
||||
let map=new Map();
|
||||
res.result.forEach(item=>{
|
||||
map.set(item.code, item.name);
|
||||
});
|
||||
//console.log(map,map);
|
||||
sessionStorage.setItem('majorTypeMap',JSON.stringify(res.result));
|
||||
context.commit('setMajorTypeMap', map);
|
||||
} else {
|
||||
console.log('专业分类获取失败!');
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export default {
|
||||
namespaced: true,
|
||||
state,
|
||||
mutations,
|
||||
actions
|
||||
}
|
||||
94
src/store/modules/orgDomain.js
Normal file
94
src/store/modules/orgDomain.js
Normal file
@@ -0,0 +1,94 @@
|
||||
import {getToken} from '@/utils/token'
|
||||
// import apiType from '../../api/modules/type.js'
|
||||
import apiDict from "../../api/modules/dict.js";
|
||||
|
||||
const state={
|
||||
orgDomainTree: [], //内容类型
|
||||
orgDomainMap:null,
|
||||
}
|
||||
|
||||
const mutations={
|
||||
setOrgDomainTree: (state, tree) => {
|
||||
state.orgDomainTree = tree
|
||||
},
|
||||
setOrgDomainMap: (state, map) => {
|
||||
state.orgDomainMap = map
|
||||
},
|
||||
}
|
||||
const actions={
|
||||
getOrgDomainTree({commit}) {
|
||||
return new Promise((resolve,reject)=>{
|
||||
if(state.OrgDomainTree.length>0){
|
||||
resolve(state.OrgDomainTree);
|
||||
}else{
|
||||
let hasData = sessionStorage.getItem('OrgDomainTree');
|
||||
if(hasData){
|
||||
let treeData = JSON.parse(hasData);
|
||||
commit('setOrgDomainTree', treeData);
|
||||
resolve(treeData);
|
||||
}else{
|
||||
apiDict.items('org_domain').then(res=>{
|
||||
if(res.status === 200) {
|
||||
sessionStorage.setItem('OrgDomainTree',JSON.stringify(res.result));
|
||||
commit('setOrgDomainTree', res.result);
|
||||
//转化为map放到状态中
|
||||
let map=new Map();
|
||||
res.result.forEach(item=>{
|
||||
map.set(item.code, item.name);
|
||||
if(item.list && item.list!=''){
|
||||
item.list.forEach(child=>{
|
||||
map.set(child.code, child.name);
|
||||
if(child.list && child.list!=''){
|
||||
child.list.forEach(last=>{
|
||||
map.set(last.code, last.name);
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
commit('setOrgDomainMap', map);
|
||||
resolve(res.result)
|
||||
} else {
|
||||
reject('组织机构获取失败!');
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
loadOrgDomains(context){
|
||||
if(state.orgDomainMap==null){
|
||||
let hasData = sessionStorage.getItem('OrgDomainMap');
|
||||
if(hasData){
|
||||
hasData=JSON.parse(hasData);
|
||||
}
|
||||
if(hasData && hasData.length>10){
|
||||
let map=new Map();
|
||||
hasData.forEach(item=>{
|
||||
map.set(item.code, item.name);
|
||||
});
|
||||
context.commit('setOrgDomainMap',map);
|
||||
}else{
|
||||
apiDict.items('org_domain').then(res=>{
|
||||
if(res.status === 200) {
|
||||
let map=new Map();
|
||||
res.result.forEach(item=>{
|
||||
map.set(item.code, item.name);
|
||||
});
|
||||
sessionStorage.setItem('OrgDomainMap',JSON.stringify(res.result));
|
||||
context.commit('setOrgDomainMap', map);
|
||||
} else {
|
||||
console.log('组织机构获取失败!');
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export default {
|
||||
namespaced: true,
|
||||
state,
|
||||
mutations,
|
||||
actions
|
||||
}
|
||||
Reference in New Issue
Block a user