From 7c20fd15b7fbc2bd5756b39d5ab655cc849ffcc3 Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期三, 16 七月 2025 22:39:23 +0800
Subject: [PATCH] 添加时间筛选

---
 src/views/systemSetting/baseSetting/department/index.vue |  181 +++++++++++++++++++++++++++------------------
 1 files changed, 108 insertions(+), 73 deletions(-)

diff --git a/src/views/systemSetting/baseSetting/department/index.vue b/src/views/systemSetting/baseSetting/department/index.vue
index da964c5..eab00aa 100644
--- a/src/views/systemSetting/baseSetting/department/index.vue
+++ b/src/views/systemSetting/baseSetting/department/index.vue
@@ -7,6 +7,18 @@
           <el-input v-model="context" placeholder="璇疯緭鍏ュ唴瀹�"></el-input>
           <div class="findBtn">
             <el-button type="primary" @click="search()">鏌ヨ</el-button>
+            <el-upload
+                class="department-margin-left10"
+                action=""
+                ref="uploadFile"
+                :http-request="importTable"
+                :show-file-list="false"
+                :auto-upload="true"
+                :limit="1"
+            >
+              <el-button type="primary">瀵煎叆</el-button>
+            </el-upload>
+            <el-button class="department-margin-left10" type="primary" @click="exportTable()">瀵煎嚭</el-button>
           </div>
         </div>
         <div class="addUser">
@@ -33,11 +45,12 @@
       <div class="mainContent">
         <!-- 鏁版嵁灞曠ず -->
         <el-table
+            border
+            stripe
             ref="multipleTable"
             :header-cell-style="{
-            background: '#06122c',
-            'font-size': '12px',
-            color: '#4b9bb7',
+          'background':'#F5F5F5',
+            'font-size': '14px',
             'font-weight': '650',
             'line-height': '45px',
           }"
@@ -78,6 +91,10 @@
                 <span @click="handleUpdate(scope.row)">淇敼</span>
                 <span class="line">|</span>
                 <span @click="handleDelete(scope.row)">鍒犻櫎</span>
+                <span class="line">|</span>
+              <span @click="handleChangeStatus(scope.row)">{{
+                scope.row.status === true ? "鍋滅敤" : "鍚敤"
+              }}</span>
               </div>
             </template>
           </el-table-column>
@@ -150,6 +167,9 @@
 <script>
 import createUser from "./createUser";
 import updateUser from "./updateUser";
+import {exportTeamInfo, importTeamInfo} from "@/api/system/portal/teamConstruction";
+import {downloadFile} from "@/utils/helper";
+import {exportTeamInfoDepartment, importTeamInfoDepartment} from "@/api/system/department";
 
 export default {
   components: {
@@ -197,6 +217,43 @@
     this.getUserList();
   },
   methods: {
+    // 瀵煎嚭
+    exportTable() {
+      // const status = this.searchStatus === 2 ? null : this.searchStatus;
+      exportTeamInfoDepartment({
+        // current: this.currentPage,
+        // size: this.pageSize,
+        // departName: this.searchDepartment,
+        // status,
+      })
+          .then((res) => {
+            console.log(res)
+            downloadFile(res);
+            this.$message({ type: "success", message: "鎿嶄綔鎴愬姛" });
+          })
+          .catch((err) => {
+            this.$message({ type: "error", message: err });
+          });
+    },
+
+    // 瀵煎叆
+    importTable(file) {
+      const formData = new FormData();
+      formData.append("file", file.file);
+      console.log(formData)
+      console.log(file)
+      importTeamInfoDepartment(formData)
+          .then(() => {
+            this.$message({ type: "success", message: "鎿嶄綔鎴愬姛" });
+            this.getUserList();
+            this.$refs.uploadFile.clearFiles();
+          })
+          .catch((err) => {
+            this.$message({ type: "error", message: err });
+            this.$refs.uploadFile.clearFiles();
+          });
+    },
+
     selectChange(list) {
       console.log(this.tempList);
       if (this.tempList.length !== 0) {
@@ -320,7 +377,7 @@
     // 淇敼鐘舵��
     handleChangeStatus(obj) {
       let {id, status} = obj;
-      status == true ? (status = 1) : (status = 0);
+      status == true ? (status = 0) : (status = 1);
       this.$axios
           .post(`sccg/depart/status`, {id: id, status: status})
           .then((res) => {
@@ -441,17 +498,21 @@
 };
 </script>
 <style lang="scss" scoped>
+.department-margin-left10{
+  margin-left: 10px;
+}
 .userList {
   text-align: left;
-  margin: 10px 20px;
-  color: #4b9bb7;
-
+  padding: 10px 20px;
+  // color: #4b9bb7;
+  //height: 100%;
+  border: 1px solid #ccc;
   header {
-    background-color: #09152f;
-    border: 1 pox solid #fff;
+    // background-color: white;
+    // border: 1 pox solid #fff;
 
     .headerContent {
-      padding: 0 40px;
+      padding: 0;
       display: flex;
       line-height: 100px;
       justify-content: space-between;
@@ -467,12 +528,12 @@
 
         .el-input {
           flex: 2;
-          color: #1d3f57;
+          // color: #1d3f57;
 
-          &::v-deep .el-input__inner {
-            background-color: #09152f;
-            border: 1px solid #17324c;
-          }
+          // &::v-deep .el-input__inner {
+          //   background-color: #09152f;
+          //   border: 1px solid #17324c;
+          // }
         }
       }
 
@@ -485,24 +546,24 @@
 
         .el-button {
           padding: 12px 25px;
-          border-radius: 20px;
+          //border-radius: 20px;
         }
       }
 
       .addBtn {
-        background-color: #eb5d01;
+        //background-color: #eb5d01;
         border: none;
-        border-radius: 20px;
+        //border-radius: 20px;
         padding: 12px 30px;
       }
     }
   }
 
   main {
-    background-color: #09152f;
+    // background-color: #09152f;
     margin-top: 20px;
     padding-bottom: 50px;
-    border: 1 pox solid #fff;
+    // border: 1 pox solid #fff;
 
     .mainTitle {
       line-height: 60px;
@@ -512,10 +573,12 @@
       display: flex;
       justify-content: space-between;
       align-items: center;
-      padding: 0 20px;
+      padding: 0;
 
       .funs-sp {
-        border: 1px solid #17324c;
+        // border: 1px solid #17324c;
+        border: 1px solid #DCDFE6;
+        background-color: #fff;
       }
 
       .funs {
@@ -538,18 +601,18 @@
             width: 120px;
           }
 
-          &::v-deep .el-input__inner {
-            border: none;
-            background-color: #09152f;
-          }
+          // &::v-deep .el-input__inner {
+          //   border: none;
+          //   background-color: #09152f;
+          // }
 
-          &:hover {
-            border: 1px solid #4b9bb7;
-          }
+          // &:hover {
+          //   border: 1px solid #4b9bb7;
+          // }
 
-          &:hover .el-checkbox {
-            color: #4b9bb7;
-          }
+          // &:hover .el-checkbox {
+          //   color: #4b9bb7;
+          // }
         }
       }
 
@@ -560,24 +623,24 @@
         justify-content: center;
 
         .el-pagination {
-          &::v-deep li,
-          &::v-deep .btn-prev,
-          &::v-deep .btn-next {
-            background-color: #071f39;
-            color: #4b9bb7;
-          }
+          // &::v-deep li,
+          // &::v-deep .btn-prev,
+          // &::v-deep .btn-next {
+          //   background-color: #071f39;
+          //   color: #4b9bb7;
+          // }
 
-          &::v-deep .active {
-            background-color: #409eff;
-            color: #fff;
-          }
+          // &::v-deep .active {
+          //   background-color: #409eff;
+          //   color: #fff;
+          // }
         }
       }
     }
 
     .el-table {
-      color: #4b9bb7;
-      font-size: 10px;
+      // color: #4b9bb7;
+      // font-size: 10px;
 
       .operation {
         display: flex;
@@ -585,41 +648,13 @@
         .line {
           padding: 0 5px;
         }
-
+        color: var(--operation-color);
         span:hover {
           cursor: pointer;
         }
       }
     }
 
-    // &::v-deep .switchStyle .el-switch__label {
-    //     position: absolute;
-    //     display: none;
-    //     color: #fff;
-    // }
-
-    // &::v-deep .el-switch__core {
-    //     background-color: rgba(166, 166, 166, 1);
-    // }
-
-    // &::v-deep .switchStyle .el-switch__label--left {
-    //     z-index: 9;
-    //     left: 20px;
-    // }
-
-    // &::v-deep .switchStyle .el-switch__label--right {
-    //     z-index: 9;
-    //     left: 4px;
-    // }
-
-    // &::v-deep .switchStyle .el-switch__label.is-active {
-    //     display: block;
-    // }
-
-    // &::v-deep .switchStyle.el-switch .el-switch__core,
-    // &::v-deep .el-switch .el-switch__label {
-    //     width: 50px !important;
-    // }
   }
 }
 </style>

--
Gitblit v1.8.0