From 0f3bd1cd06db00775e29d181acaa0319ee58cfe6 Mon Sep 17 00:00:00 2001
From: lzhe <181968431@qq.com>
Date: 星期二, 12 八月 2025 21:42:36 +0800
Subject: [PATCH] 1

---
 src/views/wel/gongkong.vue |  175 +++++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 141 insertions(+), 34 deletions(-)

diff --git a/src/views/wel/gongkong.vue b/src/views/wel/gongkong.vue
index c29f3c5..9143484 100644
--- a/src/views/wel/gongkong.vue
+++ b/src/views/wel/gongkong.vue
@@ -1,23 +1,74 @@
+<!--
+ * @Author: 鏉庡枂(寮�鍙戠粍) lzhe@yxqiche.com
+ * @Date: 2025-08-11 09:25:36
+ * @LastEditors: 鏉庡枂(寮�鍙戠粍) lzhe@yxqiche.com
+ * @LastEditTime: 2025-08-12 17:43:58
+ * @FilePath: /mdmweb/src/views/wel/gongkong.vue
+ * @Description: 杩欐槸榛樿璁剧疆,璇疯缃甡customMade`, 鎵撳紑koroFileHeader鏌ョ湅閰嶇疆 杩涜璁剧疆: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
+-->
 <template>
   <div class="gongkongMain">
     <div>
-      <el-tree :props="defaultProps" lazy @node-click="handleNodeClick" :load="treeLoad" node-key="id"/>
+      <el-tree :data="treeData" :props="defaultProps" node-key="id" :default-expand-all="true" @node-click="handleNodeClick" />
     </div>
-    <div>鍐呭</div>
+    <div>
+      <el-row>
+        <el-col :span="6" style="margin-right: 12px;">
+          <el-input v-model="fileName" placeholder="鏂囦欢鍚嶇О"/>
+        </el-col>
+        <el-col :span="12">
+          <el-button type="primary" @click="onQuery">鏌ヨ</el-button>
+        </el-col>
+      </el-row>
+      <el-table :data="treecFileData" style="width: 100%">
+        <el-table-column prop="name" label="鍚嶇О" />
+		<el-table-column prop="fileModifyTime" label="鍒涘缓鏃ユ湡" />
+        <el-table-column prop="fileModifyTime" label="淇敼鏃ユ湡" />
+        <el-table-column prop="fileSizeDisplay" label="澶у皬" />
+        <el-table-column fixed="right" label="鎿嶄綔" min-width="120">
+          <template #default="scope">
+            <el-button link type="primary" size="small" @click="fileView(scope.row)">鏌ョ湅</el-button>
+            <el-button link type="primary" size="small" @click="fileEdit(scope.row)">缂栬緫</el-button>
+          </template>
+        </el-table-column>
+      </el-table>
+      <div class="paginationTree">
+        <el-pagination layout="prev, pager, next" :total="fileTotal" @size-change="sizeChange" @current-change="currentChange" />
+      </div>
+    </div>
   </div>
-  
+  <el-dialog v-model="fileDialogVisible" :title="fileOptionTitle" width="800">
+    <div><el-input v-model="fileContent" :rows="15" type="textarea" :disabled="fileOptionTitle == '鏌ョ湅'"/></div>
+    <template #footer>
+      <div class="dialog-footer"> 
+        <el-button @click="fileDialogVisible = false">鍏抽棴</el-button>
+        <el-button type="primary" @click="fileDialogComit" v-if="fileOptionTitle != '鏌ョ湅'">鎻愪氦</el-button>
+      </div>
+    </template>
+  </el-dialog>
 </template>
 <script>
 export default {
   components: {},
   data() {
     return {
+      fileOptionTitle: "",
+      fileContent: "",
+      fileDialogVisible: false,
+      fileName: "",
+      treeData: [],
       defaultProps: {
         children: 'children',
         label: 'name',
         isLeaf: (data) => !data.hasChildren
       },
-      treeData: []
+      treeData: [],
+      current: 1,
+      size: 10,
+      fileTotal: 0,
+      treecFileData: [],
+      TreeNode: {},
+      fileRow: {},
     }
   },
   computed: {},
@@ -25,45 +76,96 @@
     
   },
   methods: {
-    treeLoad (node, resolve) {
-      // 濡傛灉鏄牴鑺傜偣锛坙evel=0锛夛紝鍔犺浇鏍硅妭鐐规暟鎹�
-      const parentId = node.level === 0 ? 0 : node.data.id;
+    fileDialogComit() {
       this.loading = true;
-      var obj = {parentId}
       axios({
-        url: '/blade-mdm/gkw/node/lazy-list',
-        method: 'get',
-        params: obj,
+        url: '/blade-mdm/gkw/node/file-save',
+        method: 'post',
+        params: {id:this.fileRow.id,content: this.fileContent},
       }).then(
         res => {
-          resolve(res.data.data);
+          this.loading = false;
+          this.fileDialogVisible = false;
+          this.$message.success("鎿嶄綔鎴愬姛");
         }
-      ).catch(() => resolve([]));
+      );
     },
-    // getPre() {
-    //   axios({
-    //     url: '/blade-mdm/gkw/node/lazy-list',
-    //     method: 'get',
-    //     params: {nodeId: this.nodeId}
-    //   }).then(
-    //   res => {
-    //     this.treeData = res.data.data;      });
-    // },
-    handleNodeClick(a,b,c,d) {
-      console.og(a,b,c,d)
+    fileView(row) {
+      this.fileOptionTitle = "鏌ョ湅";
+      this.getFileContent(row);
+    },
+    fileEdit(row) {
+      this.fileOptionTitle = "缂栬緫";
+      this.fileRow = {...row};
+      this.getFileContent(row);
+    },
+    getFileContent(row) {
+      this.loading = true;
+      axios({
+        url: '/blade-mdm/gkw/node/file-content',
+        method: 'get',
+        params: {id:row.id},
+      }).then(
+        res => {
+          this.loading = false;
+          this.fileDialogVisible = true;
+          this.fileContent = res.data.data;
+        }
+      );
+    },
+    onQuery() {
+      this.size = 10;
+      this.searchTable(this.TreeNode);
+    },
+    sizeChange(size) {
+      this.size = size;
+      this.treeLoad(this.TreeNode);
+    },
+    currentChange(current) {
+      this.current = current;
+      this.treeLoad();
+    },
+    handleNodeClick(TreeNode,b,c,d) {
+      this.fileName = "";
+      this.searchTable(TreeNode);
+    },
+    searchTable(TreeNode) {
+      this.TreeNode = {...TreeNode};
+      if(TreeNode.dirType == 'SEND' || TreeNode.dirType == 'REC' || TreeNode.dirType == 'TEMP') {
+        var obj = {
+          name: this.fileName,
+          dirType: TreeNode.dirType,
+          machineCode: TreeNode.machineCode,
+          current: this.current,
+          size: this.size
+        }
+        axios({
+          url: '/blade-mdm/gkw/node/file-page',
+          method: 'get',
+          params: obj
+        }).then(
+          res => {
+            this.treecFileData = res.data.data.records;
+            this.fileTotal = res.data.data.total;
+          }
+        )
+      }else {
+        return;
+      }
+    },
+    treeLoad () {
+      axios({
+        url: '/blade-mdm/gkw/node/load-tree',
+        method: 'get',
+      }).then(
+        res => {
+          this.treeData = res.data.data;
+        }
+      )
     }
   },
   mounted() {
-    //this.getPre();
-    //鍒ゆ柇鐗堟湰  0:娑夊瘑缃戯紝1:宸ユ帶缃戯紱
-    // axios({url: '/blade-mdm/system/param/getValue?paramKey=networkType',method: 'get'}).then(res => {
-    //     if(res.data.data === "0") {
-    //       this.isSM = true;
-    //     }else {
-    //       this.getPre();
-    //     }
-    //   }
-    // );
+    this.treeLoad();
   }
 };
 </script>
@@ -86,4 +188,9 @@
 .gongkongMain div:nth-child(2) {
   flex: 1;
 }
+.paginationTree {
+  margin-top: 12px;
+  display: flex;
+  justify-content: flex-end;
+}
 </style>
\ No newline at end of file

--
Gitblit v1.9.3