From 02ce22be65df8b717d5f1614e5d7dbfcdf1ce1b9 Mon Sep 17 00:00:00 2001
From: Oliver <1070107765@qq.com>
Date: 星期三, 14 十二月 2022 09:29:51 +0800
Subject: [PATCH] 预警研判 操作

---
 src/views/systemSetting/baseSetting/department/index.vue |  327 +++++++++++++++++++++++++++++++-----------------------
 1 files changed, 188 insertions(+), 139 deletions(-)

diff --git a/src/views/systemSetting/baseSetting/department/index.vue b/src/views/systemSetting/baseSetting/department/index.vue
index 1ae0aa0..da964c5 100644
--- a/src/views/systemSetting/baseSetting/department/index.vue
+++ b/src/views/systemSetting/baseSetting/department/index.vue
@@ -11,18 +11,19 @@
         </div>
         <div class="addUser">
           <el-button class="addBtn" type="primary" @click="dialogCreate = true"
-            >鏂板閮ㄩ棬</el-button
+          >鏂板閮ㄩ棬
+          </el-button
           >
           <el-dialog
-            :visible.sync="dialogCreate"
-            title="鏂板閮ㄩ棬淇℃伅"
-            width="45%"
-            v-if="dialogCreate"
-            :before-close="handleClose2"
+              :visible.sync="dialogCreate"
+              title="鏂板閮ㄩ棬淇℃伅"
+              width="45%"
+              v-if="dialogCreate"
+              :before-close="handleClose2"
           >
             <createUser
-              :refresh="context === '' ? getUserList : search"
-              @changMyDialog="changMyDialog"
+                :refresh="context === '' ? getUserList : search"
+                @changMyDialog="changMyDialog"
             />
           </el-dialog>
         </div>
@@ -32,20 +33,20 @@
       <div class="mainContent">
         <!-- 鏁版嵁灞曠ず -->
         <el-table
-          ref="multipleTable"
-          :header-cell-style="{
+            ref="multipleTable"
+            :header-cell-style="{
             background: '#06122c',
             'font-size': '12px',
             color: '#4b9bb7',
             'font-weight': '650',
             'line-height': '45px',
           }"
-          :data="tableData"
-          style="width: 100%"
-          :row-class-name="tableRowClassName"
-          @selection-change="tableChange"
+            :data="tableData"
+            style="width: 100%"
+            :row-class-name="tableRowClassName"
+            @selection-change="tableChange"
         >
-          <el-table-column type="selection" min-width="5"> </el-table-column>
+          <el-table-column type="selection" min-width="5"></el-table-column>
           <el-table-column prop="id" label="閮ㄩ棬ID" min-width="5">
             <!-- <template slot-scope="scope">{{ scope.row.id }}</template> -->
           </el-table-column>
@@ -60,11 +61,11 @@
           <el-table-column prop="status" label="鍚敤" min-width="5">
             <template slot-scope="scope">
               <el-switch
-                class="switchStyle"
-                v-model="scope.row.status"
-                active-color="#3fef9a"
-                inactive-color="#000212"
-                disabled
+                  class="switchStyle"
+                  v-model="scope.row.status"
+                  active-color="#3fef9a"
+                  inactive-color="#000212"
+                  disabled
               >
               </el-switch>
             </template>
@@ -83,17 +84,17 @@
         </el-table>
         <!-- 鏌ョ湅淇敼椤甸潰 -->
         <el-dialog
-          :visible.sync="dialogUpdate"
-          width="45%"
-          :title="updateFlag ? '淇敼閮ㄩ棬淇℃伅' : '鏌ョ湅閮ㄩ棬淇℃伅'"
-          v-if="dialogUpdate"
-          :before-close="handleClose"
+            :visible.sync="dialogUpdate"
+            width="45%"
+            :title="updateFlag ? '淇敼閮ㄩ棬淇℃伅' : '鏌ョ湅閮ㄩ棬淇℃伅'"
+            v-if="dialogUpdate"
+            :before-close="handleClose"
         >
           <updateUser
-            :updateFlag="updateFlag"
-            :userInfo="userInfo"
-            :getDepartList="context === '' ? getUserList : search"
-            @changeDialog="changMyDialog"
+              :updateFlag="updateFlag"
+              :userInfo="userInfo"
+              :getDepartList="context === '' ? getUserList : search"
+              @changeDialog="changMyDialog"
           />
         </el-dialog>
         <!-- tools -->
@@ -101,26 +102,28 @@
           <div class="funs">
             <div class="funsItem funs-sp">
               <el-checkbox v-model="all" @change="selectAll()"
-                >鍏ㄩ��</el-checkbox
+              >鍏ㄩ��
+              </el-checkbox
               >
             </div>
             <div class="funsItem funs-sp">
               <el-checkbox v-model="unsame" @change="disSame(tableData)"
-                >鍙嶉��</el-checkbox
+              >鍙嶉��
+              </el-checkbox
               >
             </div>
             <div class="funsItem">
               <el-select
-                v-model="myIdx"
-                placeholder="鎵归噺鎿嶄綔"
-                @change="selectChange"
+                  v-model="myIdx"
+                  placeholder="鎵归噺鎿嶄綔"
+                  @change="selectChange"
               >
                 <el-option
-                  v-for="item in options"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value"
-                  :disabled="item.disabled"
+                    v-for="item in options"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                    :disabled="item.disabled"
                 >
                 </el-option>
               </el-select>
@@ -128,14 +131,14 @@
           </div>
           <div class="pagination">
             <el-pagination
-              background
-              :current-page="currentPage"
-              layout="prev, pager, next"
-              :total="totalNum"
-              :page-size="pageSize"
-              @current-change="changeCurrentPage"
-              @prev-click="handlePrev"
-              @next-click="handleNext"
+                background
+                :current-page="currentPage"
+                layout="prev, pager, next"
+                :total="totalNum"
+                :page-size="pageSize"
+                @current-change="changeCurrentPage"
+                @prev-click="handlePrev"
+                @next-click="handleNext"
             >
             </el-pagination>
           </div>
@@ -147,6 +150,7 @@
 <script>
 import createUser from "./createUser";
 import updateUser from "./updateUser";
+
 export default {
   components: {
     createUser,
@@ -196,9 +200,17 @@
     selectChange(list) {
       console.log(this.tempList);
       if (this.tempList.length !== 0) {
+        if (list === 1) {
+          this.preMyIdx = list;
+          this.mulPut(this.tempList, list);
+        }
+        if (list === 2) {
+          this.preMyIdx = list;
+          this.mulPut(this.tempList);
+        }
         if (list === 3) {
           this.preMyIdx = list;
-          this.mulDelete(this.tempList);
+          this.mulDelete(this.tempList, list);
         }
       } else {
         this.myIdx = this.preMyIdx;
@@ -208,31 +220,61 @@
         });
       }
     },
+    mulPut(idArr, option) {
+      const status = option === 1 ? 1 : 0
+      const tag = option === 1 ? "鍚敤" : "绂佺敤"
+      let list = JSON.parse(JSON.stringify(this.tableData))
+      list = list.filter(x => idArr.indexOf(x.id) > -1)
+      list.forEach(x => x.status = status)
+      console.log(list)
+      this.$confirm(`鎮ㄧ‘瀹氳鎵归噺${tag}閮ㄩ棬鍚�?`)
+          .then((_) => {
+            this.$axios({
+              method: "PUT",
+              url: "sccg/depart/batch_status",
+              data: list
+            }).then(res => {
+              console.log(res)
+              if (res.code === 200) {
+                this.$message({
+                  type: "success",
+                  message: `鎵归噺${tag}閮ㄩ棬鎴愬姛`
+                })
+                this.getUserList()
+              } else {
+                this.$message({
+                  type: "error",
+                  message: res.message,
+                })
+              }
+            })
+          })
+    },
     // 澶氭潯鏁版嵁鍒犻櫎
     mulDelete(idArr) {
       this.$confirm("鎮ㄧ‘瀹氳鎵归噺鍒犻櫎閮ㄩ棬鍚�?")
-        .then((_) => {
-          this.$axios({
-            method: "post",
-            url: "sccg/depart/batch_deletion?ids=" + idArr,
-          }).then((res) => {
-            if (res.code === 200) {
-              this.$message({
-                type: "success",
-                message: "鎵归噺鍒犻櫎閮ㄩ棬鎴愬姛",
-              });
-              this.getUserList();
-            } else {
-              this.$message({
-                type: "error",
-                message: res.message,
-              });
-            }
+          .then((_) => {
+            this.$axios({
+              method: "post",
+              url: "sccg/depart/batch_deletion?ids=" + idArr,
+            }).then((res) => {
+              if (res.code === 200) {
+                this.$message({
+                  type: "success",
+                  message: "鎵归噺鍒犻櫎閮ㄩ棬鎴愬姛",
+                });
+                this.getUserList();
+              } else {
+                this.$message({
+                  type: "error",
+                  message: res.message,
+                });
+              }
+            });
+          })
+          .catch((err) => {
+            console.log(err);
           });
-        })
-        .catch((err) => {
-          console.log(err);
-        });
     },
     tableChange(list) {
       this.tempList = [];
@@ -254,37 +296,38 @@
       });
     },
     // 鍗曟潯鏁版嵁鍒犻櫎
-    handleDelete({ id }) {
+    handleDelete({id}) {
       this.$confirm("纭鍒犻櫎锛�")
-        .then((_) => {
-          this.$axios({
-            method: "post",
-            url: "sccg/depart/delete",
-            data: {
-              id,
-            },
-          }).then((res) => {
-            this.$message({
-              type: res.code === 404 ? "warning" : "success",
-              message: res.message,
-            });
+          .then((_) => {
+            this.$axios({
+              method: "post",
+              url: "sccg/depart/delete",
+              data: {
+                id,
+              },
+            }).then((res) => {
+              this.$message({
+                type: res.code === 404 ? "warning" : "success",
+                message: res.message,
+              });
 
-            this.getUserList();
+              this.getUserList();
+            });
+          })
+          .catch((_) => {
           });
-        })
-        .catch((_) => {});
     },
     // 淇敼鐘舵��
     handleChangeStatus(obj) {
-      let { id, status } = obj;
+      let {id, status} = obj;
       status == true ? (status = 1) : (status = 0);
       this.$axios
-        .post(`sccg/depart/status`, { id: id, status: status })
-        .then((res) => {
-          if (res.code == 200) {
-            this.getUserList();
-          }
-        });
+          .post(`sccg/depart/status`, {id: id, status: status})
+          .then((res) => {
+            if (res.code == 200) {
+              this.getUserList();
+            }
+          });
     },
     // 鑾峰彇鐢ㄦ埛鍒楄〃
     getUserList() {
@@ -292,47 +335,47 @@
       this.dialogCreate = false;
       // 鑾峰彇鎵�鏈夌敤鎴蜂俊鎭�
       this.$axios
-        .get("sccg/depart/page", {
-          params: {
-            currentPage: this.currentPage,
-            pageSize: this.pageSize,
-            departName: this.context,
-          },
-        })
-        .then((res) => {
-          if (res.code === 200) {
-            res.data.records.forEach((item) => {
-              item.status == 0 ? (item.status = false) : (item.status = true);
-            });
-            that.totalNum = res.data.total;
-            that.tableData = res.data.records;
-          }
-        });
+          .get("sccg/depart/page", {
+            params: {
+              currentPage: this.currentPage,
+              pageSize: this.pageSize,
+              departName: this.context,
+            },
+          })
+          .then((res) => {
+            if (res.code === 200) {
+              res.data.records.forEach((item) => {
+                item.status == 0 ? (item.status = false) : (item.status = true);
+              });
+              that.totalNum = res.data.total;
+              that.tableData = res.data.records;
+            }
+          });
     },
     search() {
       const that = this;
       this.dialogCreate = false;
       // 鑾峰彇鎵�鏈夌敤鎴蜂俊鎭�
       this.$axios
-        .get("sccg/depart/page", {
-          params: {
-            currentPage: this.currentPage,
-            pageSize: this.pageSize,
-            departName: this.context,
-          },
-        })
-        .then((res) => {
-          if (res.code === 200) {
-            res.data.records.forEach((item) => {
-              item.status == 1 ? (item.status = true) : (item.status = false);
-            });
-            that.totalNum = res.data.total;
-            that.tableData = res.data.records;
-          }
-        });
+          .get("sccg/depart/page", {
+            params: {
+              currentPage: this.currentPage,
+              pageSize: this.pageSize,
+              departName: this.context,
+            },
+          })
+          .then((res) => {
+            if (res.code === 200) {
+              res.data.records.forEach((item) => {
+                item.status == 1 ? (item.status = true) : (item.status = false);
+              });
+              that.totalNum = res.data.total;
+              that.tableData = res.data.records;
+            }
+          });
     },
     // 璁剧疆琛ㄦ牸鏂戦┈绾�
-    tableRowClassName({ row, rowIndex }) {
+    tableRowClassName({row, rowIndex}) {
       if ((rowIndex + 1) % 2 == 0) {
         return "warning-row";
       } else {
@@ -368,29 +411,31 @@
       this.search();
     },
     // 鍏抽棴dialog
-    changMyDialog({ flag }) {
+    changMyDialog({flag}) {
       this.dialogUpdate = flag;
       this.dialogCreate = flag;
     },
     handleClose(done) {
       if (this.updateFlag) {
         this.$confirm("纭鍏抽棴锛�")
-          .then((_) => {
-            this.dialogUpdate = false;
-            this.dialogCreate = false;
-            done();
-          })
-          .catch((_) => {});
+            .then((_) => {
+              this.dialogUpdate = false;
+              this.dialogCreate = false;
+              done();
+            })
+            .catch((_) => {
+            });
       } else {
         done();
       }
     },
     handleClose2(done) {
       this.$confirm("纭鍏抽棴锛�")
-        .then((_) => {
-          done();
-        })
-        .catch((_) => {});
+          .then((_) => {
+            done();
+          })
+          .catch((_) => {
+          });
     },
   },
 };
@@ -403,7 +448,7 @@
 
   header {
     background-color: #09152f;
-    border: 1pox solid #fff;
+    border: 1 pox solid #fff;
 
     .headerContent {
       padding: 0 40px;
@@ -457,7 +502,7 @@
     background-color: #09152f;
     margin-top: 20px;
     padding-bottom: 50px;
-    border: 1pox solid #fff;
+    border: 1 pox solid #fff;
 
     .mainTitle {
       line-height: 60px;
@@ -468,9 +513,11 @@
       justify-content: space-between;
       align-items: center;
       padding: 0 20px;
+
       .funs-sp {
         border: 1px solid #17324c;
       }
+
       .funs {
         display: flex;
 
@@ -531,6 +578,7 @@
     .el-table {
       color: #4b9bb7;
       font-size: 10px;
+
       .operation {
         display: flex;
 
@@ -543,6 +591,7 @@
         }
       }
     }
+
     // &::v-deep .switchStyle .el-switch__label {
     //     position: absolute;
     //     display: none;
@@ -573,4 +622,4 @@
     // }
   }
 }
-</style>
\ No newline at end of file
+</style>

--
Gitblit v1.8.0