From 71a9eef518f2f2f1a1eb2fb90f2eb8ab7b155bc8 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期四, 08 一月 2026 14:57:56 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_天津军泰伟业' into dev_天津军泰伟业

---
 src/views/equipmentManagement/spareParts/index.vue |  701 ++++++++++++++++++++++++++++++----------------------------
 1 files changed, 363 insertions(+), 338 deletions(-)

diff --git a/src/views/equipmentManagement/spareParts/index.vue b/src/views/equipmentManagement/spareParts/index.vue
index f91d76f..a971d36 100644
--- a/src/views/equipmentManagement/spareParts/index.vue
+++ b/src/views/equipmentManagement/spareParts/index.vue
@@ -2,91 +2,114 @@
   <div class="spare-part-category">
     <div class="table_list">
       <div class="actions">
-        <el-text class="mx-1" size="large">璁惧鍒嗙被</el-text>
+        <el-text class="mx-1"
+                 size="large">璁惧鍒嗙被</el-text>
         <div>
-          <el-button @click="fetchTreeData" :loading="loading">鍒锋柊</el-button>
-          <el-button type="primary" @click="addCategory" >鏂板</el-button>
+          <el-button @click="fetchTreeData"
+                     :loading="loading">鍒锋柊</el-button>
+          <el-button type="primary"
+                     @click="addCategory">鏂板</el-button>
         </div>
       </div>
-      <el-table
-        v-loading="loading"
-        :data="renderTableData"
-        style="width: 100%; margin-top: 10px;"
-        border
-        row-key="id"
-        :tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
-      >
-        <el-table-column prop="name" label="鍒嗙被鍚嶇О" width="450">
+      <el-table v-loading="loading"
+                :data="renderTableData"
+                style="width: 100%; margin-top: 10px;"
+                border
+                row-key="id"
+                :tree-props="{ children: 'children', hasChildren: 'hasChildren' }">
+        <el-table-column prop="name"
+                         label="鍒嗙被鍚嶇О"
+                         width="450">
           <template #default="{ row }">
             <span :style="{ paddingLeft: getIndentation(row) + 'px' }">
               {{ row.name }}
             </span>
           </template>
         </el-table-column>
-        <el-table-column prop="sparePartsNo" label="鍒嗙被缂栧彿" width="200"></el-table-column>
-        <el-table-column prop="status" label="鐘舵��" width="100">
+        <el-table-column prop="sparePartsNo"
+                         label="鍒嗙被缂栧彿"
+                         width="200"></el-table-column>
+        <el-table-column prop="status"
+                         label="鐘舵��"
+                         width="100">
           <template #default="{ row }">
-            <el-tag type="success" size="small">{{ row.status }}</el-tag>
+            <el-tag type="success"
+                    size="small">{{ row.status }}</el-tag>
           </template>
         </el-table-column>
-        <el-table-column prop="description" label="鎻忚堪" win-width="330"></el-table-column>
-        <el-table-column label="鎿嶄綔" width="180" fixed="right">
+        <el-table-column prop="description"
+                         label="鎻忚堪"
+                         win-width="330"></el-table-column>
+        <el-table-column label="鎿嶄綔"
+                         width="180"
+                         fixed="right">
           <template #default="{ row }">
-            <el-button
-              type="text"
-              size="small"
-              @click="() => editCategory(row)"
-              :disabled="loading"
-            >
+            <el-button type="text"
+                       size="small"
+                       @click="() => editCategory(row)"
+                       :disabled="loading">
               缂栬緫
             </el-button>
-            <el-button
-              type="text"
-              size="small"
-              @click="() => deleteCategory(row.id)"
-              style="color: #f56c6c;"
-              :disabled="loading"
-            >
+            <el-button type="text"
+                       size="small"
+                       @click="() => deleteCategory(row.id)"
+                       style="color: #f56c6c;"
+                       :disabled="loading">
               鍒犻櫎
             </el-button>
           </template>
         </el-table-column>
       </el-table>
     </div>
-    <el-dialog title="鍒嗙被绠$悊" v-model="dialogVisible" width="60%">
-      <el-form :model="form" :rules="rules" ref="formRef" label-width="100px">
-        <el-form-item label="鍒嗙被鍚嶇О" prop="name">
+    <el-dialog title="鍒嗙被绠$悊"
+               v-model="dialogVisible"
+               width="60%">
+      <el-form :model="form"
+               :rules="rules"
+               ref="formRef"
+               label-width="100px">
+        <el-form-item label="鍒嗙被鍚嶇О"
+                      prop="name">
           <el-input v-model="form.name"></el-input>
         </el-form-item>
-        <el-form-item label="鍒嗙被缂栧彿" prop="sparePartsNo">
+        <el-form-item label="鍒嗙被缂栧彿"
+                      prop="sparePartsNo">
           <el-input v-model="form.sparePartsNo"></el-input>
         </el-form-item>
-        <el-form-item label="鐘舵��" prop="status">
-          <el-select v-model="form.status" placeholder="璇烽�夋嫨鐘舵��">
-            <el-option label="姝e父" value="姝e父"></el-option>
-            <el-option label="绂佺敤" value="绂佺敤"></el-option>
+        <el-form-item label="鐘舵��"
+                      prop="status">
+          <el-select v-model="form.status"
+                     placeholder="璇烽�夋嫨鐘舵��">
+            <el-option label="姝e父"
+                       value="姝e父"></el-option>
+            <el-option label="绂佺敤"
+                       value="绂佺敤"></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="鎻忚堪" prop="description">
+        <el-form-item label="鎻忚堪"
+                      prop="description">
           <el-input v-model="form.description"></el-input>
         </el-form-item>
-        <el-form-item label="涓婄骇鍒嗙被" prop="parentId">
-          <el-select v-model="form.parentId" placeholder="璇烽�夋嫨涓婄骇鍒嗙被">
-            <el-option label="鏃犱笂绾у垎绫�" :value="null"></el-option>
-            <el-option
-              v-for="(item, index) in categories"
-              :key="index"
-              :label="item.name"
-              :value="item.id"
-              
-            ></el-option>
+        <el-form-item label="涓婄骇鍒嗙被"
+                      prop="parentId">
+          <el-select v-model="form.parentId"
+                     placeholder="璇烽�夋嫨涓婄骇鍒嗙被">
+            <el-option label="鏃犱笂绾у垎绫�"
+                       :value="null"></el-option>
+            <el-option v-for="(item, index) in categories"
+                       :key="index"
+                       :label="item.name"
+                       :value="item.id"></el-option>
           </el-select>
         </el-form-item>
       </el-form>
       <template #footer>
         <span class="dialog-footer">
-          <el-button @click="dialogVisible = false" :disabled="formLoading">鍙栨秷</el-button>
-          <el-button type="primary" @click="submitForm" :loading="formLoading">纭畾</el-button>
+          <el-button type="primary"
+                     @click="submitForm"
+                     :loading="formLoading">纭畾</el-button>
+          <el-button @click="dialogVisible = false"
+                     :disabled="formLoading">鍙栨秷</el-button>
         </span>
       </template>
     </el-dialog>
@@ -94,324 +117,326 @@
 </template>
 
 <script setup>
-import { ref, computed, onMounted, reactive, watch } from 'vue';
-import { ElMessage, ElMessageBox } from 'element-plus';
-import { getSparePartsList, addSparePart, editSparePart, delSparePart,getSparePartsTree } from "@/api/equipmentManagement/spareParts";
+  import { ref, computed, onMounted, reactive, watch } from "vue";
+  import { ElMessage, ElMessageBox } from "element-plus";
+  import {
+    getSparePartsList,
+    addSparePart,
+    editSparePart,
+    delSparePart,
+    getSparePartsTree,
+  } from "@/api/equipmentManagement/spareParts";
 
-// 鍔犺浇鐘舵��
-const loading = ref(false);
-const formLoading = ref(false);
-// 瀵硅瘽妗嗘樉绀虹姸鎬�
-const dialogVisible = ref(false);
-// 缂栬緫 ID
-const editId = ref(null);
-// 琛ㄦ牸鏁版嵁
-const categories = ref([]);
-// 娓叉煋鐢ㄧ殑琛ㄦ牸鏁版嵁
-// const renderTableData = computed(() => buildTree(categories.value));
-const renderTableData = ref([]);
-const operationType = ref('add')
-// 琛ㄥ崟寮曠敤
-const formRef = ref(null);
-// 琛ㄥ崟鏁版嵁
-const form = reactive({
-  id:'',
-  name: '',
-  sparePartsNo: '',
-  status: '',
-  description: '',
-  parentId: null
-});
-
-// 琛ㄥ崟楠岃瘉瑙勫垯
-const rules = reactive({
-  name: [
-    { required: true, message: '璇疯緭鍏ュ垎绫诲悕绉�', trigger: 'blur' }
-  ],
-  sparePartsNo: [
-    { required: true, message: '璇疯緭鍏ュ垎绫荤紪鍙�', trigger: 'blur' }
-  ],
-  status: [
-    { required: true, message: '璇烽�夋嫨鐘舵��', trigger: 'change' }
-  ]
-});
-// 鑾峰彇缂╄繘閲�
-const getIndentation = (row) => {
-  // 杩欓噷绠�鍗曡繑鍥� 20锛屽彲鏍规嵁瀹為檯闇�姹傚疄鐜板眰绾х缉杩涢�昏緫
-  return 20; 
-};
-// 瀹氫箟 buildTree 鍑芥暟
-const buildTree = (flatData) => {
-  const map = {};
-  const result = [];
-  if(flatData){
-    return result;
-  }
-  flatData.forEach(item => {
-    map[item.id] = { ...item, children: [] };
+  // 鍔犺浇鐘舵��
+  const loading = ref(false);
+  const formLoading = ref(false);
+  // 瀵硅瘽妗嗘樉绀虹姸鎬�
+  const dialogVisible = ref(false);
+  // 缂栬緫 ID
+  const editId = ref(null);
+  // 琛ㄦ牸鏁版嵁
+  const categories = ref([]);
+  // 娓叉煋鐢ㄧ殑琛ㄦ牸鏁版嵁
+  // const renderTableData = computed(() => buildTree(categories.value));
+  const renderTableData = ref([]);
+  const operationType = ref("add");
+  // 琛ㄥ崟寮曠敤
+  const formRef = ref(null);
+  // 琛ㄥ崟鏁版嵁
+  const form = reactive({
+    id: "",
+    name: "",
+    sparePartsNo: "",
+    status: "",
+    description: "",
+    parentId: null,
   });
-  flatData.forEach(item => {
-    if (item.parentId === null || !map[item.parentId]) {
-      result.push(map[item.id]);
-    } else {
-      map[item.parentId].children.push(map[item.id]);
-    }
+
+  // 琛ㄥ崟楠岃瘉瑙勫垯
+  const rules = reactive({
+    name: [{ required: true, message: "璇疯緭鍏ュ垎绫诲悕绉�", trigger: "blur" }],
+    sparePartsNo: [
+      { required: true, message: "璇疯緭鍏ュ垎绫荤紪鍙�", trigger: "blur" },
+    ],
+    status: [{ required: true, message: "璇烽�夋嫨鐘舵��", trigger: "change" }],
   });
-  return result;
-};
-//鑾峰彇鏍戝舰缁撴瀯
-const fetchTreeData = async () => {
-  fetchCategories();
-  try {
-    const res = await getSparePartsTree();
-    if (res.code === 200) {
-      renderTableData.value = res.data;
-    } else {
-      ElMessage.error(res.message || '鑾峰彇鍒嗙被鍒楄〃澶辫触');
+  // 鑾峰彇缂╄繘閲�
+  const getIndentation = row => {
+    // 杩欓噷绠�鍗曡繑鍥� 20锛屽彲鏍规嵁瀹為檯闇�姹傚疄鐜板眰绾х缉杩涢�昏緫
+    return 20;
+  };
+  // 瀹氫箟 buildTree 鍑芥暟
+  const buildTree = flatData => {
+    const map = {};
+    const result = [];
+    if (flatData) {
+      return result;
     }
-  }catch (error) {
-    ElMessage.error('鑾峰彇鍒嗙被鍒楄〃澶辫触');
-  }
-}
-
-// 鑾峰彇鍒嗙被鍒楄〃
-const fetchCategories = async () => {
-  loading.value = true;
-  try {
-    const res = await getSparePartsList();
-    if (res.code === 200) {
-      categories.value = res.data.records;
-    } else {
-      ElMessage.error(res.message || '鑾峰彇鍒嗙被鍒楄〃澶辫触');
-    }
-  } catch (error) {
-    ElMessage.error('鑾峰彇鍒嗙被鍒楄〃澶辫触');
-  } finally {
-    loading.value = false;
-  }
-};
-
-// 鏂板鍒嗙被
-const addCategory = () => {
-  form.id = '';
-  form.name = '';
-  form.sparePartsNo = '';
-  form.status = '';
-  form.description = '';
-  form.parentId = null;
-  operationType.value = 'add'
-  dialogVisible.value = true;
-  console.log('dialogVisible 鏇存柊涓�', dialogVisible.value);
-};
-
-// 缂栬緫鍒嗙被
-const editCategory = (row) => {
-  Object.assign(form, row);
-  operationType.value = 'edit'
-  dialogVisible.value = true;
-};
-
-// 鍒犻櫎鍒嗙被
-const deleteCategory = async (id) => {
-  try {
-    await ElMessageBox.confirm('姝ゆ搷浣滃皢姘镐箙鍒犻櫎璇ュ垎绫伙紝鏄惁缁х画?', '鎻愮ず', {
-      confirmButtonText: '纭畾',
-      cancelButtonText: '鍙栨秷',
-      type: 'warning'
+    flatData.forEach(item => {
+      map[item.id] = { ...item, children: [] };
     });
-    loading.value = true;
-    const res = await delSparePart(id);
-    if (res.code === 200) {
-      ElMessage.success('鍒犻櫎鎴愬姛');
-      fetchTreeData();
-    } else {
-      ElMessage.error(res.message || '鍒犻櫎澶辫触');
-    }
-  } catch (error) {
-    if (error !== 'cancel') {
-      ElMessage.error('鍒犻櫎澶辫触');
-    }
-  } finally {
-    loading.value = false;
-  }
-};
-
-// 鎻愪氦琛ㄥ崟
-const submitForm = async () => {
-  if (!formRef.value) return;
-  try {
-    await formRef.value.validate();
-    formLoading.value = true;
-    if (operationType.value === 'edit') {
-      let res = await editSparePart(form);
-      if (res.code === 200) {
-      ElMessage.success('缂栬緫鎴愬姛');
-      dialogVisible.value = false;
-      fetchTreeData();
-    }
-    } else {
-      let res = await addSparePart(form);
-        if (res.code === 200) {
-        ElMessage.success('缂栬緫鎴愬姛');
-        dialogVisible.value = false;
-        fetchTreeData();
+    flatData.forEach(item => {
+      if (item.parentId === null || !map[item.parentId]) {
+        result.push(map[item.id]);
+      } else {
+        map[item.parentId].children.push(map[item.id]);
       }
+    });
+    return result;
+  };
+  //鑾峰彇鏍戝舰缁撴瀯
+  const fetchTreeData = async () => {
+    fetchCategories();
+    try {
+      const res = await getSparePartsTree();
+      if (res.code === 200) {
+        renderTableData.value = res.data;
+      } else {
+        ElMessage.error(res.message || "鑾峰彇鍒嗙被鍒楄〃澶辫触");
+      }
+    } catch (error) {
+      ElMessage.error("鑾峰彇鍒嗙被鍒楄〃澶辫触");
     }
-  } catch (error) {
-    ElMessage.error('璇峰~鍐欏畬鏁磋〃鍗曚俊鎭�');
-  } finally {
-    formLoading.value = false;
-  }
-};
+  };
 
-// 缁勪欢鎸傝浇鏃惰幏鍙栧垎绫诲垪琛�
-onMounted(() => {
-  fetchCategories();
-  fetchTreeData();
-});
+  // 鑾峰彇鍒嗙被鍒楄〃
+  const fetchCategories = async () => {
+    loading.value = true;
+    try {
+      const res = await getSparePartsList();
+      if (res.code === 200) {
+        categories.value = res.data.records;
+      } else {
+        ElMessage.error(res.message || "鑾峰彇鍒嗙被鍒楄〃澶辫触");
+      }
+    } catch (error) {
+      ElMessage.error("鑾峰彇鍒嗙被鍒楄〃澶辫触");
+    } finally {
+      loading.value = false;
+    }
+  };
+
+  // 鏂板鍒嗙被
+  const addCategory = () => {
+    form.id = "";
+    form.name = "";
+    form.sparePartsNo = "";
+    form.status = "";
+    form.description = "";
+    form.parentId = null;
+    operationType.value = "add";
+    dialogVisible.value = true;
+    console.log("dialogVisible 鏇存柊涓�", dialogVisible.value);
+  };
+
+  // 缂栬緫鍒嗙被
+  const editCategory = row => {
+    Object.assign(form, row);
+    operationType.value = "edit";
+    dialogVisible.value = true;
+  };
+
+  // 鍒犻櫎鍒嗙被
+  const deleteCategory = async id => {
+    try {
+      await ElMessageBox.confirm("姝ゆ搷浣滃皢姘镐箙鍒犻櫎璇ュ垎绫伙紝鏄惁缁х画?", "鎻愮ず", {
+        confirmButtonText: "纭畾",
+        cancelButtonText: "鍙栨秷",
+        type: "warning",
+      });
+      loading.value = true;
+      const res = await delSparePart(id);
+      if (res.code === 200) {
+        ElMessage.success("鍒犻櫎鎴愬姛");
+        fetchTreeData();
+      } else {
+        ElMessage.error(res.message || "鍒犻櫎澶辫触");
+      }
+    } catch (error) {
+      if (error !== "cancel") {
+        ElMessage.error("鍒犻櫎澶辫触");
+      }
+    } finally {
+      loading.value = false;
+    }
+  };
+
+  // 鎻愪氦琛ㄥ崟
+  const submitForm = async () => {
+    if (!formRef.value) return;
+    try {
+      await formRef.value.validate();
+      formLoading.value = true;
+      if (operationType.value === "edit") {
+        let res = await editSparePart(form);
+        if (res.code === 200) {
+          ElMessage.success("缂栬緫鎴愬姛");
+          dialogVisible.value = false;
+          fetchTreeData();
+        }
+      } else {
+        let res = await addSparePart(form);
+        if (res.code === 200) {
+          ElMessage.success("缂栬緫鎴愬姛");
+          dialogVisible.value = false;
+          fetchTreeData();
+        }
+      }
+    } catch (error) {
+      ElMessage.error("璇峰~鍐欏畬鏁磋〃鍗曚俊鎭�");
+    } finally {
+      formLoading.value = false;
+    }
+  };
+
+  // 缁勪欢鎸傝浇鏃惰幏鍙栧垎绫诲垪琛�
+  onMounted(() => {
+    fetchCategories();
+    fetchTreeData();
+  });
 </script>
 
 <style scoped>
-.spare-part-category {
-  padding: 20px;
-}
-.table_list {
-  margin-top: unset;
-}
-.actions {
-  display: flex;
-  justify-content: space-between;
-  margin-bottom: 10px;
-  align-items: center;
-}
+  .spare-part-category {
+    padding: 20px;
+  }
+  .table_list {
+    margin-top: unset;
+  }
+  .actions {
+    display: flex;
+    justify-content: space-between;
+    margin-bottom: 10px;
+    align-items: center;
+  }
 
-/* 宓屽鏍戝舰缁撴瀯鏍峰紡 */
-.nested-tree-node {
-  display: flex;
-  align-items: center;
-  justify-content: space-between;
-  width: 100%;
-  padding: 0 4px;
-  height: 30px;
-  line-height: 30px;
-}
+  /* 宓屽鏍戝舰缁撴瀯鏍峰紡 */
+  .nested-tree-node {
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
+    width: 100%;
+    padding: 0 4px;
+    height: 30px;
+    line-height: 30px;
+  }
 
-.category-code {
-  color: #606266;
-  font-size: 12px;
-  margin-left: 8px;
-}
+  .category-code {
+    color: #606266;
+    font-size: 12px;
+    margin-left: 8px;
+  }
 
-.tree-actions {
-  display: flex;
-  align-items: center;
-  gap: 8px;
-  margin-left: auto;
-}
+  .tree-actions {
+    display: flex;
+    align-items: center;
+    gap: 8px;
+    margin-left: auto;
+  }
 
-/* 琛ㄦ牸鏍峰紡璋冩暣 */
-.el-table {
-  font-size: 14px;
-}
+  /* 琛ㄦ牸鏍峰紡璋冩暣 */
+  .el-table {
+    font-size: 14px;
+  }
 
-.el-table__header-wrapper th {
-  background-color: #f5f7fa;
-  font-weight: 600;
-}
+  .el-table__header-wrapper th {
+    background-color: #f5f7fa;
+    font-weight: 600;
+  }
 
-.el-table__row:hover > td {
-  background-color: #fafafa;
-}
+  .el-table__row:hover > td {
+    background-color: #fafafa;
+  }
 
-/* 宓屽鏍戝舰缁撴瀯鐗瑰畾鏍峰紡 */
-.nested-tree {
-  background-color: transparent;
-}
+  /* 宓屽鏍戝舰缁撴瀯鐗瑰畾鏍峰紡 */
+  .nested-tree {
+    background-color: transparent;
+  }
 
-.nested-tree .el-tree-node__content {
-  height: auto;
-  background-color: transparent;
-}
+  .nested-tree .el-tree-node__content {
+    height: auto;
+    background-color: transparent;
+  }
 
-/* 鎼滅储妗嗘牱寮忚皟鏁� */
-.actions .el-input {
-  margin-right: 10px;
-  width: 200px;
-}
+  /* 鎼滅储妗嗘牱寮忚皟鏁� */
+  .actions .el-input {
+    margin-right: 10px;
+    width: 200px;
+  }
 
-/* 鎸夐挳缁勬牱寮� */
-.actions > div {
-  display: flex;
-  gap: 10px;
-}
+  /* 鎸夐挳缁勬牱寮� */
+  .actions > div {
+    display: flex;
+    gap: 10px;
+  }
 
-/* 纭繚琛ㄦ牸涓殑鎿嶄綔鎸夐挳涓嶄細琚埅鏂� */
-.el-table-column--fixed-right .el-button {
-  margin: 0 2px;
-}
+  /* 纭繚琛ㄦ牸涓殑鎿嶄綔鎸夐挳涓嶄細琚埅鏂� */
+  .el-table-column--fixed-right .el-button {
+    margin: 0 2px;
+  }
 
-/* 鏍戝舰鑺傜偣鍐呭鏍峰紡 */
-.nested-tree .el-tree-node__expand-icon {
-  font-size: 12px;
-  margin-right: 4px;
-}
+  /* 鏍戝舰鑺傜偣鍐呭鏍峰紡 */
+  .nested-tree .el-tree-node__expand-icon {
+    font-size: 12px;
+    margin-right: 4px;
+  }
 
-/* 绌虹姸鎬佹牱寮� */
-.el-table .cell:empty::before {
-  content: '-';
-  color: #c0c4cc;
-}
+  /* 绌虹姸鎬佹牱寮� */
+  .el-table .cell:empty::before {
+    content: "-";
+    color: #c0c4cc;
+  }
 
-/* 灞曞紑/鎶樺彔鍔熻兘鏍峰紡 */
-.expand-icon {
-  display: inline-block;
-  width: 20px;
-  height: 20px;
-  text-align: center;
-  line-height: 20px;
-  cursor: pointer;
-  font-size: 12px;
-  color: #909399;
-}
+  /* 灞曞紑/鎶樺彔鍔熻兘鏍峰紡 */
+  .expand-icon {
+    display: inline-block;
+    width: 20px;
+    height: 20px;
+    text-align: center;
+    line-height: 20px;
+    cursor: pointer;
+    font-size: 12px;
+    color: #909399;
+  }
 
-.expand-icon.expanded {
-  color: #409eff;
-}
+  .expand-icon.expanded {
+    color: #409eff;
+  }
 
-/* 灞曞紑鍐呭鏍峰紡 */
-.expand-content {
-  padding: 10px 20px;
-}
+  /* 灞曞紑鍐呭鏍峰紡 */
+  .expand-content {
+    padding: 10px 20px;
+  }
 
-/* 瀛愮骇鍐呭鏍峰紡 */
-.child-content {
-  padding-left: 40px;
-}
+  /* 瀛愮骇鍐呭鏍峰紡 */
+  .child-content {
+    padding-left: 40px;
+  }
 
-/* 鏃犲瓙鍒嗙被鎻愮ず鏍峰紡 */
-.no-children {
-  padding: 10px 20px;
-  color: #909399;
-  font-size: 14px;
-}
+  /* 鏃犲瓙鍒嗙被鎻愮ず鏍峰紡 */
+  .no-children {
+    padding: 10px 20px;
+    color: #909399;
+    font-size: 14px;
+  }
 
-/* 纭繚灞曞紑鐨勮〃鏍兼牱寮忔纭� */
-.el-table .el-table__expanded-cell {
-  background-color: #fafafa;
-}
+  /* 纭繚灞曞紑鐨勮〃鏍兼牱寮忔纭� */
+  .el-table .el-table__expanded-cell {
+    background-color: #fafafa;
+  }
 
-/* 灞曞紑鐨勫瓙琛ㄦ牸鏍峰紡 */
-.el-table .el-table {
-  border-top: none;
-  border-bottom: none;
-}
+  /* 灞曞紑鐨勫瓙琛ㄦ牸鏍峰紡 */
+  .el-table .el-table {
+    border-top: none;
+    border-bottom: none;
+  }
 
-/* 灞曞紑鐨勫瓙琛ㄦ牸鍗曞厓鏍兼牱寮� */
-.expand-content .el-table__body-wrapper .el-table__row {
-  background-color: #ffffff;
-}
+  /* 灞曞紑鐨勫瓙琛ㄦ牸鍗曞厓鏍兼牱寮� */
+  .expand-content .el-table__body-wrapper .el-table__row {
+    background-color: #ffffff;
+  }
 
-.expand-content .el-table__body-wrapper .el-table__row:hover > td {
-  background-color: #fafafa;
-}
+  .expand-content .el-table__body-wrapper .el-table__row:hover > td {
+    background-color: #fafafa;
+  }
 </style>
\ No newline at end of file

--
Gitblit v1.9.3