From f75823de21e1f276bc50e0c96577bf017be1efa5 Mon Sep 17 00:00:00 2001
From: lxl <lixuliang_hd@126.com>
Date: 星期四, 13 十月 2022 18:15:51 +0800
Subject: [PATCH] 三个树

---
 src/views/datamanage/styleManage.vue |  300 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 272 insertions(+), 28 deletions(-)

diff --git a/src/views/datamanage/styleManage.vue b/src/views/datamanage/styleManage.vue
index c650435..ce36f97 100644
--- a/src/views/datamanage/styleManage.vue
+++ b/src/views/datamanage/styleManage.vue
@@ -106,7 +106,7 @@
               prop="descr"
               :label="$t('dataManage.styleObj.descr')"
             />
-            <el-table-column
+            <!-- <el-table-column
               align="center"
               prop="fileGuid"
               :label="$t('dataManage.styleObj.fileguid')"
@@ -137,13 +137,13 @@
               prop="updateTime"
               :label="$t('dataManage.styleObj.updateTime')"
               :formatter="formatTime"
-            />
+            /> -->
             <el-table-column
               align="center"
               prop="bak"
               :label="$t('dataManage.styleObj.bak')"
             />
-            <el-table-column min-width="150" :label="$t('common.operate')">
+            <el-table-column min-width="120" :label="$t('common.operate')">
               <template slot-scope="scope">
                 <el-button
                   @click="showDetail(scope.$index, scope.row)"
@@ -228,12 +228,14 @@
           <el-divider></el-divider>
           <p>
             <label> {{ $t('dataManage.styleObj.fileguid') }}:</label>
-            <label class="boxlabel">{{ itemdetail.fileguid }}</label>
+            <label class="boxlabel">{{ itemdetail.fileGuid }}</label>
           </p>
           <el-divider></el-divider>
           <p>
             <label> {{ $t('dataManage.styleObj.viewguid') }}:</label>
-            <label class="boxlabel">{{ itemdetail.viewguid }}</label>
+            <label class="boxlabel">  <div style="width:440px;height:200px;">
+                <img style="width:100%; height:100%" :src="itemdetail.imageFile" alt=""/>
+              </div></label>
           </p>
           <el-divider></el-divider>
           <p>
@@ -360,13 +362,57 @@
           :label="$t('dataManage.styleObj.fileguid')"
           :label-width="formLabelWidth"
         >
-          <el-input v-model="upform.fileGuid" autocomplete="off"></el-input>
+          <el-input v-model="upform.fileGuid" disabled autocomplete="off"></el-input>
+           <input
+            name="file1"
+
+            type="file"
+            id="editFile"
+            multiple="multiple"
+            style="display: none"
+            @change="editFile(0)"
+          />
+           <el-link
+            :underline="false"
+            @click="geteditFile(0)"
+            style="margin-left: 10px"
+            ><i class="el-icon-plus"></i
+          ></el-link>
+           <el-link
+           :title="$t('common.upload')"
+            :underline="false"
+            @click="seteditFile(0)"
+            style="margin-left: 10px"
+            ><i class="el-icon-upload2"></i
+          ></el-link>
         </el-form-item>
         <el-form-item
           :label="$t('dataManage.styleObj.viewguid')"
           :label-width="formLabelWidth"
         >
-          <el-input v-model="upform.viewGuid" autocomplete="off"></el-input>
+          <el-input v-model="upform.viewGuid" disabled autocomplete="off"></el-input>
+           <input
+            name="file1"
+            :accept="'.jpg,.png'"
+            type="file"
+            id="editimageFile"
+            multiple="multiple"
+            style="display: none"
+            @change="editFile(1)"
+          />
+           <el-link
+            :underline="false"
+            @click="geteditFile(1)"
+            style="margin-left: 10px"
+            ><i class="el-icon-plus"></i
+          ></el-link>
+           <el-link
+           :title="$t('common.upload')"
+            :underline="false"
+             @click="seteditFile(1)"
+            style="margin-left: 10px"
+            ><i class="el-icon-upload2"></i
+          ></el-link>
         </el-form-item>
         <el-form-item
           :label="$t('dataManage.styleObj.bak')"
@@ -443,7 +489,7 @@
         >
           <el-select
             v-model="insertform.status"
-            style="width: 745px"
+            style="width: 730px"
             :placeholder="$t('common.choose')"
           >
             <el-option
@@ -469,19 +515,63 @@
           :label="$t('dataManage.styleObj.descr')"
           :label-width="formLabelWidth"
         >
-          <el-input v-model="insertform.descr" autocomplete="off"></el-input>
+          <el-input v-model="insertform.descr"  autocomplete="off"></el-input>
         </el-form-item>
         <el-form-item
           :label="$t('dataManage.styleObj.fileguid')"
           :label-width="formLabelWidth"
         >
-          <el-input v-model="insertform.fileGuid" autocomplete="off"></el-input>
+          <el-input v-model="insertform.fileGuid" disabled autocomplete="off" />
+           <input
+            name="file1"
+
+            type="file"
+            id="insertFile"
+            multiple="multiple"
+            style="display: none"
+            @change="insertFile(0)"
+          />
+           <el-link
+            :underline="false"
+            @click="getInsertFile(0)"
+            style="margin-left: 10px"
+            ><i class="el-icon-plus"></i
+          ></el-link>
+           <el-link
+           :title="$t('common.upload')"
+            :underline="false"
+  @click="setinsertFile(0)"
+            style="margin-left: 10px"
+            ><i class="el-icon-upload2"></i
+          ></el-link>
         </el-form-item>
         <el-form-item
           :label="$t('dataManage.styleObj.viewguid')"
           :label-width="formLabelWidth"
         >
-          <el-input v-model="insertform.viewGuid" autocomplete="off"></el-input>
+          <el-input v-model="insertform.viewGuid" disabled autocomplete="off"/>
+           <input
+            name="file1"
+            :accept="'.jpg,.png'"
+            type="file"
+            id="insertimageFile"
+            multiple="multiple"
+            style="display: none"
+            @change="insertFile(1)"
+          />
+           <el-link
+            :underline="false"
+            @click="getInsertFile(1)"
+            style="margin-left: 10px"
+            ><i class="el-icon-plus"></i
+          ></el-link>
+           <el-link
+           :title="$t('common.upload')"
+            :underline="false"
+             @click="setinsertFile(1)"
+            style="margin-left: 10px"
+            ><i class="el-icon-upload2"></i
+          ></el-link>
         </el-form-item>
         <el-form-item
           :label="$t('dataManage.styleObj.bak')"
@@ -527,6 +617,9 @@
 <script>
 import $ from 'jquery';
 import moment from 'moment';
+import {
+  getToken
+} from '../../utils/auth.js'
 import MyBread from '../../components/MyBread.vue';
 import styleDirTree from './styleDirTree.vue';
 import styleDepTree from './styleDepTree.vue';
@@ -534,7 +627,8 @@
   select_Style_ByPageAndCount,
   insertStyle,
   deleteStyles,
-  updateStyle
+  updateStyle,
+  upload_style
 } from '../../api/api';
 export default {
   name: 'styleManage',
@@ -560,9 +654,14 @@
       showDirCata: false,
       showDepCata: false,
       tableData: [],
-      insertform: {},
+      insertform: {
+        fileGuid: null,
+        viewGuid: null,
+      },
       dirFlag: null,
       depFlag: null,
+      guidFile: null,
+      viewFile: null,
       count: 0,
       listData: {
         name: null,
@@ -575,6 +674,134 @@
     this.getRoleTabelData();
   },
   methods: {
+    filesReset() {
+      document.getElementById('insertFile').reset();
+      document.getElementById('insertimageFile').reset();
+      this.guidFile = null;
+      this.fileGuid = null;
+    },
+    getInsertFile(res) {
+      if (res == 0) {
+        $('#insertFile').click();
+      } else if (res == 1) {
+        $('#insertimageFile').click();
+      }
+    },
+    insertFile(res) {
+      if (res == 0) {
+        var val = document.getElementById('insertFile').files;
+        if (!val || !val.length) return;
+        this.insertform.fileGuid = val[0].name;
+      } else if (res == 1) {
+        var val = document.getElementById('insertimageFile').files;
+        if (!val || !val.length) return;
+        this.insertform.viewGuid = val[0].name;
+      }
+    },
+    async setinsertFile(res) {
+      if (res == 0) {
+        var fs = document.getElementById("insertFile");
+        if (fs.files.length == 0) {
+          return;
+        }
+        var formData = new FormData();
+        formData.append("file", fs.files[0]);
+        var val_data = await upload_style(formData);
+        if (val_data.code == 200) {
+          this.guidFile = val_data.result;
+          this.$message({
+            message: '涓婁紶鎴愬姛锛�',
+            type: 'success',
+          });
+        } else {
+          this.$message({
+            message: '涓婁紶澶辫触锛�',
+            type: 'warning',
+          });
+        }
+      } else if (res == 1) {
+        var fs = document.getElementById("insertimageFile");
+        if (fs.files.length == 0) {
+          return;
+        }
+        var formData = new FormData();
+        formData.append("file", fs.files[0]);
+        var val_data = await upload_style(formData);
+        if (val_data.code == 200) {
+          this.viewFile = val_data.result;
+          this.$message({
+            message: '涓婁紶鎴愬姛锛�',
+            type: 'success',
+          });
+        } else {
+          this.$message({
+            message: '涓婁紶澶辫触锛�',
+            type: 'warning',
+          });
+        }
+      }
+    },
+     geteditFile(res) {
+      if (res == 0) {
+        $('#editFile').click();
+      } else if (res == 1) {
+        $('#editimageFile').click();
+      }
+    },
+   editFile(res) {
+      if (res == 0) {
+        var val = document.getElementById('editFile').files;
+        if (!val || !val.length) return;
+        this.upform.fileGuid = val[0].name;
+      } else if (res == 1) {
+        var val = document.getElementById('editimageFile').files;
+        if (!val || !val.length) return;
+        this.upform.viewGuid = val[0].name;
+      }
+    },
+    async seteditFile(res) {
+      if (res == 0) {
+        var fs = document.getElementById("editFile");
+        if (fs.files.length == 0) {
+          return;
+        }
+        var formData = new FormData();
+        formData.append("file", fs.files[0]);
+        var val_data = await upload_style(formData);
+        if (val_data.code == 200) {
+          this.guidFile = val_data.result;
+          this.$message({
+            message: '涓婁紶鎴愬姛锛�',
+            type: 'success',
+          });
+        } else {
+          this.$message({
+            message: '涓婁紶澶辫触锛�',
+            type: 'warning',
+          });
+        }
+      } else if (res == 1) {
+        var fs = document.getElementById("editimageFile");
+        if (fs.files.length == 0) {
+          return;
+        }
+        var formData = new FormData();
+        formData.append("file", fs.files[0]);
+        var val_data = await upload_style(formData);
+        if (val_data.code == 200) {
+          this.viewFile = val_data.result;
+          this.$message({
+            message: '涓婁紶鎴愬姛锛�',
+            type: 'success',
+          });
+        } else {
+          this.$message({
+            message: '涓婁紶澶辫触锛�',
+            type: 'warning',
+          });
+        }
+      }
+    },
     handleSelectionChange(val) {
       this.multipleSelection = val;
     },
@@ -644,6 +871,7 @@
     insertFromDataClose() {
       this.InsertFormdialog = false;
       this.insertform = {};
+       this.filesReset();
     },
     async insertFromData() {
       if (this.insertform.dirid == null || this.insertform.depid == null) {
@@ -653,10 +881,18 @@
         });
         return;
       }
+      if (this.guidFile != null) {
+        this.insertform.fileGuid = this.guidFile;
+      }
+      if (this.viewFile != null) {
+        this.insertform.viewGuid = this.viewFile;
+      }
       const data = await insertStyle(this.insertform);
       if (data.code == 200) {
         this.InsertFormdialog = false;
         this.insertform = {};
+
+        this.filesReset();
         this.$message({
           message: '娣诲姞鎴愬姛锛�',
           type: 'success',
@@ -805,19 +1041,19 @@
     addstyle() {
       this.$router.push('/addstyle');
     },
-    statusFormat(res){
-      switch(res){
+    statusFormat(res) {
+      switch (res) {
         case "鍚敤":
           return 1;
           break;
-           case "鍋滅敤":
-             return 0;
+        case "鍋滅敤":
+          return 0;
           break;
-           case "Start Using":
+        case "Start Using":
           return 1;
           break;
-           case "Stop Using":
-             return 0;
+        case "Stop Using":
+          return 0;
           break;
       }
     },
@@ -829,10 +1065,16 @@
         });
         return;
       }
-    if(Number.isInteger(this.upform.status) == false){
-      this.upform.status = this.statusFormat(this.upform.status)
-    }
-     const data = await updateStyle(this.upform);
+      if (Number.isInteger(this.upform.status) == false) {
+        this.upform.status = this.statusFormat(this.upform.status)
+      }
+        if (this.guidFile != null) {
+        this.upform.fileGuid = this.guidFile;
+      }
+      if (this.viewFile != null) {
+        this.upform.viewGuid = this.viewFile;
+      }
+      const data = await updateStyle(this.upform);
       if (data.code == 200) {
         this.dialogFormVisible = false;
         this.upform = {};
@@ -854,7 +1096,8 @@
     removeUpdate() {
       this.upflag = false;
       this.dialogFormVisible = false;
-      this.upform = {}
+      this.upform = {};
+       this.filesReset();
     },
     submitForm(formName) {
       this.getRoleTabelData()
@@ -869,15 +1112,16 @@
       // });
     },
     resetForm(formName) {
-      this.ruleForm ={}
+      this.ruleForm = {}
       this.getRoleTabelData();
     },
     showDetail(index, row) {
+      var token = getToken();
       this.showinfoBox = true;
       this.itemdetail = row;
       this.itemdetail.createTime = this.formomentTime(this.itemdetail.createTime);
       this.itemdetail.updateTime = this.formomentTime(this.itemdetail.updateTime);
-
+      this.itemdetail.imageFile = BASE_URL + "/res/download?guid=" + row.viewGuid + "&token=" + token
     },
     closeDetial() {
       this.showinfoBox = false;
@@ -931,7 +1175,7 @@
   box-sizing: border-box;
 
   .el-input {
-    width: 745px;
+    width: 730px;
   }
 
   .searchComp {

--
Gitblit v1.9.3