From f7eedc924df60b69353b190dc3579ef7d0852019 Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期二, 06 十二月 2022 10:24:26 +0800
Subject: [PATCH] 1.sop上传接口接入

---
 src/views/xtsz/sc.vue |  129 +++++++++++++++++--------------------------
 1 files changed, 51 insertions(+), 78 deletions(-)

diff --git a/src/views/xtsz/sc.vue b/src/views/xtsz/sc.vue
index 5171b82..b473666 100644
--- a/src/views/xtsz/sc.vue
+++ b/src/views/xtsz/sc.vue
@@ -12,17 +12,15 @@
           >
             <div class="elForm" style="justify-content: flex-start">
               <el-form-item style="margin-right: 30px">
-                <el-checkbox v-model="form.checked">澶囬�夐」</el-checkbox>
+                <el-checkbox v-model="checked" @change="checkedChange">鏈�鏂扮増鏈�</el-checkbox>
               </el-form-item>
               <el-form-item>
-                <!--                prefix-icon="el-icon-search"-->
                 <el-input v-model="form.search" placeholder="璇疯緭鍏ュ叧閿瓧" style="width: 260px" />
               </el-form-item>
             </div>
           </el-form>
           <el-button type="primary" style="margin-left: 30px" icon="el-icon-search" @click="search">鏌ヨ</el-button>
           <el-button type="info" icon="el-icon-refresh" @click="reset">閲嶇疆</el-button>
-
         </div>
       </div>
 
@@ -47,7 +45,7 @@
             label="搴忓彿"
           />
           <el-table-column
-            prop="file_name"
+            prop="define_name"
             label="鏂囦欢鍚嶇О"
             min-width="160"
             show-tooltip-when-overflow
@@ -95,7 +93,7 @@
           <el-table-column
             prop="lm_date"
             label="涓婁紶鏃堕棿"
-            width="160"
+            min-width="160"
             sortable="custom"
           />
           <el-table-column
@@ -105,8 +103,8 @@
           >
             <template slot-scope="{row}">
               <div class="operationClass">
-                <el-tooltip class="item" effect="dark" content="棰勮" placement="top">
-                  <i class="el-icon-files" style="cursor: pointer;color:#42b983;margin-right: 15px" @click="check" />
+                <el-tooltip v-del-tab-index class="item" effect="dark" content="棰勮" placement="top">
+                  <i class="el-icon-files" style="cursor: pointer;color:#42b983;margin-right: 15px" @click="check(row)" />
                 </el-tooltip>
                 <el-tooltip v-del-tab-index class="item" effect="dark" content="鍒犻櫎" placement="top">
                   <i class="el-icon-delete" @click="del(row)" />
@@ -172,9 +170,10 @@
             />
           </el-select>
         </el-form-item>
-        <el-form-item label="鏂囦欢鍚嶇О" prop="defilename">
-          <el-input v-model="dialogForm.defilename" style="width: 200px" />
-        </el-form-item>
+        <!--        <el-form-item label="鏂囦欢鍚嶇О" prop="defilename">-->
+        <!--        <el-form-item label="鏂囦欢鍚嶇О">-->
+        <!--          <el-input v-model="dialogForm.defilename" disabled style="width: 200px" />-->
+        <!--        </el-form-item>-->
         <el-form-item label="鏂囦欢绫诲瀷" prop="filetypecode">
           <el-select
             v-model="dialogForm.filetypecode"
@@ -192,10 +191,10 @@
             />
           </el-select>
         </el-form-item>
-
+        <el-form-item label="鐗堟湰鍙�">
+          <el-input v-model="dialogForm.fileversion" disabled style="width: 200px" />
+        </el-form-item>
         <el-form-item label="鏂囦欢涓婁紶" prop="Files">
-          <!--          <el-input v-model="dialogForm.Files" style="width: 200px" />-->
-
           <div style="width: 200px;">
             <el-upload
               ref="uploadFileRef"
@@ -208,8 +207,6 @@
               :multiple="false"
               accept=".mp4,.pdf"
             >
-              <!--              :http-request="upload"-->
-              <!--              :before-upload="beforeUpload"-->
               <el-button
                 type="primary"
                 style="width: 200px;display: flex;justify-content: center"
@@ -219,15 +216,16 @@
             </el-upload>
           </div>
         </el-form-item>
-        <el-form-item label="鐗堟湰鍙�">
-          <el-input v-model="dialogForm.fileversion" disabled style="width: 200px" />
-        </el-form-item>
-
       </el-form>
       <span slot="footer" class="dialog-footer">
         <div class="footerButton">
           <el-button @click="dialogVisibleCancel">鍙� 娑�</el-button>
-          <el-button type="primary" @click="dialogVisibleConfirm">纭� 瀹�</el-button>
+          <el-button
+            type="primary"
+            :loading="$store.state.app.buttonIsDisabled"
+            :disabled="$store.state.app.buttonIsDisabled"
+            @click="dialogVisibleConfirm"
+          >纭� 瀹�</el-button>
         </div>
       </span>
     </el-dialog>
@@ -237,9 +235,14 @@
 
 <script>
 import Pagination from '@/components/Pagination'
-import { AddUpdateOrganization, DeleteOrganization, PrentOrganization } from '@/api/jcsz'
-import { getCookie } from '@/utils/auth'
-import { SystemSopDelete, SystemSopDeviceSearch, SystemSopMaxVersion, SystemSopSava, SystemSopSearch } from '@/api/xtsz'
+import {
+  SystemSopDelete,
+  SystemSopDeviceSearch,
+  SystemSopMaxVersion,
+  SystemSopSava,
+  SystemSopSearch,
+  SystemSopView
+} from '@/api/xtsz'
 import { PartSelect } from '@/api/zzmx'
 
 export default {
@@ -254,13 +257,15 @@
       mainHeight: 0,
       tableHeight: 0,
       form: {
-        checked: '', // 鏄惁閫変腑鏈�楂樼増鏈�
+        check: 'N', // 鏄惁閫変腑鏈�楂樼増鏈�
         search: '', // 鎼滅储鍏抽敭瀛�
         prop: 'lm_date', // 鎺掑簭瀛楁
         order: 'desc', // 鎺掑簭瀛楁
         page: 1, // 绗嚑椤�
         rows: 20 // 姣忛〉澶氬皯鏉�
       },
+      checked: false,
+
       total: 10,
       tableData: [],
       dialogVisible: false,
@@ -285,10 +290,6 @@
         filetypecode: [
           { required: true, message: '璇烽�夋嫨鏂囦欢绫诲瀷', trigger: ['blur', 'change'] }
         ]
-        // Files: [
-        //   { required: true, message: '璇疯緭鍏ユ枃浠跺悕绉�', trigger: ['blur', 'change'] }
-        // ]
-
       },
       devicetvpeArr: [], // 璁惧绫诲瀷涓嬫媺鍒楄〃
       partArr: [], // 鐗╂枡涓嬫媺鍒楄〃
@@ -297,6 +298,7 @@
         { code: 'P002', name: '妫�楠屾寚瀵间功' },
         { code: 'P003', name: '鍥剧焊' }
       ]
+
     }
   },
 
@@ -330,42 +332,24 @@
     search() {
       this.getSystemSopSearch()
     },
-    // 瀵煎叆鎸夐挳
-    // upload(param) {
-    //   console.log('111')
-    //   this.dialogForm.Files = param.file
-    // },
-    // 鏂囦欢涓婁紶涔嬪墠鏂规硶
-    // beforeUpload(file) {
-    // console.log(file, 1)
-    // const isLt100M = file.size / 1024 / 1024 < 100
-    // // if (['video/mp4', 'video/ogg', 'video/flv', 'video/avi', 'video/wmv', 'video/rmvb'].indexOf(file.type) == -1) {
-    // if (['video/mp4', '.pdf'].indexOf(file.type) === -1) {
-    //   this.$message.error('涓婁紶鏂囦欢鍙兘鏄� pdf銆乵p4 鏍煎紡!')
-    //   // this.$message.error('涓婁紶瑙嗛鍙兘鏄� mp4銆乷gg銆乫lv銆乤vi銆亀mv銆乺mvb 鏍煎紡!')
-    //   return false
-    // }
-    // if (!isLt100M) {
-    //   this.$message.error('涓婁紶鏂囦欢澶у皬涓嶈兘瓒呰繃 100MB!')
-    //   return false
-    // }
-    // return true
-    // },
+    // 鏈�鏂扮増鏈敼鍙樻椂瑙﹀彂
+    checkedChange(val) {
+      this.form.check = val ? 'Y' : 'N'
+      this.getSystemSopSearch()
+    },
     // 鏂囦欢鏁伴噺瓒呰繃闄愬畾瑙﹀彂
     handleExceed() {
       this.$message.info('鏆備笉鏀寔澶氭枃浠朵笂浼狅紒')
     },
+
     // 閲嶇疆
     reset() {
-      this.form.checked = ''
       this.form.search = ''
       this.getSystemSopSearch()
     },
-
     // 鏂板鎸夐挳
     add() {
       this.dialogVisible = true
-
       this.getSystemSopDeviceSearch()
       this.getPartSelect()
     },
@@ -379,7 +363,6 @@
       const { data: res } = await PartSelect()
       this.partArr = res
     },
-
     // 鏂囦欢绫诲瀷鍊兼敼鍙樻椂
     async fileversionChange(val, type) {
       const data = {
@@ -391,21 +374,10 @@
 
       this.dialogForm.fileversion = res
     },
-
     // 棰勮
-    check() {
-      const url = this.$router.resolve({
-        path: '/xtsz/yl',
-        query: {
-          // clue_id: row.clue_id,
-          // operation: 'check',
-          name: '鏂囦欢棰勮'
-        }
-      })
-
-      window.open(url.href)
-
-      // SystemSopView
+    async  check(row) {
+      const { data: res } = await SystemSopView({ id: row.id, filepath: row.file_path })
+      window.open(res)
     },
 
     // 鍒犻櫎鎸夐挳
@@ -416,8 +388,8 @@
         type: 'warning'
       }).then(() => {
         const data = {
-          id: '',
-          filepath: ''
+          id: row.id,
+          filepath: row.file_path
         }
         SystemSopDelete(data).then(res => {
           if (res.code === '200') {
@@ -440,16 +412,17 @@
       this.dialogForm.filetypecode = ''
       this.dialogForm.fileversion = ''
       this.dialogForm.Files = ''
+      this.$refs.uploadFileRef.clearFiles()
       this.$refs.dialogForm.clearValidate()
     },
     // 瀵硅瘽妗嗗彇娑�
     dialogVisibleCancel() {
       this.dialogVisible = false
+      this.$store.state.app.buttonIsDisabled = false
     },
     // 瀵硅瘽妗嗙‘璁�
     dialogVisibleConfirm() {
       console.log(this.$refs.uploadFileRef.uploadFiles[0])
-
       if (!this.$refs.uploadFileRef.uploadFiles[0]) {
         this.$message.info('璇烽�夋嫨鏂囦欢涓婁紶锛�')
       }
@@ -457,25 +430,25 @@
       this.$refs.dialogForm.validate(valid => {
         if (valid) {
           const formData = new FormData()
-          formData.append('devicetvpecode', this.dialogForm.devicetvpecode)
+          formData.append('devicetypecode', this.dialogForm.devicetvpecode)
           formData.append('partcode', this.dialogForm.partcode)
-          formData.append('defilename', this.dialogForm.defilename)
+          formData.append('defilename', this.$refs.uploadFileRef.uploadFiles[0].name)
           formData.append('filetypecode', this.dialogForm.filetypecode)
           formData.append('fileversion', this.dialogForm.fileversion)
           formData.append('Files', this.$refs.uploadFileRef.uploadFiles[0].raw)
-          // formData.append('Files', JSON.stringify(this.$refs.uploadFileRef.uploadFiles[0].raw))
-          // formData.append('Files', JSON.stringify(this.$refs.uploadFileRef.uploadFiles[0]))
-          for (var [key, value] of formData) {
-            console.log(key, value)
-          }
-          // 鍙傝�冩枃浠朵笂浼犲湴鏂癸紝鏄庡ぉ鐪�
+          // for (var [key, value] of formData) {
+          //   console.log(key, value)
+          // }
+          this.$store.state.app.buttonIsDisabled = true
           SystemSopSava(formData).then(res => {
             if (res.code === '200') {
               this.$message.success('鏂囦欢涓婁紶鎴愬姛锛�')
               this.dialogVisible = false
+              this.$store.state.app.buttonIsDisabled = false
               this.getSystemSopSearch()
             } else {
               this.$message.error('鏂囦欢涓婁紶澶辫触锛�')
+              this.$store.state.app.buttonIsDisabled = false
             }
           })
         }

--
Gitblit v1.9.3