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/device/loudspeaker/index.vue |  134 ++++++++++++++++++--------------------------
 1 files changed, 54 insertions(+), 80 deletions(-)

diff --git a/src/views/systemSetting/device/loudspeaker/index.vue b/src/views/systemSetting/device/loudspeaker/index.vue
index 8c4c33e..3f323ca 100644
--- a/src/views/systemSetting/device/loudspeaker/index.vue
+++ b/src/views/systemSetting/device/loudspeaker/index.vue
@@ -18,25 +18,25 @@
             </el-option>
           </el-select>
         </div>
+        <div class="main-title">
+          <el-button
+            class="el-icon-plus button-addition"
+            type="primary"
+            @click="handleAdd"
+            >娣诲姞</el-button
+          >
+        </div>
       </div>
     </header>
     <main>
       <div class="main-content">
-        <div class="main-title">
-          <el-button
-            class="el-icon-plus"
-            type="primary"
-            @click="dialogCreate = true"
-            >娣诲姞</el-button
-          >
-        </div>
         <!-- 鏁版嵁灞曠ず -->
         <el-table
+          border
+          stripe
           ref="multipleTable"
           :header-cell-style="{
-            background: '#06122c',
-            'font-size': '12px',
-            color: '#4b9bb7',
+            background: '#F5F5F5',
             'font-weight': '650',
             'line-height': '45px',
           }"
@@ -72,7 +72,7 @@
           </el-table-column>
           <el-table-column prop="operation" label="鎿嶄綔" min-width="20">
             <template slot-scope="scope">
-              <div class="btn">
+              <div class="operation">
                 <span @click="handleEdit(scope.row)">缂栬緫</span>
                 <span class="line">|</span>
                 <span @click="handleDelete(scope.row)">鍒犻櫎</span>
@@ -106,10 +106,9 @@
         title="娣诲姞闊虫煴"
         :visible.sync="dialogCreate"
         width="60%"
-        v-if="dialogCreate"
         :before-close="handleClose"
       >
-        <MyForm :info="loudspeakerInfo" :closeDialog="null"></MyForm>
+        <MyForm :info="loudspeakerInfo" @closeDialog="handleCallBack"></MyForm>
       </el-dialog>
     </footer>
   </div>
@@ -146,14 +145,7 @@
       pageSize: 10,
       currentPage: 1,
       renderFlag: false,
-      loudspeakerInfo: {
-        id: 0,
-        name: "",
-        code: "",
-        power: "",
-        frequencyResponse: "",
-        fullRangeSpeaker: "",
-      },
+      loudspeakerInfo: {},
     };
   },
   created() {
@@ -164,16 +156,42 @@
       "getLoudspeakerList",
       "saveLoudspeaker",
       "updateLoudspeaker",
+      "deleteLoudspeaker",
     ]),
+    handleAdd() {
+      this.loudspeakerInfo = {
+        id: 0,
+        name: "",
+        code: "",
+        power: "",
+        frequencyResponse: "",
+        fullRangeSpeaker: "",
+      };
+      this.dialogCreate = true;
+    },
     handleEdit(row) {
       this.loudspeakerInfo = row;
       this.dialogCreate = true;
     },
-    handleDelete(row) {},
+    handleDelete(row) {
+      this.$confirm("纭鍒犻櫎锛�").then((_) => {
+        this.deleteLoudspeaker(row.id).then((res) => {
+          this.$message({
+            type: "success",
+            message: "鍒犻櫎鎴愬姛锛�",
+          });
+          this.setTableData();
+        });
+      });
+    },
     formatSate(row, column) {
       return row.state == 1 ? "鍦ㄧ嚎" : "绂荤嚎";
     },
-
+    handleCallBack(e) {
+      this.currentPage = 1;
+      this.dialogCreate = false;
+      this.setTableData();
+    },
     // 璁剧疆琛ㄦ牸鏂戦┈绾�
     tableRowClassName({ row, rowIndex }) {
       if ((rowIndex + 1) % 2 == 0) {
@@ -197,11 +215,12 @@
         pageSize,
         state: context,
       }).then((res) => {
-          this.list = res.records;
-          this.totalNum = res.total;
+        this.list = res.records;
+        this.totalNum = res.total;
       });
     },
     handleStateChange(e) {
+      this.currentPage = 1;
       this.setTableData();
     },
     // 褰撳墠椤垫敼鍙樿Е鍙戜簨浠�
@@ -225,15 +244,11 @@
   <style lang="scss" scoped>
 .list {
   text-align: left;
-  margin: 10px 20px;
-  color: #4b9bb7;
-
+  padding: 10px 20px;
+  border: 1px solid #ccc;
   header {
-    background-color: #09152f;
-    border: 1pox solid #fff;
-
     .header-content {
-      padding: 0 40px;
+      padding: 0px;
       display: flex;
       line-height: 100px;
       justify-content: space-between;
@@ -249,27 +264,17 @@
 
         .el-input {
           flex: 2;
-          color: #1d3f57;
-
-          &::v-deep .el-input__inner {
-            background-color: #09152f;
-            border: 1px solid #17324c;
-          }
         }
+      }
+      .main-title {
+        line-height: 60px;
+        padding: 0;
       }
     }
   }
 
   main {
-    background-color: #09152f;
-    margin-top: 20px;
     padding-bottom: 50px;
-    border: 1pox solid #fff;
-
-    .main-title {
-      line-height: 60px;
-      padding: 10px 20px;
-    }
 
     .tools {
       display: flex;
@@ -284,7 +289,6 @@
           line-height: 28px;
           display: flex;
           align-items: center;
-          border: 1px solid #17324c;
           border-radius: 4px;
           font-size: 12px;
           margin-left: 10px;
@@ -297,19 +301,6 @@
           .el-select {
             width: 120px;
           }
-
-          &::v-deep .el-input__inner {
-            border: none;
-            background-color: #09152f;
-          }
-
-          &:hover {
-            border: 1px solid #4b9bb7;
-          }
-
-          &:hover .el-checkbox {
-            color: #4b9bb7;
-          }
         }
       }
 
@@ -318,30 +309,13 @@
         display: flex;
         line-height: 50px;
         justify-content: center;
-
-        .el-pagination {
-          &::v-deep li,
-          &::v-deep .btn-prev,
-          &::v-deep .btn-next {
-            background-color: #071f39;
-            color: #4b9bb7;
-          }
-
-          &::v-deep .active {
-            background-color: #409eff;
-            color: #fff;
-          }
-        }
       }
     }
 
     .el-table {
-      color: #4b9bb7;
-      font-size: 10px;
-
       .operation {
         display: flex;
-
+        color: var(--operation-color);
         .line {
           padding: 0 5px;
         }
@@ -353,4 +327,4 @@
     }
   }
 }
-</style>
\ No newline at end of file
+</style>

--
Gitblit v1.8.0