|
@@ -1,15 +1,15 @@
|
|
|
<template>
|
|
|
- <div style="display: flex; flex-direction: column; gap: 20px; height: 100%">
|
|
|
+ <div v-if="Object.keys(Alldata).length > 0" v-loading="AllLoading" style="display: flex; flex-direction: column; gap: 20px; height: 100%">
|
|
|
<div class="top">
|
|
|
<div class="topTit">
|
|
|
<div>
|
|
|
<div>集团简介</div>
|
|
|
<div style="
|
|
|
- height: 4px;
|
|
|
- background-color: #0663fe;
|
|
|
- width: 2rem;
|
|
|
- margin-top: 6px;
|
|
|
- "></div>
|
|
|
+ height: 4px;
|
|
|
+ background-color: #0663fe;
|
|
|
+ width: 2rem;
|
|
|
+ margin-top: 6px;
|
|
|
+ "></div>
|
|
|
</div>
|
|
|
<div>
|
|
|
<img v-if="userinfo.role == 1 && userinfo.type == 1" class="topTitEdit" @click="editregion(0)"
|
|
@@ -17,7 +17,7 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="Topbri">
|
|
|
- {{ fromL.admin.CampusF ? fromL.admin.CampusF.GroupBri : "暂无简介" }}
|
|
|
+ {{ Alldata.admin.CampusF ? Alldata.admin.CampusF.GroupBri : "暂无简介" }}
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
@@ -73,10 +73,10 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="Topbri">
|
|
|
- <el-tooltip class="item" effect="dark" :content="fromL.admin.CampusF ? fromL.admin.CampusF.teacherN.teaBri : '暂无数据'
|
|
|
+ <el-tooltip class="item" effect="dark" :content="Alldata.admin.CampusF ? Alldata.admin.CampusF.teacherN.teaBri : '暂无数据'
|
|
|
" placement="bottom">
|
|
|
<span>
|
|
|
- {{ fromL.admin.CampusF ? fromL.admin.CampusF.teacherN.teaBri : "暂无简介" }}
|
|
|
+ {{ Alldata.admin.CampusF ? Alldata.admin.CampusF.teacherN.teaBri : "暂无简介" }}
|
|
|
</span>
|
|
|
</el-tooltip>
|
|
|
</div>
|
|
@@ -114,12 +114,7 @@
|
|
|
<div class="AppStore" v-for="(i, index) in CampusF.appList" :key="index" @click="openNewWindow(i)">
|
|
|
<!-- <img style="width: 24px;" src="../../../assets/img/bianji.svg" alt=""> -->
|
|
|
<div class="AppStoreCon">
|
|
|
- <img style="
|
|
|
- width: 32px;
|
|
|
- height: 32px;
|
|
|
- margin-bottom: 10px;
|
|
|
- object-fit: contain;
|
|
|
- " :src="i.setIcon ? i.setIcon : i.json.icon" alt="" />
|
|
|
+ <img :src="i.setIcon ? i.setIcon : i.json.icon" alt="" />
|
|
|
<div class="AppStoreConTit">{{ i.name }}</div>
|
|
|
<el-tooltip class="item" effect="dark" :content="i.detail" placement="bottom">
|
|
|
<div class="AppStoreConBri">{{ i.detail }}</div>
|
|
@@ -302,7 +297,7 @@
|
|
|
">
|
|
|
修改
|
|
|
</button>
|
|
|
- <button v-if="fromL.admin.CampusF.appList.length > 1" @click="delFe(scope.$index, 2)" style="
|
|
|
+ <button v-if="Alldata.admin.CampusF.appList.length > 1" @click="delFe(scope.$index, 2)" style="
|
|
|
color: red;
|
|
|
background: none;
|
|
|
border: none;
|
|
@@ -358,11 +353,11 @@ import addCampusDialog from "./addCampusDialog";
|
|
|
import { myMixin } from "@/mixins/mixin.js";
|
|
|
|
|
|
import axios from "@/common/axios.config"; // 引入 axios 配置实例
|
|
|
-import store from "../../../store";
|
|
|
+// import store from "../../../store";
|
|
|
|
|
|
export default {
|
|
|
mixins: [myMixin],
|
|
|
-
|
|
|
+ props:['schId'],
|
|
|
components: {
|
|
|
addCampusDialog,
|
|
|
},
|
|
@@ -394,20 +389,24 @@ export default {
|
|
|
CampusType: 0,
|
|
|
// 0 办学特色 1 师资力量
|
|
|
CampusNum: 0,
|
|
|
+
|
|
|
+ // 整体数据
|
|
|
+ Alldata:{},
|
|
|
+ AllLoading:false
|
|
|
};
|
|
|
},
|
|
|
computed: {
|
|
|
- ...mapGetters(["fromL", "userinfo"]),
|
|
|
+ ...mapGetters(["userinfo"]),
|
|
|
featureList() {
|
|
|
- if (this.fromL.admin.CampusF) {
|
|
|
- return this.fromL.admin.CampusF.feature; // 从 Vuex 的 fromL 中获取 featureList
|
|
|
+ if (this.Alldata.admin.CampusF) {
|
|
|
+ return this.Alldata.admin.CampusF.feature; // 从 Alldata 中获取 featureList
|
|
|
} else {
|
|
|
return [];
|
|
|
}
|
|
|
},
|
|
|
teaData() {
|
|
|
- if (this.fromL.admin.CampusF) {
|
|
|
- return this.fromL.admin.CampusF.teacherN.list; // 从 Vuex 的 fromL 中获取 teaData
|
|
|
+ if (this.Alldata.admin.CampusF) {
|
|
|
+ return this.Alldata.admin.CampusF.teacherN.list; // 从 Alldata 中获取 teaData
|
|
|
} else {
|
|
|
return [];
|
|
|
}
|
|
@@ -438,6 +437,13 @@ export default {
|
|
|
else return ""; // 默认值
|
|
|
},
|
|
|
},
|
|
|
+ watch: {
|
|
|
+ schId(newValue) {
|
|
|
+ console.log('newValue',newValue);
|
|
|
+
|
|
|
+ this.getSchFacility(newValue)
|
|
|
+ },
|
|
|
+ },
|
|
|
methods: {
|
|
|
// 点击区块编辑
|
|
|
async editregion(type) {
|
|
@@ -457,8 +463,8 @@ export default {
|
|
|
// 0 办学特色 1 师资力量
|
|
|
this.CampusNum = 0;
|
|
|
|
|
|
- if (this.fromL.admin.CampusF) {
|
|
|
- this.CampusF = JSON.parse(JSON.stringify(this.fromL.admin.CampusF));
|
|
|
+ if (this.Alldata.admin.CampusF) {
|
|
|
+ this.CampusF = JSON.parse(JSON.stringify(this.Alldata.admin.CampusF));
|
|
|
}
|
|
|
},
|
|
|
// 上移
|
|
@@ -499,13 +505,7 @@ export default {
|
|
|
);
|
|
|
}
|
|
|
},
|
|
|
- // // 添加师资力量
|
|
|
- // add2() {
|
|
|
- // this.CampusType = 1;
|
|
|
- // this.$refs.addCampusDialogRef.open({ bri: "", name: "" }, 1);
|
|
|
|
|
|
- // // this.CampusF.teacherN.list.push()
|
|
|
- // },
|
|
|
// 修改办学特色
|
|
|
editRunS(index, val, type) {
|
|
|
this.CampusData = val;
|
|
@@ -549,7 +549,6 @@ export default {
|
|
|
this.$message.error('已取消删除');
|
|
|
});
|
|
|
},
|
|
|
- moveApp() { },
|
|
|
getAppData() {
|
|
|
return new Promise((resolve) => {
|
|
|
let params = [
|
|
@@ -617,7 +616,7 @@ export default {
|
|
|
setJson() {
|
|
|
this.loading = true;
|
|
|
|
|
|
- let _form = JSON.parse(JSON.stringify(this.fromL));
|
|
|
+ let _form = JSON.parse(JSON.stringify(this.Alldata));
|
|
|
|
|
|
_form.desktop.list = _form.desktop.list.map((i) => i.id);
|
|
|
|
|
@@ -648,7 +647,7 @@ export default {
|
|
|
let params = [
|
|
|
{
|
|
|
functionName: "update_orgOroid_json_byId",
|
|
|
- id: this.userinfo.organizeid,
|
|
|
+ id: this.schId,
|
|
|
ujson: JSON.stringify(_form),
|
|
|
type: "school",
|
|
|
},
|
|
@@ -661,7 +660,8 @@ export default {
|
|
|
this.$message.success("修改权限成功");
|
|
|
// this.$emit("getData");
|
|
|
|
|
|
- await store.dispatch("user/getschPerInfo");
|
|
|
+ this.getSchFacility(this.schId)
|
|
|
+ // await store.dispatch("user/getschPerInfo");
|
|
|
|
|
|
// await addOp({
|
|
|
// uid: this.userid,
|
|
@@ -705,28 +705,149 @@ export default {
|
|
|
);
|
|
|
});
|
|
|
},
|
|
|
- },
|
|
|
- mounted() {
|
|
|
- if (this.fromL.admin.CampusF) {
|
|
|
- this.CampusF = JSON.parse(JSON.stringify(this.fromL.admin.CampusF));
|
|
|
- } else {
|
|
|
- this.CampusF = {
|
|
|
- GroupBri: "暂无简介",
|
|
|
- feature: [
|
|
|
+ async getSchFacility(val){
|
|
|
+ this.AllLoading=true
|
|
|
+ let params = [{
|
|
|
+ functionName: API_CONFIG.ajax_schoolPermission.functionName, // 调用存储过程的名称
|
|
|
+ org: this.userinfo.org, //组织id
|
|
|
+ oid: val, //学校id
|
|
|
+ }];
|
|
|
+
|
|
|
+ console.log('params',params);
|
|
|
+ // 获取学校权限与组织权限,优先使用学校权限,其次使用组织权限
|
|
|
+ // 第一步
|
|
|
+ let res = await axios.post(API_CONFIG.baseUrl, params)
|
|
|
+ let perData= JSON.parse(res.data[0][0].json)
|
|
|
+
|
|
|
+ // 第二步
|
|
|
+ let params2 = [
|
|
|
{
|
|
|
- bri: "暂无简介",
|
|
|
- icon: "https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/tese1745913146000.svg",
|
|
|
- name: "默认标题",
|
|
|
+ functionName: "select_desktopToolByPage",
|
|
|
+ status: "",
|
|
|
+ page: 1,
|
|
|
+ lim: 9999999,
|
|
|
},
|
|
|
- ],
|
|
|
- teacherN: {
|
|
|
- teaBri: "暂无简介",
|
|
|
- list: [{ bri: "默认标题", name: "暂无数据" }],
|
|
|
- },
|
|
|
- appList: [],
|
|
|
- };
|
|
|
+ ];
|
|
|
+ let res2 = await axios.post(API_CONFIG.baseUrl, params2)
|
|
|
+ let toolList = res2.data[0];
|
|
|
+ toolList.forEach((i) => {
|
|
|
+ i.url = JSON.parse(i.url);
|
|
|
+ i.json = JSON.parse(i.json);
|
|
|
+ i.argumentList = JSON.parse(i.argumentList);
|
|
|
+ });
|
|
|
+
|
|
|
+ let params3 = [
|
|
|
+ {
|
|
|
+ functionName: "select_schUsuallyApp",
|
|
|
+ userid: "",
|
|
|
+ stand: "cn",
|
|
|
+ },
|
|
|
+ ];
|
|
|
+ let res3 = await axios.post(API_CONFIG.baseUrl, params3)
|
|
|
+
|
|
|
+
|
|
|
+ let _list = res3.data[0]
|
|
|
+
|
|
|
+ _list.forEach((i) => {
|
|
|
+ i.json = JSON.parse(i.json);
|
|
|
+ });
|
|
|
+
|
|
|
+ let appList = _list;
|
|
|
+
|
|
|
+ // 第三步
|
|
|
+ perData.desktop.list.forEach((i, index) => {
|
|
|
+ let _index = toolList.findIndex((i2) => i == i2.id);
|
|
|
+ if (_index != -1) {
|
|
|
+ perData.desktop.list[index] = toolList[_index];
|
|
|
+ } else {
|
|
|
+ console.log("无工具", i);
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ if (perData.admin.CampusF && perData.admin.CampusF.appList) {
|
|
|
+ perData.admin.CampusF.appList.forEach((i, index) => {
|
|
|
+ let _index = appList.findIndex((i2) => i.id == i2.id);
|
|
|
+
|
|
|
+ if (_index != -1) {
|
|
|
+ let _setData = appList[_index];
|
|
|
+ _setData.setIcon = i.setIcon;
|
|
|
+ perData.admin.CampusF.appList[index] = _setData;
|
|
|
+ } else {
|
|
|
+ console.log("无应用", i);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ perData.admin.CampusF.appList = perData.admin.CampusF.appList.filter(Boolean);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ perData.admin.index.list.forEach((i, index) => {
|
|
|
+ let _index = toolList.findIndex((i2) => i == i2.id);
|
|
|
+ if (_index != -1) {
|
|
|
+ perData.admin.index.list[index] = toolList[_index];
|
|
|
+ perData.admin.index.list[index].hovered = false
|
|
|
+ } else {
|
|
|
+ console.log("无工具", i);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ perData.admin.sidebar.list.forEach((i, index) => {
|
|
|
+ if (i.children) {
|
|
|
+ i.children.forEach((i2, index2) => {
|
|
|
+ let _toolList = JSON.parse(JSON.stringify(toolList))
|
|
|
+ let _index = _toolList.findIndex((i3) => i2 == i3.id);
|
|
|
+
|
|
|
+ if (_index != -1) {
|
|
|
+ perData.admin.sidebar.list[index].children[index2] = _toolList[_index];
|
|
|
+ perData.admin.sidebar.list[index].children[index2].typeId = perData.admin.sidebar.list[index].typeId + "," +_toolList[_index].id;
|
|
|
+ } else {
|
|
|
+ console.log("无工具", i);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ let _toolList = JSON.parse(JSON.stringify(toolList))
|
|
|
+ let _index = _toolList.findIndex((i2) => i == i2.id);
|
|
|
+ if (_index != -1) {
|
|
|
+ perData.admin.sidebar.list[index] = _toolList[_index];
|
|
|
+ perData.admin.sidebar.list[index].typeId =
|
|
|
+ perData.admin.sidebar.list[index].id;
|
|
|
+ } else {
|
|
|
+ console.log("无工具", i);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ console.log('perData',perData);
|
|
|
+
|
|
|
+ this.Alldata = perData
|
|
|
+ this.AllLoading=false
|
|
|
+
|
|
|
+ if (perData.admin.CampusF) {
|
|
|
+ this.CampusF = JSON.parse(JSON.stringify(perData.admin.CampusF));
|
|
|
+ } else {
|
|
|
+ this.CampusF = {
|
|
|
+ GroupBri: "暂无简介",
|
|
|
+ feature: [
|
|
|
+ {
|
|
|
+ bri: "暂无简介",
|
|
|
+ icon: "https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/tese1745913146000.svg",
|
|
|
+ name: "默认标题",
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ teacherN: {
|
|
|
+ teaBri: "暂无简介",
|
|
|
+ list: [{ bri: "默认标题", name: "暂无数据" }],
|
|
|
+ },
|
|
|
+ appList: [],
|
|
|
+ };
|
|
|
+ }
|
|
|
+
|
|
|
+ // commit('SET_FROM', perData)
|
|
|
}
|
|
|
- console.log("CampusF", this.CampusF.appList);
|
|
|
+ },
|
|
|
+ mounted() {
|
|
|
+ this.getSchFacility(this.schId)
|
|
|
+
|
|
|
+ // console.log("CampusF", this.CampusF.appList);
|
|
|
},
|
|
|
};
|
|
|
</script>
|
|
@@ -867,6 +988,13 @@ export default {
|
|
|
box-sizing: border-box;
|
|
|
background: #fff;
|
|
|
}
|
|
|
+.AppStoreCon img{
|
|
|
+ width: 32px;
|
|
|
+ height: 32px;
|
|
|
+ margin-bottom: 10px;
|
|
|
+ object-fit: cover;
|
|
|
+ border-radius: 50%;
|
|
|
+}
|
|
|
|
|
|
.AppAdd {
|
|
|
height: 171px;
|