个人主页

This commit is contained in:
zhaofang
2022-09-21 16:05:51 +08:00
parent 933fd7e191
commit cbffa341e2
17 changed files with 463 additions and 64 deletions

View File

@@ -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,

View File

@@ -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

View 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
}

View 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
}