Browse Source

权限接口调式中

hzj18279462576@163.com 2 years ago
parent
commit
a7256c4bf0

+ 52 - 38
package-lock.json

@@ -10,9 +10,9 @@
       "integrity": "sha512-DI4a1oZuf8wC+oAJA9RW6ga3Zbe8RZFt7kD9i4qAspz3I/yHet1VvC3DiSy/fsUvv5pvJuNPh0LPOdCcqinDPg=="
       "integrity": "sha512-DI4a1oZuf8wC+oAJA9RW6ga3Zbe8RZFt7kD9i4qAspz3I/yHet1VvC3DiSy/fsUvv5pvJuNPh0LPOdCcqinDPg=="
     },
     },
     "@ctrl/tinycolor": {
     "@ctrl/tinycolor": {
-      "version": "3.5.0",
-      "resolved": "https://registry.npmmirror.com/@ctrl/tinycolor/-/tinycolor-3.5.0.tgz",
-      "integrity": "sha512-tlJpwF40DEQcfR/QF+wNMVyGMaO9FQp6Z1Wahj4Gk3CJQYHwA2xVG7iKDFdW6zuxZY9XWOpGcfNCTsX4McOsOg=="
+      "version": "3.6.1",
+      "resolved": "https://registry.npmmirror.com/@ctrl/tinycolor/-/tinycolor-3.6.1.tgz",
+      "integrity": "sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA=="
     },
     },
     "@easydarwin/easyplayer": {
     "@easydarwin/easyplayer": {
       "version": "5.0.7",
       "version": "5.0.7",
@@ -179,18 +179,27 @@
       "optional": true
       "optional": true
     },
     },
     "@floating-ui/core": {
     "@floating-ui/core": {
-      "version": "1.2.0",
-      "resolved": "https://registry.npmmirror.com/@floating-ui/core/-/core-1.2.0.tgz",
-      "integrity": "sha512-GHUXPEhMEmTpnpIfesFA2KAoMJPb1SPQw964tToQwt+BbGXdhqTCWT1rOb0VURGylsxsYxiGMnseJ3IlclVpVA=="
+      "version": "1.6.0",
+      "resolved": "https://registry.npmmirror.com/@floating-ui/core/-/core-1.6.0.tgz",
+      "integrity": "sha512-PcF++MykgmTj3CIyOQbKA/hDzOAiqI3mhuoN44WRCopIs1sgoDoU4oty4Jtqaj/y3oDU6fnVSm4QG0a3t5i0+g==",
+      "requires": {
+        "@floating-ui/utils": "^0.2.1"
+      }
     },
     },
     "@floating-ui/dom": {
     "@floating-ui/dom": {
-      "version": "1.2.0",
-      "resolved": "https://registry.npmmirror.com/@floating-ui/dom/-/dom-1.2.0.tgz",
-      "integrity": "sha512-QXzg57o1cjLz3cGETzKXjI3kx1xyS49DW9l7kV2jw2c8Yftd434t2hllX0sVGn2Q8MtcW/4pNm8bfE1/4n6mng==",
+      "version": "1.6.3",
+      "resolved": "https://registry.npmmirror.com/@floating-ui/dom/-/dom-1.6.3.tgz",
+      "integrity": "sha512-RnDthu3mzPlQ31Ss/BTwQ1zjzIhr3lk1gZB1OC56h/1vEtaXkESrOqL5fQVMfXpwGtRwX+YsZBdyHtJMQnkArw==",
       "requires": {
       "requires": {
-        "@floating-ui/core": "^1.2.0"
+        "@floating-ui/core": "^1.0.0",
+        "@floating-ui/utils": "^0.2.0"
       }
       }
     },
     },
+    "@floating-ui/utils": {
+      "version": "0.2.1",
+      "resolved": "https://registry.npmmirror.com/@floating-ui/utils/-/utils-0.2.1.tgz",
+      "integrity": "sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q=="
+    },
     "@jridgewell/gen-mapping": {
     "@jridgewell/gen-mapping": {
       "version": "0.3.2",
       "version": "0.3.2",
       "resolved": "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz",
       "resolved": "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz",
@@ -265,6 +274,11 @@
         "fastq": "^1.6.0"
         "fastq": "^1.6.0"
       }
       }
     },
     },
+    "@popperjs/core": {
+      "version": "npm:@sxzz/popperjs-es@2.11.7",
+      "resolved": "https://registry.npmmirror.com/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz",
+      "integrity": "sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ=="
+    },
     "@trysound/sax": {
     "@trysound/sax": {
       "version": "0.2.0",
       "version": "0.2.0",
       "resolved": "https://registry.npmmirror.com/@trysound/sax/-/sax-0.2.0.tgz",
       "resolved": "https://registry.npmmirror.com/@trysound/sax/-/sax-0.2.0.tgz",
@@ -272,14 +286,14 @@
       "dev": true
       "dev": true
     },
     },
     "@types/lodash": {
     "@types/lodash": {
-      "version": "4.14.191",
-      "resolved": "https://registry.npmmirror.com/@types/lodash/-/lodash-4.14.191.tgz",
-      "integrity": "sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ=="
+      "version": "4.17.0",
+      "resolved": "https://registry.npmmirror.com/@types/lodash/-/lodash-4.17.0.tgz",
+      "integrity": "sha512-t7dhREVv6dbNj0q17X12j7yDG4bD/DHYX7o5/DbDxobP0HnGPgpRz2Ej77aL7TZT3DSw13fqUTj8J4mMnqa7WA=="
     },
     },
     "@types/lodash-es": {
     "@types/lodash-es": {
-      "version": "4.17.6",
-      "resolved": "https://registry.npmmirror.com/@types/lodash-es/-/lodash-es-4.17.6.tgz",
-      "integrity": "sha512-R+zTeVUKDdfoRxpAryaQNRKk3105Rrgx2CFRClIgRGaqDTdjsm8h6IYA8ir584W3ePzkZfst5xIgDwYrlh9HLg==",
+      "version": "4.17.12",
+      "resolved": "https://registry.npmmirror.com/@types/lodash-es/-/lodash-es-4.17.12.tgz",
+      "integrity": "sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==",
       "requires": {
       "requires": {
         "@types/lodash": "*"
         "@types/lodash": "*"
       }
       }
@@ -418,25 +432,25 @@
       "integrity": "sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ=="
       "integrity": "sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ=="
     },
     },
     "@vueuse/core": {
     "@vueuse/core": {
-      "version": "9.12.0",
-      "resolved": "https://registry.npmmirror.com/@vueuse/core/-/core-9.12.0.tgz",
-      "integrity": "sha512-h/Di8Bvf6xRcvS/PvUVheiMYYz3U0tH3X25YxONSaAUBa841ayMwxkuzx/DGUMCW/wHWzD8tRy2zYmOC36r4sg==",
+      "version": "9.13.0",
+      "resolved": "https://registry.npmmirror.com/@vueuse/core/-/core-9.13.0.tgz",
+      "integrity": "sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw==",
       "requires": {
       "requires": {
         "@types/web-bluetooth": "^0.0.16",
         "@types/web-bluetooth": "^0.0.16",
-        "@vueuse/metadata": "9.12.0",
-        "@vueuse/shared": "9.12.0",
+        "@vueuse/metadata": "9.13.0",
+        "@vueuse/shared": "9.13.0",
         "vue-demi": "*"
         "vue-demi": "*"
       }
       }
     },
     },
     "@vueuse/metadata": {
     "@vueuse/metadata": {
-      "version": "9.12.0",
-      "resolved": "https://registry.npmmirror.com/@vueuse/metadata/-/metadata-9.12.0.tgz",
-      "integrity": "sha512-9oJ9MM9lFLlmvxXUqsR1wLt1uF7EVbP5iYaHJYqk+G2PbMjY6EXvZeTjbdO89HgoF5cI6z49o2zT/jD9SVoNpQ=="
+      "version": "9.13.0",
+      "resolved": "https://registry.npmmirror.com/@vueuse/metadata/-/metadata-9.13.0.tgz",
+      "integrity": "sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ=="
     },
     },
     "@vueuse/shared": {
     "@vueuse/shared": {
-      "version": "9.12.0",
-      "resolved": "https://registry.npmmirror.com/@vueuse/shared/-/shared-9.12.0.tgz",
-      "integrity": "sha512-TWuJLACQ0BVithVTRbex4Wf1a1VaRuSpVeyEd4vMUWl54PzlE0ciFUshKCXnlLuD0lxIaLK4Ypj3NXYzZh4+SQ==",
+      "version": "9.13.0",
+      "resolved": "https://registry.npmmirror.com/@vueuse/shared/-/shared-9.13.0.tgz",
+      "integrity": "sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==",
       "requires": {
       "requires": {
         "vue-demi": "*"
         "vue-demi": "*"
       }
       }
@@ -923,12 +937,12 @@
       }
       }
     },
     },
     "element-plus": {
     "element-plus": {
-      "version": "2.2.29",
-      "resolved": "https://registry.npmmirror.com/element-plus/-/element-plus-2.2.29.tgz",
-      "integrity": "sha512-g4dcrURrKkR5uUX8n5RVnnqGnimoki9HfqS4yHHG6XwCHBkZGozdq4x+478BzeWUe31h++BO+7dakSx4VnM8RQ==",
+      "version": "2.6.2",
+      "resolved": "https://registry.npmmirror.com/element-plus/-/element-plus-2.6.2.tgz",
+      "integrity": "sha512-WFMv1v83l437Xu+GeeM+ytxd9VUQpR4418BowvTVIPYItsoj6yK0ITIuSv19iCesF405FbAOaCIHXhJch0ilFA==",
       "requires": {
       "requires": {
         "@ctrl/tinycolor": "^3.4.1",
         "@ctrl/tinycolor": "^3.4.1",
-        "@element-plus/icons-vue": "^2.0.6",
+        "@element-plus/icons-vue": "^2.3.1",
         "@floating-ui/dom": "^1.0.1",
         "@floating-ui/dom": "^1.0.1",
         "@popperjs/core": "npm:@sxzz/popperjs-es@^2.11.7",
         "@popperjs/core": "npm:@sxzz/popperjs-es@^2.11.7",
         "@types/lodash": "^4.14.182",
         "@types/lodash": "^4.14.182",
@@ -944,10 +958,10 @@
         "normalize-wheel-es": "^1.2.0"
         "normalize-wheel-es": "^1.2.0"
       },
       },
       "dependencies": {
       "dependencies": {
-        "@popperjs/core": {
-          "version": "npm:@sxzz/popperjs-es@2.11.7",
-          "resolved": "https://registry.npmmirror.com/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz",
-          "integrity": "sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ=="
+        "@element-plus/icons-vue": {
+          "version": "2.3.1",
+          "resolved": "https://registry.npmmirror.com/@element-plus/icons-vue/-/icons-vue-2.3.1.tgz",
+          "integrity": "sha512-XxVUZv48RZAd87ucGS48jPf6pKu0yV5UCg9f4FFwtrYxXOwWuVJo6wOvSLKEoMQKjv8GsX/mhP6UsC1lRwbUWg=="
         }
         }
       }
       }
     },
     },
@@ -2651,9 +2665,9 @@
       }
       }
     },
     },
     "vue-demi": {
     "vue-demi": {
-      "version": "0.13.11",
-      "resolved": "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.13.11.tgz",
-      "integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A=="
+      "version": "0.14.7",
+      "resolved": "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.14.7.tgz",
+      "integrity": "sha512-EOG8KXDQNwkJILkx/gPcoL/7vH+hORoBaKgGe+6W7VFMvCYJfmF2dGbvgDroVnI8LU7/kTu8mbjRZGBU1z9NTA=="
     },
     },
     "vue-router": {
     "vue-router": {
       "version": "4.0.10",
       "version": "4.0.10",

+ 1 - 1
package.json

@@ -17,7 +17,7 @@
     "cos-js-sdk-v5": "^1.5.0",
     "cos-js-sdk-v5": "^1.5.0",
     "dayjs": "^1.11.8",
     "dayjs": "^1.11.8",
     "echarts": "^5.4.3",
     "echarts": "^5.4.3",
-    "element-plus": "^2.2.29",
+    "element-plus": "^2.6.2",
     "hls.js": "^1.3.4",
     "hls.js": "^1.3.4",
     "jsencrypt": "^3.3.1",
     "jsencrypt": "^3.3.1",
     "lodash": "^4.17.21",
     "lodash": "^4.17.21",

+ 2 - 2
src/App.vue

@@ -34,7 +34,7 @@ onBeforeMount(() => {
 #nprogress .bar {
 #nprogress .bar {
   background-color: rgb(0, 97, 255) !important;
   background-color: rgb(0, 97, 255) !important;
 }
 }
-*{
-user-select:none;
+* {
+  user-select: none;
 }
 }
 </style>
 </style>

+ 47 - 4
src/layout/index.vue

@@ -4,8 +4,8 @@
     <div class="content">
     <div class="content">
       <Navbar></Navbar>
       <Navbar></Navbar>
       <router-view v-slot="{ Component }">
       <router-view v-slot="{ Component }">
-        <!-- <transition name="fade"> 使用动画会出现bug--> 
-          <component :is="Component" />
+        <!-- <transition name="fade"> 使用动画会出现bug-->
+        <component :is="Component" />
         <!-- </transition> -->
         <!-- </transition> -->
       </router-view>
       </router-view>
     </div>
     </div>
@@ -38,6 +38,35 @@ const tableData = reactive({
 
 
 onBeforeMount(async () => {
 onBeforeMount(async () => {
   api.value = store.state.user.api;
   api.value = store.state.user.api;
+
+  const formDatas = new FormData();
+  formDatas.append("userId", 722);
+  let resData = await axios({
+    method: "post",
+    url: api.value + "/wanzai/api/smartAuthorGroup/queryUserAuthor",
+    headers: {
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
+    },
+    data: formDatas,
+  });
+  console.log(resData, "查看当前用户权限");
+  if (resData.data.code == 200) {
+    let roleList = resData.data.data[0].treAuthor;
+    roleList.forEach((item) => {
+      let list = item.route.split("/");
+      item.routeName = list[2];
+    });
+    sessionStorage.setItem("roleList", JSON.stringify(roleList));
+    store.commit("ROLELIST", "");
+  } else {
+    ElMessage({
+      type: "error",
+      showClose: true,
+      message: resData.data.message,
+      center: true,
+    });
+  }
 });
 });
 </script>
 </script>
 
 
@@ -121,7 +150,18 @@ onBeforeMount(async () => {
     }
     }
   }
   }
 }
 }
-
+.el-dialog {
+  padding: 0;
+  .el-dialog__header {
+    height: 60px;
+    padding: 0 20px;
+    display: flex;
+    align-items: center;
+    .el-dialog__headerbtn {
+      top: 6px;
+    }
+  }
+}
 .el-dialog__body {
 .el-dialog__body {
   .el-input {
   .el-input {
     .el-input__suffix-inner {
     .el-input__suffix-inner {
@@ -129,7 +169,6 @@ onBeforeMount(async () => {
     }
     }
   }
   }
 }
 }
-
 .pw {
 .pw {
   .el-dialog__body {
   .el-dialog__body {
     .el-form {
     .el-form {
@@ -148,6 +187,10 @@ onBeforeMount(async () => {
   }
   }
 }
 }
 
 
+.el-button:focus {
+  outline: none;
+}
+
 .tangram-suggestion-main {
 .tangram-suggestion-main {
   z-index: 999999;
   z-index: 999999;
 
 

+ 3 - 0
src/layout/sidebar/Navbar.vue

@@ -325,6 +325,9 @@ const loginOut = () => {
   })
   })
     .then(() => {
     .then(() => {
       sessionStorage.removeItem("token");
       sessionStorage.removeItem("token");
+      sessionStorage.removeItem("userhead");
+      sessionStorage.removeItem("roleList");
+      router.removeRoute("wanzai");
       router.push({
       router.push({
         path: `/login`,
         path: `/login`,
       });
       });

+ 100 - 3
src/layout/sidebar/SidevarItem.vue

@@ -65,7 +65,7 @@
                 activeIndex == '/wanzai/grades' ||
                 activeIndex == '/wanzai/grades' ||
                 activeIndex == '/wanzai/post' ||
                 activeIndex == '/wanzai/post' ||
                 activeIndex == '/wanzai/subject' ||
                 activeIndex == '/wanzai/subject' ||
-                activeIndex == '/wanzai/semester' 
+                activeIndex == '/wanzai/semester'
               "
               "
               iconName="classGrade_s"
               iconName="classGrade_s"
               class="iconClass"
               class="iconClass"
@@ -224,6 +224,7 @@ const menuClose = ref(false);
 const activeIndex = ref(1);
 const activeIndex = ref(1);
 const acitveItems = reactive({ list: [] });
 const acitveItems = reactive({ list: [] });
 const roles = ref();
 const roles = ref();
+const roleList = ref();
 
 
 watch(
 watch(
   () => store.state.user.collapse,
   () => store.state.user.collapse,
@@ -231,10 +232,18 @@ watch(
     menuClose.value = newValue;
     menuClose.value = newValue;
   }
   }
 );
 );
+// watch(
+//   () => store.state.user.activeIndex,
+//   (newValue, oldValue) => {
+//     console.log(newValue);
+//     activeIndex.value = newValue;
+//   }
+// );
 watch(
 watch(
-  () => store.state.user.activeIndex,
+  () => router.currentRoute.value.fullPath,
   (newValue, oldValue) => {
   (newValue, oldValue) => {
     console.log(newValue);
     console.log(newValue);
+    store.commit("indexUp", newValue);
     activeIndex.value = newValue;
     activeIndex.value = newValue;
   }
   }
 );
 );
@@ -260,7 +269,95 @@ const handleSelect = (key, keyPath) => {
 };
 };
 onBeforeMount(() => {
 onBeforeMount(() => {
   activeIndex.value = sessionStorage.getItem("sidevarItem");
   activeIndex.value = sessionStorage.getItem("sidevarItem");
-  roles.value = store.state.user.roles;
+  roleList.value = JSON.parse(sessionStorage.getItem("roleList"));
+  let classArr = [];
+  let evaluateArr = [];
+  let dataExchangeArr = [];
+  let systemArr = [];
+  let arr = [];
+  roleList.value.forEach((item) => {
+    if (
+      item.routeName == "class" ||
+      item.routeName == "grades" ||
+      item.routeName == "post" ||
+      item.routeName == "subject" ||
+      item.routeName == "semester" ||
+      item.routeName == "exam"
+    ) {
+      classArr.push({
+        name: item.routeName,
+        meta: { isAuth: true, title: item.name },
+      });
+    } else if (item.routeName == "teacher" || item.routeName == "student") {
+      evaluateArr.push({
+        name: item.routeName,
+        meta: { isAuth: true, title: item.name },
+      });
+    } else if (
+      item.routeName == "source" ||
+      item.routeName == "task" ||
+      item.routeName == "log"
+    ) {
+      dataExchangeArr.push({
+        name: item.routeName,
+        meta: { isAuth: true, title: item.name },
+      });
+    } else if (
+      item.routeName == "info" ||
+      item.routeName == "screenShot" ||
+      item.routeName == "roles"
+    ) {
+      systemArr.push({
+        name: item.routeName,
+        meta: { isAuth: true, title: item.name },
+      });
+    } else {
+      arr.push({
+        name: item.routeName,
+        meta: { isAuth: true, title: item.name },
+      });
+    }
+  });
+  console.log(classArr, "年级管理");
+  console.log(evaluateArr, "综合素质评价");
+  console.log(dataExchangeArr, "数据交换");
+  console.log(systemArr, "系统设置");
+
+  if (classArr.length != 0) {
+    // arr.push({
+    //   name: "classGrade",
+    //   meta: { isAuth: true, title: "年级管理" },
+    //   children: classArr,
+    // });
+    arr.splice(3, 0, {
+      name: "classGrade",
+      meta: { isAuth: true, title: "年级管理" },
+      children: classArr,
+    });
+  }
+  if (evaluateArr.length != 0) {
+    arr.push({
+      name: "evaluate",
+      meta: { isAuth: true, title: "综合素质评价" },
+      children: evaluateArr,
+    });
+  }
+  if (dataExchangeArr.length != 0) {
+    arr.push({
+      name: "dataExchange",
+      meta: { isAuth: true, title: "数据交换" },
+      children: dataExchangeArr,
+    });
+  }
+  if (systemArr.length != 0) {
+    arr.push({
+      name: "system",
+      meta: { isAuth: true, title: "系统设置" },
+      children: systemArr,
+    });
+  }
+  roles.value = arr;
+  // roles.value = store.state.user.roles;
   console.log(roles.value);
   console.log(roles.value);
 });
 });
 </script>
 </script>

+ 1 - 0
src/main.js

@@ -26,6 +26,7 @@ app.use(ElementPlus, {
 app.use(router);
 app.use(router);
 app.use(store);
 app.use(store);
 
 
+
 app.component("svg-icon", SvgIcon);
 app.component("svg-icon", SvgIcon);
 
 
 app.mount("#app");
 app.mount("#app");

+ 162 - 175
src/router/index.js

@@ -17,145 +17,147 @@ const routes = [
     path: "/",
     path: "/",
     redirect: "/login",
     redirect: "/login",
   },
   },
+
   {
   {
     path: "/wanzai",
     path: "/wanzai",
     name: "wanzai",
     name: "wanzai",
     component: Layout,
     component: Layout,
     children: [
     children: [
-      {
-        path: "home",
-        name: "home",
-        meta: { isAuth: true, title: "系统首页" },
-        component: () => import("@/views/home/home.vue"),
-      },
-      {
-        path: "user",
-        name: "user",
-        meta: { isAuth: true, title: "用户管理" },
-        component: () => import("@/views/user/user.vue"),
-      },
-      {
-        path: "identity",
-        name: "identity",
-        meta: { isAuth: true, title: "身份管理" },
-        component: () => import("@/views/identity/identity.vue"),
-      },
-      {
-        path: "class",
-        name: "class",
-        meta: { isAuth: true, title: "班级管理" },
-        component: () => import("@/views/class/class.vue"),
-      },
-      {
-        path: "grades",
-        name: "grades",
-        meta: { isAuth: true, title: "年级管理" },
-        component: () => import("@/views/grades/grades.vue"),
-      },
-      {
-        path: "post",
-        name: "post",
-        meta: { isAuth: true, title: "职务管理" },
-        component: () => import("@/views/post/post.vue"),
-      },
-      {
-        path: "subject",
-        name: "subject",
-        meta: { isAuth: true, title: "学科管理" },
-        component: () => import("@/views/subject/subject.vue"),
-      },
-      {
-        path: "semester",
-        name: "semester",
-        meta: { isAuth: true, title: "学期管理" },
-        component: () => import("@/views/semester/semester.vue"),
-      },
-      {
-        path: "exam",
-        name: "exam",
-        meta: { isAuth: true, title: "考试类型管理" },
-        component: () => import("@/views/exam/exam.vue"),
-      },
-      {
-        path: "apply",
-        name: "apply",
-        meta: { isAuth: true, title: "应用管理" },
-        component: () => import("@/views/apply/apply.vue"),
-      },
-      {
-        path: "energy",
-        name: "energy",
-        meta: { isAuth: true, title: "能耗管理" },
-        component: () => import("@/views/energy/energy.vue"),
-      },
-      {
-        path: "safety",
-        name: "safety",
-        meta: { isAuth: true, title: "校园安全" },
-        component: () => import("@/views/safety/safety.vue"),
-      },
-      {
-        path: "caller",
-        name: "caller",
-        meta: { isAuth: true, title: "访客预约" },
-        component: () => import("@/views/caller/caller.vue"),
-      },
-      {
-        path: "grade",
-        name: "grade",
-        meta: { isAuth: true, title: "成绩管理" },
-        component: () => import("@/views/grade/grade.vue"),
-      },
-      {
-        path: "teacher",
-        name: "teacher",
-        meta: { isAuth: true, title: "教师" },
-        component: () => import("@/views/teacher/teacher.vue"),
-      },
-      {
-        path: "student",
-        name: "student",
-        meta: { isAuth: true, title: "学生" },
-        component: () => import("@/views/student/student.vue"),
-      },
-      {
-        path: "info",
-        name: "info",
-        meta: { isAuth: true, title: "基本信息" },
-        component: () => import("@/views/info/info.vue"),
-      },
-      {
-        path: "screenShot",
-        name: "screenShot",
-        meta: { isAuth: true, title: "截屏风险" },
-        component: () => import("@/views/screenShot/screenShot.vue"),
-      },
-      {
-        path: "roles",
-        name: "roles",
-        meta: { isAuth: true, title: "权限管理" },
-        component: () => import("@/views/roles/roles.vue"),
-      },
-      {
-        path: "source",
-        name: "source",
-        meta: { isAuth: true, title: "我的数据源" },
-        component: () => import("@/views/source/source.vue"),
-      },
-      {
-        path: "task",
-        name: "task",
-        meta: { isAuth: true, title: "任务管理" },
-        component: () => import("@/views/task/task.vue"),
-      },
-      {
-        path: "log",
-        name: "log",
-        meta: { isAuth: true, title: "业务日志" },
-        component: () => import("@/views/log/log.vue"),
-      },
+      // {
+      //   path: "home",
+      //   name: "home",
+      //   meta: { isAuth: true, title: "系统首页" },
+      //   component: () => import("@/views/home/home.vue"),
+      // },
+      // {
+      //   path: "user",
+      //   name: "user",
+      //   meta: { isAuth: true, title: "用户管理" },
+      //   component: () => import("@/views/user/user.vue"),
+      // },
+      // {
+      //   path: "identity",
+      //   name: "identity",
+      //   meta: { isAuth: true, title: "身份管理" },
+      //   component: () => import("@/views/identity/identity.vue"),
+      // },
+      // {
+      //   path: "class",
+      //   name: "class",
+      //   meta: { isAuth: true, title: "班级管理" },
+      //   component: () => import("@/views/class/class.vue"),
+      // },
+      // {
+      //   path: "grades",
+      //   name: "grades",
+      //   meta: { isAuth: true, title: "年级管理" },
+      //   component: () => import("@/views/grades/grades.vue"),
+      // },
+      // {
+      //   path: "post",
+      //   name: "post",
+      //   meta: { isAuth: true, title: "职务管理" },
+      //   component: () => import("@/views/post/post.vue"),
+      // },
+      // {
+      //   path: "subject",
+      //   name: "subject",
+      //   meta: { isAuth: true, title: "学科管理" },
+      //   component: () => import("@/views/subject/subject.vue"),
+      // },
+      // {
+      //   path: "semester",
+      //   name: "semester",
+      //   meta: { isAuth: true, title: "学期管理" },
+      //   component: () => import("@/views/semester/semester.vue"),
+      // },
+      // {
+      //   path: "exam",
+      //   name: "exam",
+      //   meta: { isAuth: true, title: "考试类型管理" },
+      //   component: () => import("@/views/exam/exam.vue"),
+      // },
+      // {
+      //   path: "apply",
+      //   name: "apply",
+      //   meta: { isAuth: true, title: "应用管理" },
+      //   component: () => import("@/views/apply/apply.vue"),
+      // },
+      // {
+      //   path: "energy",
+      //   name: "energy",
+      //   meta: { isAuth: true, title: "能耗管理" },
+      //   component: () => import("@/views/energy/energy.vue"),
+      // },
+      // {
+      //   path: "safety",
+      //   name: "safety",
+      //   meta: { isAuth: true, title: "校园安全" },
+      //   component: () => import("@/views/safety/safety.vue"),
+      // },
+      // {
+      //   path: "caller",
+      //   name: "caller",
+      //   meta: { isAuth: true, title: "访客预约" },
+      //   component: () => import("@/views/caller/caller.vue"),
+      // },
+      // {
+      //   path: "grade",
+      //   name: "grade",
+      //   meta: { isAuth: true, title: "成绩管理" },
+      //   component: () => import("@/views/grade/grade.vue"),
+      // },
+      // {
+      //   path: "teacher",
+      //   name: "teacher",
+      //   meta: { isAuth: true, title: "教师" },
+      //   component: () => import("@/views/teacher/teacher.vue"),
+      // },
+      // {
+      //   path: "student",
+      //   name: "student",
+      //   meta: { isAuth: true, title: "学生" },
+      //   component: () => import("@/views/student/student.vue"),
+      // },
+      // {
+      //   path: "info",
+      //   name: "info",
+      //   meta: { isAuth: true, title: "基本信息" },
+      //   component: () => import("@/views/info/info.vue"),
+      // },
+      // {
+      //   path: "screenShot",
+      //   name: "screenShot",
+      //   meta: { isAuth: true, title: "截屏风险" },
+      //   component: () => import("@/views/screenShot/screenShot.vue"),
+      // },
+      // {
+      //   path: "roles",
+      //   name: "roles",
+      //   meta: { isAuth: true, title: "权限管理" },
+      //   component: () => import("@/views/roles/roles.vue"),
+      // },
+      // {
+      //   path: "source",
+      //   name: "source",
+      //   meta: { isAuth: true, title: "我的数据源" },
+      //   component: () => import("@/views/source/source.vue"),
+      // },
+      // {
+      //   path: "task",
+      //   name: "task",
+      //   meta: { isAuth: true, title: "任务管理" },
+      //   component: () => import("@/views/task/task.vue"),
+      // },
+      // {
+      //   path: "log",
+      //   name: "log",
+      //   meta: { isAuth: true, title: "业务日志" },
+      //   component: () => import("@/views/log/log.vue"),
+      // },
     ],
     ],
   },
   },
+  
 ];
 ];
 const router = createRouter({
 const router = createRouter({
   // history: createWebHistory("/smartManage"), // 线上地址
   // history: createWebHistory("/smartManage"), // 线上地址
@@ -165,49 +167,34 @@ const router = createRouter({
 
 
 router.beforeEach(async (to, from, next) => {
 router.beforeEach(async (to, from, next) => {
   NProgress.start(); // 进度条开始
   NProgress.start(); // 进度条开始
-  // let hasRoutes = store.state.user.hasRoutes;
-  // if (sessionStorage.getItem("token")) {
-  //   if (!hasRoutes || to.path == "/login") {
-  //     console.log("第一次登录也触发");
-  //     store.commit("SET_ROUTES_STATE", true);
-  //     let res = await store.dispatch("login", {
-  //       adminName: sessionStorage.getItem("username"),
-  //       password: sessionStorage.getItem("name"),
-  //     });
-  //     console.log(res, "路由判断登录");
-  //     if (res == "success") {
-  //       if (store.state.user.level == 2) {
-  //         let modules = import.meta.glob("../views/**/*.vue");
-  //         let arr = {
-  //           path: "account",
-  //           name: "account",
-  //           component: modules[`../views/account/account.vue`],
-  //         };
-  //         router.addRoute("seniorCelebrity", arr);
-  //       }
-  //       next({ ...to, replace: true });
-  //     } else {
-  //       sessionStorage.removeItem("token");
-  //       sessionStorage.removeItem("name");
-  //       ElMessage({
-  //         type: "error",
-  //         showClose: true,
-  //         message: res.data.data.message,
-  //         center: true,
-  //       });
-  //     }
-  //     //----------解决
-  //     // next({ path: "/index" }); //----------解决
-  //   }
-  //   next(); //放行
-  // } else {
-  //   if (to.path == "/login") {
-  //     next();
-  //   } else {
-  //     next(`/login`);
-  //   }
-  // }
-  next();
+
+  let userhead = "1B0430E15102ADC65C43E475AC697D9A";
+  let token =
+    "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3MTMyMzQ2NDQsImNhcmRObyI6IjAwMDAwMSIsImlhdCI6MTcxMzE0ODI0NH0.jxuGCqDkqzRa3poVNQq5aoSrKGDCZauXFLVKrB4M87s";
+  sessionStorage.setItem("token", token);
+  sessionStorage.setItem("userhead", userhead);
+
+  let hasRoutes = store.state.user.hasRoutes;
+  if (
+    sessionStorage.getItem("token") &&
+    sessionStorage.getItem("userhead") 
+  ) {
+    if (!hasRoutes) {
+      store.commit("ROLELIST", "");
+      store.commit("SET_ROUTES_STATE", true);
+      next({ ...to, replace: true });
+    } else {
+      console.log("当前无权限信息");
+    }
+    next();
+  } else {
+    if (to.path == "/login") {
+      next();
+    } else {
+      next(`/login`);
+    }
+  }
+  // next();
 });
 });
 
 
 router.afterEach(() => {
 router.afterEach(() => {

+ 73 - 7
src/store/modules/user.js

@@ -78,7 +78,6 @@ const state = {
       name: "caller",
       name: "caller",
       meta: { isAuth: true, title: "访客预约" },
       meta: { isAuth: true, title: "访客预约" },
     },
     },
-
     // 成绩管理
     // 成绩管理
     {
     {
       name: "grade",
       name: "grade",
@@ -139,8 +138,8 @@ const state = {
     },
     },
   ],
   ],
   statRoutes: {
   statRoutes: {
-    path: "/hotel",
-    name: "hotel",
+    path: "/wanzai  ",
+    name: "wanzai",
     component: Layout,
     component: Layout,
     meta: { isAuth: true, title: "公寓", icons: "" },
     meta: { isAuth: true, title: "公寓", icons: "" },
     children: [
     children: [
@@ -156,11 +155,47 @@ const state = {
         meta: { isAuth: true, title: "用户管理" },
         meta: { isAuth: true, title: "用户管理" },
         component: () => import("@/views/user/user.vue"),
         component: () => import("@/views/user/user.vue"),
       },
       },
+      // {
+      //   path: "identity",
+      //   name: "identity",
+      //   meta: { isAuth: true, title: "身份管理" },
+      //   component: () => import("@/views/identity/identity.vue"),
+      // },
+      {
+        path: "class",
+        name: "class",
+        meta: { isAuth: true, title: "班级管理" },
+        component: () => import("@/views/class/class.vue"),
+      },
+      {
+        path: "grades",
+        name: "grades",
+        meta: { isAuth: true, title: "年级管理" },
+        component: () => import("@/views/grades/grades.vue"),
+      },
+      {
+        path: "post",
+        name: "post",
+        meta: { isAuth: true, title: "职务管理" },
+        component: () => import("@/views/post/post.vue"),
+      },
       {
       {
-        path: "identity",
-        name: "identity",
-        meta: { isAuth: true, title: "身份管理" },
-        component: () => import("@/views/identity/identity.vue"),
+        path: "subject",
+        name: "subject",
+        meta: { isAuth: true, title: "学科管理" },
+        component: () => import("@/views/subject/subject.vue"),
+      },
+      {
+        path: "semester",
+        name: "semester",
+        meta: { isAuth: true, title: "学期管理" },
+        component: () => import("@/views/semester/semester.vue"),
+      },
+      {
+        path: "exam",
+        name: "exam",
+        meta: { isAuth: true, title: "考试类型管理" },
+        component: () => import("@/views/exam/exam.vue"),
       },
       },
       {
       {
         path: "apply",
         path: "apply",
@@ -251,6 +286,7 @@ const mutations = {
   },
   },
   indexUp: (state, value) => {
   indexUp: (state, value) => {
     state.activeIndex = value;
     state.activeIndex = value;
+    sessionStorage.setItem('sidevarItem',value);
   },
   },
   userName: (state, value) => {
   userName: (state, value) => {
     state.username = value;
     state.username = value;
@@ -265,6 +301,36 @@ const mutations = {
     state.level = value;
     state.level = value;
     console.log("设置level", value);
     console.log("设置level", value);
   },
   },
+  ROLELIST: async (state, value) => {
+    let roleList = JSON.parse(sessionStorage.getItem("roleList"));
+    console.log(roleList);
+
+    if (roleList) {
+      router.addRoute({
+        path: "/wanzai",
+        name: "wanzai",
+        // component: modules[`../views/${item.name}/${item.name}.vue`],
+        component: Layout,
+        children: [],
+      });
+      roleList.forEach((item) => {
+        let list = item.route.split("/");
+        // console.log(list[2]);
+        let arr = {
+          path: list[2],
+          name: list[2],
+          meta: { isAuth: true, title: list[2] },
+          component: () => import(`../../views/${list[2]}/${list[2]}.vue`),
+        };
+        router.addRoute("wanzai", arr);
+      });
+      router.addRoute("wanzai",  {
+        path: '/:pathMatch(.*)*',
+        name: 'NotFound',
+        component: () => import("@/views/notFound/notFound.vue")
+      })
+    }
+  },
 };
 };
 // mutations的值由actions传入(异步)
 // mutations的值由actions传入(异步)
 const actions = {
 const actions = {

+ 4 - 1
src/utils/rsa.js

@@ -1,6 +1,6 @@
 import { JSEncrypt } from 'jsencrypt';
 import { JSEncrypt } from 'jsencrypt';
 let publicKey = 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDMOcPB06u5yKyQsPjfVWiWgbEIrd14kiXNNihciaVKb6HnkQvq7zpQuZ80WEX94spnUMI3iOAl/GmIvHrpGwcbB4hJbznm+PajiwnUSPuCCXA68YJF640cJKb/8KeM7WVz69OFkIEPHhVxOy4FFF5QWe/kt6zOZ19HmE+ak+5x/QIDAQAB'
 let publicKey = 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDMOcPB06u5yKyQsPjfVWiWgbEIrd14kiXNNihciaVKb6HnkQvq7zpQuZ80WEX94spnUMI3iOAl/GmIvHrpGwcbB4hJbznm+PajiwnUSPuCCXA68YJF640cJKb/8KeM7WVz69OFkIEPHhVxOy4FFF5QWe/kt6zOZ19HmE+ak+5x/QIDAQAB'
-let privateKey = '这里是封装的私钥'
+let privateKey = '52D04DC20036DBD8'
 //加密方法
 //加密方法
 export function RSAencrypt(pas) {
 export function RSAencrypt(pas) {
     //实例化jsEncrypt对象
     //实例化jsEncrypt对象
@@ -15,6 +15,9 @@ export function RSAencrypt(pas) {
 export function RSAdecrypt(pas) {
 export function RSAdecrypt(pas) {
     let jse = new JSEncrypt();
     let jse = new JSEncrypt();
     // 私钥
     // 私钥
+    // privateKey = privateKey + "0000000000000000".substring(0, 16-privateKey.length);
+    // console.log(privateKey);
+    
     jse.setPrivateKey(privateKey)
     jse.setPrivateKey(privateKey)
     console.log('解密:' + jse.decrypt(pas))
     console.log('解密:' + jse.decrypt(pas))
     return jse.decrypt(pas);
     return jse.decrypt(pas);

+ 10 - 8
src/views/account/account.vue

@@ -415,7 +415,8 @@ const getList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/mhotel/managerAdminqueryPage.action",
     url: api.value + "/mhotel/managerAdminqueryPage.action",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -497,7 +498,8 @@ const submitAdd = lodash.debounce(async (formEl) => {
             method: "post",
             method: "post",
             url: api.value + "/mhotel/managerAdmininsertAdminManager.action",
             url: api.value + "/mhotel/managerAdmininsertAdminManager.action",
             headers: {
             headers: {
-              // token: sessionStorage.getItem("token"),
+              token: sessionStorage.getItem("token"),
+              user_head: sessionStorage.getItem("userhead"),
             },
             },
             params: data,
             params: data,
           });
           });
@@ -543,8 +545,8 @@ const submitAdd = lodash.debounce(async (formEl) => {
             method: "post",
             method: "post",
             url: api.value + "/mhotel/managerAdminupdateAdminManager.action",
             url: api.value + "/mhotel/managerAdminupdateAdminManager.action",
             headers: {
             headers: {
-              // token: sessionStorage.getItem("token"),
-              // user_head: sessionStorage.getItem("userhead"),
+              token: sessionStorage.getItem("token"),
+              user_head: sessionStorage.getItem("userhead"),
             },
             },
             params: data,
             params: data,
           });
           });
@@ -592,8 +594,8 @@ const del = async (row) => {
     method: "post",
     method: "post",
     url: api.value + "/mhotel/managerAdmindelAdmin.action",
     url: api.value + "/mhotel/managerAdmindelAdmin.action",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -637,8 +639,8 @@ const reset = async (row) => {
     method: "post",
     method: "post",
     url: api.value + "/mhotel/managerAdminremovePwd.action",
     url: api.value + "/mhotel/managerAdminremovePwd.action",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });

+ 46 - 32
src/views/apply/apply.vue

@@ -36,11 +36,23 @@
             type="index"
             type="index"
             label="序号"
             label="序号"
           />
           />
-          <el-table-column align="center" prop="name" label="名称" />
+          <el-table-column align="center" prop="name" label="名称">
+            <template #default="{ row }">
+              <div v-if="row.category == '管理后台'">
+                <span
+                  style="color: rgb(30, 125, 251); cursor: pointer"
+                  @click="applyLink(row)"
+                  >{{ row.name }}</span
+                >
+              </div>
+            </template>
+          </el-table-column>
           <el-table-column align="center" prop="category" label="类别" />
           <el-table-column align="center" prop="category" label="类别" />
           <el-table-column align="center" prop="updateTime" label="创建时间">
           <el-table-column align="center" prop="updateTime" label="创建时间">
-            <template #default="{row}">
-              <span>{{ dayjs(row.createTime).format('YYYY-MM-DD HH:mm:ss') }}</span>
+            <template #default="{ row }">
+              <span>{{
+                dayjs(row.createTime).format("YYYY-MM-DD HH:mm:ss")
+              }}</span>
             </template>
             </template>
           </el-table-column>
           </el-table-column>
           <el-table-column align="center" label="操作" width="200">
           <el-table-column align="center" label="操作" width="200">
@@ -299,28 +311,7 @@ import COS from "cos-js-sdk-v5";
 // 表格数据
 // 表格数据
 const loading = ref(false);
 const loading = ref(false);
 const tableData = reactive({
 const tableData = reactive({
-  list: [
-    {
-      name: "双人房",
-      type: 150,
-      teamName: 12,
-    },
-    {
-      name: "双人房",
-      type: 150,
-      teamName: 12,
-    },
-    {
-      name: "双人房",
-      type: 150,
-      teamName: 12,
-    },
-    {
-      name: "双人房",
-      type: 150,
-      teamName: 12,
-    },
-  ],
+  list: [],
 });
 });
 
 
 const currentPage = ref(1); // 当前页
 const currentPage = ref(1); // 当前页
@@ -397,8 +388,8 @@ const getList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartApply/queryPageSmartApply",
     url: api.value + "/wanzai/api/smartApply/queryPageSmartApply",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -428,6 +419,20 @@ const getList = async () => {
 const searchBtn = lodash.debounce(async () => {
 const searchBtn = lodash.debounce(async () => {
   getList();
   getList();
 }, 300);
 }, 300);
+
+// 应用链接跳转
+const applyLink = (row) => {
+  console.log(row);
+  let str = row.urlLink;
+  let charToCheck = "http";
+
+  if (str.includes(charToCheck)) {
+    window.open(row.urlLink);
+  } else {
+    window.open(`https://${row.urlLink}`);
+  }
+};
+
 // 添加按钮 (-------------------------------------------)
 // 添加按钮 (-------------------------------------------)
 const addApply = async () => {
 const addApply = async () => {
   titleDialog.value = "新建应用";
   titleDialog.value = "新建应用";
@@ -483,14 +488,20 @@ const confirmEdit = (formEl) => {
         res = await axios({
         res = await axios({
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartApply/updateSmartApplyById",
           url: api.value + "/wanzai/api/smartApply/updateSmartApplyById",
-          headers: {},
+          headers: {
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
+          },
           data: data,
           data: data,
         });
         });
       } else {
       } else {
         res = await axios({
         res = await axios({
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartApply/insertSmartApply",
           url: api.value + "/wanzai/api/smartApply/insertSmartApply",
-          headers: {},
+          headers: {
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
+          },
           data: data,
           data: data,
         });
         });
       }
       }
@@ -611,7 +622,10 @@ const handleUpload = async (file) => {
   //   // let ress = await axios({
   //   // let ress = await axios({
   //   //   method: "post",
   //   //   method: "post",
   //   //   url: api.value + "/file/cos/upload",
   //   //   url: api.value + "/file/cos/upload",
-  //   //   headers: {},
+  //   //   headers: {
+  //          token: sessionStorage.getItem("token"),
+  //          user_head: sessionStorage.getItem("userhead"),
+  // },
   //   //   data: datas,
   //   //   data: datas,
   //   // });
   //   // });
   //   // console.log(ress, "图片上传成功封面图");
   //   // console.log(ress, "图片上传成功封面图");
@@ -678,8 +692,8 @@ const del = async (row) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartApply/deleteSmartApplyById",
     url: api.value + "/wanzai/api/smartApply/deleteSmartApplyById",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });

+ 88 - 83
src/views/caller/caller.vue

@@ -4,82 +4,82 @@
       <!-- <el-icon :size="23" class="camera"><VideoCameraFilled /></el-icon> -->
       <!-- <el-icon :size="23" class="camera"><VideoCameraFilled /></el-icon> -->
       <div class="left_title">访客预约</div>
       <div class="left_title">访客预约</div>
     </div>
     </div>
-    <div class="scroll">
-      <div class="middle">
-        <div class="filter">
-          <div class="condition">
-            <el-tooltip
-              class="box-item"
-              effect="dark"
-              content="可查询姓名、电话、受访者姓名、受访者接待部门、受访者电话、车牌号"
-              placement="top-start"
-            >
-              <el-input
-                :clearable="true"
-                @clear="searchBtn"
-                v-model="searchInput.keyWord"
-                style="width: 180px"
-                placeholder="请输入关键字"
-              />
-            </el-tooltip>
-          </div>
-          <el-button
-            color="rgba(0, 97, 255, 1)"
-            type="primary"
-            class="search condition"
-            @click="searchBtn"
-          >
-            查询</el-button
+    <div class="middle">
+      <div class="filter">
+        <div class="condition">
+          <el-tooltip
+            class="box-item"
+            effect="dark"
+            content="可查询姓名、电话、受访者姓名、受访者接待部门、受访者电话、车牌号"
+            placement="top-start"
           >
           >
-          <div class="condition">
-            <span>状态&nbsp;&nbsp;</span>
-            <el-select
-              v-model="searchInput.type"
-              class="m-2"
-              placeholder="请选择状态"
-              @change="searchBtn"
-            >
-              <el-option label="全部" value="0" />
-              <el-option label="待审核" value="1" />
-              <el-option label="已拒绝" value="2" />
-              <el-option label="已推送" value="3" />
-            </el-select>
-          </div>
-          <div class="condition">
-            <span>创建时间&nbsp;&nbsp;</span>
-            <el-date-picker
-              v-model="searchInput.createTime"
-              type="daterange"
-              range-separator="-"
-              start-placeholder="起始时间"
-              end-placeholder="结束时间"
-              format="YYYY-MM-DD"
-              value-format="YYYY-MM-DD"
-              :prefix-icon="Calendar"
-              placeholder="请选择日期"
-              style="width: 280px"
-              @change="searchBtn"
-            />
-          </div>
-          <div class="condition">
-            <span>访问时间&nbsp;&nbsp;</span>
-            <el-date-picker
-              v-model="searchInput.visitorTime"
-              type="daterange"
-              range-separator="-"
-              start-placeholder="起始时间"
-              end-placeholder="结束时间"
-              format="YYYY-MM-DD"
-              value-format="YYYY-MM-DD"
-              :prefix-icon="Calendar"
-              placeholder="请选择日期"
-              style="width: 280px"
-              @change="searchBtn"
+            <el-input
+              :clearable="true"
+              @clear="searchBtn"
+              v-model="searchInput.keyWord"
+              style="width: 180px"
+              placeholder="请输入关键字"
             />
             />
-          </div>
+          </el-tooltip>
+        </div>
+        <el-button
+          color="rgba(0, 97, 255, 1)"
+          type="primary"
+          class="search condition"
+          @click="searchBtn"
+        >
+          查询</el-button
+        >
+        <div class="condition">
+          <span>状态&nbsp;&nbsp;</span>
+          <el-select
+            v-model="searchInput.type"
+            class="m-2"
+            placeholder="请选择状态"
+            style="width: 180px"
+            @change="searchBtn"
+          >
+            <el-option label="全部" value="0" />
+            <el-option label="待审核" value="1" />
+            <el-option label="已拒绝" value="2" />
+            <el-option label="已推送" value="3" />
+          </el-select>
         </div>
         </div>
-        <!-- 按钮列表 -->
-        <!-- <div class="gongneng">
+        <div class="condition">
+          <span>创建时间&nbsp;&nbsp;</span>
+          <el-date-picker
+            v-model="searchInput.createTime"
+            type="daterange"
+            range-separator="-"
+            start-placeholder="起始时间"
+            end-placeholder="结束时间"
+            format="YYYY-MM-DD"
+            value-format="YYYY-MM-DD"
+            :prefix-icon="Calendar"
+            placeholder="请选择日期"
+            style="width: 280px"
+            @change="searchBtn"
+          />
+        </div>
+        <div class="condition">
+          <span>访问时间&nbsp;&nbsp;</span>
+          <el-date-picker
+            v-model="searchInput.visitorTime"
+            type="daterange"
+            range-separator="-"
+            start-placeholder="起始时间"
+            end-placeholder="结束时间"
+            format="YYYY-MM-DD"
+            value-format="YYYY-MM-DD"
+            :prefix-icon="Calendar"
+            placeholder="请选择日期"
+            style="width: 280px"
+            @change="searchBtn"
+          />
+        </div>
+      </div>
+      <!-- 按钮列表 -->
+      <!-- <div class="gongneng">
           <el-button
           <el-button
             type="primary"
             type="primary"
             plain
             plain
@@ -88,7 +88,8 @@
             ><span>删除访客</span></el-button
             ><span>删除访客</span></el-button
           >
           >
         </div> -->
         </div> -->
-      </div>
+    </div>
+    <div class="scroll">
       <div class="footer" v-loading="loading">
       <div class="footer" v-loading="loading">
         <el-table
         <el-table
           :row-class-name="tableRowClassName"
           :row-class-name="tableRowClassName"
@@ -439,8 +440,8 @@ const getList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartVisitor/appointmentPageRecord",
     url: api.value + "/wanzai/api/smartVisitor/appointmentPageRecord",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -494,7 +495,10 @@ const confirmEdit = async (flag) => {
   let res = await axios({
   let res = await axios({
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartVisitor/examineRecord",
     url: api.value + "/wanzai/api/smartVisitor/examineRecord",
-    headers: {},
+    headers: {
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
+    },
     params: data,
     params: data,
   });
   });
   console.log(res, "审核");
   console.log(res, "审核");
@@ -531,8 +535,8 @@ const del = async (row) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartVisitor/deleteSmartVisitorById",
     url: api.value + "/wanzai/api/smartVisitor/deleteSmartVisitorById",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -575,7 +579,8 @@ const handleSelectionChange = (val) => {
 //     method: "post",
 //     method: "post",
 //     url: api.value + "/carBook/cinfotoExcel.action",
 //     url: api.value + "/carBook/cinfotoExcel.action",
 //     headers: {
 //     headers: {
-//       token: sessionStorage.getItem("token"),
+//        token: sessionStorage.getItem("token"),
+// user_head: sessionStorage.getItem("userhead"),
 //     },
 //     },
 //     data: data,
 //     data: data,
 //   });
 //   });
@@ -667,11 +672,11 @@ onUnmounted(() => {
     }
     }
   }
   }
   .scroll {
   .scroll {
-    height: calc(100% - 61px);
     overflow: auto;
     overflow: auto;
+    flex: 1;
   }
   }
   .middle {
   .middle {
-    width: 96%;
+    width: calc(100% - 60px);
     margin: 0 auto;
     margin: 0 auto;
 
 
     color: #000;
     color: #000;
@@ -740,7 +745,7 @@ onUnmounted(() => {
 
 
   .footer {
   .footer {
     width: calc(100% - 60px);
     width: calc(100% - 60px);
-    height: calc(100% - 195px);
+    height: calc(100% - 80px);
     margin: 10px auto 20px;
     margin: 10px auto 20px;
 
 
     .el-table--fit {
     .el-table--fit {

+ 16 - 9
src/views/class/class.vue

@@ -320,8 +320,8 @@ const getList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartClass/queryPageSmartClass",
     url: api.value + "/wanzai/api/smartClass/queryPageSmartClass",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -357,8 +357,8 @@ const applyList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartGrade/queryPageSmartGrade",
     url: api.value + "/wanzai/api/smartGrade/queryPageSmartGrade",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -419,7 +419,10 @@ const confirmEdit = (formEl) => {
         res = await axios({
         res = await axios({
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartClass/updateSmartClassById",
           url: api.value + "/wanzai/api/smartClass/updateSmartClassById",
-          headers: {},
+          headers: {
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
+          },
           data: data,
           data: data,
         });
         });
       } else {
       } else {
@@ -428,7 +431,10 @@ const confirmEdit = (formEl) => {
         res = await axios({
         res = await axios({
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartClass/insertSmartClassToBaisheng",
           url: api.value + "/wanzai/api/smartClass/insertSmartClassToBaisheng",
-          headers: {},
+          headers: {
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
+          },
           data: data,
           data: data,
         });
         });
       }
       }
@@ -464,8 +470,8 @@ const del = async (row) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartIdentity/deleteSmartIdentityById",
     url: api.value + "/wanzai/api/smartIdentity/deleteSmartIdentityById",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -508,7 +514,8 @@ const handleSelectionChange = (val) => {
 //     method: "post",
 //     method: "post",
 //     url: api.value + "/carBook/cinfotoExcel.action",
 //     url: api.value + "/carBook/cinfotoExcel.action",
 //     headers: {
 //     headers: {
-//       token: sessionStorage.getItem("token"),
+//        token: sessionStorage.getItem("token"),
+// user_head: sessionStorage.getItem("userhead"),
 //     },
 //     },
 //     data: data,
 //     data: data,
 //   });
 //   });

+ 152 - 134
src/views/energy/energy.vue

@@ -13,19 +13,21 @@
             <div class="quantity">
             <div class="quantity">
               <div class="dosage">用电量</div>
               <div class="dosage">用电量</div>
               <div class="num">
               <div class="num">
-                <el-col>
+                <!-- <el-col>
                   <el-statistic title="" :value="getWaterTj" />
                   <el-statistic title="" :value="getWaterTj" />
-                </el-col>
-                <div class="unit">kw/h</div>
+                </el-col> -->
+                <span class="unit">{{ getWaterTj }}</span>
+                <div class="units">kw/h</div>
               </div>
               </div>
             </div>
             </div>
             <div class="quantity">
             <div class="quantity">
               <div class="dosage">用水量</div>
               <div class="dosage">用水量</div>
               <div class="num">
               <div class="num">
-                <el-col>
+                <!-- <el-col>
                   <el-statistic title="" :value="getElcTj" />
                   <el-statistic title="" :value="getElcTj" />
-                </el-col>
-                <div class="unit">L</div>
+                </el-col> -->
+                <span class="unit">{{ getElcTj }}</span>
+                <div class="units">L</div>
               </div>
               </div>
             </div>
             </div>
           </div>
           </div>
@@ -86,7 +88,12 @@
                 border: 0,
                 border: 0,
               }"
               }"
             >
             >
-              <el-table-column align="center " type="index" label="序号" />
+              <el-table-column
+                align="center "
+                type="index"
+                width="80"
+                label="序号"
+              />
               <el-table-column align="center" prop="eNum" label="电(kw/h)" />
               <el-table-column align="center" prop="eNum" label="电(kw/h)" />
               <el-table-column align="center" prop="wNum" label="水(L)" />
               <el-table-column align="center" prop="wNum" label="水(L)" />
               <el-table-column align="center" prop="name" label="楼栋" />
               <el-table-column align="center" prop="name" label="楼栋" />
@@ -132,7 +139,12 @@
                 border: 0,
                 border: 0,
               }"
               }"
             >
             >
-              <el-table-column align="center " type="index" label="序号" />
+              <el-table-column
+                align="center "
+                width="80"
+                type="index"
+                label="序号"
+              />
               <el-table-column align="center" prop="eNum" label="电(kw/h)" />
               <el-table-column align="center" prop="eNum" label="电(kw/h)" />
               <el-table-column align="center" prop="wNum" label="水(L)" />
               <el-table-column align="center" prop="wNum" label="水(L)" />
               <el-table-column align="center" prop="name" label="楼栋" />
               <el-table-column align="center" prop="name" label="楼栋" />
@@ -286,44 +298,7 @@ const monthTypeValue = ref([]); // 数据
 // 区域能耗统计
 // 区域能耗统计
 const tableSearch1 = ref(); // 月份搜索
 const tableSearch1 = ref(); // 月份搜索
 const table1Data = reactive({
 const table1Data = reactive({
-  list: [
-    {
-      dian: "120",
-      shui: 12,
-      build: "6栋",
-      month: 6,
-    },
-    {
-      dian: "120",
-      shui: 12,
-      build: "7栋",
-      month: 7,
-    },
-    {
-      dian: "120",
-      shui: 12,
-      build: "8栋",
-      month: 8,
-    },
-    {
-      dian: "120",
-      shui: 12,
-      build: "9栋",
-      month: 9,
-    },
-    {
-      dian: "120",
-      shui: 12,
-      build: "9栋",
-      month: 9,
-    },
-    {
-      dian: "120",
-      shui: 12,
-      build: "9栋",
-      month: 9,
-    },
-  ],
+  list: [],
 });
 });
 const currentPage1 = ref(1); // 当前页
 const currentPage1 = ref(1); // 当前页
 const pageSize1 = ref(4);
 const pageSize1 = ref(4);
@@ -332,44 +307,7 @@ const total1 = ref(5); // 当前总数
 // 实时抄表
 // 实时抄表
 const tableSearch2 = ref(); // 月份搜索
 const tableSearch2 = ref(); // 月份搜索
 const table2Data = reactive({
 const table2Data = reactive({
-  list: [
-    {
-      dian: "120",
-      shui: 12,
-      build: "6栋",
-      time: "2023-12-08",
-    },
-    {
-      dian: "120",
-      shui: 12,
-      build: "7栋",
-      time: "2023-12-08",
-    },
-    {
-      dian: "120",
-      shui: 12,
-      build: "8栋",
-      time: "2023-12-08",
-    },
-    {
-      dian: "120",
-      shui: 12,
-      build: "9栋",
-      time: "2023-12-08",
-    },
-    {
-      dian: "120",
-      shui: 12,
-      build: "9栋",
-      month: "2023-12-08",
-    },
-    {
-      dian: "120",
-      shui: 12,
-      build: "9栋",
-      time: "2023-12-08",
-    },
-  ],
+  list: [],
 });
 });
 const currentPage2 = ref(1); // 当前页
 const currentPage2 = ref(1); // 当前页
 const pageSize2 = ref(4);
 const pageSize2 = ref(4);
@@ -379,60 +317,114 @@ const total2 = ref(5); // 当前总数
 const echarts1 = async () => {
 const echarts1 = async () => {
   category.value = echarts.init(document.getElementById("annulus"));
   category.value = echarts.init(document.getElementById("annulus"));
   category.value.setOption({
   category.value.setOption({
+    // tooltip: {
+    //   trigger: "item",
+    // },
+    // legend: {
+    //   orient: "horizontal",
+    //   bottom: "16%",
+    //   left: "22%",
+    //   itemGap: 20,
+    //   itemWidth: 15,
+    //   itemHeight: 15,
+    // },
+    // series: [
+    //   {
+    //     name: "用户类别占比",
+    //     type: "pie",
+    //     radius: ["70%", "90%"],
+    //     center: ["30%", "60%"],
+    //     // adjust the start angle
+    //     startAngle: 180,
+    //     label: {
+    //       show: true,
+    //       formatter(param) {
+    //         // correct the percentage
+    //         return param.name + " (" + param.percent * 2 + "%)";
+    //       },
+    //     },
+    //     data: [
+    //       {
+    //         value: getElcTj.value, // getElcTj.value
+    //         name: "用电",
+    //         itemStyle: {
+    //           color: "rgba(67, 181, 244, 1)",
+    //         },
+    //       },
+    //       {
+    //         value: getWaterTj.value, // getWaterTj.value
+    //         name: "用水",
+    //         itemStyle: {
+    //           color: "#D4EDFB",
+    //         },
+    //       },
+    //       {
+    //         // make an record to fill the bottom 50%
+    //         value: getElcTj.value + getWaterTj.value, // getElcTj.value + getWaterTj.value
+    //         itemStyle: {
+    //           // stop the chart from rendering this piece
+    //           color: "none",
+    //           decal: {
+    //             symbol: "none",
+    //           },
+    //         },
+    //         label: {
+    //           show: false,
+    //         },
+    //       },
+    //     ],
+    //   },
+    // ],
     tooltip: {
     tooltip: {
-      trigger: "item",
+      formatter: (params) => {
+        if (params.name != "") {
+          return (
+            params.name +
+            " : " +
+            params.value +
+            "\n" +
+            "(" +
+            params.percent +
+            "%)"
+          );
+        }
+      },
     },
     },
     legend: {
     legend: {
       orient: "horizontal",
       orient: "horizontal",
-      bottom: "16%",
-      left: "22%",
+      bottom: "15%",
+      left: "27%",
       itemGap: 20,
       itemGap: 20,
       itemWidth: 15,
       itemWidth: 15,
       itemHeight: 15,
       itemHeight: 15,
     },
     },
     series: [
     series: [
       {
       {
-        name: "用户类别占比",
         type: "pie",
         type: "pie",
-        radius: ["70%", "90%"],
-        center: ["30%", "60%"],
-        // adjust the start angle
-        startAngle: 180,
+        radius: ["50%", "66%"],
+        center: ["35%", "35%"],
+        color: ["rgba(67, 181, 244, 1)", "#D4EDFB"],
+        hoverAnimation: false,
+        startAngle: 70,
+        selectedMode: "single",
+        itemStyle: {
+          normal: {
+            // borderWidth: 8,
+            // borderColor: "#021a24",
+          },
+        },
         label: {
         label: {
           show: true,
           show: true,
-          formatter(param) {
-            // correct the percentage
-            return param.name + " (" + param.percent * 2 + "%)";
-          },
+          formatter: "{b}" + " " + "{c}",
         },
         },
         data: [
         data: [
           {
           {
-            value: getElcTj.value, // getElcTj.value
-            name: "用电",
-            itemStyle: {
-              color: "rgba(67, 181, 244, 1)",
-            },
+            name: "用电量",
+            value: getElcTj.value,
           },
           },
           {
           {
-            value: getWaterTj.value, // getWaterTj.value
-            name: "用水",
-            itemStyle: {
-              color: "#D4EDFB",
-            },
-          },
-          {
-            // make an record to fill the bottom 50%
-            value: getElcTj.value + getWaterTj.value, // getElcTj.value + getWaterTj.value
-            itemStyle: {
-              // stop the chart from rendering this piece
-              color: "none",
-              decal: {
-                symbol: "none",
-              },
-            },
-            label: {
-              show: false,
-            },
+            name: "用水量",
+            value: getWaterTj.value,
           },
           },
         ],
         ],
       },
       },
@@ -450,14 +442,15 @@ const getWaterElc = async () => {
   let res = await axios({
   let res = await axios({
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/wechat/getWaterTj",
     url: api.value + "/wanzai/api/wechat/getWaterTj",
+    headers: {
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
+    },
     data: data,
     data: data,
   });
   });
-  console.log(res, "用水量");
+  console.log(res, JSON.parse(eds.decryptDes(res.data.data)).num, "用水量");
   if (res.data.code == 200) {
   if (res.data.code == 200) {
     getWaterTj.value = JSON.parse(eds.decryptDes(res.data.data)).num;
     getWaterTj.value = JSON.parse(eds.decryptDes(res.data.data)).num;
-    nextTick(() => {
-      echarts1();
-    });
   } else {
   } else {
     ElMessage({
     ElMessage({
       type: "error",
       type: "error",
@@ -469,17 +462,15 @@ const getWaterElc = async () => {
   let ress = await axios({
   let ress = await axios({
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/wechat/getWaterTj",
     url: api.value + "/wanzai/api/wechat/getWaterTj",
+    headers: {
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
+    },
     data: data,
     data: data,
   });
   });
-  console.log(ress, "用电量");
+  console.log(ress, JSON.parse(eds.decryptDes(ress.data.data)).num, "用电量");
   if (ress.data.code == 200) {
   if (ress.data.code == 200) {
     getElcTj.value = JSON.parse(eds.decryptDes(ress.data.data)).num;
     getElcTj.value = JSON.parse(eds.decryptDes(ress.data.data)).num;
-    // ElMessage({
-    //   type: "success",
-    //   showClose: true,
-    //   message: res.data.nessage,
-    //   center: true,
-    // });
   } else {
   } else {
     ElMessage({
     ElMessage({
       type: "error",
       type: "error",
@@ -488,6 +479,9 @@ const getWaterElc = async () => {
       center: true,
       center: true,
     });
     });
   }
   }
+  nextTick(() => {
+    echarts1();
+  });
 };
 };
 // 获取区域统计数据 (22222222222222222222222)
 // 获取区域统计数据 (22222222222222222222222)
 // 切换水/电
 // 切换水/电
@@ -501,16 +495,28 @@ const getMonWaterElc = async () => {
     res = await axios({
     res = await axios({
       method: "post",
       method: "post",
       url: api.value + "/wanzai/api/wechat/getMonWater",
       url: api.value + "/wanzai/api/wechat/getMonWater",
+      headers: {
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
+      },
       data: data,
       data: data,
     });
     });
   } else {
   } else {
     res = await axios({
     res = await axios({
       method: "post",
       method: "post",
       url: api.value + "/wanzai/api/wechat/getMonElc",
       url: api.value + "/wanzai/api/wechat/getMonElc",
+      headers: {
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
+      },
       data: data,
       data: data,
     });
     });
   }
   }
-  console.log(res, JSON.parse(eds.decryptDes(res.data.data)),"水、电费查询");
+  console.log(
+    res,
+    JSON.parse(eds.decryptDes(res.data.data)),
+    "水、电 区域统计"
+  );
   if (res.data.code == 200) {
   if (res.data.code == 200) {
     areaData.value = JSON.parse(eds.decryptDes(res.data.data));
     areaData.value = JSON.parse(eds.decryptDes(res.data.data));
     monthList.value = [];
     monthList.value = [];
@@ -705,10 +711,14 @@ const energyDissipation = async () => {
   let res = await axios({
   let res = await axios({
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/wechat/getMeterMonthPage",
     url: api.value + "/wanzai/api/wechat/getMeterMonthPage",
+    headers: {
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
+    },
     params: paramsData,
     params: paramsData,
     data: data,
     data: data,
   });
   });
-  console.log(res,JSON.parse(eds.decryptDes(res.data.data)), "区域能耗统计");
+  console.log(res, JSON.parse(eds.decryptDes(res.data.data)), "区域能耗统计");
   if (res.data.code == 200) {
   if (res.data.code == 200) {
     table1Data.list = JSON.parse(eds.decryptDes(res.data.data)).list;
     table1Data.list = JSON.parse(eds.decryptDes(res.data.data)).list;
     total1.value = JSON.parse(eds.decryptDes(res.data.data)).total;
     total1.value = JSON.parse(eds.decryptDes(res.data.data)).total;
@@ -744,6 +754,10 @@ const meterReading = async () => {
   let res = await axios({
   let res = await axios({
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/wechat/getMeterDayPage",
     url: api.value + "/wanzai/api/wechat/getMeterDayPage",
+    headers: {
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
+    },
     params: paramsData,
     params: paramsData,
     data: data,
     data: data,
   });
   });
@@ -887,7 +901,11 @@ onUnmounted(() => {
                 }
                 }
               }
               }
               .unit {
               .unit {
-                transform: translateY(10px);
+                font-size: 26px;
+                font-weight: 800;
+              }
+              .units {
+                transform: translate(5px, 5px);
               }
               }
             }
             }
           }
           }

+ 21 - 16
src/views/exam/exam.vue

@@ -181,9 +181,7 @@
           <el-form-item label="是否综评 :" prop="attend">
           <el-form-item label="是否综评 :" prop="attend">
             <el-switch
             <el-switch
               v-model="editRuleForm.attend"
               v-model="editRuleForm.attend"
-              style="
-                --el-switch-on-color: rgba(41, 109, 227, 1);
-              "
+              style="--el-switch-on-color: rgba(41, 109, 227, 1)"
               active-value="1"
               active-value="1"
               inactive-value="0"
               inactive-value="0"
             />
             />
@@ -309,7 +307,7 @@ const editRef = ref();
 const editRuleForm = reactive({
 const editRuleForm = reactive({
   examType: "", // 考试类型
   examType: "", // 考试类型
   grades: "", // 年级
   grades: "", // 年级
-  attend:"",// 是否综评
+  attend: "", // 是否综评
   id: "",
   id: "",
 });
 });
 const gradesData = ref(); // 年级列表
 const gradesData = ref(); // 年级列表
@@ -333,14 +331,14 @@ const getList = async () => {
     currentPage: currentPage.value,
     currentPage: currentPage.value,
     pageCount: pageSize.value,
     pageCount: pageSize.value,
     name: searchInput.keyWord, // 关键字名称
     name: searchInput.keyWord, // 关键字名称
-    gradeId:searchInput.grades
+    gradeId: searchInput.grades,
   };
   };
   let res = await axios({
   let res = await axios({
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartExamtype/queryPageSmartExamtype",
     url: api.value + "/wanzai/api/smartExamtype/queryPageSmartExamtype",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -371,8 +369,8 @@ const gradesList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartGrade/querySmartGrades",
     url: api.value + "/wanzai/api/smartGrade/querySmartGrades",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
   });
   });
   console.log(res, JSON.parse(eds.decryptDes(res.data.data)), "年级列表");
   console.log(res, JSON.parse(eds.decryptDes(res.data.data)), "年级列表");
@@ -431,14 +429,20 @@ const confirmEdit = (formEl) => {
         res = await axios({
         res = await axios({
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartExamtype/updateSmartExamtypeById",
           url: api.value + "/wanzai/api/smartExamtype/updateSmartExamtypeById",
-          headers: {},
+          headers: {
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
+          },
           data: data,
           data: data,
         });
         });
       } else {
       } else {
         res = await axios({
         res = await axios({
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartExamtype/insertSmartExamtype",
           url: api.value + "/wanzai/api/smartExamtype/insertSmartExamtype",
-          headers: {},
+          headers: {
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
+          },
           data: data,
           data: data,
         });
         });
       }
       }
@@ -474,8 +478,8 @@ const del = async (row) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartExamtype/deleteSmartExamtypeById",
     url: api.value + "/wanzai/api/smartExamtype/deleteSmartExamtypeById",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -517,9 +521,10 @@ const handleSelectionChange = (val) => {
 //   let res = await axios({
 //   let res = await axios({
 //     method: "post",
 //     method: "post",
 //     url: api.value + "/carBook/cinfotoExcel.action",
 //     url: api.value + "/carBook/cinfotoExcel.action",
-//     headers: {
-//       token: sessionStorage.getItem("token"),
-//     },
+//    headers: {
+// token: sessionStorage.getItem("token"),
+//     user_head: sessionStorage.getItem("userhead"),
+//   },
 //     data: data,
 //     data: data,
 //   });
 //   });
 //   // console.log(res, "导出账号");
 //   // console.log(res, "导出账号");

+ 84 - 41
src/views/grade/grade.vue

@@ -303,6 +303,18 @@
                   >{{ item.id }}</span
                   >{{ item.id }}</span
                 >
                 >
               </el-option>
               </el-option>
+              <template #footer>
+                <div class="addStudentMore">
+                  <el-button
+                    v-if="
+                      studentCurrentPage < studentTotalPage &&
+                      studentTotalPage != 0
+                    "
+                    @click="addStudentMore"
+                    >加载更多+</el-button
+                  >
+                </div>
+              </template>
             </el-select>
             </el-select>
           </el-form-item>
           </el-form-item>
           <el-form-item label="年级 :" prop="yearClass">
           <el-form-item label="年级 :" prop="yearClass">
@@ -588,7 +600,7 @@ const selectData = reactive({ list: [] }); // 表格勾选的数据
 // 新增成绩中的学生分页列表
 // 新增成绩中的学生分页列表
 const studentData = ref();
 const studentData = ref();
 const studentCurrentPage = ref(1);
 const studentCurrentPage = ref(1);
-const studentPageSize = ref(10);
+const studentPageSize = ref(30);
 const studentTotalPage = ref(); // 学生分页总共多少页,判断滚动到底是否还要加载
 const studentTotalPage = ref(); // 学生分页总共多少页,判断滚动到底是否还要加载
 const studentInput = ref(); // 学生分页下拉框中的搜索字段
 const studentInput = ref(); // 学生分页下拉框中的搜索字段
 const studentExamTypeDatas = ref(); // 编辑中的考试类型数据
 const studentExamTypeDatas = ref(); // 编辑中的考试类型数据
@@ -686,8 +698,8 @@ const semesterList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartScore/querySmartSemesters",
     url: api.value + "/wanzai/api/smartScore/querySmartSemesters",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     // params: data,
     // params: data,
   });
   });
@@ -706,8 +718,8 @@ const classDataList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartGrade/querySmartGrades",
     url: api.value + "/wanzai/api/smartGrade/querySmartGrades",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     // params: data,
     // params: data,
   });
   });
@@ -735,8 +747,8 @@ const classInfoList = async (value) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartClass/querySmartClasss",
     url: api.value + "/wanzai/api/smartClass/querySmartClasss",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -759,8 +771,8 @@ const examTypeList = async (value) => {
       method: "get",
       method: "get",
       url: api.value + "/wanzai/api/smartScore/queryExamTypes",
       url: api.value + "/wanzai/api/smartScore/queryExamTypes",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: {
       params: {
         gradeId: value,
         gradeId: value,
@@ -787,8 +799,8 @@ const subjectList = async (value) => {
       method: "get",
       method: "get",
       url: api.value + "/wanzai/api/smartScore/querySubjects",
       url: api.value + "/wanzai/api/smartScore/querySubjects",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: {
       params: {
         gradeId: value,
         gradeId: value,
@@ -828,8 +840,8 @@ const getList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartScore/querySmartScorePage",
     url: api.value + "/wanzai/api/smartScore/querySmartScorePage",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -872,7 +884,7 @@ const addClick = async () => {
   editVisible.value = true;
   editVisible.value = true;
   studentCurrentPage.value = 1;
   studentCurrentPage.value = 1;
   studentList();
   studentList();
-  studentListScroll();
+  // studentListScroll();
   editRuleForm.semester = "";
   editRuleForm.semester = "";
   editRuleForm.yearClass = "";
   editRuleForm.yearClass = "";
   editRuleForm.class = "";
   editRuleForm.class = "";
@@ -895,8 +907,8 @@ const studentList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartScore/querySmartSecordPage",
     url: api.value + "/wanzai/api/smartScore/querySmartSecordPage",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -943,8 +955,8 @@ const studentListScroll = () => {
             method: "get",
             method: "get",
             url: api.value + "/wanzai/api/smartScore/querySmartSecordPage",
             url: api.value + "/wanzai/api/smartScore/querySmartSecordPage",
             headers: {
             headers: {
-              // token: sessionStorage.getItem("token"),
-              // user_head: sessionStorage.getItem("userhead"),
+              token: sessionStorage.getItem("token"),
+              user_head: sessionStorage.getItem("userhead"),
             },
             },
             params: data,
             params: data,
           });
           });
@@ -964,6 +976,32 @@ const studentListScroll = () => {
     });
     });
   });
   });
 };
 };
+// 学生列表点击 加载更多
+const addStudentMore = async () => {
+  if (studentCurrentPage.value < studentTotalPage.value) {
+    studentCurrentPage.value++;
+    console.log(studentCurrentPage.value, "滚动里面");
+    let data = {
+      currentPage: studentCurrentPage.value,
+      pageCount: studentPageSize.value,
+      name: studentInput.value,
+    };
+    let res = await axios({
+      method: "get",
+      url: api.value + "/wanzai/api/smartScore/querySmartSecordPage",
+      headers: {
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
+      },
+      params: data,
+    });
+    console.log(res, JSON.parse(eds.decryptDes(res.data.data)), "联系人数据");
+    studentData.value = [
+      ...studentData.value,
+      ...JSON.parse(eds.decryptDes(res.data.data)).list,
+    ];
+  }
+};
 
 
 //编辑按钮  (-------------------------------------------)
 //编辑按钮  (-------------------------------------------)
 const editClick = async (row) => {
 const editClick = async (row) => {
@@ -972,15 +1010,15 @@ const editClick = async (row) => {
   titleDialog.value = "编辑成绩";
   titleDialog.value = "编辑成绩";
   studentCurrentPage.value = 1;
   studentCurrentPage.value = 1;
   studentList(); // 学生分页
   studentList(); // 学生分页
-  studentListScroll(); // 学生分页触底加载更多
+  // studentListScroll(); // 学生分页触底加载更多
   classInfoList(row.gradeId); // 班级下拉
   classInfoList(row.gradeId); // 班级下拉
   // 考试类型
   // 考试类型
   let examType = await axios({
   let examType = await axios({
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartScore/queryExamTypes",
     url: api.value + "/wanzai/api/smartScore/queryExamTypes",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: {
     params: {
       gradeId: row.gradeId,
       gradeId: row.gradeId,
@@ -996,8 +1034,8 @@ const editClick = async (row) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartScore/querySubjects",
     url: api.value + "/wanzai/api/smartScore/querySubjects",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: {
     params: {
       gradeId: row.gradeId,
       gradeId: row.gradeId,
@@ -1039,8 +1077,8 @@ const changeName = async (value) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartUser/queryUserData",
     url: api.value + "/wanzai/api/smartUser/queryUserData",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -1060,8 +1098,8 @@ const changeName = async (value) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartScore/queryExamTypes",
     url: api.value + "/wanzai/api/smartScore/queryExamTypes",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: {
     params: {
       gradeId: editRuleForm.yearClass.split("-")[1],
       gradeId: editRuleForm.yearClass.split("-")[1],
@@ -1077,8 +1115,8 @@ const changeName = async (value) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartScore/querySubjects",
     url: api.value + "/wanzai/api/smartScore/querySubjects",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: {
     params: {
       gradeId: editRuleForm.yearClass.split("-")[1],
       gradeId: editRuleForm.yearClass.split("-")[1],
@@ -1118,8 +1156,8 @@ const confirmEdit = (formEl) => {
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartScore/insertSmartScore",
           url: api.value + "/wanzai/api/smartScore/insertSmartScore",
           headers: {
           headers: {
-            // token: sessionStorage.getItem("token"),
-            // user_head: sessionStorage.getItem("userhead"),
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
           },
           },
           data: data,
           data: data,
         });
         });
@@ -1162,8 +1200,8 @@ const confirmEdit = (formEl) => {
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartScore/updateSmartScoreById",
           url: api.value + "/wanzai/api/smartScore/updateSmartScoreById",
           headers: {
           headers: {
-            // token: sessionStorage.getItem("token"),
-            // user_head: sessionStorage.getItem("userhead"),
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
           },
           },
           data: data,
           data: data,
         });
         });
@@ -1218,8 +1256,8 @@ const confirmSelDel = async () => {
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/smartScore/deleteSmartScoreByIds",
     url: api.value + "/wanzai/api/smartScore/deleteSmartScoreByIds",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     data: data,
     data: data,
   });
   });
@@ -1273,8 +1311,8 @@ const importExcel = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartScore/smartUserExport",
     url: api.value + "/wanzai/api/smartScore/smartUserExport",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
     responseType: "blob",
     responseType: "blob",
@@ -1321,8 +1359,8 @@ const importTemp = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartScore/downloadScoreExcel",
     url: api.value + "/wanzai/api/smartScore/downloadScoreExcel",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     // responseType: "blob",
     // responseType: "blob",
   });
   });
@@ -1408,8 +1446,8 @@ const importSuc = async () => {
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/smartScore/importSmartScoreExcel",
     url: api.value + "/wanzai/api/smartScore/importSmartScoreExcel",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
       "Content-Type": "multipart/form-data;charset=UTF-8",
       "Content-Type": "multipart/form-data;charset=UTF-8",
     },
     },
     data: data,
     data: data,
@@ -1908,4 +1946,9 @@ onUnmounted(() => {
     // border: 1px solid red;
     // border: 1px solid red;
   }
   }
 }
 }
+.el-popper {
+  .addStudentMore {
+    text-align: center;
+  }
+}
 </style>
 </style>

+ 18 - 11
src/views/grades/grades.vue

@@ -346,8 +346,8 @@ const getList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartGrade/queryPageSmartGrade",
     url: api.value + "/wanzai/api/smartGrade/queryPageSmartGrade",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -426,14 +426,20 @@ const confirmEdit = (formEl) => {
         res = await axios({
         res = await axios({
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartGrade/updateSmartGradeById",
           url: api.value + "/wanzai/api/smartGrade/updateSmartGradeById",
-          headers: {},
+          headers: {
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
+          },
           data: data,
           data: data,
         });
         });
       } else {
       } else {
         res = await axios({
         res = await axios({
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartGrade/insertSmartGradeToBaisheng",
           url: api.value + "/wanzai/api/smartGrade/insertSmartGradeToBaisheng",
-          headers: {},
+          headers: {
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
+          },
           data: data,
           data: data,
         });
         });
       }
       }
@@ -469,8 +475,8 @@ const del = async (row) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartGrade/deleteSmartGradeById",
     url: api.value + "/wanzai/api/smartGrade/deleteSmartGradeById",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -512,9 +518,10 @@ const handleSelectionChange = (val) => {
 //   let res = await axios({
 //   let res = await axios({
 //     method: "post",
 //     method: "post",
 //     url: api.value + "/carBook/cinfotoExcel.action",
 //     url: api.value + "/carBook/cinfotoExcel.action",
-//     headers: {
-//       token: sessionStorage.getItem("token"),
-//     },
+//    headers: {
+// token: sessionStorage.getItem("token"),
+//     user_head: sessionStorage.getItem("userhead"),
+//   },
 //     data: data,
 //     data: data,
 //   });
 //   });
 //   // console.log(res, "导出账号");
 //   // console.log(res, "导出账号");
@@ -579,8 +586,8 @@ onBeforeMount(async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartSubject/queryPageSmartSubject",
     url: api.value + "/wanzai/api/smartSubject/queryPageSmartSubject",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });

File diff suppressed because it is too large
+ 1472 - 0
src/views/home/home copy.vue


+ 231 - 176
src/views/home/home.vue

@@ -5,7 +5,15 @@
         <div class="apply">
         <div class="apply">
           <div class="addApply">
           <div class="addApply">
             <span class="title">应用入口</span>
             <span class="title">应用入口</span>
-            <img src="@/assets/items/addApply.png" alt="" />
+            <!-- <img src="@/assets/items/addApply.png" alt="" /> -->
+          </div>
+          <div class="imgList">
+            <div class="imgListLi" v-for="item in applyData">
+              <div class="imgListLi" @click="applyLink(item)">
+                <img :src="item.logo" alt="" />
+                <span>{{ item.name }}</span>
+              </div>
+            </div>
           </div>
           </div>
         </div>
         </div>
       </div>
       </div>
@@ -27,7 +35,7 @@
           <div id="broken"></div>
           <div id="broken"></div>
         </div>
         </div>
         <!-- 表格3  视频监控管理-->
         <!-- 表格3  视频监控管理-->
-        <div class="annulus">
+        <!-- <div class="annulus">
           <div class="title">视频监控管理</div>
           <div class="title">视频监控管理</div>
           <div class="video">
           <div class="video">
             <ul>
             <ul>
@@ -56,11 +64,11 @@
               <li></li>
               <li></li>
             </ul>
             </ul>
           </div>
           </div>
-        </div>
+        </div> -->
       </div>
       </div>
       <div class="cartogram">
       <div class="cartogram">
         <!--4 待办事项 -->
         <!--4 待办事项 -->
-        <div class="annulus">
+        <!-- <div class="annulus">
           <div class="title">
           <div class="title">
             <span>待办事项</span>
             <span>待办事项</span>
             <span>20/30</span>
             <span>20/30</span>
@@ -93,7 +101,7 @@
               </li>
               </li>
             </ul>
             </ul>
           </div>
           </div>
-        </div>
+        </div> -->
         <!--5 门禁管理 -->
         <!--5 门禁管理 -->
         <div class="annulus">
         <div class="annulus">
           <div class="title">门禁管理</div>
           <div class="title">门禁管理</div>
@@ -124,43 +132,11 @@
           </div>
           </div>
         </div>
         </div>
         <!--9 资源大数据-->
         <!--9 资源大数据-->
-        <div class="annulus">
+        <!-- <div class="annulus">
           <div class="title">资源大数据</div>
           <div class="title">资源大数据</div>
-          <!-- <div class="table">
-            <el-table
-              :data="tableData3.list"
-              height="200"
-              :header-cell-style="{
-                background: 'rgba(240, 243, 247, 1)',
-                textAlign: 'center',
-              }"
-            >
-              <el-table-column type="index" align="center" label="序号" />
-              <el-table-column prop="schoolName" align="center" label="校区" />
-              <el-table-column
-                prop="ordersTotal"
-                align="center"
-                label="工单总数"
-              />
-              <el-table-column
-                prop="ordersCompensation"
-                align="center"
-                label="有偿"
-              />
-              <el-table-column
-                prop="ordersGratis"
-                align="center"
-                label="无偿"
-              />
-              <el-table-column
-                prop="totalPrice"
-                align="center"
-                label="耗材总费用"
-              />
-            </el-table>
-          </div> -->
+         
           <div id="resource"></div>
           <div id="resource"></div>
-        </div>
+        </div> -->
       </div>
       </div>
     </div>
     </div>
     <el-dialog
     <el-dialog
@@ -258,18 +234,29 @@
 
 
 <script setup>
 <script setup>
 import * as echarts from "echarts";
 import * as echarts from "echarts";
-import { ref, watch, reactive, nextTick, onUnmounted, onMounted } from "vue";
+import {
+  ref,
+  watch,
+  reactive,
+  nextTick,
+  onUnmounted,
+  onMounted,
+  markRaw,
+} from "vue";
 import { useRouter } from "vue-router";
 import { useRouter } from "vue-router";
 import { ElMessage, ElMessageBox } from "element-plus";
 import { ElMessage, ElMessageBox } from "element-plus";
 import { dayjs } from "element-plus";
 import { dayjs } from "element-plus";
 import lodash from "lodash";
 import lodash from "lodash";
 import axios from "axios";
 import axios from "axios";
 import eds from "@/utils/eds.js";
 import eds from "@/utils/eds.js";
+import { RSAdecrypt } from "@/utils/rsa.js";
 import { useStore } from "vuex";
 import { useStore } from "vuex";
 const store = useStore();
 const store = useStore();
 const api = ref("");
 const api = ref("");
 const router = useRouter();
 const router = useRouter();
 
 
+// 应用数据
+const applyData = ref();
 // 用户类别占比
 // 用户类别占比
 const echarts1 = ref();
 const echarts1 = ref();
 const personNum = ref(0);
 const personNum = ref(0);
@@ -284,16 +271,17 @@ const echarts5 = ref();
 // 最受欢迎老师TOP6
 // 最受欢迎老师TOP6
 const greetTeaData = ref();
 const greetTeaData = ref();
 // 资源大数据
 // 资源大数据
-const echarts6 = ref();
+// const echarts6 = ref();
 
 
 const getList = async () => {
 const getList = async () => {
+  applyList();
   cartogram();
   cartogram();
   cartogram2();
   cartogram2();
   doorForbidClick();
   doorForbidClick();
   behaviorClick();
   behaviorClick();
   classClick();
   classClick();
   greetTeaClick();
   greetTeaClick();
-  resourceClick();
+  // resourceClick();
   let res = await axios({
   let res = await axios({
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/login/queryReduce",
     url: api.value + "/wanzai/api/login/queryReduce",
@@ -307,6 +295,52 @@ const getList = async () => {
   console.log(JSON.parse(eds.decryptDes(res.data.data)), "EDS解密");
   console.log(JSON.parse(eds.decryptDes(res.data.data)), "EDS解密");
   //                import eds from "@/utils/eds.js";
   //                import eds from "@/utils/eds.js";
 };
 };
+const applyList = async () => {
+  let data = {
+    currentPage: 1,
+    pageCount: 100,
+    // managerId: sessionStorage.getItem("token"),
+  };
+  let res = await axios({
+    method: "get",
+    url: api.value + "/wanzai/api/smartApply/queryPageSmartApply",
+    headers: {
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
+    },
+    params: data,
+  });
+  console.log(
+    res,
+    JSON.parse(eds.decryptDes(res.data.data)).list,
+    "应用管理分页数据"
+  );
+  if (res.data.code == 200) {
+    let data = JSON.parse(eds.decryptDes(res.data.data)).list;
+    applyData.value = data.filter((item) => {
+      return item.category == "管理后台";
+    });
+  } else {
+    ElMessage({
+      type: "error",
+      showClose: true,
+      message: res.data.message,
+      center: true,
+    });
+  }
+};
+// 应用链接跳转
+const applyLink = (row) => {
+  console.log(row);
+  let str = row.urlLink;
+  let charToCheck = "http";
+
+  if (str.includes(charToCheck)) {
+    window.open(row.urlLink);
+  } else {
+    window.open(`https://${row.urlLink}`);
+  }
+};
 
 
 // 用户类别占比(------------------------------)
 // 用户类别占比(------------------------------)
 const cartogram = async () => {
 const cartogram = async () => {
@@ -365,8 +399,9 @@ const cartogram = async () => {
     },
     },
     legend: {
     legend: {
       orient: "vertical",
       orient: "vertical",
-      right: "11%",
-      top: "30%",
+      align: "auto",
+      right: "15%",
+      // top: "8%",
       itemGap: 20,
       itemGap: 20,
       itemWidth: 15,
       itemWidth: 15,
       itemHeight: 15,
       itemHeight: 15,
@@ -433,7 +468,7 @@ const cartogram2 = async () => {
   //   });
   //   });
   // }
   // }
   // 折现统计图
   // 折现统计图
-  echarts2.value = echarts.init(document.getElementById("broken"));
+  echarts2.value = markRaw(echarts.init(document.getElementById("broken")));
   echarts2.value.setOption({
   echarts2.value.setOption({
     // title: {
     // title: {
     //   text: "运动量对比",
     //   text: "运动量对比",
@@ -595,8 +630,28 @@ const cartogram2 = async () => {
   });
   });
 };
 };
 // 门禁管理
 // 门禁管理
-const doorForbidClick = () => {
-  echarts3.value = echarts.init(document.getElementById("doorForbid"));
+const doorForbidClick = async () => {
+  let res = await axios({
+    method: "get",
+    url: api.value + "/wanzai/api/smartFaceDiscern/access",
+    headers: {
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
+    },
+    params: data,
+  });
+  console.log(res, JSON.parse(eds.decryptDes(res.data.data)), "门禁管理");
+  let timeList = [];
+  let faceData = [];
+  let codeData = [];
+  let carData = [];
+  JSON.parse(eds.decryptDes(res.data.data)).forEach((item) => {
+    timeList.push(item.date);
+    faceData.push(item.face);
+    codeData.push(item.code);
+    carData.push(item.car);
+  });
+  echarts3.value = markRaw(echarts.init(document.getElementById("doorForbid")));
   echarts3.value.setOption({
   echarts3.value.setOption({
     tooltip: {
     tooltip: {
       trigger: "axis",
       trigger: "axis",
@@ -626,6 +681,14 @@ const doorForbidClick = () => {
       bottom: "20%",
       bottom: "20%",
       containLabel: true,
       containLabel: true,
     },
     },
+    dataZoom: [
+      {
+        // 这部分是关键
+        type: "inside", //slider  inside 添加滑动条类型 dataZoom 组件
+        start: 0, // 默认数据初始选择范围为 10% 到 90%
+        end: 30,
+      },
+    ],
     xAxis: [
     xAxis: [
       {
       {
         type: "category",
         type: "category",
@@ -636,21 +699,7 @@ const doorForbidClick = () => {
         axisTick: {
         axisTick: {
           show: false, // 不显示坐标轴刻度线
           show: false, // 不显示坐标轴刻度线
         },
         },
-        data: [
-          "11.18",
-          "11.19",
-          "11.20",
-          "11.21",
-          "11.22",
-          "11.23",
-          "11.24",
-          "11.25",
-          "11.26",
-          "11.27",
-          "11.28",
-          "11.29",
-          "11.30",
-        ],
+        data: timeList,
         // axisLabel: {
         // axisLabel: {
         //   // 每个数据后面都会带有单位
         //   // 每个数据后面都会带有单位
         //   formatter: "{value}月",
         //   formatter: "{value}月",
@@ -675,7 +724,7 @@ const doorForbidClick = () => {
         emphasis: {
         emphasis: {
           focus: "series",
           focus: "series",
         },
         },
-        data: [15, 20, 68, 20, 19, 30, 11, 20, 11, 9, 12, 32, 10],
+        data: faceData,
         symbolSize: 4, // 点的大小
         symbolSize: 4, // 点的大小
         symbol: "none", // 折线点设置为实心点
         symbol: "none", // 折线点设置为实心点
         // itemStyle: {
         // itemStyle: {
@@ -703,7 +752,7 @@ const doorForbidClick = () => {
         emphasis: {
         emphasis: {
           focus: "series",
           focus: "series",
         },
         },
-        data: [10, 12, 21, 40, 70, 10, 23, 10, 6, 10, 20, 14, 22],
+        data: codeData,
         symbolSize: 4, // 点的大小
         symbolSize: 4, // 点的大小
         symbol: "none", // 折线点设置为实心点
         symbol: "none", // 折线点设置为实心点
         // itemStyle: {
         // itemStyle: {
@@ -731,7 +780,7 @@ const doorForbidClick = () => {
         emphasis: {
         emphasis: {
           focus: "series",
           focus: "series",
         },
         },
-        data: [20, 15, 40, 19, 28, 30, 12, 40, 16, 18, 10, 24, 12],
+        data: carData,
         symbolSize: 4, // 点的大小
         symbolSize: 4, // 点的大小
         symbol: "none", // 折线点设置为实心点
         symbol: "none", // 折线点设置为实心点
         // itemStyle: {
         // itemStyle: {
@@ -762,8 +811,8 @@ const behaviorClick = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartWarning/behaviour",
     url: api.value + "/wanzai/api/smartWarning/behaviour",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -799,7 +848,7 @@ const behaviorClick = async () => {
     legend: {
     legend: {
       orient: "vertical",
       orient: "vertical",
       right: "6%",
       right: "6%",
-      top: "15%",
+      top: "10%",
       itemGap: 20,
       itemGap: 20,
       itemWidth: 15,
       itemWidth: 15,
       itemHeight: 15,
       itemHeight: 15,
@@ -910,7 +959,7 @@ const classClick = async () => {
     legend: {
     legend: {
       orient: "vertical",
       orient: "vertical",
       right: "6%",
       right: "6%",
-      top: "15%",
+      top: "12%",
       itemGap: 20,
       itemGap: 20,
       itemWidth: 15,
       itemWidth: 15,
       itemHeight: 15,
       itemHeight: 15,
@@ -942,8 +991,8 @@ const greetTeaClick = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartEvaluateTeacher/queryTopSixTeacher",
     url: api.value + "/wanzai/api/smartEvaluateTeacher/queryTopSixTeacher",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -1039,107 +1088,66 @@ const resourceClick = async () => {
     ],
     ],
   });
   });
 };
 };
-
-// 墨轩湖搜索关键字
-const searchTable6 = async () => {
-  table6Load.value = true;
-  table6CurrentPage.value = 1;
-  table6pageCount.value = 10;
-  let data = {
-    state: tabIndex6.value,
-    currentPage: table6CurrentPage.value,
-    pageCount: table6pageCount.value,
-    schoolId: 2,
-    keyWord: searchInput6.value,
-  };
-
-  let res = await axios({
-    method: "get",
-    url: api.value + "/repairRecord/maintenanceWorker",
-    headers: {
-      token: sessionStorage.getItem("token"),
-      user_head: sessionStorage.getItem("userhead"),
-    },
-    params: data,
-  });
-  console.log(res, "黄家湖维修师傅效率统计数据");
-  if (res.data.code == 200) {
-    if (res.data.data.records) {
-      table6Total.value = res.data.data.records.length;
-      if (table6CurrentPage.value > 1) {
-        tableData6.list = tableData6.list.concat(res.data.data.records);
-      } else {
-        tableData6.list = res.data.data.records;
-      }
-    } else {
-      tableData6.list = [];
-    }
-    table6Load.value = false;
-  } else {
-    table6Load.value = false;
-    ElMessage({
-      type: "error",
-      showClose: true,
-      message: res.data.message,
-      center: true,
-    });
-  }
-};
-// 维修师傅效率统计导出
-const importTable6 = async () => {
-  let datas = {
-    state: tabIndex6.value,
-    schoolId: 2,
-    keyWord: searchInput6.value,
-  };
-  let res = await axios({
-    method: "get",
-    url: api.value + "/repairRecord/maintenanceWorkerExport",
-    headers: {
-      token: sessionStorage.getItem("token"),
-      user_head: sessionStorage.getItem("userhead"),
-    },
-    params: datas,
-    responseType: "blob",
-  });
-  console.log(res, "墨轩湖维修师傅效率统计");
-  if (res.status == 200) {
-    let name = `墨轩湖维修师傅效率统计`;
-    var content = res.data;
-    var data = new Blob([content]);
-    var downloadUrl = window.URL.createObjectURL(data);
-    var anchor = document.createElement("a");
-    anchor.href = downloadUrl;
-    anchor.download = name + ".xlsx";
-    anchor.click();
-    window.URL.revokeObjectURL(data);
-    ElMessage({
-      type: "success",
-      showClose: true,
-      message: "导出成功",
-      center: true,
-    });
-  } else {
-    ElMessage({
-      type: "error",
-      showClose: true,
-      message: "导出失败",
-      center: true,
-    });
-  }
+const resizeChart = () => {
+  echarts1.value.resize();
+  // 能耗趋势图
+  echarts2.value.resize();
+  // 门禁管理
+  echarts3.value.resize();
+  // 行为统计
+  echarts4.value.resize();
+  // 班级考勤
+  echarts5.value.resize();
 };
 };
 
 
-onMounted(() => {
+onMounted(async () => {
   api.value = store.state.user.api;
   api.value = store.state.user.api;
   getList();
   getList();
+  window.addEventListener("resize", () => {
+    resizeChart();
+  });
 
 
-  if (router.currentRoute.value.query.token) {
-    console.log(router.currentRoute.value.query.token);
-    sessionStorage.setItem(
-      "token",
-      JSON.stringify(router.currentRoute.value.query.token)
-    );
-  }
+  // if (
+  //   router.currentRoute.value.query.userhead &&
+  //   router.currentRoute.value.query.token
+  // ) {
+  //   let userhead = router.currentRoute.value.query.userhead;
+  //   let token = router.currentRoute.value.query.token;
+  //   sessionStorage.setItem("token", JSON.stringify(token));
+  //   sessionStorage.setItem("userhead", JSON.stringify(userhead));
+  //   const formDatas = new FormData();
+  //   formDatas.append("userId", 722);
+  //   let resData = await axios({
+  //     method: "post",
+  //     url: api.value + "/wanzai/api/smartAuthorGroup/queryUserAuthor",
+  //     headers: {
+  //       token: sessionStorage.getItem("token"),
+  //       user_head: sessionStorage.getItem("userhead"),
+  //     },
+  //     data: formDatas,
+  //   });
+  //   console.log(resData, "查看当前用户权限");
+  //   if (resData.data.code == 200) {
+  //     let roleList = resData.data.data[0].treAuthor;
+  //     sessionStorage.setItem("roleList", JSON.stringify(roleList));
+  //     store.commit("ROLELIST", "");
+  //   } else {
+  //     ElMessage({
+  //       type: "error",
+  //       showClose: true,
+  //       message: resData.data.message,
+  //       center: true,
+  //     });
+  //   }
+  // }
+
+  // let userhead = "1B0430E15102ADC65C43E475AC697D9A";
+  // let token =
+  //   "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3MTMyMzQ2NDQsImNhcmRObyI6IjAwMDAwMSIsImlhdCI6MTcxMzE0ODI0NH0.jxuGCqDkqzRa3poVNQq5aoSrKGDCZauXFLVKrB4M87s";
+  // sessionStorage.setItem("token", JSON.stringify(token));
+  // sessionStorage.setItem("userhead", JSON.stringify(userhead));
+
+  
 });
 });
 onUnmounted(() => {
 onUnmounted(() => {
   echarts1.value.dispose();
   echarts1.value.dispose();
@@ -1147,7 +1155,6 @@ onUnmounted(() => {
   echarts3.value.dispose();
   echarts3.value.dispose();
   echarts4.value.dispose();
   echarts4.value.dispose();
   echarts5.value.dispose();
   echarts5.value.dispose();
-  echarts6.value.dispose();
 });
 });
 </script>
 </script>
 
 
@@ -1177,7 +1184,7 @@ onUnmounted(() => {
       .apply {
       .apply {
         width: 100%;
         width: 100%;
         min-width: 1240px;
         min-width: 1240px;
-        height: 120px;
+        height: 165px;
         border-radius: 8px;
         border-radius: 8px;
         background-color: #fff;
         background-color: #fff;
         box-shadow: 0px 3px 10px rgba(0, 97, 255, 0.2);
         box-shadow: 0px 3px 10px rgba(0, 97, 255, 0.2);
@@ -1187,13 +1194,58 @@ onUnmounted(() => {
           display: flex;
           display: flex;
           align-items: center;
           align-items: center;
           .title {
           .title {
-            margin: 0 10px;
+            margin: 0 20px;
           }
           }
           img {
           img {
             width: 25px;
             width: 25px;
             height: 25px;
             height: 25px;
           }
           }
         }
         }
+        .imgList {
+          display: flex;
+          align-items: center;
+          width: calc(100% - 40px);
+          margin: 0 auto;
+          overflow: auto;
+          .imgListLi {
+            display: flex;
+            flex-direction: column;
+            align-items: center;
+            margin-right: 15px;
+            cursor: pointer;
+
+            img {
+              width: 70px;
+              height: 70px;
+              margin-bottom: 8px;
+            }
+            span {
+              color: #000;
+              font-size: 12px;
+            }
+          }
+          .imgListLi:last-child {
+            margin-right: 0;
+          }
+        }
+        .imgList:hover {
+          &::-webkit-scrollbar-track {
+            background-color: #fff;
+          }
+
+          &::-webkit-scrollbar {
+            background-color: #57b2ff;
+            height: 3px;
+            width: 3px;
+          }
+
+          &::-webkit-scrollbar-thumb {
+            background: #57b2ff;
+            border-radius: 4px;
+            height: 3px;
+            width: 3px;
+          }
+        }
       }
       }
       // 用户类别占比
       // 用户类别占比
       .annulus {
       .annulus {
@@ -1204,6 +1256,7 @@ onUnmounted(() => {
         border-radius: 8px;
         border-radius: 8px;
         background-color: #fff;
         background-color: #fff;
         box-shadow: 0px 3px 10px rgba(0, 97, 255, 0.2);
         box-shadow: 0px 3px 10px rgba(0, 97, 255, 0.2);
+        position: relative;
 
 
         .title {
         .title {
           margin: 10px 30px;
           margin: 10px 30px;
@@ -1227,8 +1280,8 @@ onUnmounted(() => {
         .headcount {
         .headcount {
           position: relative;
           position: relative;
           top: -250px;
           top: -250px;
-          right: 0;
-          width: 100%;
+          right: calc(-100% + 120px);
+          width: 120px;
           .num {
           .num {
             display: flex;
             display: flex;
             flex-direction: column;
             flex-direction: column;
@@ -1237,14 +1290,16 @@ onUnmounted(() => {
             font-size: 14px;
             font-size: 14px;
             color: #000;
             color: #000;
             text-align: right;
             text-align: right;
-            margin-right: 30px;
+            // margin-right: 30px;
+            text-align: center;
           }
           }
           span:nth-child(2) {
           span:nth-child(2) {
             font-size: 26px;
             font-size: 26px;
             font-weight: 600;
             font-weight: 600;
             color: rgba(42, 42, 42, 1);
             color: rgba(42, 42, 42, 1);
             text-align: right;
             text-align: right;
-            margin-right: 30px;
+            // margin-right: 30px;
+            text-align: center;
           }
           }
         }
         }
         .table {
         .table {
@@ -1428,7 +1483,7 @@ onUnmounted(() => {
       }
       }
 
 
       .annulus:nth-child(2) {
       .annulus:nth-child(2) {
-        margin: 0 20px;
+        margin: 0 0 0 20px;
       }
       }
 
 
       //3 视频监控管理
       //3 视频监控管理

+ 21 - 12
src/views/identity/identity.vue

@@ -78,8 +78,10 @@
           <el-table-column align="center" prop="name" label="身份" />
           <el-table-column align="center" prop="name" label="身份" />
           <el-table-column align="center" prop="id" label="身份id" />
           <el-table-column align="center" prop="id" label="身份id" />
           <el-table-column align="center" prop="createTime" label="创建时间">
           <el-table-column align="center" prop="createTime" label="创建时间">
-            <template #default="{row}">
-              <span>{{ dayjs(row.createTime).format('YYYY-MM-DD HH:mm:ss') }}</span>
+            <template #default="{ row }">
+              <span>{{
+                dayjs(row.createTime).format("YYYY-MM-DD HH:mm:ss")
+              }}</span>
             </template>
             </template>
           </el-table-column>
           </el-table-column>
           <el-table-column align="center" label="操作" width="200">
           <el-table-column align="center" label="操作" width="200">
@@ -332,8 +334,8 @@ const getList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartIdentity/queryPageSmartIdentity",
     url: api.value + "/wanzai/api/smartIdentity/queryPageSmartIdentity",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -369,8 +371,8 @@ const applyList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartApply/queryPageSmartApply",
     url: api.value + "/wanzai/api/smartApply/queryPageSmartApply",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -428,14 +430,20 @@ const confirmEdit = (formEl) => {
         res = await axios({
         res = await axios({
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartIdentity/updateSmartIdentityById",
           url: api.value + "/wanzai/api/smartIdentity/updateSmartIdentityById",
-          headers: {},
+          headers: {
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
+          },
           data: data,
           data: data,
         });
         });
       } else {
       } else {
         res = await axios({
         res = await axios({
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartIdentity/insertSmartIdentity",
           url: api.value + "/wanzai/api/smartIdentity/insertSmartIdentity",
-          headers: {},
+          headers: {
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
+          },
           data: data,
           data: data,
         });
         });
       }
       }
@@ -471,8 +479,8 @@ const del = async (row) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartIdentity/deleteSmartIdentityById",
     url: api.value + "/wanzai/api/smartIdentity/deleteSmartIdentityById",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -515,8 +523,9 @@ const handleSelectionChange = (val) => {
 //     method: "post",
 //     method: "post",
 //     url: api.value + "/carBook/cinfotoExcel.action",
 //     url: api.value + "/carBook/cinfotoExcel.action",
 //     headers: {
 //     headers: {
-//       token: sessionStorage.getItem("token"),
-//     },
+//   token: sessionStorage.getItem("token"),
+//   user_head: sessionStorage.getItem("userhead"),
+// },
 //     data: data,
 //     data: data,
 //   });
 //   });
 //   // console.log(res, "导出账号");
 //   // console.log(res, "导出账号");

+ 6 - 6
src/views/info/info.vue

@@ -198,8 +198,8 @@ const getList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartSchool/querySmartSchool",
     url: api.value + "/wanzai/api/smartSchool/querySmartSchool",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     // params: data,
     // params: data,
   });
   });
@@ -245,8 +245,8 @@ const saveSchool = async () => {
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/smartSchool/updateSmartSchoolById",
     url: api.value + "/wanzai/api/smartSchool/updateSmartSchoolById",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     data: data,
     data: data,
   });
   });
@@ -296,8 +296,8 @@ const saveApp = async () => {
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/smartSchool/updateSmartSchoolById",
     url: api.value + "/wanzai/api/smartSchool/updateSmartSchoolById",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     data: data,
     data: data,
   });
   });

+ 44 - 38
src/views/log/log.vue

@@ -28,6 +28,7 @@
                 clearable
                 clearable
                 class="sel"
                 class="sel"
                 placeholder="任务名称"
                 placeholder="任务名称"
+                style="width: 180px"
                 @clear="mPage.searchBtn"
                 @clear="mPage.searchBtn"
               >
               >
                 <el-option
                 <el-option
@@ -68,6 +69,7 @@
                 class="sel"
                 class="sel"
                 clearable
                 clearable
                 placeholder="来源数据源"
                 placeholder="来源数据源"
+                style="width: 180px"
                 @clear="mPage.searchBtn"
                 @clear="mPage.searchBtn"
               >
               >
                 <el-option
                 <el-option
@@ -82,6 +84,7 @@
                 class="sel"
                 class="sel"
                 clearable
                 clearable
                 placeholder="目的数据源"
                 placeholder="目的数据源"
+                style="width: 180px"
                 @clear="mPage.searchBtn"
                 @clear="mPage.searchBtn"
               >
               >
                 <el-option
                 <el-option
@@ -113,7 +116,7 @@
                   end-placeholder="结束时间"
                   end-placeholder="结束时间"
                   :shortcuts="mPage.shortcuts"
                   :shortcuts="mPage.shortcuts"
                   value-format="YYYY-MM-DD HH:mm:ss"
                   value-format="YYYY-MM-DD HH:mm:ss"
-                  style="width: 360px; margin-right: 10px"
+                  style="width: 260px; margin-right: 10px"
                 />
                 />
               </div>
               </div>
               <el-button
               <el-button
@@ -439,12 +442,12 @@
               label="操作时间"
               label="操作时间"
               width="160"
               width="160"
             >
             >
-            <template #default="{ row }">
-              <span>{{
-                dayjs(row.logActionCreateTime).format("YYYY-MM-DD HH:mm:ss")
-              }}</span>
-            </template>
-          </el-table-column>
+              <template #default="{ row }">
+                <span>{{
+                  dayjs(row.logActionCreateTime).format("YYYY-MM-DD HH:mm:ss")
+                }}</span>
+              </template>
+            </el-table-column>
           </el-table>
           </el-table>
         </div>
         </div>
 
 
@@ -565,10 +568,12 @@
               prop="ECreateTime"
               prop="ECreateTime"
               label="创建时间"
               label="创建时间"
               width="150"
               width="150"
-            ><template #default="{row}">
-              <span>{{ dayjs(row.ECreateTime).format('YYYY-MM-DD HH:mm:ss') }}</span>
-            </template>
-          </el-table-column>
+              ><template #default="{ row }">
+                <span>{{
+                  dayjs(row.ECreateTime).format("YYYY-MM-DD HH:mm:ss")
+                }}</span>
+              </template>
+            </el-table-column>
           </el-table>
           </el-table>
         </div>
         </div>
 
 
@@ -763,8 +768,8 @@ const debugPage = reactive({
       method: "get",
       method: "get",
       url: api.value + "/wanzai/api/smartDataTask/queryPageSmartDataTask",
       url: api.value + "/wanzai/api/smartDataTask/queryPageSmartDataTask",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: data,
       params: data,
     });
     });
@@ -804,8 +809,8 @@ const debugPage = reactive({
       method: "get",
       method: "get",
       url: api.value + "/wanzai/api/smartDataTask/queryPageSmartDataTaskDebug",
       url: api.value + "/wanzai/api/smartDataTask/queryPageSmartDataTaskDebug",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: data,
       params: data,
     });
     });
@@ -840,8 +845,8 @@ const debugPage = reactive({
       method: "get",
       method: "get",
       url: api.value + "/wanzai/api/smartDataTask/queryTaskDebugSql",
       url: api.value + "/wanzai/api/smartDataTask/queryTaskDebugSql",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: data,
       params: data,
     });
     });
@@ -874,8 +879,8 @@ const debugPage = reactive({
       method: "get",
       method: "get",
       url: api.value + "/wanzai/api/smartDataTask/queryTaskSetDebugSql",
       url: api.value + "/wanzai/api/smartDataTask/queryTaskSetDebugSql",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       data: {
       data: {
         id: row.id,
         id: row.id,
@@ -999,8 +1004,8 @@ const bPage = reactive({
       method: "get",
       method: "get",
       url: api.value + "/wanzai/api/smartDataSourceLog/queryDistinctActionName",
       url: api.value + "/wanzai/api/smartDataSourceLog/queryDistinctActionName",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
     });
     });
     // console.log(res, "操作名称");
     // console.log(res, "操作名称");
@@ -1031,8 +1036,8 @@ const bPage = reactive({
       url:
       url:
         api.value + "/wanzai/api/smartDataSourceLog/queryDistinctActionPeople",
         api.value + "/wanzai/api/smartDataSourceLog/queryDistinctActionPeople",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
     });
     });
     // console.log(res, "操作名称");
     // console.log(res, "操作名称");
@@ -1063,8 +1068,8 @@ const bPage = reactive({
       url:
       url:
         api.value + "/wanzai/api/smartDataSourceLog/queryDistinctActionModule",
         api.value + "/wanzai/api/smartDataSourceLog/queryDistinctActionModule",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
     });
     });
     // console.log(res, "操作名称");
     // console.log(res, "操作名称");
@@ -1096,8 +1101,8 @@ const bPage = reactive({
         api.value +
         api.value +
         "/wanzai/api/smartDataSourceLog/queryDistinctActionBusiness",
         "/wanzai/api/smartDataSourceLog/queryDistinctActionBusiness",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
     });
     });
     // console.log(res, "操作名称");
     // console.log(res, "操作名称");
@@ -1143,8 +1148,8 @@ const bPage = reactive({
         api.value +
         api.value +
         "/wanzai/api/smartDataSourceLog/queryPageSmartDataSourceLog",
         "/wanzai/api/smartDataSourceLog/queryPageSmartDataSourceLog",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: data,
       params: data,
     });
     });
@@ -1289,8 +1294,8 @@ const mPage = reactive({
       method: "get",
       method: "get",
       url: api.value + "/wanzai/api/smartDataTask/queryPageSmartDataTaskLog",
       url: api.value + "/wanzai/api/smartDataTask/queryPageSmartDataTaskLog",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: data,
       params: data,
     });
     });
@@ -1326,8 +1331,8 @@ const mPage = reactive({
       method: "get",
       method: "get",
       url: api.value + "/wanzai/api/smartDataTask/queryPageSmartDataTask",
       url: api.value + "/wanzai/api/smartDataTask/queryPageSmartDataTask",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: data,
       params: data,
     });
     });
@@ -1359,8 +1364,8 @@ const mPage = reactive({
       method: "get",
       method: "get",
       url: api.value + "/wanzai/api/smartDataClass/queryPageSmartDataSource",
       url: api.value + "/wanzai/api/smartDataClass/queryPageSmartDataSource",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: data,
       params: data,
     });
     });
@@ -1454,9 +1459,10 @@ watch(
 //   let res = await axios({
 //   let res = await axios({
 //     method: "post",
 //     method: "post",
 //     url: api.value + "/carBook/cinfotoExcel.action",
 //     url: api.value + "/carBook/cinfotoExcel.action",
-//     headers: {
-//       token: sessionStorage.getItem("token"),
-//     },
+//    headers: {
+// token: sessionStorage.getItem("token"),
+//     user_head: sessionStorage.getItem("userhead"),
+//   },
 //     data: data,
 //     data: data,
 //   });
 //   });
 //   // console.log(res, "导出账号");
 //   // console.log(res, "导出账号");

+ 10 - 2
src/views/login/index.vue

@@ -39,7 +39,7 @@
               >微信登录</a
               >微信登录</a
             >
             >
           </div>
           </div>
-          <div class="btn" @click="loginClick">统一认证</div>
+          <!-- <div class="btn" @click="loginClick">统一认证</div> -->
         </div>
         </div>
       </div>
       </div>
       <div class="box_login" v-else>
       <div class="box_login" v-else>
@@ -156,6 +156,10 @@ const submitForm = (formEl) => {
       // let res = await axios({
       // let res = await axios({
       //   method: "post",
       //   method: "post",
       //   url: api.value + "/login/Login",
       //   url: api.value + "/login/Login",
+      //   headers: {
+      //   token: sessionStorage.getItem("token"),
+      //   user_head: sessionStorage.getItem("userhead"),
+      // },
       //   data: data,
       //   data: data,
       // });
       // });
       // console.log(res);
       // console.log(res);
@@ -230,6 +234,10 @@ const sendPhone = async () => {
     let res = await axios({
     let res = await axios({
       method: "post",
       method: "post",
       url: api.value + "/wanzai/api/wechat/sendMessage",
       url: api.value + "/wanzai/api/wechat/sendMessage",
+      headers: {
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
+      },
       data: formData,
       data: formData,
     });
     });
     console.log(res, "发送短信");
     console.log(res, "发送短信");
@@ -591,7 +599,7 @@ onBeforeMount(() => {
           display: flex;
           display: flex;
           justify-content: center;
           justify-content: center;
           align-items: center;
           align-items: center;
-          width: 98px;
+          width: 210px;
           height: 40px;
           height: 40px;
           color: #fff;
           color: #fff;
           font-size: 16px;
           font-size: 16px;

+ 41 - 0
src/views/notFound/notFound.vue

@@ -0,0 +1,41 @@
+<template>
+  <div class="content-box">
+   
+  </div>
+</template>
+
+<script setup>
+import { ref, reactive, nextTick, onBeforeMount, onUnmounted } from "vue";
+import { useRouter } from "vue-router";
+import { ElMessage, ElMessageBox } from "element-plus";
+import { Calendar } from "@element-plus/icons-vue";
+import { dayjs } from "element-plus";
+import lodash, { reduce } from "lodash";
+import axios from "axios";
+import { useStore } from "vuex";
+const store = useStore();
+const router = useRouter();
+
+onBeforeMount(() => {
+  router.push({ path: `/wanzai/NotFound` });
+});
+onUnmounted(() => {
+  // document.removeEventListener("keyup", Enters);
+});
+</script>
+
+<style scoped lang="scss">
+.content-box {
+  width: 97.5%;
+  height: 89%;
+  margin: 20px auto;
+  background-color: #fff;
+  color: #fff;
+  display: flex;
+  flex-direction: column;
+  box-shadow: 0px 3px 10px rgba(0, 97, 255, 0.2);
+}
+.el-input {
+  width: 192px;
+}
+</style>

+ 22 - 13
src/views/post/post.vue

@@ -83,8 +83,10 @@
             </template>
             </template>
           </el-table-column>
           </el-table-column>
           <el-table-column align="center" prop="createTime" label="创建时间">
           <el-table-column align="center" prop="createTime" label="创建时间">
-            <template #default="{row}">
-              <span>{{ dayjs(row.createTime).format('YYYY-MM-DD HH:mm:ss') }}</span>
+            <template #default="{ row }">
+              <span>{{
+                dayjs(row.createTime).format("YYYY-MM-DD HH:mm:ss")
+              }}</span>
             </template>
             </template>
           </el-table-column>
           </el-table-column>
           <el-table-column align="center" label="操作" width="200">
           <el-table-column align="center" label="操作" width="200">
@@ -311,8 +313,8 @@ const getList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartDuties/queryPageSmartDuties",
     url: api.value + "/wanzai/api/smartDuties/queryPageSmartDuties",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -348,8 +350,8 @@ const applyList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartApply/queryPageSmartApply",
     url: api.value + "/wanzai/api/smartApply/queryPageSmartApply",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -409,14 +411,20 @@ const confirmEdit = (formEl) => {
         res = await axios({
         res = await axios({
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartDuties/updateSmartDutiesById",
           url: api.value + "/wanzai/api/smartDuties/updateSmartDutiesById",
-          headers: {},
+          headers: {
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
+          },
           data: data,
           data: data,
         });
         });
       } else {
       } else {
         res = await axios({
         res = await axios({
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartDuties/insertSmartDuties",
           url: api.value + "/wanzai/api/smartDuties/insertSmartDuties",
-          headers: {},
+          headers: {
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
+          },
           data: data,
           data: data,
         });
         });
       }
       }
@@ -452,8 +460,8 @@ const del = async (row) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartDuties/deleteSmartDutiesById",
     url: api.value + "/wanzai/api/smartDuties/deleteSmartDutiesById",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -495,9 +503,10 @@ const handleSelectionChange = (val) => {
 //   let res = await axios({
 //   let res = await axios({
 //     method: "post",
 //     method: "post",
 //     url: api.value + "/carBook/cinfotoExcel.action",
 //     url: api.value + "/carBook/cinfotoExcel.action",
-//     headers: {
-//       token: sessionStorage.getItem("token"),
-//     },
+//   headers: {
+// token: sessionStorage.getItem("token"),
+//     user_head: sessionStorage.getItem("userhead"),
+//   },
 //     data: data,
 //     data: data,
 //   });
 //   });
 //   // console.log(res, "导出账号");
 //   // console.log(res, "导出账号");

+ 121 - 65
src/views/roles/roles.vue

@@ -24,7 +24,10 @@
               {{ data.name }}
               {{ data.name }}
             </div>
             </div>
 
 
-            <el-dropdown trigger="click" class="tree_more">
+            <el-dropdown
+              trigger="click"
+              class="tree_more"
+            >
               <div>
               <div>
                 <el-icon><MoreFilled /></el-icon>
                 <el-icon><MoreFilled /></el-icon>
               </div>
               </div>
@@ -65,6 +68,7 @@
               closable
               closable
               v-for="(item, index) in tagList"
               v-for="(item, index) in tagList"
               :key="item.id"
               :key="item.id"
+              @close="handleCloseUser(item)"
             >
             >
               {{ item.userName }}
               {{ item.userName }}
             </el-tag>
             </el-tag>
@@ -231,16 +235,8 @@
             border: 0,
             border: 0,
           }"
           }"
         >
         >
-          <el-table-column
-            align="center"
-            prop="cardNo"
-            label="学号"
-          />
-          <el-table-column
-            align="center"
-            prop="name"
-            label="姓名"
-          />
+          <el-table-column align="center" prop="cardNo" label="学号" />
+          <el-table-column align="center" prop="name" label="姓名" />
           <el-table-column prop="lookRoles" label="查看权限" width="250">
           <el-table-column prop="lookRoles" label="查看权限" width="250">
             <template #default="{ row }">
             <template #default="{ row }">
               <div
               <div
@@ -342,7 +338,6 @@
             default-expand-all
             default-expand-all
             :expand-on-click-node="false"
             :expand-on-click-node="false"
             show-checkbox
             show-checkbox
-            check-strictly
             @check="editMemberCheckChange"
             @check="editMemberCheckChange"
           >
           >
             <template #default="{ node, data }">
             <template #default="{ node, data }">
@@ -420,7 +415,12 @@
               show-checkbox
               show-checkbox
               node-key="id"
               node-key="id"
               ref="treListTree"
               ref="treListTree"
-              :props="{ label: id, children: children }"
+              :default-checked-keys="[1]"
+              :props="{
+                label: id,
+                children: childrenAddMemberClick,
+                disabled: disabled,
+              }"
               @check="checkTreList"
               @check="checkTreList"
             >
             >
               <template #default="{ node, data }">
               <template #default="{ node, data }">
@@ -620,24 +620,7 @@ const dataSource = ref([
     id: 1,
     id: 1,
     label: "超级管理员",
     label: "超级管理员",
     icon: "FolderOpened",
     icon: "FolderOpened",
-    children: [
-      {
-        id: "1-1",
-        label: "普通管理员",
-      },
-      {
-        id: "1-2",
-        label: "财务管理员",
-      },
-      {
-        id: "1-3",
-        label: "学工处",
-      },
-      {
-        id: "1-4",
-        label: "招就处",
-      },
-    ],
+    children: [],
   },
   },
 ]);
 ]);
 const authorGroupParentId = ref(0); // 父id
 const authorGroupParentId = ref(0); // 父id
@@ -741,8 +724,8 @@ const getAllDataList = async () => {
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/smartAuthorGroup/querySmartAuthorGroup",
     url: api.value + "/wanzai/api/smartAuthorGroup/querySmartAuthorGroup",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -777,8 +760,8 @@ const getUserAuthList = async () => {
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/smartAuthorGroup/getSmartAuthorGroupManager",
     url: api.value + "/wanzai/api/smartAuthorGroup/getSmartAuthorGroupManager",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     data: formData,
     data: formData,
   });
   });
@@ -811,8 +794,8 @@ const allRolesData = async () => {
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/smartAuthorGroup/getSmartAuthorGroupMenu",
     url: api.value + "/wanzai/api/smartAuthorGroup/getSmartAuthorGroupMenu",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     data: formDatas,
     data: formDatas,
   });
   });
@@ -820,6 +803,18 @@ const allRolesData = async () => {
   if (resData.data.code == 200) {
   if (resData.data.code == 200) {
     // let datas = JSON.parse(eds.decryptDes(resData.data.data));
     // let datas = JSON.parse(eds.decryptDes(resData.data.data));
     let datas = resData.data.data;
     let datas = resData.data.data;
+    // let flag = datas.some((item) => {
+    //   return item.id == 1;
+    // });
+    // if (!flag) {
+    //   datas.unshift({
+    //     id: 1,
+    //     name: "系统首页",
+    //     route: "/wanzai/home",
+    //   });
+    // }
+    console.log(datas);
+
     menuList.value = datas;
     menuList.value = datas;
   } else {
   } else {
     ElMessage({
     ElMessage({
@@ -847,8 +842,8 @@ const handleNodeClick = async (data) => {
   //   method: "post",
   //   method: "post",
   //   url: api.value + "/wanzai/api/smartAuthorGroup/querySmartAuthorGroup",
   //   url: api.value + "/wanzai/api/smartAuthorGroup/querySmartAuthorGroup",
   //   headers: {
   //   headers: {
-  //     // token: sessionStorage.getItem("token"),
-  //     // user_head: sessionStorage.getItem("userhead"),
+  //     token: sessionStorage.getItem("token"),
+  //     user_head: sessionStorage.getItem("userhead"),
   //   },
   //   },
   //   params: datas,
   //   params: datas,
   // });
   // });
@@ -895,8 +890,8 @@ const confirmAddGroup = async (formEl) => {
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartAuthorGroup/addSmartAuthorGroup",
           url: api.value + "/wanzai/api/smartAuthorGroup/addSmartAuthorGroup",
           headers: {
           headers: {
-            // token: sessionStorage.getItem("token"),
-            // user_head: sessionStorage.getItem("userhead"),
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
           },
           },
           data: data,
           data: data,
         });
         });
@@ -934,8 +929,8 @@ const confirmAddGroup = async (formEl) => {
             api.value +
             api.value +
             "/wanzai/api/smartAuthorGroup/updateSmartAuthorGroupName",
             "/wanzai/api/smartAuthorGroup/updateSmartAuthorGroupName",
           headers: {
           headers: {
-            // token: sessionStorage.getItem("token"),
-            // user_head: sessionStorage.getItem("userhead"),
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
           },
           },
           data: data,
           data: data,
         });
         });
@@ -994,8 +989,8 @@ const handleEditApp = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartApply/queryPageSmartApply",
     url: api.value + "/wanzai/api/smartApply/queryPageSmartApply",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -1041,10 +1036,10 @@ const editManagementList = async () => {
   };
   };
   let res = await axios({
   let res = await axios({
     method: "get",
     method: "get",
-    url: api.value + "/wanzai/api/smartDepartment/queryDepartmentTree",
+    url: api.value + "/wanzai/api/smartDepartment/queryAllDepartmentTree",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -1076,6 +1071,9 @@ const confirmEdit = (flag) => {
 };
 };
 const cancelManagement = () => {
 const cancelManagement = () => {
   managementVis.value = false;
   managementVis.value = false;
+  managementData.list.forEach((item) => {
+    item.editShow = false;
+  });
 };
 };
 
 
 // 修改管理组权限中 点击编辑按钮 (--------------------------------------------)
 // 修改管理组权限中 点击编辑按钮 (--------------------------------------------)
@@ -1158,7 +1156,8 @@ const confirmEditMember = async () => {
     url:
     url:
       api.value + "/wanzai/api/smartAuthorGroup/operateSmartAuthorDepartment",
       api.value + "/wanzai/api/smartAuthorGroup/operateSmartAuthorDepartment",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     data: data,
     data: data,
   });
   });
@@ -1224,10 +1223,10 @@ const addManagerList = async () => {
   };
   };
   let res = await axios({
   let res = await axios({
     method: "get",
     method: "get",
-    url: api.value + "/wanzai/api/smartDepartment/queryDepartmentTree",
+    url: api.value + "/wanzai/api/smartDepartment/queryAllDepartmentTree",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -1277,7 +1276,10 @@ const addManagerList = async () => {
 //             let res = await axios({
 //             let res = await axios({
 //               method: "get",
 //               method: "get",
 //               url: api.value + "/wanzai/api/smartWarning/warningUserList",
 //               url: api.value + "/wanzai/api/smartWarning/warningUserList",
-//               headers: {},
+//              headers: {
+//   token: sessionStorage.getItem("token"),
+//   user_head: sessionStorage.getItem("userhead"),
+// },
 //               params: data,
 //               params: data,
 //             });
 //             });
 //             console.log(res, "管理员人员滚动数据");
 //             console.log(res, "管理员人员滚动数据");
@@ -1326,8 +1328,8 @@ const departmentList = async (title) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartUser/queryPageSmartUser",
     url: api.value + "/wanzai/api/smartUser/queryPageSmartUser",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -1388,8 +1390,8 @@ const userClick = async (row) => {
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/smartAuthorGroup/queryUserAuthor",
     url: api.value + "/wanzai/api/smartAuthorGroup/queryUserAuthor",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     data: formData,
     data: formData,
   });
   });
@@ -1454,7 +1456,6 @@ const cancelAddManagerLiCheck = (i) => {
     }
     }
   });
   });
 };
 };
-
 // 确认按钮
 // 确认按钮
 const affirmAddManager = async () => {
 const affirmAddManager = async () => {
   if (addManagerLiCount.value.length >= 1) {
   if (addManagerLiCount.value.length >= 1) {
@@ -1471,7 +1472,10 @@ const affirmAddManager = async () => {
       method: "post",
       method: "post",
       url:
       url:
         api.value + "/wanzai/api/smartAuthorGroup/operateSmartAuthorGroupUser",
         api.value + "/wanzai/api/smartAuthorGroup/operateSmartAuthorGroupUser",
-      headers: {},
+      headers: {
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
+      },
       data: formData,
       data: formData,
     });
     });
     console.log(res, "确认添加管理员");
     console.log(res, "确认添加管理员");
@@ -1510,6 +1514,48 @@ const cancelAddManager = () => {
   selManagerData.value = []; // 将部门查询的数据置空
   selManagerData.value = []; // 将部门查询的数据置空
   departmentId.value = ""; // 将点击的部门id置空
   departmentId.value = ""; // 将点击的部门id置空
 };
 };
+// 界面 管理员标签 删除
+const handleCloseUser = async (row) => {
+  console.log(row);
+  console.log(tagList.value, "管理员");
+  let filArr = tagList.value.filter((i) => {
+    return i.id != row.id;
+  });
+  let arr = [];
+  filArr.forEach((item) => {
+    arr.push(item.id);
+  });
+  const formData = new FormData();
+  formData.append("id", authorGroupId.value);
+  formData.append("userId", arr.join(","));
+  console.log(formData);
+  let res = await axios({
+    method: "post",
+    url: api.value + "/wanzai/api/smartAuthorGroup/operateSmartAuthorGroupUser",
+    headers: {
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
+    },
+    data: formData,
+  });
+  console.log(res, "确认添加管理员");
+  if (res.data.code == 200) {
+    getUserAuthList(); // 所有用户权限数据
+    ElMessage({
+      type: "success",
+      showClose: true,
+      message: res.data.message,
+      center: true,
+    });
+  } else {
+    ElMessage({
+      type: "error",
+      showClose: true,
+      message: res.data.message,
+      center: true,
+    });
+  }
+};
 
 
 // 点击选择菜单权限 (----------------------------------------------)
 // 点击选择菜单权限 (----------------------------------------------)
 const treMemberClick = async (row) => {
 const treMemberClick = async (row) => {
@@ -1524,14 +1570,23 @@ const treMemberClick = async (row) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartMenu/queryPageSmartMenu",
     url: api.value + "/wanzai/api/smartMenu/queryPageSmartMenu",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
-  console.log(res, "菜单管理分页数据");
+  console.log(
+    res,
+    JSON.parse(eds.decryptDes(res.data.data)).list,
+    "菜单管理分页数据"
+  );
   if (res.data.code == 200) {
   if (res.data.code == 200) {
     treListData.value = JSON.parse(eds.decryptDes(res.data.data)).list;
     treListData.value = JSON.parse(eds.decryptDes(res.data.data)).list;
+    treListData.value.forEach((item) => {
+      // if (item.id == 1) {
+      //   item.disabled = true;
+      // }
+    });
     dataLength.value = JSON.parse(eds.decryptDes(res.data.data)).totalCount;
     dataLength.value = JSON.parse(eds.decryptDes(res.data.data)).totalCount;
     nextTick(() => {
     nextTick(() => {
       treListTree.value.setCheckedNodes(menuList.value);
       treListTree.value.setCheckedNodes(menuList.value);
@@ -1581,7 +1636,8 @@ const affirmTreList = async () => {
     url:
     url:
       api.value + "/wanzai/api/smartAuthorGroup/operateSmartAuthorGroupApply",
       api.value + "/wanzai/api/smartAuthorGroup/operateSmartAuthorGroupApply",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     data: formData,
     data: formData,
   });
   });
@@ -1640,8 +1696,8 @@ onBeforeMount(async () => {
   //   method: "post",
   //   method: "post",
   //   url: api.value + "/wanzai/api/smartAuthorGroup/queryUserAuthor",
   //   url: api.value + "/wanzai/api/smartAuthorGroup/queryUserAuthor",
   //   headers: {
   //   headers: {
-  //     // token: sessionStorage.getItem("token"),
-  //     // user_head: sessionStorage.getItem("userhead"),
+  //      token: sessionStorage.getItem("token"),
+  //      user_head: sessionStorage.getItem("userhead"),
   //   },
   //   },
   //   data: formData,
   //   data: formData,
   // });
   // });

+ 39 - 15
src/views/safety/safety.vue

@@ -34,6 +34,7 @@
               class="m-2"
               class="m-2"
               placeholder="请选择状态"
               placeholder="请选择状态"
               @change="searchBtn"
               @change="searchBtn"
+              style="width: 150px"
             >
             >
               <el-option label="全部" value="" />
               <el-option label="全部" value="" />
               <el-option label="已处理" value="1" />
               <el-option label="已处理" value="1" />
@@ -124,8 +125,7 @@
                 dayjs(row.createTime).format("YYYY-MM-DD HH:mm:ss")
                 dayjs(row.createTime).format("YYYY-MM-DD HH:mm:ss")
               }}</span>
               }}</span>
             </template>
             </template>
-            </el-table-column
-          >
+          </el-table-column>
           <el-table-column align="center" label="操作" width="200">
           <el-table-column align="center" label="操作" width="200">
             <template #default="scope">
             <template #default="scope">
               <div class="edit" v-if="scope.row.statu == 0">
               <div class="edit" v-if="scope.row.statu == 0">
@@ -382,7 +382,7 @@ const pushSetVisible = ref(false);
 const pushSetTree = ref(); // ref
 const pushSetTree = ref(); // ref
 const pushSetInput = ref(); // 搜索
 const pushSetInput = ref(); // 搜索
 const pushSetCurrentPage = ref(1);
 const pushSetCurrentPage = ref(1);
-const pushSetPageCount = ref(10);
+const pushSetPageCount = ref(30);
 const pushSetPageTotal = ref(1); // 推送人总共有多少页,由于判断滚动加载是否已全部加载数据
 const pushSetPageTotal = ref(1); // 推送人总共有多少页,由于判断滚动加载是否已全部加载数据
 const dataLength = ref(0); // 人员的数量
 const dataLength = ref(0); // 人员的数量
 const pushSetDatas = ref([
 const pushSetDatas = ref([
@@ -415,8 +415,8 @@ const getList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartWarning/queryPageSmartWarning",
     url: api.value + "/wanzai/api/smartWarning/queryPageSmartWarning",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -463,7 +463,10 @@ const editClick = async (row) => {
   //   let res = await axios({
   //   let res = await axios({
   //     method: "post",
   //     method: "post",
   //     url: api.value + "/mhotel/uploadgetByLinkId.action",
   //     url: api.value + "/mhotel/uploadgetByLinkId.action",
-  //     headers: {},
+  //     headers: {
+  //   token: sessionStorage.getItem("token"),
+  //   user_head: sessionStorage.getItem("userhead"),
+  // },
   //     params: data,
   //     params: data,
   //   });
   //   });
   //   console.log(res, "编辑中查找图片");
   //   console.log(res, "编辑中查找图片");
@@ -504,7 +507,10 @@ const confirmEdit = (formEl) => {
       let res = await axios({
       let res = await axios({
         method: "post",
         method: "post",
         url: api.value + "/wanzai/api/smartWarning/operation",
         url: api.value + "/wanzai/api/smartWarning/operation",
-        headers: {},
+        headers: {
+          token: sessionStorage.getItem("token"),
+          user_head: sessionStorage.getItem("userhead"),
+        },
         data: data,
         data: data,
       });
       });
       console.log(res, "处理");
       console.log(res, "处理");
@@ -542,7 +548,10 @@ const misinformation = async (row) => {
   let res = await axios({
   let res = await axios({
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/smartWarning/operation",
     url: api.value + "/wanzai/api/smartWarning/operation",
-    headers: {},
+    headers: {
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
+    },
     data: data,
     data: data,
   });
   });
   console.log(res, "处理");
   console.log(res, "处理");
@@ -590,7 +599,10 @@ const pushData = async () => {
   let res = await axios({
   let res = await axios({
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartWarning/warningUserList",
     url: api.value + "/wanzai/api/smartWarning/warningUserList",
-    headers: {},
+    headers: {
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
+    },
     params: data,
     params: data,
   });
   });
   console.log(res, JSON.parse(eds.decryptDes(res.data.data)), "推送人");
   console.log(res, JSON.parse(eds.decryptDes(res.data.data)), "推送人");
@@ -642,7 +654,10 @@ const pushDataScroll = () => {
             let res = await axios({
             let res = await axios({
               method: "get",
               method: "get",
               url: api.value + "/wanzai/api/smartWarning/warningUserList",
               url: api.value + "/wanzai/api/smartWarning/warningUserList",
-              headers: {},
+              headers: {
+                token: sessionStorage.getItem("token"),
+                user_head: sessionStorage.getItem("userhead"),
+              },
               params: data,
               params: data,
             });
             });
             console.log(
             console.log(
@@ -675,12 +690,16 @@ const pushDataScroll = () => {
   });
   });
 };
 };
 
 
+
 // 已推送人员
 // 已推送人员
 const PushedData = async () => {
 const PushedData = async () => {
   let res = await axios({
   let res = await axios({
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartWarning/warningPushList",
     url: api.value + "/wanzai/api/smartWarning/warningPushList",
-    headers: {},
+    headers: {
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
+    },
   });
   });
   console.log(res, "已推送人员");
   console.log(res, "已推送人员");
   if (res.data.code == 200) {
   if (res.data.code == 200) {
@@ -732,7 +751,10 @@ const affirmPushSet = async () => {
     let res = await axios({
     let res = await axios({
       method: "post",
       method: "post",
       url: api.value + "/wanzai/api/smartWarning/warningSavePush",
       url: api.value + "/wanzai/api/smartWarning/warningSavePush",
-      headers: {},
+      headers: {
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
+      },
       data: data,
       data: data,
     });
     });
     console.log(res, "确认推送");
     console.log(res, "确认推送");
@@ -775,8 +797,8 @@ const del = async (row) => {
   //     method: "post",
   //     method: "post",
   //     url: api.value + "/mhotel/housedelHouser.action",
   //     url: api.value + "/mhotel/housedelHouser.action",
   //     headers: {
   //     headers: {
-  //       // token: sessionStorage.getItem("token"),
-  //       // user_head: sessionStorage.getItem("userhead"),
+  //       token: sessionStorage.getItem("token"),
+  //       user_head: sessionStorage.getItem("userhead"),
   //     },
   //     },
   //     params: data,
   //     params: data,
   //   });
   //   });
@@ -818,7 +840,8 @@ const importExcel = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartWarning/excelSmartWarning",
     url: api.value + "/wanzai/api/smartWarning/excelSmartWarning",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
     responseType: "blob",
     responseType: "blob",
@@ -1301,3 +1324,4 @@ onUnmounted(() => {
   width: 192px;
   width: 192px;
 }
 }
 </style>
 </style>
+

+ 17 - 16
src/views/screenShot/screenShot.vue

@@ -476,8 +476,8 @@ const getList = async () => {
       method: "get",
       method: "get",
       url: api.value + "/wanzai/api/smartScreenshot/queryPageSmartScreenshot",
       url: api.value + "/wanzai/api/smartScreenshot/queryPageSmartScreenshot",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: data,
       params: data,
     });
     });
@@ -512,8 +512,8 @@ const getList = async () => {
         api.value +
         api.value +
         "/wanzai/api/smartScreenshotRecord/queryScreenshotRecordPage",
         "/wanzai/api/smartScreenshotRecord/queryScreenshotRecordPage",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: data,
       params: data,
     });
     });
@@ -545,8 +545,8 @@ const getList = async () => {
       method: "get",
       method: "get",
       url: api.value + "/wanzai/api/smartFreezeRecord/queryPageFreezeRecord",
       url: api.value + "/wanzai/api/smartFreezeRecord/queryPageFreezeRecord",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: data,
       params: data,
     });
     });
@@ -605,8 +605,8 @@ const confirmEdit = (formEl) => {
         url:
         url:
           api.value + "/wanzai/api/smartScreenshot/updateSmartScreenshotById",
           api.value + "/wanzai/api/smartScreenshot/updateSmartScreenshotById",
         headers: {
         headers: {
-          // token: sessionStorage.getItem("token"),
-          // user_head: sessionStorage.getItem("userhead"),
+          token: sessionStorage.getItem("token"),
+          user_head: sessionStorage.getItem("userhead"),
         },
         },
         data: data,
         data: data,
       });
       });
@@ -643,8 +643,8 @@ const getRules = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartScreenshot/queryPunishs",
     url: api.value + "/wanzai/api/smartScreenshot/queryPunishs",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
   });
   });
   console.log(res, "规则列表");
   console.log(res, "规则列表");
@@ -703,8 +703,8 @@ const confirmFreeze = (formEl) => {
         method: "post",
         method: "post",
         url: api.value + "/wanzai/api/smartFreezeRecord/manualFreezing",
         url: api.value + "/wanzai/api/smartFreezeRecord/manualFreezing",
         headers: {
         headers: {
-          // token: sessionStorage.getItem("token"),
-          // user_head: sessionStorage.getItem("userhead"),
+          token: sessionStorage.getItem("token"),
+          user_head: sessionStorage.getItem("userhead"),
         },
         },
         data: data,
         data: data,
       });
       });
@@ -757,8 +757,9 @@ const importExcel = async () => {
   //   method: "post",
   //   method: "post",
   //   url: api.value + "/carBook/cinfotoExcel.action",
   //   url: api.value + "/carBook/cinfotoExcel.action",
   //   headers: {
   //   headers: {
-  //     token: sessionStorage.getItem("token"),
-  //   },
+  //   token: sessionStorage.getItem("token"),
+  //   user_head: sessionStorage.getItem("userhead"),
+  // },
   //   data: data,
   //   data: data,
   // });
   // });
   // // console.log(res, "导出账号");
   // // console.log(res, "导出账号");
@@ -805,8 +806,8 @@ const defrost = async (row) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartFreezeRecord/thawFreezing",
     url: api.value + "/wanzai/api/smartFreezeRecord/thawFreezing",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });

+ 31 - 17
src/views/semester/semester.vue

@@ -77,13 +77,18 @@
           />
           />
           <el-table-column align="center" prop="name" label="学期名称" />
           <el-table-column align="center" prop="name" label="学期名称" />
           <el-table-column align="center" prop="categoryId" label="时间段">
           <el-table-column align="center" prop="categoryId" label="时间段">
-            <template #default="{row}">
-              <span>{{ dayjs(row.startTime).format('YYYY-MM-DD') }}&nbsp; ~ &nbsp;{{ dayjs(row.endTime).format('YYYY-MM-DD') }}</span>
+            <template #default="{ row }">
+              <span
+                >{{ dayjs(row.startTime).format("YYYY-MM-DD") }}&nbsp; ~
+                &nbsp;{{ dayjs(row.endTime).format("YYYY-MM-DD") }}</span
+              >
             </template>
             </template>
           </el-table-column>
           </el-table-column>
           <el-table-column align="center" prop="createTime" label="创建时间">
           <el-table-column align="center" prop="createTime" label="创建时间">
-            <template #default="{row}">
-              <span>{{ dayjs(row.createTime).format('YYYY-MM-DD HH:mm:ss') }}</span>
+            <template #default="{ row }">
+              <span>{{
+                dayjs(row.createTime).format("YYYY-MM-DD HH:mm:ss")
+              }}</span>
             </template>
             </template>
           </el-table-column>
           </el-table-column>
           <el-table-column align="center" label="操作" width="200">
           <el-table-column align="center" label="操作" width="200">
@@ -249,7 +254,7 @@ const applyData = ref(); // 应用管理数据
 
 
 // 表单验证
 // 表单验证
 const editRules = reactive({
 const editRules = reactive({
-  identity: [{ required: true, message: "职务不能为空", trigger: "blur" }],
+  identity: [{ required: true, message: "学期不能为空", trigger: "blur" }],
   time: [
   time: [
     {
     {
       required: true,
       required: true,
@@ -271,8 +276,8 @@ const getList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartSemester/queryPageSmartSemester",
     url: api.value + "/wanzai/api/smartSemester/queryPageSmartSemester",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -308,8 +313,8 @@ const applyList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartApply/queryPageSmartApply",
     url: api.value + "/wanzai/api/smartApply/queryPageSmartApply",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -341,10 +346,12 @@ const editClick = async (row) => {
   console.log(row);
   console.log(row);
 
 
   editRuleForm.identity = row.name;
   editRuleForm.identity = row.name;
-  editRuleForm.time = [dayjs(row.startTime).format('YYYY-MM-DD'),dayjs(row.endTime).format('YYYY-MM-DD')];
+  editRuleForm.time = [
+    dayjs(row.startTime).format("YYYY-MM-DD"),
+    dayjs(row.endTime).format("YYYY-MM-DD"),
+  ];
   editRuleForm.id = row.id;
   editRuleForm.id = row.id;
   console.log(editRuleForm.time);
   console.log(editRuleForm.time);
-  
 };
 };
 
 
 const cancelEdit = () => {
 const cancelEdit = () => {
@@ -372,14 +379,20 @@ const confirmEdit = (formEl) => {
         res = await axios({
         res = await axios({
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartSemester/updateSmartSemesterById",
           url: api.value + "/wanzai/api/smartSemester/updateSmartSemesterById",
-          headers: {},
+          headers: {
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
+          },
           data: data,
           data: data,
         });
         });
       } else {
       } else {
         res = await axios({
         res = await axios({
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartSemester/insertSmartSemester",
           url: api.value + "/wanzai/api/smartSemester/insertSmartSemester",
-          headers: {},
+          headers: {
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
+          },
           data: data,
           data: data,
         });
         });
       }
       }
@@ -415,8 +428,8 @@ const del = async (row) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartSemester/deleteSmartSemesterById",
     url: api.value + "/wanzai/api/smartSemester/deleteSmartSemesterById",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -459,8 +472,9 @@ const handleSelectionChange = (val) => {
 //     method: "post",
 //     method: "post",
 //     url: api.value + "/carBook/cinfotoExcel.action",
 //     url: api.value + "/carBook/cinfotoExcel.action",
 //     headers: {
 //     headers: {
-//       token: sessionStorage.getItem("token"),
-//     },
+//   token: sessionStorage.getItem("token"),
+//   user_head: sessionStorage.getItem("userhead"),
+// },
 //     data: data,
 //     data: data,
 //   });
 //   });
 //   // console.log(res, "导出账号");
 //   // console.log(res, "导出账号");

+ 36 - 31
src/views/source/source.vue

@@ -115,8 +115,10 @@
             label="创建时间"
             label="创建时间"
             width="150"
             width="150"
           >
           >
-          <template #default="{row}">
-              <span>{{ dayjs(row.dsCreateTime).format('YYYY-MM-DD HH:mm:ss') }}</span>
+            <template #default="{ row }">
+              <span>{{
+                dayjs(row.dsCreateTime).format("YYYY-MM-DD HH:mm:ss")
+              }}</span>
             </template>
             </template>
           </el-table-column>
           </el-table-column>
           <el-table-column
           <el-table-column
@@ -124,8 +126,10 @@
             prop="dsUpdateTime"
             prop="dsUpdateTime"
             label="修改时间"
             label="修改时间"
             width="150"
             width="150"
-          ><template #default="{row}">
-              <span>{{ dayjs(row.dsUpdateTime).format('YYYY-MM-DD HH:mm:ss') }}</span>
+            ><template #default="{ row }">
+              <span>{{
+                dayjs(row.dsUpdateTime).format("YYYY-MM-DD HH:mm:ss")
+              }}</span>
             </template>
             </template>
           </el-table-column>
           </el-table-column>
           <el-table-column align="center" label="操作" width="120">
           <el-table-column align="center" label="操作" width="120">
@@ -373,25 +377,25 @@
               label="创建时间"
               label="创建时间"
               align="center"
               align="center"
             >
             >
-            <template #default="{ row }">
-              <span>{{
-                dayjs(row.dsClsCreateTime).format("YYYY-MM-DD HH:mm:ss")
-              }}</span>
-            </template>
-          </el-table-column>
-            
+              <template #default="{ row }">
+                <span>{{
+                  dayjs(row.dsClsCreateTime).format("YYYY-MM-DD HH:mm:ss")
+                }}</span>
+              </template>
+            </el-table-column>
+
             <el-table-column
             <el-table-column
               prop="dsClsUpdateTime"
               prop="dsClsUpdateTime"
               width="180"
               width="180"
               label="修改时间"
               label="修改时间"
               align="center"
               align="center"
             >
             >
-            <template #default="{ row }">
-              <span>{{
-                dayjs(row.dsClsUpdateTime).format("YYYY-MM-DD HH:mm:ss")
-              }}</span>
-            </template>
-          </el-table-column>
+              <template #default="{ row }">
+                <span>{{
+                  dayjs(row.dsClsUpdateTime).format("YYYY-MM-DD HH:mm:ss")
+                }}</span>
+              </template>
+            </el-table-column>
             <el-table-column align="center" width="120" label="操作">
             <el-table-column align="center" width="120" label="操作">
               <template #default="scope">
               <template #default="scope">
                 <div style="display: flex">
                 <div style="display: flex">
@@ -685,8 +689,8 @@ const managerDSClass = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartDataClass/queryPageSmartDataClass",
     url: api.value + "/wanzai/api/smartDataClass/queryPageSmartDataClass",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -732,8 +736,8 @@ const dsClassDeleteRow = async (row) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartDataClass/deleteSmartDataClassById",
     url: api.value + "/wanzai/api/smartDataClass/deleteSmartDataClassById",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -762,8 +766,8 @@ const getDsClass = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartDataClass/queryPageSmartDataClass",
     url: api.value + "/wanzai/api/smartDataClass/queryPageSmartDataClass",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -805,8 +809,8 @@ const dsAddModifyConfirmEdit = (dsClassFormEl) => {
         method: "post",
         method: "post",
         url: api.value + "/wanzai/api/smartDataClass/" + url,
         url: api.value + "/wanzai/api/smartDataClass/" + url,
         headers: {
         headers: {
-          // token: sessionStorage.getItem("token"),
-          // user_head: sessionStorage.getItem("userhead"),
+          token: sessionStorage.getItem("token"),
+          user_head: sessionStorage.getItem("userhead"),
         },
         },
         data,
         data,
       });
       });
@@ -930,8 +934,8 @@ const getList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartDataClass/queryPageSmartDataSource",
     url: api.value + "/wanzai/api/smartDataClass/queryPageSmartDataSource",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -1007,8 +1011,8 @@ const deleteClick = async (row) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartDataClass/deleteSmartDataSourceById",
     url: api.value + "/wanzai/api/smartDataClass/deleteSmartDataSourceById",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -1067,8 +1071,8 @@ const confirmEdit = (formEl) => {
         method: "post",
         method: "post",
         url: api.value + "/wanzai/api/smartDataClass/" + url,
         url: api.value + "/wanzai/api/smartDataClass/" + url,
         headers: {
         headers: {
-          // token: sessionStorage.getItem("token"),
-          // user_head: sessionStorage.getItem("userhead"),
+          token: sessionStorage.getItem("token"),
+          user_head: sessionStorage.getItem("userhead"),
         },
         },
         data,
         data,
       });
       });
@@ -1204,6 +1208,7 @@ onUnmounted(() => {
 
 
           .sel {
           .sel {
             margin-right: 10px;
             margin-right: 10px;
+            width: 220px;
           }
           }
 
 
           :deep(.el-input .el-input__inner) {
           :deep(.el-input .el-input__inner) {

File diff suppressed because it is too large
+ 2880 - 0
src/views/student/student copy.vue


File diff suppressed because it is too large
+ 687 - 1711
src/views/student/student.vue


+ 22 - 13
src/views/subject/subject.vue

@@ -77,8 +77,10 @@
           />
           />
           <el-table-column align="center" prop="name" label="学科名称" />
           <el-table-column align="center" prop="name" label="学科名称" />
           <el-table-column align="center" prop="createTime" label="创建时间">
           <el-table-column align="center" prop="createTime" label="创建时间">
-            <template #default="{row}">
-              <span>{{ dayjs(row.createTime).format('YYYY-MM-DD HH:mm:ss') }}</span>
+            <template #default="{ row }">
+              <span>{{
+                dayjs(row.createTime).format("YYYY-MM-DD HH:mm:ss")
+              }}</span>
             </template>
             </template>
           </el-table-column>
           </el-table-column>
           <el-table-column align="center" label="操作" width="200">
           <el-table-column align="center" label="操作" width="200">
@@ -305,8 +307,8 @@ const getList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartSubject/queryPageSmartSubject",
     url: api.value + "/wanzai/api/smartSubject/queryPageSmartSubject",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -342,8 +344,8 @@ const applyList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartApply/queryPageSmartApply",
     url: api.value + "/wanzai/api/smartApply/queryPageSmartApply",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -393,7 +395,7 @@ const confirmEdit = (formEl) => {
   formEl.validate(async (valid, fields) => {
   formEl.validate(async (valid, fields) => {
     if (valid) {
     if (valid) {
       let data = {
       let data = {
-        name: editRuleForm.identity,// 学科名称
+        name: editRuleForm.identity, // 学科名称
         // categoryId: editRuleForm.apply,
         // categoryId: editRuleForm.apply,
       };
       };
       let res = "";
       let res = "";
@@ -403,14 +405,20 @@ const confirmEdit = (formEl) => {
         res = await axios({
         res = await axios({
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartSubject/updateSmartSubjectById",
           url: api.value + "/wanzai/api/smartSubject/updateSmartSubjectById",
-          headers: {},
+          headers: {
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
+          },
           data: data,
           data: data,
         });
         });
       } else {
       } else {
         res = await axios({
         res = await axios({
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartSubject/insertSmartSubject",
           url: api.value + "/wanzai/api/smartSubject/insertSmartSubject",
-          headers: {},
+          headers: {
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
+          },
           data: data,
           data: data,
         });
         });
       }
       }
@@ -446,8 +454,8 @@ const del = async (row) => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartSubject/deleteSmartSubjectById",
     url: api.value + "/wanzai/api/smartSubject/deleteSmartSubjectById",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -490,8 +498,9 @@ const handleSelectionChange = (val) => {
 //     method: "post",
 //     method: "post",
 //     url: api.value + "/carBook/cinfotoExcel.action",
 //     url: api.value + "/carBook/cinfotoExcel.action",
 //     headers: {
 //     headers: {
-//       token: sessionStorage.getItem("token"),
-//     },
+//   token: sessionStorage.getItem("token"),
+//   user_head: sessionStorage.getItem("userhead"),
+// },
 //     data: data,
 //     data: data,
 //   });
 //   });
 //   // console.log(res, "导出账号");
 //   // console.log(res, "导出账号");

+ 8 - 2
src/views/system/system.vue

@@ -413,7 +413,10 @@ const getList = async () => {
   let res = await axios({
   let res = await axios({
     method: "post",
     method: "post",
     url: api.value + "/mhotel/hotelgetByHotelInfo.action",
     url: api.value + "/mhotel/hotelgetByHotelInfo.action",
-    headers: {},
+    headers: {
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
+    },
     params: data,
     params: data,
   });
   });
   console.log(res, "民宿信息");
   console.log(res, "民宿信息");
@@ -522,7 +525,10 @@ const handleUpload2 = async (file) => {
   let res = await axios({
   let res = await axios({
     method: "post",
     method: "post",
     url: api.value + "/file/cos/upload",
     url: api.value + "/file/cos/upload",
-    headers: {},
+    headers: {
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
+    },
     data: data,
     data: data,
   });
   });
   console.log(res, "图片上传成功详情图");
   console.log(res, "图片上传成功详情图");

+ 32 - 30
src/views/task/task.vue

@@ -1274,12 +1274,12 @@ const mPage = reactive({
       method: "get",
       method: "get",
       url: api.value + "/wanzai/api/smartDataClass/queryPageSmartDataSource",
       url: api.value + "/wanzai/api/smartDataClass/queryPageSmartDataSource",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: data,
       params: data,
     });
     });
-    console.log(res,JSON.parse(eds.decryptDes(res.data.data)), "数据源");
+    console.log(res, JSON.parse(eds.decryptDes(res.data.data)), "数据源");
     if (res.data.code == 200) {
     if (res.data.code == 200) {
       mPage.dsSourceData = reactive([]);
       mPage.dsSourceData = reactive([]);
       mPage.dsDestinationData = reactive([]);
       mPage.dsDestinationData = reactive([]);
@@ -1324,8 +1324,8 @@ const mPage = reactive({
       method: "post",
       method: "post",
       url: api.value + "/wanzai/api/smartDataTask/getTables",
       url: api.value + "/wanzai/api/smartDataTask/getTables",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       data,
       data,
     });
     });
@@ -1377,8 +1377,8 @@ const mPage = reactive({
       method: "post",
       method: "post",
       url: api.value + "/wanzai/api/smartDataTask/getTables",
       url: api.value + "/wanzai/api/smartDataTask/getTables",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       data,
       data,
     });
     });
@@ -1430,8 +1430,8 @@ const mPage = reactive({
       method: "post",
       method: "post",
       url: api.value + "/wanzai/api/smartDataTask/getViews",
       url: api.value + "/wanzai/api/smartDataTask/getViews",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       data,
       data,
     });
     });
@@ -1463,8 +1463,8 @@ const mPage = reactive({
       method: "post",
       method: "post",
       url: api.value + "/wanzai/api/smartDataTask/testSql",
       url: api.value + "/wanzai/api/smartDataTask/testSql",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       data,
       data,
     });
     });
@@ -1584,8 +1584,8 @@ const mPage = reactive({
           url: api.value + url,
           url: api.value + url,
           headers: {
           headers: {
             "Content-Type": "application/json",
             "Content-Type": "application/json",
-            // token: sessionStorage.getItem("token"),
-            // user_head: sessionStorage.getItem("userhead"),
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
           },
           },
           data: JSON.stringify(data),
           data: JSON.stringify(data),
         });
         });
@@ -1801,8 +1801,8 @@ const mPage = reactive({
         url: api.value + url,
         url: api.value + url,
         headers: {
         headers: {
           "Content-Type": "application/json",
           "Content-Type": "application/json",
-          // token: sessionStorage.getItem("token"),
-          // user_head: sessionStorage.getItem("userhead"),
+          token: sessionStorage.getItem("token"),
+          user_head: sessionStorage.getItem("userhead"),
         },
         },
         data: JSON.stringify(data),
         data: JSON.stringify(data),
       });
       });
@@ -1927,8 +1927,8 @@ const mPage = reactive({
           url: api.value + "/wanzai/api/smartDataTask/insertSmartDataTask3",
           url: api.value + "/wanzai/api/smartDataTask/insertSmartDataTask3",
           headers: {
           headers: {
             "Content-Type": "application/json",
             "Content-Type": "application/json",
-            // token: sessionStorage.getItem("token"),
-            // user_head: sessionStorage.getItem("userhead"),
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
           },
           },
           data: JSON.stringify(data),
           data: JSON.stringify(data),
         });
         });
@@ -2035,12 +2035,12 @@ const mPage = reactive({
       method: "get",
       method: "get",
       url: api.value + "/wanzai/api/smartDataTask/queryPageSmartDataTask",
       url: api.value + "/wanzai/api/smartDataTask/queryPageSmartDataTask",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: data,
       params: data,
     });
     });
-    console.log(res,JSON.parse(eds.decryptDes(res.data.data)), "任务列表数据");
+    console.log(res, JSON.parse(eds.decryptDes(res.data.data)), "任务列表数据");
     if (res.data.code == 200) {
     if (res.data.code == 200) {
       mPage.loading = false;
       mPage.loading = false;
       mPage.total = JSON.parse(eds.decryptDes(res.data.data)).totalCount;
       mPage.total = JSON.parse(eds.decryptDes(res.data.data)).totalCount;
@@ -2070,8 +2070,8 @@ const mPage = reactive({
       method: "get",
       method: "get",
       url: api.value + "/wanzai/api/smartDataTask/queryAllTask",
       url: api.value + "/wanzai/api/smartDataTask/queryAllTask",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: data,
       params: data,
     });
     });
@@ -2171,8 +2171,8 @@ const mPage = reactive({
       method: "get",
       method: "get",
       url: api.value + "/wanzai/api/smartDataClass/querySmartDataSourceById",
       url: api.value + "/wanzai/api/smartDataClass/querySmartDataSourceById",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: data,
       params: data,
     });
     });
@@ -2209,8 +2209,8 @@ const mPage = reactive({
       method: "get",
       method: "get",
       url: api.value + "/wanzai/api/smartDataTask/deleteSmartDataTaskById",
       url: api.value + "/wanzai/api/smartDataTask/deleteSmartDataTaskById",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: data,
       params: data,
     });
     });
@@ -2249,8 +2249,8 @@ const mPage = reactive({
       url: api.value + "/wanzai/api/smartDataTask/" + actionUrl,
       url: api.value + "/wanzai/api/smartDataTask/" + actionUrl,
       headers: {
       headers: {
         "Content-Type": "application/json",
         "Content-Type": "application/json",
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       data: JSON.stringify(data),
       data: JSON.stringify(data),
     });
     });
@@ -2292,8 +2292,9 @@ const handleSelectionChange = (val) => {
 //     method: "post",
 //     method: "post",
 //     url: api.value + "/carBook/cinfotoExcel.action",
 //     url: api.value + "/carBook/cinfotoExcel.action",
 //     headers: {
 //     headers: {
-//       token: sessionStorage.getItem("token"),
-//     },
+//   token: sessionStorage.getItem("token"),
+//   user_head: sessionStorage.getItem("userhead"),
+// },
 //     data: data,
 //     data: data,
 //   });
 //   });
 //   // console.log(res, "导出账号");
 //   // console.log(res, "导出账号");
@@ -2421,6 +2422,7 @@ onUnmounted(() => {
 
 
           .sel {
           .sel {
             margin-right: 10px;
             margin-right: 10px;
+            width: 130px;
           }
           }
 
 
           :deep(.el-input .el-input__inner) {
           :deep(.el-input .el-input__inner) {

+ 167 - 107
src/views/teacher/teacher.vue

@@ -33,26 +33,14 @@
                 @change="searchBtn"
                 @change="searchBtn"
                 :clearable="true"
                 :clearable="true"
               >
               >
-                <el-option :label="i.name" :value="i.id" v-for="i in semesterData" />
-              </el-select>
-            </div>
-            <div class="condition">
-              <span class="title">教学学科 :</span>
-              <el-select
-                v-model="searchInput.subject"
-                class="sel"
-                placeholder="请选择学科"
-                style="width: 160px"
-                @change="searchBtn"
-                :clearable="true"
-              >
                 <el-option
                 <el-option
-                  v-for="i in subjectData"
                   :label="i.name"
                   :label="i.name"
-                  :value="i.name"
+                  :value="i.id"
+                  v-for="i in semesterData"
                 />
                 />
               </el-select>
               </el-select>
             </div>
             </div>
+
             <div class="condition">
             <div class="condition">
               <span class="title">年级 :</span>
               <span class="title">年级 :</span>
               <el-select
               <el-select
@@ -93,6 +81,29 @@
                 </el-select>
                 </el-select>
               </el-tooltip>
               </el-tooltip>
             </div>
             </div>
+            <div class="condition">
+              <span class="title">教学学科 :</span>
+              <el-tooltip
+                class="box-item"
+                effect="dark"
+                content="请先选择年级"
+                placement="top"
+              >
+                <el-select
+                  v-model="searchInput.subject"
+                  class="sel"
+                  placeholder="请选择学科"
+                  style="width: 160px"
+                  @change="searchBtn"
+                  :clearable="true"
+                >
+                  <el-option
+                    v-for="i in subjectData"
+                    :label="i.name"
+                    :value="i.name"
+                  /> </el-select
+              ></el-tooltip>
+            </div>
           </div>
           </div>
           <!-- 按钮列表 -->
           <!-- 按钮列表 -->
           <div class="gongneng">
           <div class="gongneng">
@@ -139,7 +150,7 @@
               </template>
               </template>
             </el-table-column>
             </el-table-column>
             <el-table-column align="center" prop="cardNo" label="职工号" />
             <el-table-column align="center" prop="cardNo" label="职工号" />
-            <!-- <el-table-column align="center" prop="subject" label="教学学科" /> -->
+            <el-table-column align="center" prop="subject" label="教学学科" />
             <el-table-column align="center" prop="className" label="带教班级" />
             <el-table-column align="center" prop="className" label="带教班级" />
             <el-table-column
             <el-table-column
               align="center"
               align="center"
@@ -397,6 +408,16 @@
           >添加项</el-button
           >添加项</el-button
         >
         >
       </div>
       </div>
+      <div class="btn">
+        <span
+          class="semester"
+          :class="item.name == semesterName ? 'semester_active' : ''"
+          v-for="item in semesterData"
+          @click="getAllData(item.name)"
+        >
+          {{ item.name }}
+        </span>
+      </div>
       <div :key="resetTableIndex">
       <div :key="resetTableIndex">
         <el-table
         <el-table
           ref="resetTable"
           ref="resetTable"
@@ -499,7 +520,11 @@
             class="sel"
             class="sel"
             placeholder="请选择学期"
             placeholder="请选择学期"
           >
           >
-            <el-option :label="i" :value="i" v-for="i in semesterData" />
+            <el-option
+              :label="i.name"
+              :value="i.name"
+              v-for="i in semesterData"
+            />
           </el-select>
           </el-select>
         </el-form-item> -->
         </el-form-item> -->
 
 
@@ -585,14 +610,11 @@ const searchInput = reactive({
 const currentPage = ref(1); // 当前页
 const currentPage = ref(1); // 当前页
 const pageSize = ref(10);
 const pageSize = ref(10);
 const total = ref(5); // 当前总数
 const total = ref(5); // 当前总数
-const selectData = reactive({
-  list: [],
-}); // 表格勾选的数据
+
 const semesterData = ref(); //学期下拉数据
 const semesterData = ref(); //学期下拉数据
 const gradeData = ref(); //年级下拉数据
 const gradeData = ref(); //年级下拉数据
 const classsData = ref(); //班级下拉数据
 const classsData = ref(); //班级下拉数据
 const subjectData = ref(); //学科下拉数据
 const subjectData = ref(); //学科下拉数据
-const examTypeData = ref(); //考试类型数据
 
 
 // 去评分弹窗 (----------------------------------------------------)
 // 去评分弹窗 (----------------------------------------------------)
 const scoreVisible = ref(false);
 const scoreVisible = ref(false);
@@ -605,6 +627,7 @@ const goScoreFlag = ref(true); // 判断是否能保存
 // 评分项管弹窗 (----------------------------------------------------)
 // 评分项管弹窗 (----------------------------------------------------)
 const scoringItemsVisible = ref(false);
 const scoringItemsVisible = ref(false);
 const resetTable = ref(); // 表格ref
 const resetTable = ref(); // 表格ref
+const semesterName = ref(); // 选择的学期名称
 const adjustData = ref(); // 接口获取的初始数据
 const adjustData = ref(); // 接口获取的初始数据
 const scoringItemsData = reactive({
 const scoringItemsData = reactive({
   list: [],
   list: [],
@@ -656,8 +679,8 @@ const semesterList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartScore/querySmartSemesters",
     url: api.value + "/wanzai/api/smartScore/querySmartSemesters",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     // params: data,
     // params: data,
   });
   });
@@ -667,17 +690,13 @@ const semesterList = async () => {
     "学期下拉数据"
     "学期下拉数据"
   );
   );
   semesterData.value = JSON.parse(eds.decryptDes(semester.data.data));
   semesterData.value = JSON.parse(eds.decryptDes(semester.data.data));
-};
 
 
-// 年级数据下拉、、学科下拉、考试类型下拉
-const classDataList = async () => {
-  semesterList(); // 学期
   let grade = await axios({
   let grade = await axios({
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartGrade/querySmartGrades",
     url: api.value + "/wanzai/api/smartGrade/querySmartGrades",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     // params: data,
     // params: data,
   });
   });
@@ -687,66 +706,77 @@ const classDataList = async () => {
     "年级下拉数据"
     "年级下拉数据"
   );
   );
   gradeData.value = JSON.parse(eds.decryptDes(grade.data.data));
   gradeData.value = JSON.parse(eds.decryptDes(grade.data.data));
-  // classInfoList()// 班级下拉数据
+};
+
+// 学科下拉、班级下拉
+const subjectDataList = async (value) => {
   let subject = await axios({
   let subject = await axios({
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartScore/querySubjects",
     url: api.value + "/wanzai/api/smartScore/querySubjects",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
+    },
+    params: {
+      gradeId: value,
     },
     },
-    // params: data,
   });
   });
   console.log(
   console.log(
     subject,
     subject,
     JSON.parse(eds.decryptDes(subject.data.data)),
     JSON.parse(eds.decryptDes(subject.data.data)),
     "学科下拉数据"
     "学科下拉数据"
   );
   );
-  subjectData.value = JSON.parse(eds.decryptDes(subject.data.data));
-  let examType = await axios({
+  if (subject.data.code == 200) {
+    subjectData.value = JSON.parse(eds.decryptDes(subject.data.data));
+  } else {
+    ElMessage({
+      type: "error",
+      showClose: true,
+      message: subjectData.data.message,
+      center: true,
+    });
+  }
+
+  let classs = await axios({
     method: "get",
     method: "get",
-    url: api.value + "/wanzai/api/smartScore/queryExamTypes",
+    url: api.value + "/wanzai/api/smartClass/querySmartClasss",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
+    },
+    params: {
+      gradeId: value,
     },
     },
-    // params: data,
   });
   });
   console.log(
   console.log(
-    examType,
-    JSON.parse(eds.decryptDes(examType.data.data)),
-    "考试类型下拉数据"
+    classs,
+    JSON.parse(eds.decryptDes(classs.data.data)),
+    "班级下拉数据"
   );
   );
-  examTypeData.value = JSON.parse(eds.decryptDes(examType.data.data));
+  if (classs.data.code == 200) {
+    classsData.value = JSON.parse(eds.decryptDes(classs.data.data));
+  } else {
+    ElMessage({
+      type: "error",
+      showClose: true,
+      message: classsData.data.message,
+      center: true,
+    });
+  }
 };
 };
 // 改变年级选择
 // 改变年级选择
 const yearClassChange = async (value) => {
 const yearClassChange = async (value) => {
   console.log(value);
   console.log(value);
   let arr = value.split("-");
   let arr = value.split("-");
-  classInfoList(arr[1]);
+  if (value) {
+    subjectDataList(arr[1]);
+  } else {
+    subjectData.value = [];
+    classsData.value = [];
+    searchInput.class = "";
+  }
   getList();
   getList();
 };
 };
-// 班级数据下拉
-const classInfoList = async (value) => {
-  let data = {
-    gradeId: value,
-  };
-  let classs = await axios({
-    method: "get",
-    url: api.value + "/wanzai/api/smartClass/querySmartClasss",
-    headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
-    },
-    params: data,
-  });
-  console.log(
-    classs,
-    JSON.parse(eds.decryptDes(classs.data.data)),
-    "班级下拉数据"
-  );
-  classsData.value = JSON.parse(eds.decryptDes(classs.data.data));
-};
 
 
 // 教师综合素质评价/详情 页面 (----------------------------------------------------)
 // 教师综合素质评价/详情 页面 (----------------------------------------------------)
 const pageIndex = ref(1); // 切换到详情页面
 const pageIndex = ref(1); // 切换到详情页面
@@ -778,15 +808,16 @@ const getList = async () => {
       method: "post",
       method: "post",
       url: api.value + "/wanzai/api/smartEvaluateTeacher/getTeacherScoreList",
       url: api.value + "/wanzai/api/smartEvaluateTeacher/getTeacherScoreList",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       params: params,
       params: params,
       data: data,
       data: data,
     });
     });
     console.log(res, JSON.parse(eds.decryptDes(res.data.data)), "教师分页");
     console.log(res, JSON.parse(eds.decryptDes(res.data.data)), "教师分页");
     if (res.data.code == 200) {
     if (res.data.code == 200) {
-      JSON.parse(eds.decryptDes(res.data.data)).list.forEach((item) => {
+      let data = JSON.parse(eds.decryptDes(res.data.data));
+      data.list.forEach((item) => {
         if (item.evaluateDetail) {
         if (item.evaluateDetail) {
           console.log(JSON.parse(item.evaluateDetail));
           console.log(JSON.parse(item.evaluateDetail));
           evaluateDetail.value = [];
           evaluateDetail.value = [];
@@ -799,10 +830,9 @@ const getList = async () => {
           }
           }
         }
         }
       });
       });
-      tableData.list = JSON.parse(eds.decryptDes(res.data.data)).list;
+      tableData.list = data.list;
       console.log(tableData.list);
       console.log(tableData.list);
-
-      total.value = JSON.parse(eds.decryptDes(res.data.data)).totalCount;
+      total.value = data.totalCount;
       // ElMessage({
       // ElMessage({
       //   type: "success",
       //   type: "success",
       //   showClose: true,
       //   showClose: true,
@@ -824,8 +854,8 @@ const getList = async () => {
       method: "post",
       method: "post",
       url: api.value + "/wanzai/api/smartEvaluateTeacher/getTeacherScoreDetail",
       url: api.value + "/wanzai/api/smartEvaluateTeacher/getTeacherScoreDetail",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       data: formData,
       data: formData,
     });
     });
@@ -854,8 +884,8 @@ const getList = async () => {
       method: "post",
       method: "post",
       url: api.value + "/wanzai/api/smartEvaluateTeacher/getScoreComparison",
       url: api.value + "/wanzai/api/smartEvaluateTeacher/getScoreComparison",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       data: formData,
       data: formData,
     });
     });
@@ -898,8 +928,8 @@ const rankSel = async () => {
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/smartEvaluateTeacher/getScoreRank",
     url: api.value + "/wanzai/api/smartEvaluateTeacher/getScoreRank",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     data: formDatass,
     data: formDatass,
   });
   });
@@ -934,9 +964,10 @@ const importExcel = async () => {
   // let res = await axios({
   // let res = await axios({
   //   method: "post",
   //   method: "post",
   //   url: api.value + "/carBook/cinfotoExcel.action",
   //   url: api.value + "/carBook/cinfotoExcel.action",
-  //   headers: {
-  //     token: sessionStorage.getItem("token"),
-  //   },
+  //  headers: {
+  // token: sessionStorage.getItem("token"),
+  //   user_head: sessionStorage.getItem("userhead"),
+  // },
   //   data: data,
   //   data: data,
   // });
   // });
   // // console.log(res, "导出账号");
   // // console.log(res, "导出账号");
@@ -1159,8 +1190,8 @@ const goScore = async (row) => {
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/smartEvaluateTeacher/getTeacherScoreDetail",
     url: api.value + "/wanzai/api/smartEvaluateTeacher/getTeacherScoreDetail",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     data: formData,
     data: formData,
   });
   });
@@ -1254,8 +1285,8 @@ const confirmGoScore = async () => {
       method: "post",
       method: "post",
       url: api.value + "/wanzai/api/smartEvaluateTeacher/evaluateScore",
       url: api.value + "/wanzai/api/smartEvaluateTeacher/evaluateScore",
       headers: {
       headers: {
-        // token: sessionStorage.getItem("token"),
-        // user_head: sessionStorage.getItem("userhead"),
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
       },
       },
       data: data,
       data: data,
     });
     });
@@ -1293,27 +1324,35 @@ const confirmGoScore = async () => {
 // 评分项管理 (------------------------------------------------------)
 // 评分项管理 (------------------------------------------------------)
 const scoringItemsClick = async () => {
 const scoringItemsClick = async () => {
   scoringItemsVisible.value = true;
   scoringItemsVisible.value = true;
-  getAllData();
+  semesterName.value = semesterData.value[0].name;
+  getAllData(semesterName.value);
 };
 };
 // 获取评分项全部数据
 // 获取评分项全部数据
-const getAllData = async () => {
+const getAllData = async (termName) => {
+  semesterName.value = termName;
+  let formData = new FormData();
+  formData.append("term", semesterName.value);
   let res = await axios({
   let res = await axios({
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/smartEvaluateTeacher/getScoreManage",
     url: api.value + "/wanzai/api/smartEvaluateTeacher/getScoreManage",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
+    data: formData,
   });
   });
   console.log(res, JSON.parse(eds.decryptDes(res.data.data)), "评分项管理");
   console.log(res, JSON.parse(eds.decryptDes(res.data.data)), "评分项管理");
   if (res.data.code == 200) {
   if (res.data.code == 200) {
-    adjustData.value = JSON.parse(
-      eds.decryptDes(res.data.data)
-    ).simpleScoreList;
-    addItemRuleForm.term = JSON.parse(
-      eds.decryptDes(res.data.data)
-    ).simpleScoreList[0].term;
-    adjustItem();
+    let data = JSON.parse(eds.decryptDes(res.data.data));
+    if (data.simpleScoreList.length) {
+      adjustData.value = data.simpleScoreList;
+      addItemRuleForm.term = semesterName.value;
+      adjustItem();
+    } else {
+      adjustData.value = data.simpleScoreList;
+      addItemRuleForm.term = semesterName.value;
+      scoringItemsData.list = [];
+    }
   } else {
   } else {
     ElMessage({
     ElMessage({
       type: "error",
       type: "error",
@@ -1383,7 +1422,7 @@ const bigItemClick = async () => {
   // let arr={ pf: "", pfz: "", fz: "" }
   // let arr={ pf: "", pfz: "", fz: "" }
   addItemVisible.value = true;
   addItemVisible.value = true;
   addItemTitle.value = "添加评分项";
   addItemTitle.value = "添加评分项";
-  // addItemRuleForm.term = "";
+  addItemRuleForm.term = semesterName.value;
   addItemRuleForm.bigitem = "";
   addItemRuleForm.bigitem = "";
   addItemRuleForm.subitem = "";
   addItemRuleForm.subitem = "";
   addItemRuleForm.score = "";
   addItemRuleForm.score = "";
@@ -1392,7 +1431,7 @@ const bigItemClick = async () => {
 const cancelAddItem = () => {
 const cancelAddItem = () => {
   addItemVisible.value = false;
   addItemVisible.value = false;
   addItemRef.value.resetFields();
   addItemRef.value.resetFields();
-  addItemRuleForm.term = "";
+  addItemRuleForm.term = semesterName.value;
   addItemRuleForm.bigitem = "";
   addItemRuleForm.bigitem = "";
   addItemRuleForm.subitem = "";
   addItemRuleForm.subitem = "";
   addItemRuleForm.score = "";
   addItemRuleForm.score = "";
@@ -1427,9 +1466,16 @@ const confirmAddItem = (formEl) => {
             },
             },
           ],
           ],
         };
         };
-        let flag = adjustData.value.some((item) => {
-          return item.scoreItem == addItemRuleForm.bigitem;
-        });
+        let flag = "";
+        console.log(adjustData.value);
+        if (adjustData.value) {
+          flag = adjustData.value.some((item) => {
+            return item.scoreItem == addItemRuleForm.bigitem;
+          });
+        } else {
+          flag = false;
+          adjustData.value = [];
+        }
         console.log(flag, "重复添加评分项");
         console.log(flag, "重复添加评分项");
         if (flag) {
         if (flag) {
           ElMessage({
           ElMessage({
@@ -1536,14 +1582,15 @@ const operateScore = async () => {
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/smartEvaluateTeacher/operateSmartScoreManage",
     url: api.value + "/wanzai/api/smartEvaluateTeacher/operateSmartScoreManage",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     data: data,
     data: data,
   });
   });
   console.log(res, "分管理操作-增加/删除/更新");
   console.log(res, "分管理操作-增加/删除/更新");
   if (res.data.code == 200) {
   if (res.data.code == 200) {
-    getAllData();
+    getAllData(semesterName.value);
+    addItemRef.value.resetFields();
     ElMessage({
     ElMessage({
       type: "success",
       type: "success",
       showClose: true,
       showClose: true,
@@ -1565,7 +1612,7 @@ const secondaryItemClick = (row) => {
   addItemVisible.value = true;
   addItemVisible.value = true;
   addItemTitle.value = "添加评分子项";
   addItemTitle.value = "添加评分子项";
   addItemRuleForm.bigitem = row.scoreItem;
   addItemRuleForm.bigitem = row.scoreItem;
-  addItemRuleForm.term = "";
+  addItemRuleForm.term = semesterName.value;
   addItemRuleForm.subitem = "";
   addItemRuleForm.subitem = "";
   addItemRuleForm.score = "";
   addItemRuleForm.score = "";
 };
 };
@@ -1627,7 +1674,7 @@ const handleCurrentChange = (value) => {
 onBeforeMount(async () => {
 onBeforeMount(async () => {
   api.value = store.state.user.api;
   api.value = store.state.user.api;
   getList();
   getList();
-  classDataList();
+  semesterList(); // 学期
   window.addEventListener("resize", function () {
   window.addEventListener("resize", function () {
     if (scoreEcharts.value) {
     if (scoreEcharts.value) {
       scoreEcharts.value.resize();
       scoreEcharts.value.resize();
@@ -2048,7 +2095,7 @@ onUnmounted(() => {
       }
       }
     }
     }
     .el-dialog__body {
     .el-dialog__body {
-      // padding: 30px 30px 10px 30px;
+      padding: 20px 30px 20px 30px;
       .table {
       .table {
         width: 100%;
         width: 100%;
         border-radius: 4px;
         border-radius: 4px;
@@ -2089,7 +2136,7 @@ onUnmounted(() => {
         }
         }
       }
       }
       .options {
       .options {
-        margin: 30px 20px 0 0;
+        margin: 30px 30px 0 0;
         width: 100%;
         width: 100%;
         display: flex;
         display: flex;
         flex-direction: row-reverse;
         flex-direction: row-reverse;
@@ -2125,6 +2172,19 @@ onUnmounted(() => {
       padding: 0px 20px 10px 20px;
       padding: 0px 20px 10px 20px;
       .btn {
       .btn {
         margin: 15px 0;
         margin: 15px 0;
+        display: flex;
+        flex-wrap: wrap;
+        .semester {
+          margin: 0 15px 0 0;
+          border: 1px solid rgb(146, 145, 145);
+          border-radius: 4px;
+          padding: 5px 8px;
+          cursor: pointer;
+        }
+        .semester_active {
+          border: 1px solid rgb(30, 125, 251);
+          color: rgb(30, 125, 251);
+        }
       }
       }
       .el-table--fit {
       .el-table--fit {
         height: calc(60vh);
         height: calc(60vh);

File diff suppressed because it is too large
+ 3903 - 0
src/views/user/user copy.vue


+ 239 - 137
src/views/user/user.vue

@@ -29,6 +29,7 @@
               }}</span>
               }}</span>
             </div>
             </div>
             <el-dropdown
             <el-dropdown
+              v-if="data.isManage == 1"
               @command="handleCommand"
               @command="handleCommand"
               :hide-on-click="false"
               :hide-on-click="false"
               trigger="click"
               trigger="click"
@@ -93,6 +94,7 @@
               type="primary"
               type="primary"
               color="rgba(0, 97, 255, 1)"
               color="rgba(0, 97, 255, 1)"
               @click="addMemberClick"
               @click="addMemberClick"
+              :disabled="isManage!=1"
               plain
               plain
               >添加成员</el-button
               >添加成员</el-button
             >
             >
@@ -100,15 +102,16 @@
               type="primary"
               type="primary"
               color="rgba(0, 97, 255, 1)"
               color="rgba(0, 97, 255, 1)"
               @click="moveMemberClick"
               @click="moveMemberClick"
+              :disabled="isManage!=1"
               plain
               plain
               >移动成员</el-button
               >移动成员</el-button
             >
             >
 
 
-            <el-dropdown>
+            <el-dropdown >
               <el-button color="rgba(0, 97, 255, 1)" plain>批量操作</el-button>
               <el-button color="rgba(0, 97, 255, 1)" plain>批量操作</el-button>
               <template #dropdown>
               <template #dropdown>
                 <el-dropdown-menu>
                 <el-dropdown-menu>
-                  <el-dropdown-item @click="addBatchClick"
+                  <el-dropdown-item :disabled="isManage!=1" @click="addBatchClick"
                     >批量导入</el-dropdown-item
                     >批量导入</el-dropdown-item
                   >
                   >
                   <!-- <el-dropdown-item @click="delBatchClick"
                   <!-- <el-dropdown-item @click="delBatchClick"
@@ -128,6 +131,7 @@
               type="primary"
               type="primary"
               color="rgba(0, 97, 255, 1)"
               color="rgba(0, 97, 255, 1)"
               @click="delDelClick"
               @click="delDelClick"
+              :disabled="isManage!=1"
               plain
               plain
               >勾选删除</el-button
               >勾选删除</el-button
             >
             >
@@ -141,6 +145,7 @@
                 type="primary"
                 type="primary"
                 color="rgba(0, 97, 255, 1)"
                 color="rgba(0, 97, 255, 1)"
                 @click="importExcel"
                 @click="importExcel"
+                :disabled="isManage!=1"
                 plain
                 plain
                 >导出用户</el-button
                 >导出用户</el-button
               >
               >
@@ -149,6 +154,7 @@
               type="primary"
               type="primary"
               color="rgba(0, 97, 255, 1)"
               color="rgba(0, 97, 255, 1)"
               @click="DelRecordClick"
               @click="DelRecordClick"
+              :disabled="isManage!=1"
               plain
               plain
               >删除记录</el-button
               >删除记录</el-button
             >
             >
@@ -172,14 +178,14 @@
             <el-table-column align="center" prop="department" label="部门" />
             <el-table-column align="center" prop="department" label="部门" />
             <el-table-column align="center" prop="cardNo" label="学号" />
             <el-table-column align="center" prop="cardNo" label="学号" />
             <el-table-column align="center" prop="img" label="人脸照片">
             <el-table-column align="center" prop="img" label="人脸照片">
-              <template #default="{ row }">
+              <template #default="{ row }" >
                 <div class="img">
                 <div class="img">
                   <img @click="imgClick(row)" :src="row.headImage" alt="" />
                   <img @click="imgClick(row)" :src="row.headImage" alt="" />
                 </div>
                 </div>
               </template>
               </template>
             </el-table-column>
             </el-table-column>
             <el-table-column align="center" label="操作" width="200">
             <el-table-column align="center" label="操作" width="200">
-              <template #default="scope">
+              <template #default="scope" v-if="isManage==1">
                 <div class="edit">
                 <div class="edit">
                   <div class="look" @click="editClick(scope.row)">编辑</div>
                   <div class="look" @click="editClick(scope.row)">编辑</div>
                 </div>
                 </div>
@@ -195,8 +201,10 @@
             background
             background
             :current-page="currentPage"
             :current-page="currentPage"
             :page-size="pageSize"
             :page-size="pageSize"
-            layout="total, prev, pager, next, jumper, slot"
+            :page-sizes="[10, 20, 50, 100]"
+            layout="total,sizes, prev, pager, next, jumper, slot"
             :total="total"
             :total="total"
+            @size-change="handleSizeChange"
             @update:current-page="handleCurrentChange"
             @update:current-page="handleCurrentChange"
           />
           />
         </div>
         </div>
@@ -247,6 +255,7 @@
                 placeholder="请选择身份"
                 placeholder="请选择身份"
                 style="width: 500px"
                 style="width: 500px"
                 @change="identityChange"
                 @change="identityChange"
+                clearable
               >
               >
                 <el-option
                 <el-option
                   v-for="i in identityData"
                   v-for="i in identityData"
@@ -260,16 +269,11 @@
               label="职务 :"
               label="职务 :"
               :prop="addMemberRuleForm.identity == 3 ? 'duty' : ''"
               :prop="addMemberRuleForm.identity == 3 ? 'duty' : ''"
             >
             >
-            <el-tooltip
-        class="box-item"
-        effect="dark"
-        content="请先选择身份"
-        placement="top-start"
-      >
-      <el-select
+              <el-select
                 v-model="addMemberRuleForm.duty"
                 v-model="addMemberRuleForm.duty"
-                placeholder="选择职务"
+                placeholder="先选择身份再选择职务"
                 style="width: 500px"
                 style="width: 500px"
+                clearable
               >
               >
                 <el-option
                 <el-option
                   v-for="i in postData"
                   v-for="i in postData"
@@ -277,8 +281,14 @@
                   :value="`${i.id}`"
                   :value="`${i.id}`"
                 />
                 />
               </el-select>
               </el-select>
-      </el-tooltip>
-           
+              <!-- <el-tooltip
+                class="box-item"
+                effect="dark"
+                content="请先选择身份"
+                placement="top-start"
+              >
+                
+              </el-tooltip> -->
             </el-form-item>
             </el-form-item>
             <el-form-item label="身份证号 :" prop="icCard">
             <el-form-item label="身份证号 :" prop="icCard">
               <el-input
               <el-input
@@ -312,6 +322,7 @@
                 :render-after-expand="false"
                 :render-after-expand="false"
                 style="width: 500px"
                 style="width: 500px"
                 :props="{ label: 'name', value: 'id' }"
                 :props="{ label: 'name', value: 'id' }"
+                clearable
               />
               />
             </el-form-item>
             </el-form-item>
             <el-form-item label="人脸照片 :" prop="facePhoto">
             <el-form-item label="人脸照片 :" prop="facePhoto">
@@ -351,13 +362,18 @@
             <el-form-item
             <el-form-item
               v-if="addMemberRuleForm.identity != 1"
               v-if="addMemberRuleForm.identity != 1"
               label="年级 :"
               label="年级 :"
-              :prop="(addMemberRuleForm.identity == 3 && addMemberRuleForm.duty!=1) ? '' : 'grade'"
+              :prop="
+                addMemberRuleForm.identity == 3 && addMemberRuleForm.duty != 1
+                  ? ''
+                  : 'grade'
+              "
             >
             >
               <el-select
               <el-select
                 v-model="addMemberRuleForm.grade"
                 v-model="addMemberRuleForm.grade"
                 placeholder="请选择年级"
                 placeholder="请选择年级"
                 style="width: 500px"
                 style="width: 500px"
                 @change="classsListChange"
                 @change="classsListChange"
+                clearable
               >
               >
                 <el-option
                 <el-option
                   v-for="i in gradeData"
                   v-for="i in gradeData"
@@ -369,12 +385,17 @@
             <el-form-item
             <el-form-item
               v-if="addMemberRuleForm.identity != 1"
               v-if="addMemberRuleForm.identity != 1"
               label="班级 :"
               label="班级 :"
-              :prop="(addMemberRuleForm.identity == 3&& addMemberRuleForm.duty!=1) ? '' : 'class'"
+              :prop="
+                addMemberRuleForm.identity == 3 && addMemberRuleForm.duty != 1
+                  ? ''
+                  : 'class'
+              "
             >
             >
               <el-select
               <el-select
                 v-model="addMemberRuleForm.class"
                 v-model="addMemberRuleForm.class"
                 placeholder="请选择班级"
                 placeholder="请选择班级"
                 style="width: 500px"
                 style="width: 500px"
+                clearable
               >
               >
                 <el-option
                 <el-option
                   v-for="i in classsData"
                   v-for="i in classsData"
@@ -383,11 +404,16 @@
                 />
                 />
               </el-select>
               </el-select>
             </el-form-item>
             </el-form-item>
-            <el-form-item label="时间组 :" prop="timeGroupId">
+            <el-form-item
+              v-if="addMemberRuleForm.identity != 3"
+              label="时间组 :"
+              prop="timeGroupId"
+            >
               <el-select
               <el-select
                 v-model="addMemberRuleForm.timeGroupId"
                 v-model="addMemberRuleForm.timeGroupId"
                 placeholder="请选择时间"
                 placeholder="请选择时间"
                 style="width: 500px"
                 style="width: 500px"
+                clearable
               >
               >
                 <el-option
                 <el-option
                   v-for="i in timeGroupList"
                   v-for="i in timeGroupList"
@@ -492,6 +518,18 @@
                     >{{ item.id }}</span
                     >{{ item.id }}</span
                   >
                   >
                 </el-option>
                 </el-option>
+                <template #footer>
+                  <div class="addStudentMore">
+                    <el-button
+                      v-if="
+                        conteactListCurrentPage < conteactListTotalPage &&
+                        conteactListTotalPage != 0
+                      "
+                      @click="addStudentListMore"
+                      >加载更多+</el-button
+                    >
+                  </div>
+                </template>
               </el-select>
               </el-select>
             </el-form-item>
             </el-form-item>
             <div class="title">
             <div class="title">
@@ -562,7 +600,11 @@
       </div>
       </div>
       <div class="content">
       <div class="content">
         <div class="form">
         <div class="form">
-          <div class="imgUpload" v-loading="allImgShow"  element-loading-text="导入中...">
+          <div
+            class="imgUpload"
+            v-loading="allImgShow"
+            element-loading-text="导入中..."
+          >
             <el-upload
             <el-upload
               style="width: 500px"
               style="width: 500px"
               class="upload-demo"
               class="upload-demo"
@@ -579,9 +621,9 @@
             >
             >
               <el-icon class="el-icon--upload"><upload-filled /></el-icon>
               <el-icon class="el-icon--upload"><upload-filled /></el-icon>
               <div class="el-upload__text">
               <div class="el-upload__text">
-                <span style="font-size: 20px">点击上传或拖拽文件</span><br /><em
-                  >请按照标准模板填写信息</em
-                >
+                <span style="font-size: 20px">点击上传或拖拽文件</span><br />
+                <em>请按照标准模板填写信息</em><br />
+                <em>&nbsp;</em>
               </div>
               </div>
               <!-- <template #tip>
               <!-- <template #tip>
               <div class="el-upload__tip">
               <div class="el-upload__tip">
@@ -606,7 +648,8 @@
               <el-icon class="el-icon--upload"><upload-filled /></el-icon>
               <el-icon class="el-icon--upload"><upload-filled /></el-icon>
               <div class="el-upload__text">
               <div class="el-upload__text">
                 <span style="font-size: 20px">点击上传图片文件夹</span><br />
                 <span style="font-size: 20px">点击上传图片文件夹</span><br />
-                <em> 图片格式为jpeg/jpg/png格式且每张图片不能超过2MB </em>
+                <em> 图片格式为jpeg/jpg/png格式且每张图片不能超过2MB </em><br />
+                <em> 上传文件夹中照片不要超过1000张 </em>
               </div>
               </div>
               <!-- <template #tip>
               <!-- <template #tip>
               <div class="el-upload__tip">
               <div class="el-upload__tip">
@@ -630,7 +673,12 @@
               >开始导入</el-button
               >开始导入</el-button
             >
             >
             <span
             <span
-            style="width: 120px;margin-left:20px;cursor: pointer;color:rgba(0, 97, 255, 1)"
+              style="
+                width: 120px;
+                margin-left: 20px;
+                cursor: pointer;
+                color: rgba(0, 97, 255, 1);
+              "
               @click="resetImport"
               @click="resetImport"
               >重置</span
               >重置</span
             >
             >
@@ -695,8 +743,8 @@
         </div>
         </div>
       </div>
       </div>
     </div>
     </div>
-     <!-- 删除记录页面 -->
-     <div class="delRecord" v-if="delRecordShow">
+    <!-- 删除记录页面 -->
+    <div class="delRecord" v-if="delRecordShow">
       <div class="left">
       <div class="left">
         <img src="@/assets/images/close.png" alt="" @click="delRecordClose" />
         <img src="@/assets/images/close.png" alt="" @click="delRecordClose" />
         <span class="add">{{ addMemberTitle }}</span>
         <span class="add">{{ addMemberTitle }}</span>
@@ -1200,6 +1248,7 @@ const dataSource = ref([
 // 被点击的树形节点 id
 // 被点击的树形节点 id
 const treeNodeId = ref();
 const treeNodeId = ref();
 const treeNodeName = ref();
 const treeNodeName = ref();
+const isManage=ref()// 判断当前节点是否是编辑权限
 
 
 // 主页面数据(----------------------------------------------)
 // 主页面数据(----------------------------------------------)
 // 表格数据
 // 表格数据
@@ -1223,7 +1272,7 @@ const searchInput = reactive({
 }); // 搜索按钮数据
 }); // 搜索按钮数据
 const homeShow = ref(true);
 const homeShow = ref(true);
 const currentPage = ref(1); // 当前页
 const currentPage = ref(1); // 当前页
-const pageSize = ref(7);
+const pageSize = ref(10);
 const total = ref(8); // 当前总数
 const total = ref(8); // 当前总数
 
 
 // 修改部门 (----------------------------------------------)
 // 修改部门 (----------------------------------------------)
@@ -1294,34 +1343,38 @@ const timeGroupList = ref(); // 时间组下拉数据
 
 
 const conteactListData = ref(); // 联系人下拉数据
 const conteactListData = ref(); // 联系人下拉数据
 const conteactListCurrentPage = ref(1); // 联系人下拉当前页数
 const conteactListCurrentPage = ref(1); // 联系人下拉当前页数
-const conteactListPageCount = ref(10); // 联系人下拉一页数据条数
+const conteactListPageCount = ref(30); // 联系人下拉一页数据条数
 const conteactListTotalPage = ref(); // 联系人总共多少页,判断滚动到底是否还要加载
 const conteactListTotalPage = ref(); // 联系人总共多少页,判断滚动到底是否还要加载
 const conteactListInput = ref(); // 联系人下拉框中的搜索字段
 const conteactListInput = ref(); // 联系人下拉框中的搜索字段
 const conteactLoading = ref(false); // 联系人下拉框搜索时加载
 const conteactLoading = ref(false); // 联系人下拉框搜索时加载
 
 
 const upload = ref(); // 人脸照片
 const upload = ref(); // 人脸照片
 // 表单验证
 // 表单验证
-const checkPhone=(rule, value, callback)=>{
-  var reg = /^(0|\+?86|17951)?(13[0-9]|15[012356789]|17[013678]|18[0-9]|14[57])[0-9]{8}$/
-      if (!reg.test(value)) {
-      callback(new Error("手机号格式不对"));
-    } else {
-      callback();
-    }
-}
-const checkIccard=(rule, value, callback)=>{
+const checkPhone = (rule, value, callback) => {
+  var reg =
+    /^(0|\+?86|17951)?(13[0-9]|15[012356789]|17[013678]|18[0-9]|14[57])[0-9]{8}$/;
+  if (!reg.test(value)) {
+    callback(new Error("手机号格式不对"));
+  } else {
+    callback();
+  }
+};
+const checkIccard = (rule, value, callback) => {
   var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
   var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
-    if (!reg.test(value)) {
-      callback(new Error("身份证号格式不对"));
-    } else {
-      callback();
-    }
-}
+  if (!reg.test(value)) {
+    callback(new Error("身份证号格式不对"));
+  } else {
+    callback();
+  }
+};
 const addMemberRules = reactive({
 const addMemberRules = reactive({
   serialNumber: [{ required: true, message: "学号不能为空", trigger: "blur" }],
   serialNumber: [{ required: true, message: "学号不能为空", trigger: "blur" }],
   name: [{ required: true, message: "姓名不能为空", trigger: "blur" }],
   name: [{ required: true, message: "姓名不能为空", trigger: "blur" }],
   identity: [{ required: true, message: "身份不能为空", trigger: "change" }],
   identity: [{ required: true, message: "身份不能为空", trigger: "change" }],
-  icCard: [{ required: true, message: "身份证号不能为空", trigger: "blur" },{ validator: checkIccard, trigger: "blur" }],
+  icCard: [
+    { required: true, message: "身份证号不能为空", trigger: "blur" },
+    { validator: checkIccard, trigger: "blur" },
+  ],
   sex: [{ required: true, message: "性别不能为空", trigger: "blur" }],
   sex: [{ required: true, message: "性别不能为空", trigger: "blur" }],
   department: [{ required: true, message: "部门不能为空", trigger: "change" }],
   department: [{ required: true, message: "部门不能为空", trigger: "change" }],
   facePhoto: [{ required: true, message: "人脸照片不能为空", trigger: "blur" }],
   facePhoto: [{ required: true, message: "人脸照片不能为空", trigger: "blur" }],
@@ -1331,8 +1384,10 @@ const addMemberRules = reactive({
   class: [{ required: true, message: "班级不能为空", trigger: "change" }],
   class: [{ required: true, message: "班级不能为空", trigger: "change" }],
   // school: [{ required: true, message: "校区不能为空", trigger: "blur" }],
   // school: [{ required: true, message: "校区不能为空", trigger: "blur" }],
   // dormitory: [{ required: true, message: "宿舍号不能为空", trigger: "blur" }],
   // dormitory: [{ required: true, message: "宿舍号不能为空", trigger: "blur" }],
-  phone: [{ required: true, message: "手机号不能为空", trigger: "blur" },
-  { validator: checkPhone, trigger: "blur" }],
+  phone: [
+    { required: true, message: "手机号不能为空", trigger: "blur" },
+    { validator: checkPhone, trigger: "blur" },
+  ],
   contact: [{ required: true, message: "关联人不能为空", trigger: "blur" }],
   contact: [{ required: true, message: "关联人不能为空", trigger: "blur" }],
   // jobName: [{ required: true, message: "职称不能为空", trigger: "blur" }],
   // jobName: [{ required: true, message: "职称不能为空", trigger: "blur" }],
   houseAddress: [
   houseAddress: [
@@ -1453,10 +1508,10 @@ const moveSearchInput = ref(); // 移动部门中关键字搜索
 const treeSelData = reactive({ list: [] }); //
 const treeSelData = reactive({ list: [] }); //
 
 
 // 删除记录页面
 // 删除记录页面
-const delRecordDatas=ref() // 删除记录
-const delRecordTotal=ref()// 删除记录数量
-const delRecordCurrentPage=ref(1)
-const delRecordPageSize=ref(8)
+const delRecordDatas = ref(); // 删除记录
+const delRecordTotal = ref(); // 删除记录数量
+const delRecordCurrentPage = ref(1);
+const delRecordPageSize = ref(8);
 const delRecordShow = ref(false);
 const delRecordShow = ref(false);
 
 
 // 勾选删除
 // 勾选删除
@@ -1489,8 +1544,8 @@ const getList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartUser/queryPageSmartUser",
     url: api.value + "/wanzai/api/smartUser/queryPageSmartUser",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -1524,8 +1579,8 @@ const getDepartment = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartDepartment/queryDepartmentTree",
     url: api.value + "/wanzai/api/smartDepartment/queryDepartmentTree",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -1534,8 +1589,9 @@ const getDepartment = async () => {
     loading.value = false;
     loading.value = false;
     if (treeNodeId.value && treeNodeName.value) {
     if (treeNodeId.value && treeNodeName.value) {
     } else {
     } else {
-      treeNodeId.value = JSON.parse(eds.decryptDes(res.data.data))[0].id;
-      treeNodeName.value = JSON.parse(eds.decryptDes(res.data.data))[0].name;
+        treeNodeId.value = JSON.parse(eds.decryptDes(res.data.data))[0].id;
+        treeNodeName.value = JSON.parse(eds.decryptDes(res.data.data))[0].name;
+        isManage.value=JSON.parse(eds.decryptDes(res.data.data))[0].isManage
       getList();
       getList();
     }
     }
     dataSource.value = JSON.parse(eds.decryptDes(res.data.data));
     dataSource.value = JSON.parse(eds.decryptDes(res.data.data));
@@ -1559,6 +1615,7 @@ const getDepartment = async () => {
 const nodeClick = (node, data) => {
 const nodeClick = (node, data) => {
   treeNodeId.value = data.id;
   treeNodeId.value = data.id;
   treeNodeName.value = data.name;
   treeNodeName.value = data.name;
+  isManage.value=data.isManage
   getList();
   getList();
   console.log(data);
   console.log(data);
 };
 };
@@ -1591,8 +1648,8 @@ const confirmAmendBM = async (formEl) => {
           url:
           url:
             api.value + "/wanzai/api/smartDepartment/updateSmartDepartmentById",
             api.value + "/wanzai/api/smartDepartment/updateSmartDepartmentById",
           headers: {
           headers: {
-            // token: sessionStorage.getItem("token"),
-            // user_head: sessionStorage.getItem("userhead"),
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
           },
           },
           data: data,
           data: data,
         });
         });
@@ -1651,8 +1708,8 @@ const confirmAddBM = async (formEl) => {
         method: "post",
         method: "post",
         url: api.value + "/wanzai/api/smartDepartment/insertSmartDepartment",
         url: api.value + "/wanzai/api/smartDepartment/insertSmartDepartment",
         headers: {
         headers: {
-          // token: sessionStorage.getItem("token"),
-          // user_head: sessionStorage.getItem("userhead"),
+          token: sessionStorage.getItem("token"),
+          user_head: sessionStorage.getItem("userhead"),
         },
         },
         data: data,
         data: data,
       });
       });
@@ -1726,19 +1783,23 @@ const classDataList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartIdentity/querySmartIdentitys",
     url: api.value + "/wanzai/api/smartIdentity/querySmartIdentitys",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     // params: data,
     // params: data,
   });
   });
-  console.log(identity,JSON.parse(eds.decryptDes(identity.data.data)), "身份下拉数据");
+  console.log(
+    identity,
+    JSON.parse(eds.decryptDes(identity.data.data)),
+    "身份下拉数据"
+  );
   identityData.value = JSON.parse(eds.decryptDes(identity.data.data));
   identityData.value = JSON.parse(eds.decryptDes(identity.data.data));
   let grade = await axios({
   let grade = await axios({
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartGrade/querySmartGrades",
     url: api.value + "/wanzai/api/smartGrade/querySmartGrades",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     // params: data,
     // params: data,
   });
   });
@@ -1749,8 +1810,8 @@ const classDataList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartUser/timeGroups",
     url: api.value + "/wanzai/api/smartUser/timeGroups",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     // params: data,
     // params: data,
   });
   });
@@ -1770,8 +1831,8 @@ const studentList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartScore/querySmartSecordPage",
     url: api.value + "/wanzai/api/smartScore/querySmartSecordPage",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -1790,8 +1851,8 @@ const postList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartDuties/queryDutiesByIdentity",
     url: api.value + "/wanzai/api/smartDuties/queryDutiesByIdentity",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -1816,13 +1877,13 @@ const classsList = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartClass/querySmartClasss",
     url: api.value + "/wanzai/api/smartClass/querySmartClasss",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
   console.log(classs, "班级下拉数据");
   console.log(classs, "班级下拉数据");
-  if(classs.data.code==200){
+  if (classs.data.code == 200) {
     classsData.value = JSON.parse(eds.decryptDes(classs.data.data));
     classsData.value = JSON.parse(eds.decryptDes(classs.data.data));
   }
   }
 };
 };
@@ -1871,8 +1932,8 @@ const addStudentListScroll = () => {
               method: "get",
               method: "get",
               url: api.value + "/wanzai/api/smartScore/querySmartSecordPage",
               url: api.value + "/wanzai/api/smartScore/querySmartSecordPage",
               headers: {
               headers: {
-                // token: sessionStorage.getItem("token"),
-                // user_head: sessionStorage.getItem("userhead"),
+                token: sessionStorage.getItem("token"),
+                user_head: sessionStorage.getItem("userhead"),
               },
               },
               params: data,
               params: data,
             });
             });
@@ -1889,6 +1950,33 @@ const addStudentListScroll = () => {
     }
     }
   });
   });
 };
 };
+const addStudentListMore = async () => {
+  if (conteactListCurrentPage.value < conteactListTotalPage.value) {
+    conteactListCurrentPage.value++;
+    console.log(conteactListInput.value, "滚动里面");
+    let data = {
+      currentPage: conteactListCurrentPage.value,
+      pageCount: conteactListPageCount.value,
+      name: conteactListInput.value,
+    };
+    let res = await axios({
+      method: "get",
+      url: api.value + "/wanzai/api/smartScore/querySmartSecordPage",
+      headers: {
+        token: sessionStorage.getItem("token"),
+        user_head: sessionStorage.getItem("userhead"),
+      },
+      params: data,
+    });
+    console.log(res, "联系人数据");
+    conteactListData.value = [
+      ...conteactListData.value,
+      ...JSON.parse(eds.decryptDes(res.data.data)).list,
+    ];
+  } else {
+    console.log("数据全部加载完成");
+  }
+};
 // 联系人下拉框搜索时加载
 // 联系人下拉框搜索时加载
 const conteactMethod = (query) => {
 const conteactMethod = (query) => {
   console.log(query);
   console.log(query);
@@ -1899,12 +1987,12 @@ const conteactMethod = (query) => {
 // 添加成员弹窗
 // 添加成员弹窗
 const addMemberClick = () => {
 const addMemberClick = () => {
   addMemberTitle.value = "添加成员";
   addMemberTitle.value = "添加成员";
-  conteactListCurrentPage.value=1 // 联系人分页重新赋值为1
+  conteactListCurrentPage.value = 1; // 联系人分页重新赋值为1
   homeShow.value = false;
   homeShow.value = false;
   addMemberShow.value = true;
   addMemberShow.value = true;
-  delRecordShow.value=false
+  delRecordShow.value = false;
   studentList();
   studentList();
-  addStudentListScroll();
+  // addStudentListScroll();
   addMemberRuleForm.serialNumber = "";
   addMemberRuleForm.serialNumber = "";
   addMemberRuleForm.name = "";
   addMemberRuleForm.name = "";
   addMemberRuleForm.identity = "";
   addMemberRuleForm.identity = "";
@@ -1932,15 +2020,16 @@ const addMemberClick = () => {
     addMemberRef.value.resetFields();
     addMemberRef.value.resetFields();
   });
   });
 };
 };
+
 // 编辑成员弹窗
 // 编辑成员弹窗
 const editClick = (row) => {
 const editClick = (row) => {
   addMemberTitle.value = "编辑成员";
   addMemberTitle.value = "编辑成员";
-  conteactListCurrentPage.value=1  // 联系人分页重新赋值为1
+  conteactListCurrentPage.value = 1; // 联系人分页重新赋值为1
   homeShow.value = false;
   homeShow.value = false;
   addMemberShow.value = true;
   addMemberShow.value = true;
-  delRecordShow.value=false
+  delRecordShow.value = false;
   studentList();
   studentList();
-  addStudentListScroll();
+  // addStudentListScroll();
   console.log(row, "编辑");
   console.log(row, "编辑");
   addMemberRuleForm.serialNumber = row.cardNo; // 学号
   addMemberRuleForm.serialNumber = row.cardNo; // 学号
   addMemberRuleForm.name = row.name; // 姓名
   addMemberRuleForm.name = row.name; // 姓名
@@ -1964,10 +2053,10 @@ const editClick = (row) => {
   addMemberRuleForm.dormitory = row.dormitoryNumber; // 宿舍号
   addMemberRuleForm.dormitory = row.dormitoryNumber; // 宿舍号
   addMemberRuleForm.phone = row.phone; // 手机号
   addMemberRuleForm.phone = row.phone; // 手机号
   if (row.affiliate) {
   if (row.affiliate) {
-    let arr=[]
-    row.affiliates.forEach(item=>{
-arr.push(`${item.name}·${item.id}`)
-    })
+    let arr = [];
+    row.affiliates.forEach((item) => {
+      arr.push(`${item.name}·${item.id}`);
+    });
     addMemberRuleForm.contact = arr; // 联系人
     addMemberRuleForm.contact = arr; // 联系人
   } else {
   } else {
     addMemberRuleForm.contact = [];
     addMemberRuleForm.contact = [];
@@ -1985,12 +2074,12 @@ const confirmAddMember = async (formEl) => {
   if (!formEl) return;
   if (!formEl) return;
   await formEl.validate(async (valid, fields) => {
   await formEl.validate(async (valid, fields) => {
     if (valid) {
     if (valid) {
-    console.log( addMemberRuleForm.contact);
-      let arr=[]
-      addMemberRuleForm.contact.forEach(item=>{
-        let index = item.split("·")
-        arr.push(index[1])
-      })
+      console.log(addMemberRuleForm.contact);
+      let arr = [];
+      addMemberRuleForm.contact.forEach((item) => {
+        let index = item.split("·");
+        arr.push(index[1]);
+      });
       console.log(arr);
       console.log(arr);
       let data = {
       let data = {
         cardNo: addMemberRuleForm.serialNumber, // 学号
         cardNo: addMemberRuleForm.serialNumber, // 学号
@@ -2023,8 +2112,8 @@ const confirmAddMember = async (formEl) => {
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartUser/updateSmartUserById",
           url: api.value + "/wanzai/api/smartUser/updateSmartUserById",
           headers: {
           headers: {
-            // token: sessionStorage.getItem("token"),
-            // user_head: sessionStorage.getItem("userhead"),
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
           },
           },
           data: data,
           data: data,
         });
         });
@@ -2034,8 +2123,8 @@ const confirmAddMember = async (formEl) => {
           method: "post",
           method: "post",
           url: api.value + "/wanzai/api/smartUser/insertSmartUser",
           url: api.value + "/wanzai/api/smartUser/insertSmartUser",
           headers: {
           headers: {
-            // token: sessionStorage.getItem("token"),
-            // user_head: sessionStorage.getItem("userhead"),
+            token: sessionStorage.getItem("token"),
+            user_head: sessionStorage.getItem("userhead"),
           },
           },
           data: data,
           data: data,
         });
         });
@@ -2051,7 +2140,7 @@ const confirmAddMember = async (formEl) => {
         });
         });
         homeShow.value = true;
         homeShow.value = true;
         addMemberShow.value = false;
         addMemberShow.value = false;
-        delRecordShow.value=false
+        delRecordShow.value = false;
         addMemberRef.value.resetFields();
         addMemberRef.value.resetFields();
         getList();
         getList();
       } else {
       } else {
@@ -2070,7 +2159,7 @@ const confirmAddMember = async (formEl) => {
 const addMemberConcel = () => {
 const addMemberConcel = () => {
   addMemberShow.value = false;
   addMemberShow.value = false;
   homeShow.value = true;
   homeShow.value = true;
-  delRecordShow.value=false
+  delRecordShow.value = false;
   addMemberRef.value.resetFields();
   addMemberRef.value.resetFields();
   addMemberRuleForm.id = "";
   addMemberRuleForm.id = "";
 };
 };
@@ -2191,7 +2280,7 @@ const handleExceed = (files) => {
 const addBatchClick = () => {
 const addBatchClick = () => {
   addBatchShow.value = true;
   addBatchShow.value = true;
   homeShow.value = false;
   homeShow.value = false;
-  delRecordShow.value=false
+  delRecordShow.value = false;
   nextTick(() => {
   nextTick(() => {
     const Ele = document.querySelector(".img-upload-demo .el-upload__input");
     const Ele = document.querySelector(".img-upload-demo .el-upload__input");
     Ele["webkitdirectory"] = true;
     Ele["webkitdirectory"] = true;
@@ -2200,7 +2289,7 @@ const addBatchClick = () => {
 const addBatchConcel = () => {
 const addBatchConcel = () => {
   homeShow.value = true;
   homeShow.value = true;
   addBatchShow.value = false;
   addBatchShow.value = false;
-  delRecordShow.value=false
+  delRecordShow.value = false;
   upload2File.value = "";
   upload2File.value = "";
   uploadImgList.value = "";
   uploadImgList.value = "";
   allImgUpload.value.clearFiles();
   allImgUpload.value.clearFiles();
@@ -2208,21 +2297,21 @@ const addBatchConcel = () => {
 };
 };
 
 
 // 打开删除记录页面
 // 打开删除记录页面
-const DelRecordClick=async ()=>{
-  delRecordShow.value=true
+const DelRecordClick = async () => {
+  delRecordShow.value = true;
   delBatchShow.value = false;
   delBatchShow.value = false;
   homeShow.value = false;
   homeShow.value = false;
-  addMemberTitle.value='删除记录'
+  addMemberTitle.value = "删除记录";
   let data = {
   let data = {
-    currentPage:delRecordCurrentPage.value,
-    pageCount:delRecordPageSize.value,
+    currentPage: delRecordCurrentPage.value,
+    pageCount: delRecordPageSize.value,
   };
   };
   let res = await axios({
   let res = await axios({
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartUser/queryUserDeletePage",
     url: api.value + "/wanzai/api/smartUser/queryUserDeletePage",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -2238,13 +2327,13 @@ const DelRecordClick=async ()=>{
       center: true,
       center: true,
     });
     });
   }
   }
-}
+};
 // 关闭删除记录页面
 // 关闭删除记录页面
-const delRecordClose=()=>{
-  delRecordShow.value=false
+const delRecordClose = () => {
+  delRecordShow.value = false;
   delBatchShow.value = false;
   delBatchShow.value = false;
   homeShow.value = true;
   homeShow.value = true;
-}
+};
 
 
 // 批量导入模板下载
 // 批量导入模板下载
 const downLoadtempAdd = async () => {
 const downLoadtempAdd = async () => {
@@ -2252,8 +2341,8 @@ const downLoadtempAdd = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartUser/downloadUserExcel",
     url: api.value + "/wanzai/api/smartUser/downloadUserExcel",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     // params: data,
     // params: data,
   });
   });
@@ -2380,7 +2469,7 @@ const handlePreviewImgUpload = (file) => {
 const beforeAvatarUploadImgUpload = (rawFile) => {
 const beforeAvatarUploadImgUpload = (rawFile) => {
   // console.log(rawFile.type, "文件类型");
   // console.log(rawFile.type, "文件类型");
   // console.log(rawFile.type == "image/jpeg",rawFile.type == "image/png");
   // console.log(rawFile.type == "image/jpeg",rawFile.type == "image/png");
-  
+
   if (rawFile.type == "image/jpeg" || rawFile.type == "image/png") {
   if (rawFile.type == "image/jpeg" || rawFile.type == "image/png") {
     if (rawFile.size / 1024 / 1024 > 2) {
     if (rawFile.size / 1024 / 1024 > 2) {
       ElMessage.error("图片的大小不能超过2MB!");
       ElMessage.error("图片的大小不能超过2MB!");
@@ -2442,18 +2531,18 @@ const handleSuccessImgUpload = (response, uploadFile, uploadFiles) => {
   console.log(uploadFiles.length, "上传成功");
   console.log(uploadFiles.length, "上传成功");
 };
 };
 // 重置按钮 重置上传文件
 // 重置按钮 重置上传文件
-const resetImport=()=>{
+const resetImport = () => {
   upload2File.value = "";
   upload2File.value = "";
   uploadImgList.value = "";
   uploadImgList.value = "";
   allImgUpload.value.clearFiles();
   allImgUpload.value.clearFiles();
   upload2.value.clearFiles();
   upload2.value.clearFiles();
-}
+};
 // 批量导入按钮
 // 批量导入按钮
 const bulkImport = async () => {
 const bulkImport = async () => {
-  allImgShow.value=true;
+  allImgShow.value = true;
   if (upload2File.value && uploadImgList.value) {
   if (upload2File.value && uploadImgList.value) {
   } else {
   } else {
-    allImgShow.value=false;
+    allImgShow.value = false;
     ElMessage({
     ElMessage({
       type: "warning",
       type: "warning",
       showClose: true,
       showClose: true,
@@ -2474,8 +2563,8 @@ const bulkImport = async () => {
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/smartUser/importExcelUsers",
     url: api.value + "/wanzai/api/smartUser/importExcelUsers",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     data: formData,
     data: formData,
   });
   });
@@ -2486,7 +2575,7 @@ const bulkImport = async () => {
     uploadImgList.value = "";
     uploadImgList.value = "";
     allImgUpload.value.clearFiles();
     allImgUpload.value.clearFiles();
     upload2.value.clearFiles();
     upload2.value.clearFiles();
-    allImgShow.value=false;
+    allImgShow.value = false;
     ElMessage({
     ElMessage({
       type: "success",
       type: "success",
       showClose: true,
       showClose: true,
@@ -2494,7 +2583,7 @@ const bulkImport = async () => {
       center: true,
       center: true,
     });
     });
   } else {
   } else {
-    allImgShow.value=false;
+    allImgShow.value = false;
     ElMessage({
     ElMessage({
       type: "error",
       type: "error",
       showClose: true,
       showClose: true,
@@ -2514,12 +2603,12 @@ const handleAddBatch = (value) => {
 const delBatchClick = () => {
 const delBatchClick = () => {
   delBatchShow.value = true;
   delBatchShow.value = true;
   homeShow.value = false;
   homeShow.value = false;
-  delRecordShow.value=false
+  delRecordShow.value = false;
 };
 };
 const delBatchConcel = () => {
 const delBatchConcel = () => {
   homeShow.value = true;
   homeShow.value = true;
   delBatchShow.value = false;
   delBatchShow.value = false;
-  delRecordShow.value=false
+  delRecordShow.value = false;
 };
 };
 // 移出照片
 // 移出照片
 const handleRemove3 = (uploadFile, uploadFiles) => {
 const handleRemove3 = (uploadFile, uploadFiles) => {
@@ -2604,8 +2693,8 @@ const getMoveData = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartDepartment/queryDepartmentTree",
     url: api.value + "/wanzai/api/smartDepartment/queryDepartmentTree",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
   });
   });
@@ -2685,8 +2774,8 @@ const confirmMoveMember = async () => {
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/smartUser/changeDepartment",
     url: api.value + "/wanzai/api/smartUser/changeDepartment",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     data: data,
     data: data,
   });
   });
@@ -2767,8 +2856,8 @@ const confirmSelDel = async () => {
     method: "post",
     method: "post",
     url: api.value + "/wanzai/api/smartUser/deleteSmartUserById",
     url: api.value + "/wanzai/api/smartUser/deleteSmartUserById",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     data: data,
     data: data,
   });
   });
@@ -2811,8 +2900,8 @@ const importExcel = async () => {
     method: "get",
     method: "get",
     url: api.value + "/wanzai/api/smartUser/smartUserExport",
     url: api.value + "/wanzai/api/smartUser/smartUserExport",
     headers: {
     headers: {
-      // token: sessionStorage.getItem("token"),
-      // user_head: sessionStorage.getItem("userhead"),
+      token: sessionStorage.getItem("token"),
+      user_head: sessionStorage.getItem("userhead"),
     },
     },
     params: data,
     params: data,
     responseType: "blob",
     responseType: "blob",
@@ -2852,6 +2941,14 @@ const tableRowClassName = ({ row, rowIndex }) => {
   }
   }
   return "";
   return "";
 };
 };
+
+// 每页显示条数
+const handleSizeChange = (value) => {
+  console.log(value, "每页显示条数");
+  pageSize.value = value;
+  currentPage.value = 1;
+  getList();
+};
 // 分页
 // 分页
 const handleCurrentChange = (value) => {
 const handleCurrentChange = (value) => {
   // console.log(value);
   // console.log(value);
@@ -3383,8 +3480,8 @@ onUnmounted(() => {
       // }
       // }
     }
     }
   }
   }
-   // 删除记录页面
-   .delRecord {
+  // 删除记录页面
+  .delRecord {
     flex: 1;
     flex: 1;
     height: 100%;
     height: 100%;
     border-radius: 8px;
     border-radius: 8px;
@@ -3405,11 +3502,11 @@ onUnmounted(() => {
       color: rgb(0, 0, 0);
       color: rgb(0, 0, 0);
       font-size: 20px;
       font-size: 20px;
       font-weight: 600;
       font-weight: 600;
-      img{
+      img {
         width: 18px;
         width: 18px;
         height: 18px;
         height: 18px;
       }
       }
-      .add{
+      .add {
         margin-left: 20px;
         margin-left: 20px;
       }
       }
     }
     }
@@ -3419,7 +3516,7 @@ onUnmounted(() => {
       margin: 0 auto;
       margin: 0 auto;
       color: #000;
       color: #000;
     }
     }
-      
+
     .footer {
     .footer {
       width: 96%;
       width: 96%;
       height: calc(100% - 100px);
       height: calc(100% - 100px);
@@ -3809,4 +3906,9 @@ onUnmounted(() => {
     height: 200px;
     height: 200px;
   }
   }
 }
 }
+.el-popper {
+  .addStudentMore {
+    text-align: center;
+  }
+}
 </style>
 </style>