From 7b230899435f64c2191af136d8d43e273eb19d70 Mon Sep 17 00:00:00 2001
From: hailin <1356886193@qq.com>
Date: 星期三, 19 七月 2023 13:03:43 +0800
Subject: [PATCH] 补充修复侧边栏的样式以及一些小问题

---
 src/views/standardLibrary/index.vue |  134 ++++++++++++++++++++++++++++----------------
 1 files changed, 86 insertions(+), 48 deletions(-)

diff --git a/src/views/standardLibrary/index.vue b/src/views/standardLibrary/index.vue
index b55dc64..e5d8274 100644
--- a/src/views/standardLibrary/index.vue
+++ b/src/views/standardLibrary/index.vue
@@ -6,7 +6,7 @@
           v-model="filterText"
           placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�"
         />
-        <el-button type="text">鍏ㄩ儴</el-button>
+        <el-button type="text" @click="getAllStandard">鍏ㄩ儴</el-button>
         <el-tree
           ref="tree"
           class="filter-tree"
@@ -42,10 +42,10 @@
         </div>
         <div class="table-box">
           <el-table
-            ref="standardLibraryTable"
+            ref="tableData"
             :cell-style="{textAlign: 'center'}"
             :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}"
-            :data="standardLibraryTable"
+            :data="tableData"
             style="width: 100%"
           >
             <el-table-column
@@ -93,19 +93,34 @@
                 <el-button
                   type="text"
                   size="small"
-                  @click="handleClick(scope.row)"
+                  :style="{marginRight:'8px'}"
+                  @click="specificationDetails(scope.row)"
                 >鏌ョ湅</el-button>
-                <el-button type="text" size="small"><i class="el-icon-more" /></el-button>
+                <el-popover
+                  v-model="scope.row.visible"
+                  placement="top"
+                  width="30"
+                >
+                  <div style="text-align: center; margin: 0">
+                    <div>
+                      <el-button size="mini" type="text">缂栬緫</el-button>
+                    </div>
+                    <div>
+                      <el-button size="mini" type="text">鍋滅敤</el-button>
+                    </div>
+                  </div>
+                  <el-button slot="reference" type="text"><i class="el-icon-more" /></el-button>
+                </el-popover>
               </template>
             </el-table-column>
           </el-table>
           <div>
             <el-pagination
-              :current-page="currentPage"
-              :page-sizes="[100, 200, 300, 400]"
-              :page-size="100"
+              :current-page="pageParams.pageNo"
+              :page-sizes="[10, 20, 30, 40]"
+              :page-size="pageParams.pageNo"
               layout="total, sizes, prev, pager, next, jumper"
-              :total="400"
+              :total="pageParams.total"
             />
           </div>
         </div>
@@ -115,28 +130,15 @@
 </template>
 
 <script>
-import { getStandardsList, getSerialNumberList, getSpecificationsList } from '@/api/standardLibrary'
+import { getStandardsList, getSerialNumberList, getSpecificationsList, getStandardsListOfPage } from '@/api/standardLibrary'
 export default {
   data() {
     return {
+      visible: false,
       filterText: '',
       // 鏍囧噯搴揵om鏍�
-      standardTree: [{
-        id: 1,
-        label: '涓�绾� 1',
-        children: [{
-          id: 4,
-          label: '浜岀骇 1-1',
-          children: [{
-            id: 9,
-            label: '涓夌骇 1-1-1'
-          }, {
-            id: 10,
-            label: '涓夌骇 1-1-2'
-          }]
-        }]
-      }],
-      // 榛樿鍊�
+      standardTree: [],
+      // bom鐨�,榛樿鍊�
       defaultProps: {
         children: 'children',
         label: 'label'
@@ -145,18 +147,42 @@
       searchData: {
         keyword: ''
       },
-      standardLibraryTable: [
+      tableData: [
         {
           id: 2,
           name: 'AB',
           updateTime: '2023-07-12 00:00:12',
           username: '灏忓皬',
           vel: 'V1.0',
-          spe_state: 1
+          spe_state: 1,
+          visible: false
+        },
+        {
+          id: 3,
+          name: 'AB',
+          updateTime: '2023-07-12 00:00:12',
+          username: '灏忓皬',
+          vel: 'V1.0',
+          spe_state: 1,
+          visible: false
+
+        },
+        {
+          id: 4,
+          name: 'AB',
+          updateTime: '2023-07-12 00:00:12',
+          username: '灏忓皬',
+          vel: 'V1.0',
+          spe_state: 1,
+          visible: false
+
         }
       ],
-      currentPage: 1
-
+      pageParams: {
+        pageNo: 1,
+        pageSize: 10,
+        total: 3
+      }
     }
   },
   watch: {
@@ -174,34 +200,46 @@
     },
     async getStandardTree() {
       const { data: standard } = await getStandardsList()// 鑾峰彇鎵�鏈夋爣鍑�
-      // console.log(standard)// 鑾峰彇鎵�鏈夋爣鍑�
-      for (const standardItem of standard) {
-        const { data: serialNumber } = await getSerialNumberList({ IdOrNameOfSerialNumber: standardItem.name, standardsId: standardItem.id })
-        // console.log(children) //鎵�鏈夊瀷鍙�
-        // for (const serialNumberItem of serialNumber) {
-        //   // const {data} = await getSpecificationsList({})
-        // }
-        standardItem.children = serialNumber.map(item => ({ id: item.id, label: item.name }))
-      }
-      this.standardTree = standard.map(item => ({ ...item, label: item.name }))
-      console.log(this.standardTree)// 鑾峰彇鎵�鏈夋爣鍑�
+      console.log(standard)// 鑾峰彇鎵�鏈夋爣鍑�
+      this.standardTree = standard.map(item => {
+        item.serialNumber = item.serialNumber?.map(childrenItem => ({ ...childrenItem, label: childrenItem.name }))
+        return { ...item, label: item.name, children: item.serialNumber }
+      })
+      console.log(this.standardTree)
     },
     async nodeClick(data, node, element) {
-      // 鏁版嵁 鑺傜偣node瀵硅薄 鑺傜偣缁勪欢瀵硅薄
-      // console.log(data, node, element)
-      // console.log(data.children && data.children?.length !== 0)
-      if (!data.children && data.children?.length !== 0) {
+      console.log(data)
+      console.log('children' in data)
+      if (!('children' in data)) {
         console.log('鐐瑰嚮瀛愯妭鐐�', data)
-        const res = await getSpecificationsList({ serialNumberId: data.id, specificationsName: data.label, pageNo: 1, pageSize: 10 })
-        console.log(res)
+        const { data: { row, total }} = await getSpecificationsList({ serialNumberId: data.id, specificationsName: data.label, pageNo: 1, pageSize: 10 })
+        console.log(row)
+        this.tableData = row
+        this.pageParams.total = total
+        return
       }
-      console.log('鐐瑰嚮鐖惰妭鐐�')
+      const { data: { row, total }} = await getSerialNumberList({ standardsId: data.id, ...this.pageParams })
+      // console.log('鐐瑰嚮鐖惰妭鐐�', serialNumberList)
+      this.tableData = row
+      this.pageParams.total = total
+    },
+    specificationDetails(row) {
+      // 璺宠浆浜у搧瑙勬牸璇︽儏椤�
+      console.log(row)
+      this.$router.push(`/standardLibrary/SpecificationDetails/${row.id}`)
+    },
+    async getAllStandard() {
+      console.log(this.pageParams)
+      const { data: { row, total }} = await getStandardsListOfPage({ ...this.pageParams })
+      this.pageParams.total = total
+      this.tableData = row
     }
   }
 }
 </script>
 
 <style lang="scss" scoped>
+
 .standard-library-main{
   width: 100%;
   height: 100%;

--
Gitblit v1.9.3