From d3c60e18b95b50751f8088fa2d23cd8ff7f173bc Mon Sep 17 00:00:00 2001
From: WXL (wul) <wl_5969728@163.com>
Date: 星期三, 01 七月 2026 11:05:17 +0800
Subject: [PATCH] 测试完成

---
 src/views/knowledge/questionnaire/smsConfig/index.vue | 1015 ++++++++++++++++++-----------------------------------------
 1 files changed, 318 insertions(+), 697 deletions(-)

diff --git a/src/views/knowledge/questionnaire/smsConfig/index.vue b/src/views/knowledge/questionnaire/smsConfig/index.vue
index a6207bd..0397cdd 100644
--- a/src/views/knowledge/questionnaire/smsConfig/index.vue
+++ b/src/views/knowledge/questionnaire/smsConfig/index.vue
@@ -1,274 +1,222 @@
 <template>
   <div class="smsConfig-management">
-    <!-- 宸︿晶鏍� -->
-    <div class="sidecolumn">
-      <div class="sidecolumn-top">
-        <div class="top-wj">妯℃澘鍒嗙被</div>
-        <div class="top-tj" @click="Newcategory">+娣诲姞</div>
-      </div>
-      <div class="center-ss">
-        <el-input
-          placeholder="璇疯緭鍏ュ唴瀹�"
-          v-model="sidecolumnval"
-          class="input-with-select"
-          size="medium"
-        >
-        </el-input>
-      </div>
-      <div class="head-container" style="margin-top: 20px">
-        <el-tree
-          :data="deptOptions"
-          :props="defaultProps"
-          :expand-on-click-node="false"
-          :filter-node-method="filterNode"
-          ref="tree"
-          node-key="id"
-          default-expand-all
-          highlight-current
-          @node-click="handleNodeClick"
-        >
-          <span class="custom-tree-node" slot-scope="{ node, data }">
-            <span class="tree-node-label">{{ node.label }}</span>
-            <span v-if="data.id > 0">
+    <div class="main-content">
+      <el-row :gutter="20">
+        <el-col :span="24" :xs="24">
+          <el-form
+            :model="queryParams"
+            ref="queryForm"
+            size="small"
+            :inline="true"
+            v-show="showSearch"
+            label-width="88px"
+          >
+            <el-form-item label="妯℃澘缂栧彿" prop="templetno">
+              <el-input
+                v-model="queryParams.templetno"
+                placeholder="璇疯緭鍏ユā鏉跨紪鍙�"
+                clearable
+                style="width: 200px"
+                @keyup.enter.native="handleQuery"
+              />
+            </el-form-item>
+
+            <el-form-item label="妯℃澘鍚嶇О" prop="templetname">
+              <el-input
+                v-model="queryParams.templetname"
+                placeholder="璇疯緭鍏ユā鏉垮悕绉�"
+                clearable
+                style="width: 200px"
+                @keyup.enter.native="handleQuery"
+              />
+            </el-form-item>
+
+            <el-form-item label="閮ㄩ棬鍚嶇О" prop="deptName">
+              <el-input
+                v-model="queryParams.deptName"
+                placeholder="璇疯緭鍏ラ儴闂ㄥ悕绉�"
+                clearable
+                style="width: 200px"
+                @keyup.enter.native="handleQuery"
+              />
+            </el-form-item>
+
+            <el-form-item>
               <el-button
-                type="text"
+                type="primary"
+                icon="el-icon-search"
+                size="medium"
+                @click="handleQuery"
+                >鎼滅储</el-button
+              >
+              <el-button
+                icon="el-icon-refresh"
+                size="medium"
+                @click="resetQuery"
+                >閲嶇疆</el-button
+              >
+            </el-form-item>
+          </el-form>
+
+          <el-divider></el-divider>
+
+          <el-row :gutter="10" class="mb8">
+            <el-col :span="1.5">
+              <el-button
+                type="primary"
+                plain
+                icon="el-icon-plus"
+                size="medium"
+                @click="handleAdd"
+                >鏂板</el-button
+              >
+            </el-col>
+            <el-col :span="1.5">
+              <el-button
+                type="danger"
+                plain
                 icon="el-icon-delete"
-                circle
-                size="mini"
-                @click="() => remove(node, data)"
+                size="medium"
+                :disabled="multiple"
+                @click="handleDelete"
+                >鍒犻櫎</el-button
               >
-              </el-button>
-            </span>
-            <span v-if="data.id > 0">
-              <el-button
-                type="text"
-                circle
-                size="mini"
-                @click="() => altertag(node, data)"
-              >
-                <span class="button-textxg">
-                  <i class="el-icon-edit-outline"></i>
-                </span>
-              </el-button>
-            </span>
-          </span>
-        </el-tree>
-      </div>
-    </div>
+            </el-col>
+          </el-row>
 
-    <!-- 鍙充晶鏁版嵁 -->
-    <div class="leftvlue">
-      <div class="leftvlue-bg">
-        <el-row :gutter="20">
-          <el-col :span="24" :xs="24">
-            <el-form
-              :model="queryParams"
-              ref="queryForm"
-              size="small"
-              :inline="true"
-              v-show="showSearch"
-              label-width="98px"
-            >
-              <el-form-item label="妯℃澘鍚嶇О" prop="templetname">
-                <el-input
-                  v-model="queryParams.templetname"
-                  placeholder="璇疯緭鍏ユā鏉垮悕绉�"
-                  clearable
-                  style="width: 200px"
-                  @keyup.enter.native="handleQuery"
-                />
-              </el-form-item>
+          <el-table
+            v-loading="loading"
+            :data="userList"
+            :border="true"
+            @selection-change="handleSelectionChange"
+          >
+            <el-table-column type="selection" width="50" align="center" />
 
-              <el-form-item label="鐭俊绛惧悕" prop="signature">
-                <el-input
-                  v-model="queryParams.signature"
-                  placeholder="璇疯緭鍏ョ煭淇$鍚�"
-                  clearable
-                  style="width: 200px"
-                  @keyup.enter.native="handleQuery"
-                />
-              </el-form-item>
-
-              <el-form-item label="鍚敤鐘舵��" prop="isenable">
-                <el-select
-                  v-model="queryParams.isenable"
-                  placeholder="璇烽�夋嫨鐘舵��"
-                  clearable
-                  style="width: 200px"
-                >
-                  <el-option
-                    v-for="item in statusOptions"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-
-              <el-form-item>
-                <el-button
-                  type="primary"
-                  icon="el-icon-search"
-                  size="medium"
-                  @click="handleQuery"
-                >鎼滅储</el-button>
-                <el-button
-                  icon="el-icon-refresh"
-                  size="medium"
-                  @click="resetQuery"
-                >閲嶇疆</el-button>
-              </el-form-item>
-            </el-form>
-
-            <el-divider></el-divider>
-
-            <el-row :gutter="10" class="mb8">
-              <el-col :span="1.5">
-                <el-button
-                  type="primary"
-                  plain
-                  icon="el-icon-plus"
-                  size="medium"
-                  @click="handleAdd"
-                >鏂板</el-button>
-              </el-col>
-              <el-col :span="1.5">
-                <el-button
-                  type="danger"
-                  plain
-                  icon="el-icon-delete"
-                  size="medium"
-                  :disabled="multiple"
-                  @click="handleDelete"
-                >鍒犻櫎</el-button>
-              </el-col>
-            </el-row>
-
-            <el-table
-              v-loading="loading"
-              :data="userList"
-              :border="true"
-              @selection-change="handleSelectionChange"
-            >
-              <el-table-column type="selection" width="50" align="center" />
-
-              <el-table-column
-                label="妯℃澘鍚嶇О"
-                align="center"
-                key="templetname"
-                prop="templetname"
-                width="160"
-                :show-overflow-tooltip="true"
-              />
-
-              <el-table-column
-                label="鐭俊绛惧悕"
-                align="center"
-                key="signature"
-                prop="signature"
-                width="120"
-              />
-
-              <el-table-column
-                label="妯℃澘鍐呭"
-                align="center"
-                key="templetcontent"
-                prop="templetcontent"
-                width="280"
-                :show-overflow-tooltip="true"
-              />
-
-              <el-table-column
-                label="妯℃澘绫诲瀷"
-                align="center"
-                key="templettype"
-                prop="templettype"
-                width="120"
-              >
-                <template slot-scope="scope">
-                  <dict-tag :options="typeOptions" :value="scope.row.templettype" />
-                </template>
-              </el-table-column>
-
-              <el-table-column
-                label="鍚敤鐘舵��"
-                align="center"
-                key="isenable"
-                prop="isenable"
-                width="100"
-              >
-                <template slot-scope="scope">
-                  <dict-tag :options="statusOptions" :value="scope.row.isenable" />
-                </template>
-              </el-table-column>
-
-              <el-table-column
-                label="澶囨敞"
-                align="center"
-                key="remark"
-                prop="remark"
-                width="180"
-                :show-overflow-tooltip="true"
-              />
-
-              <el-table-column
-                label="鍒涘缓鏃堕棿"
-                align="center"
-                key="createTime"
-                prop="createTime"
-                width="160"
-              />
-
-              <el-table-column
-                label="鎿嶄綔"
-                fixed="right"
-                align="center"
-                width="240"
-                class-name="small-padding fixed-width"
-              >
-                <template slot-scope="scope">
-                  <el-button
-                    size="medium"
-                    type="text"
-                    @click="handleUpdate(scope.row)"
-                  >
-                    <span class="button-textxg">
-                      <i class="el-icon-edit"></i>淇敼
-                    </span>
-                  </el-button>
-                  <el-button
-                    size="medium"
-                    type="text"
-                    @click="handlePreview(scope.row)"
-                  >
-                    <span class="button-text">
-                      <i class="el-icon-view"></i>棰勮
-                    </span>
-                  </el-button>
-                  <el-button
-                    size="medium"
-                    type="text"
-                    @click="handleDelete(scope.row)"
-                  >
-                    <span class="button-textsc">
-                      <i class="el-icon-edit"></i>鍒犻櫎
-                    </span>
-                  </el-button>
-                </template>
-              </el-table-column>
-            </el-table>
-
-            <pagination
-              v-show="total > 0"
-              :total="total"
-              :page.sync="queryParams.pageNum"
-              :limit.sync="queryParams.pageSize"
-              @pagination="getList"
+            <el-table-column
+              label="妯℃澘缂栧彿"
+              align="center"
+              key="templetno"
+              prop="templetno"
+              width="140"
+              :show-overflow-tooltip="true"
             />
-          </el-col>
-        </el-row>
-      </div>
+
+            <el-table-column
+              label="妯℃澘鍚嶇О"
+              align="center"
+              key="templetname"
+              prop="templetname"
+              width="160"
+              :show-overflow-tooltip="true"
+            />
+
+            <el-table-column
+              label="妯℃澘鍐呭"
+              align="center"
+              key="templetcontent"
+              prop="templetcontent"
+              width="280"
+              :show-overflow-tooltip="true"
+            />
+
+            <el-table-column
+              label="閮ㄩ棬鍚嶇О"
+              align="center"
+              key="deptName"
+              prop="deptName"
+              width="120"
+              :show-overflow-tooltip="true"
+            />
+
+            <el-table-column
+              label="鐥呭尯鍚嶇О"
+              align="center"
+              key="wardName"
+              prop="wardName"
+              width="140"
+              :show-overflow-tooltip="true"
+            />
+
+            <el-table-column
+              label="鐢ㄦ埛宸ュ彿"
+              align="center"
+              key="userName"
+              prop="userName"
+              width="120"
+            />
+
+            <el-table-column
+              label="鐢ㄦ埛鏄电О"
+              align="center"
+              key="nickName"
+              prop="nickName"
+              width="120"
+            />
+
+            <el-table-column
+              label="鏄惁涓婁紶"
+              align="center"
+              key="isupload"
+              prop="isupload"
+              width="90"
+            />
+
+            <el-table-column
+              label="涓婁紶鏃堕棿"
+              align="center"
+              key="uploadTime"
+              prop="uploadTime"
+              width="160"
+            />
+
+            <el-table-column
+              label="鎿嶄綔"
+              fixed="right"
+              align="center"
+              width="200"
+              class-name="small-padding fixed-width"
+            >
+              <template slot-scope="scope">
+                <el-button
+                  size="medium"
+                  type="text"
+                  @click="handleUpdate(scope.row)"
+                >
+                  <span class="button-textxg">
+                    <i class="el-icon-edit"></i>淇敼
+                  </span>
+                </el-button>
+                <el-button
+                  size="medium"
+                  type="text"
+                  @click="handlePreview(scope.row)"
+                >
+                  <span class="button-text">
+                    <i class="el-icon-view"></i>棰勮
+                  </span>
+                </el-button>
+                <el-button
+                  size="medium"
+                  type="text"
+                  @click="handleDelete(scope.row)"
+                >
+                  <span class="button-textsc">
+                    <i class="el-icon-edit"></i>鍒犻櫎
+                  </span>
+                </el-button>
+              </template>
+            </el-table-column>
+          </el-table>
+
+          <pagination
+            v-show="total > 0"
+            :total="total"
+            :page.sync="queryParams.pageNum"
+            :limit.sync="queryParams.pageSize"
+            @pagination="getList"
+          />
+        </el-col>
+      </el-row>
     </div>
 
     <!-- 娣诲姞/淇敼鐭俊妯℃澘寮规 -->
@@ -285,36 +233,19 @@
         label-width="100px"
         size="medium"
       >
-        <el-form-item label="妯℃澘鍒嗙被" prop="categoryid">
-          <el-select
-            v-model="form.categoryid"
-            placeholder="璇烽�夋嫨妯℃澘鍒嗙被"
-            clearable
-            style="width: 100%"
-          >
-            <el-option
-              v-for="item in categoryOptions"
-              :key="item.id"
-              :label="item.name"
-              :value="item.id"
-            >
-            </el-option>
-          </el-select>
+        <el-form-item label="妯℃澘缂栧彿" prop="templetno">
+          <el-input
+            v-model="form.templetno"
+            placeholder="璇疯緭鍏ユā鏉跨紪鍙�"
+            maxlength="50"
+          />
         </el-form-item>
 
         <el-form-item label="妯℃澘鍚嶇О" prop="templetname">
           <el-input
             v-model="form.templetname"
             placeholder="璇疯緭鍏ユā鏉垮悕绉�"
-            maxlength="50"
-          />
-        </el-form-item>
-
-        <el-form-item label="鐭俊绛惧悕" prop="signature">
-          <el-input
-            v-model="form.signature"
-            placeholder="璇疯緭鍏ョ煭淇$鍚嶏紙濡傦細銆愪附姘翠汉姘戝尰闄€�戯級"
-            maxlength="20"
+            maxlength="100"
           />
         </el-form-item>
 
@@ -329,118 +260,77 @@
           />
         </el-form-item>
 
-        <el-form-item label="妯℃澘绫诲瀷" prop="templettype">
+        <el-form-item label="绉戝" prop="deptCode">
           <el-select
-            v-model="form.templettype"
-            placeholder="璇烽�夋嫨妯℃澘绫诲瀷"
+            v-model="form.deptCode"
+            placeholder="璇烽�夋嫨绉戝"
+            filterable
+            clearable
             style="width: 100%"
+            @change="handleDeptChange"
           >
             <el-option
-              v-for="item in typeOptions"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
-            >
-            </el-option>
+              v-for="dept in departmentOptions"
+              :key="dept.value"
+              :label="dept.label"
+              :value="dept.value"
+            />
           </el-select>
         </el-form-item>
 
-        <el-form-item label="鍚敤鐘舵��" prop="isenable">
-          <el-radio-group v-model="form.isenable">
-            <el-radio
-              v-for="item in statusOptions"
-              :key="item.value"
-              :label="item.value"
-            >{{ item.label }}</el-radio>
-          </el-radio-group>
-        </el-form-item>
-
-        <el-form-item label="澶囨敞" prop="remark">
-          <el-input
-            v-model="form.remark"
-            type="textarea"
-            :rows="3"
-            placeholder="璇疯緭鍏ュ娉ㄤ俊鎭�"
-            maxlength="200"
-            show-word-limit
-          />
+        <el-form-item label="鐥呭尯" prop="wardCode">
+          <el-select
+            v-model="form.wardCode"
+            placeholder="璇烽�夋嫨鐥呭尯"
+            filterable
+            clearable
+            style="width: 100%"
+            @change="handleWardChange"
+          >
+            <el-option
+              v-for="ward in wardOptions"
+              :key="ward.value"
+              :label="ward.label"
+              :value="ward.value"
+            />
+          </el-select>
         </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
         <el-button @click="cancelForm">鍙� 娑�</el-button>
-        <el-button type="primary" @click="submitForm" :loading="submitLoading">纭� 瀹�</el-button>
+        <el-button type="primary" @click="submitForm" :loading="submitLoading"
+          >纭� 瀹�</el-button
+        >
       </div>
     </el-dialog>
 
     <!-- 妯℃澘棰勮寮规 -->
-    <el-dialog
-      title="鐭俊妯℃澘棰勮"
-      :visible.sync="previewVisible"
-      width="40%"
-    >
+    <el-dialog title="鐭俊妯℃澘棰勮" :visible.sync="previewVisible" width="40%">
       <div class="preview-box">
         <div class="preview-item">
+          <div class="preview-label">妯℃澘缂栧彿锛�</div>
+          <div class="preview-value">{{ previewData.templetno || "-" }}</div>
+        </div>
+        <div class="preview-item">
           <div class="preview-label">妯℃澘鍚嶇О锛�</div>
-          <div class="preview-value">{{ previewData.templetname }}</div>
+          <div class="preview-value">{{ previewData.templetname || "-" }}</div>
         </div>
         <div class="preview-item">
-          <div class="preview-label">鐭俊绛惧悕锛�</div>
-          <div class="preview-value">{{ previewData.signature }}</div>
+          <div class="preview-label">閮ㄩ棬鍚嶇О锛�</div>
+          <div class="preview-value">{{ previewData.deptName || "-" }}</div>
         </div>
         <div class="preview-item">
-          <div class="preview-label">妯℃澘绫诲瀷锛�</div>
-          <div class="preview-value">
-            <dict-tag :options="typeOptions" :value="previewData.templettype" />
-          </div>
+          <div class="preview-label">鐥呭尯鍚嶇О锛�</div>
+          <div class="preview-value">{{ previewData.wardName || "-" }}</div>
         </div>
-        <div class="preview-item">
-          <div class="preview-label">鍚敤鐘舵�侊細</div>
-          <div class="preview-value">
-            <dict-tag :options="statusOptions" :value="previewData.isenable" />
-          </div>
-        </div>
+
         <el-divider></el-divider>
         <div class="preview-content">
           <div class="preview-content-label">鐭俊鍐呭棰勮锛�</div>
           <div class="preview-content-box">
-            {{ previewData.templetcontent || '鏆傛棤鍐呭' }}
+            {{ previewData.templetcontent || "鏆傛棤鍐呭" }}
           </div>
         </div>
-        <div class="preview-item" v-if="previewData.remark">
-          <div class="preview-label">澶囨敞锛�</div>
-          <div class="preview-value">{{ previewData.remark }}</div>
-        </div>
-      </div>
-    </el-dialog>
-
-    <!-- 娣诲姞绫诲埆寮规 -->
-    <el-dialog title="绫诲埆缂栬緫" width="30%" :visible.sync="dialogFormVisible">
-      <div style="text-align: center; margin-bottom: 20px">
-        <el-radio-group v-model="radio">
-          <el-radio-button label="涓诲垎绫�"></el-radio-button>
-          <el-radio-button label="瀛愬垎绫�"></el-radio-button>
-        </el-radio-group>
-      </div>
-      <el-divider></el-divider>
-      <el-form :model="classifyform">
-        <el-form-item label="璇烽�夋嫨妯℃澘澶х被" v-if="radio == '瀛愬垎绫�'">
-          <el-select v-model="classifyform.pid" placeholder="璇烽�夋嫨">
-            <el-option
-              v-for="item in deptOptions"
-              :key="item.id"
-              :label="item.name"
-              :value="item.id"
-            >
-            </el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="璇疯緭鍏ョ被鍒悕绉�">
-          <el-input v-model="classifyform.name" autocomplete="off"></el-input>
-        </el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button @click="getDeptTree()">鍙� 娑�</el-button>
-        <el-button type="primary" @click="submitsidecolumn">纭� 瀹�</el-button>
       </div>
     </el-dialog>
   </div>
@@ -484,35 +374,10 @@
       previewVisible: false,
       // 棰勮鏁版嵁
       previewData: {},
-      // 绫诲埆寮规
-      dialogFormVisible: false,
-      // 绫诲埆form
-      classifyform: {},
-      // 涓�/瀛愬垎绫�
-      radio: "涓诲垎绫�",
-      // 绫诲埆鎼滅储
-      sidecolumnval: "",
-      // 鏍戞暟鎹�
-      deptOptions: [],
-      // 鍒嗙被涓嬫媺閫夐」
-      categoryOptions: [],
-      // 鏍憄rops
-      defaultProps: {
-        children: "children",
-        label: "name",
-      },
-      // 鐘舵�侀�夐」
-      statusOptions: [
-        { label: "鍚敤", value: "0" },
-        { label: "鍋滅敤", value: "1" },
-      ],
-      // 绫诲瀷閫夐」
-      typeOptions: [
-        { label: "楠岃瘉鐮�", value: "0" },
-        { label: "閫氱煡", value: "1" },
-        { label: "钀ラ攢", value: "2" },
-        { label: "闅忚", value: "3" },
-      ],
+      // 绉戝閫夐」
+      departmentOptions: [],
+      // 鐥呭尯閫夐」
+      wardOptions: [],
       // 鏌ヨ鍙傛暟
       queryParams: {
         pageNum: 1,
@@ -528,24 +393,40 @@
         templetcontent: [
           { required: true, message: "璇疯緭鍏ユā鏉垮唴瀹�", trigger: "blur" },
         ],
-        signature: [
-          { required: true, message: "璇疯緭鍏ョ煭淇$鍚�", trigger: "blur" },
-        ],
-        isenable: [
-          { required: true, message: "璇烽�夋嫨鍚敤鐘舵��", trigger: "change" },
-        ],
       },
     };
   },
-  watch: {
-    // 鐩戝惉绫诲埆鎼滅储
-    sidecolumnval(val) {
-      this.$refs.tree.filter(val);
+  computed: {
+    // 浠� store getters 鑾峰彇绉戝閫夐」
+    computedDepartmentOptions() {
+      if (this.$store.getters.belongDepts) {
+        return this.$store.getters.belongDepts.map((dept) => ({
+          label: dept.deptName,
+          value: dept.deptCode,
+        }));
+      }
+      return [];
+    },
+    // 浠� store getters 鑾峰彇鐥呭尯閫夐」
+    computedWardOptions() {
+      console.log(
+        this.$store.getters.belongWards,
+        "this.$store.getters.belongWards"
+      );
+
+      if (this.$store.getters.belongWards) {
+        return this.$store.getters.belongWards.map((ward) => ({
+          label: ward.districtName,
+          value: ward.districtCode,
+        }));
+      }
+      return [];
     },
   },
   created() {
     this.getList();
-    this.getDeptTree();
+    this.departmentOptions = this.computedDepartmentOptions;
+    this.wardOptions = this.computedWardOptions;
   },
   methods: {
     /** 鏌ヨ鍒楄〃 */
@@ -581,14 +462,7 @@
     handleAdd() {
       this.dialogTitle = "鏂板鐭俊妯℃澘";
       this.dialogVisible = true;
-      this.form = {
-        isenable: "0",
-        templettype: "1",
-      };
-      // 濡傛灉鏈夋爲閫変腑鍒嗙被锛岄粯璁ゅ甫鍏�
-      if (this.queryParams.categoryid) {
-        this.form.categoryid = this.queryParams.categoryid;
-      }
+      this.form = {};
       this.$nextTick(() => {
         if (this.$refs.formRef) {
           this.$refs.formRef.clearValidate();
@@ -618,6 +492,30 @@
       getSmstemplet(templetid).then((response) => {
         this.previewData = response.data;
       });
+    },
+
+    /** 绉戝閫夋嫨鍙樺寲 - 鑷姩濉厖绉戝鍚嶇О */
+    handleDeptChange(value) {
+      const selectedDept = this.departmentOptions.find(
+        (dept) => dept.value === value
+      );
+      if (selectedDept) {
+        this.form.deptName = selectedDept.label;
+      } else {
+        this.form.deptName = "";
+      }
+    },
+
+    /** 鐥呭尯閫夋嫨鍙樺寲 - 鑷姩濉厖鐥呭尯鍚嶇О */
+    handleWardChange(value) {
+      const selectedWard = this.wardOptions.find(
+        (ward) => ward.value === value
+      );
+      if (selectedWard) {
+        this.form.wardName = selectedWard.label;
+      } else {
+        this.form.wardName = "";
+      }
     },
 
     /** 鎻愪氦琛ㄥ崟 */
@@ -677,260 +575,21 @@
         })
         .catch(() => {});
     },
-
-    // 琛ㄥ崟閲嶇疆
-    reset() {
-      this.form = {
-        templetid: undefined,
-        templetname: undefined,
-        signature: undefined,
-        templetcontent: undefined,
-        templettype: "1",
-        isenable: "0",
-        categoryid: undefined,
-        remark: undefined,
-      };
-      this.resetForm("form");
-    },
-
-    /** 鏌ヨ鍒嗙被鏍� */
-    getDeptTree() {
-      // 妯℃嫙鍒嗙被鏍戞暟鎹� - 瀹為檯椤圭洰涓簲鏇挎崲涓虹湡瀹濧PI
-      this.deptOptions = [
-        {
-          id: 1,
-          name: "闅忚鐭俊",
-          children: [
-            { id: 11, name: "鍑洪櫌闅忚" },
-            { id: 12, name: "澶嶈瘖鎻愰啋" },
-            { id: 13, name: "鍋ュ悍瀹f暀" },
-          ],
-        },
-        {
-          id: 2,
-          name: "閫氱煡鐭俊",
-          children: [
-            { id: 21, name: "棰勭害閫氱煡" },
-            { id: 22, name: "鎶ュ憡閫氱煡" },
-          ],
-        },
-        {
-          id: 3,
-          name: "楠岃瘉鐮�",
-          children: [
-            { id: 31, name: "鐧诲綍楠岃瘉" },
-            { id: 32, name: "娉ㄥ唽楠岃瘉" },
-          ],
-        },
-      ];
-      this.categoryOptions = this.flattenTree(this.deptOptions);
-    },
-
-    /** 鎵佸钩鍖栨爲鏁版嵁鐢ㄤ簬涓嬫媺閫夋嫨 */
-    flattenTree(tree) {
-      let result = [];
-      tree.forEach((item) => {
-        result.push({ id: item.id, name: item.name });
-        if (item.children && item.children.length) {
-          result = result.concat(item.children);
-        }
-      });
-      return result;
-    },
-
-    /** 绛涢�夎妭鐐� */
-    filterNode(value, data) {
-      if (!value) return true;
-      return data.name.indexOf(value) !== -1;
-    },
-
-    /** 鐐瑰嚮鏍戣妭鐐� */
-    handleNodeClick(data) {
-      if (data.children && data.children.length) return;
-      this.queryParams.categoryid = data.id;
-      this.getList();
-    },
-
-    // 鍒嗙被鏍�-----------------------
-    /** 鏂板缓鍒嗙被 */
-    Newcategory() {
-      this.classifyform = {};
-      this.radio = "涓诲垎绫�";
-      this.dialogFormVisible = true;
-    },
-
-    /** 淇敼鍒嗙被 */
-    altertag(node, data) {
-      this.dialogFormVisible = true;
-      if (data.children && data.children.length) {
-        this.radio = "涓诲垎绫�";
-      } else {
-        this.radio = "瀛愬垎绫�";
-      }
-      this.classifyform = { ...data };
-    },
-
-    /** 鎻愪氦鍒嗙被 */
-    submitsidecolumn() {
-      if (this.classifyform.id) {
-        // 淇敼鍒嗙被 - 瀹為檯椤圭洰涓簲鏇挎崲涓虹湡瀹濧PI
-        const index = this.deptOptions.findIndex(
-          (obj) => obj.id === this.classifyform.id
-        );
-        if (index > -1) {
-          this.deptOptions[index].name = this.classifyform.name;
-          this.$set(this.deptOptions, index, this.deptOptions[index]);
-        }
-        this.$modal.msgSuccess("淇敼鎴愬姛");
-        this.dialogFormVisible = false;
-        return;
-      }
-
-      if (this.radio === "涓诲垎绫�" && this.classifyform.name) {
-        // 鏂板涓诲垎绫�
-        const newId = Math.max(...this.deptOptions.map((d) => d.id), 0) + 1;
-        this.deptOptions.push({
-          id: newId,
-          name: this.classifyform.name,
-          children: [],
-        });
-        this.$modal.msgSuccess("鏂板鎴愬姛");
-        this.dialogFormVisible = false;
-      } else if (
-        this.radio === "瀛愬垎绫�" &&
-        this.classifyform.pid &&
-        this.classifyform.name
-      ) {
-        // 鏂板瀛愬垎绫�
-        const parent = this.deptOptions.find(
-          (obj) => obj.id === this.classifyform.pid
-        );
-        if (parent) {
-          const newChildId =
-            Math.max(...parent.children.map((c) => c.id), parent.id * 10) + 1;
-          parent.children.push({
-            id: newChildId,
-            name: this.classifyform.name,
-          });
-        }
-        this.$modal.msgSuccess("鏂板鎴愬姛");
-        this.dialogFormVisible = false;
-      } else {
-        this.$modal.msgError("璇峰~鍐欏畬鏁翠俊鎭�");
-      }
-      this.classifyform = {};
-    },
-
-    /** 鍒犻櫎鍒嗙被 */
-    remove(node, data) {
-      if (data.children && data.children.length) {
-        this.$modal
-          .confirm(
-            '鏄惁纭鍒犻櫎涓�绾у垎绫�"' + data.name + '"锛熷垹闄ゅ悗鍏朵笅鍒嗙被灏嗘棤娉曚娇鐢�'
-          )
-          .then(() => {
-            const index = this.deptOptions.findIndex(
-              (obj) => obj.id === data.id
-            );
-            if (index > -1) {
-              this.deptOptions.splice(index, 1);
-            }
-            this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
-          })
-          .catch(() => {});
-      } else {
-        this.$modal
-          .confirm('鏄惁纭鍒犻櫎鍒嗙被椤逛负"' + data.name + '"鐨勬暟鎹」锛�')
-          .then(() => {
-            this.deptOptions.forEach((parent) => {
-              const idx = parent.children.findIndex(
-                (child) => child.id === data.id
-              );
-              if (idx > -1) {
-                parent.children.splice(idx, 1);
-              }
-            });
-            this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
-          })
-          .catch(() => {});
-      }
-    },
   },
 };
 </script>
 
 <style lang="scss" scoped>
 .smsConfig-management {
-  display: flex;
+  padding: 20px;
 }
 
-.sidecolumn {
-  width: 380px;
-  min-height: 100vh;
-  text-align: center;
-  margin-top: 20px;
-  margin: 20px;
+.main-content {
   padding: 30px;
   background: #fff;
   border: 1px solid #dcdfe6;
   -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
     0 0 6px 0 rgba(0, 0, 0, 0.04);
-
-  .sidecolumn-top {
-    display: flex;
-    justify-content: space-between;
-    .top-wj {
-      font-size: 20px;
-    }
-    .top-tj {
-      font-size: 18px;
-      color: rgb(0, 89, 255);
-      cursor: pointer;
-    }
-  }
-
-  /* 鏍稿績锛氳缃浐瀹氬搴︼紝瓒呭嚭閮ㄥ垎鏄剧ず鐪佺暐鍙� */
-  .tree-node-label {
-    display: inline-block;
-    max-width: 160px;
-    overflow: hidden;
-    white-space: nowrap;
-    text-overflow: ellipsis;
-    vertical-align: bottom;
-  }
-
-  /* 鍙�夛細榧犳爣鎮仠鏃跺彇娑堥檺鍒讹紝鏄剧ず鍏ㄦ枃 */
-  .custom-tree-node:hover .tree-node-label {
-    max-width: none;
-    white-space: normal;
-    overflow: visible;
-  }
-
-  .center-ss {
-    margin-top: 30px;
-    .input-with-select {
-      height: 40px !important;
-    }
-  }
-
-  .bottom-fl {
-    margin-top: 30px;
-    display: center !important;
-  }
-}
-
-.leftvlue {
-  width: 80%;
-  margin-top: 20px;
-  padding: 30px;
-  background: #ffff;
-  border: 1px solid #dcdfe6;
-  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
-    0 0 6px 0 rgba(0, 0, 0, 0.04);
-
-  .mulsz {
-    font-size: 20px;
-  }
 }
 
 // 棰勮寮规鏍峰紡
@@ -980,46 +639,8 @@
   }
 }
 
-// 娣卞害閫夋嫨鍣�
 ::v-deep .el-input--medium .el-input__inner {
   height: 40px !important;
-}
-
-::v-deep .el-tree-node__content {
-  display: -webkit-box;
-  display: -ms-flexbox;
-  display: flex;
-  -webkit-box-align: center;
-  -ms-flex-align: center;
-  align-items: center;
-  height: 46px;
-  font-size: 20px;
-  cursor: pointer;
-}
-
-::v-deep .el-tree {
-  position: relative;
-  cursor: default;
-  border-radius: 5px;
-  background: #eff8fe;
-  color: #606266;
-  border: 1px solid #bbe1fa;
-  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
-    0 0 6px 0 rgba(0, 0, 0, 0.04);
-}
-
-::v-deep
-  .el-tree--highlight-current
-  .el-tree-node.is-current
-  > .el-tree-node__content {
-  background-color: #7799fb;
-  color: #fff;
-}
-
-::v-deep .el-button--mini.is-circle {
-  padding: 7px;
-  margin: 0;
-  color: red;
 }
 
 // 鎸夐挳鏂囧瓧棰滆壊

--
Gitblit v1.9.3