From 9d5d3cacf6e5f70dca3f461123ee9a9466c96c79 Mon Sep 17 00:00:00 2001
From: 李喆(开发组) <lzhe@yxqiche.com>
Date: 星期一, 11 八月 2025 16:34:27 +0800
Subject: [PATCH] 1

---
 src/views/flowmgr/backImport.vue |  198 +++++++++++++++++++++++++++----------------------
 1 files changed, 110 insertions(+), 88 deletions(-)

diff --git a/src/views/flowmgr/backImport.vue b/src/views/flowmgr/backImport.vue
index b95a1e8..9f0d5fd 100644
--- a/src/views/flowmgr/backImport.vue
+++ b/src/views/flowmgr/backImport.vue
@@ -6,34 +6,37 @@
       :table-loading="loading"
       :data="data"
       ref="crud"
-      v-model:search="search"
-      v-model:page="mypage"
-      @search-change="searchChange"
-      @search-reset="searchReset"
-      @current-change="currentChange"
-      @size-change="sizeChange"
-      @refresh-change="refreshChange"
-      @on-load="onLoad"
+      @selection-change="selectionChange"
     >
       <template #menu-left>
-        <el-button type="primary" size="default" icon="el-icon-circle-plus" plain @click="handleEdit">瀵煎叆</el-button>
-        <el-button type="primary" size="default" icon="el-icon-circle-plus" plain @click="handleEdit">鍏ュ簱</el-button>
+        <div style="display: flex;">
+          <el-button type="primary" size="default" icon="el-icon-circle-plus" @click="importData">瀵煎叆</el-button>
+          <el-button type="primary" size="default" icon="el-icon-circle-plus" plain @click="handleWarehouse" style="margin-left: 12px;">鍏ュ簱</el-button>
+        </div>
       </template>
     </avue-crud>
+    <el-dialog title="DNC鏂囦欢瀵煎叆" append-to-body v-model="excelBox" width="555px">
+      <avue-form :option="excelOption" v-model="excelForm" :upload-after="uploadAfter" :upload-error="uploadError">
+        <!-- <template #excelTemplate>
+          <el-button type="primary" @click="handleTemplate">
+            鐐瑰嚮涓嬭浇<i class="el-icon-download el-icon--right"></i>
+          </el-button>
+        </template> -->
+      </avue-form>
+    </el-dialog>
   </basic-container>
 </template>
 
 <script>
+import {
+  getList,
+} from '@/api/system/user';
 export default {
   data() {
     return {
-      search: {},
-      loading: true,
-      mypage: {
-        size: 10,
-        current: 1,
-        total: 0,
-      },
+      selection: [],
+      excelBox: false,
+      loading: false,
       option: {
         addBtn: false,
         editBtn: false,
@@ -41,103 +44,122 @@
         labelWidth: 120,
         emptyBtn: false,
         searchSpan: 8,
-        selection: true,
         menu: false,
+        selection: true,
         column: [
+          // {
+          //   label: '鏂囦欢璺緞',
+          //   type: 'input',
+          //   prop: 'keyword',
+          //   hide: true
+          // },
           {
-            label: '鏂囦欢璺緞',
-            type: 'input',
-            prop: 'keyword',
-            search: true,
-            hide: true
-          },
-          {
-            label: '浠诲姟缂栧彿',
-            prop: ''
+            label: '绋嬪簭缂栧彿',
+            prop: 'programNo'
           },
           {
             label: '绋嬪簭鍚嶇О',
-            prop: '',
+            prop: 'programName',
           },
           {
             label: '鏂囦欢鍒拌揪鏃堕棿',
-            prop: '',
+            prop: 'fileBackTime',
           },
           {
             label: '鏂囦欢鏁版嵁搴撶紪鍙�',
-            prop: '',
+            prop: 'id',
           },
-          {
-            label: '澶勭悊鐘舵��',
-            prop: '',
-          },
-          {
-            label: '澶勭悊鏂瑰紡',
-            prop: ''
-          },
-          {
-            label: '澶勭悊鏃堕棿',
-            prop: ''
-          },
-          {
-            label: '澶勭悊浜�',
-            prop: ''
-          },
-          {
-            label: 'MD5鍊�',
-            prop: ''
-          }
+          // {
+          //   label: '澶勭悊鐘舵��',
+          //   prop: '',
+          // },
+          // {
+          //   label: '澶勭悊鏂瑰紡',
+          //   prop: ''
+          // },
+          // {
+          //   label: '澶勭悊鏃堕棿',
+          //   prop: ''
+          // },
+          // {
+          //   label: '澶勭悊浜�',
+          //   prop: ''
+          // },
+          //{
+          //  label: 'MD5鍊�',
+          //  prop: 'md5',
+          //}
         ],
       },
       data: [],
+      excelForm: {},
+      excelOption: {
+        submitBtn: false,
+        emptyBtn: false,
+        column: [
+          {
+            label: '鏂囦欢瀵煎叆',
+            prop: 'excelFile',
+            type: 'upload',
+            drag: true,
+            loadText: 'DNC鏂囦欢瀵煎叆锛岃绋嶇瓑',
+            span: 24,
+            propsHttp: {
+              res: 'data',
+            },
+            tip: '',
+            action: '/blade-mdm/program/dncsendback/upload',
+          },
+        ],
+      },
     };
   },
   methods: {
-    handleEdit(row,index) {
-      
+    selectionChange(selection) {
+      this.selection = selection;
     },
-    searchReset() {
-      //this.onLoad(this.mypage);
+    importData () {
+      this.excelBox = true;
     },
-    searchChange(params, done) {
-      this.mypage.current = 1;
-      this.onLoad();
+    uploadAfter(res, done, loading, column) {
+      console.log(res, done, loading, column,2233)
+      this.excelBox = false;
+      this.data = res || []
       done();
     },
-    currentChange(current) {
-      this.mypage.current = current;
-    },
-    sizeChange(size) {
-      this.mypage.size = size;
-    },
-    refreshChange() {
+    uploadError(error,column) {
       
     },
-    onLoad() {
-      this.loading = true;
-      var obj = {
-        keyword: this.search.keyword,
-        machineSpec: "",
-        current: this.mypage.current,
-        size: this.mypage.size,
-      }
-      axios({
-        url: '/program/dncsendback/page',
-        method: 'get',
-        params: obj,
-      }).then(
-        res => {
-          const data = res.data.data;
-          this.mypage.total = data.total;
-          this.data = data.records;
-          this.loading = false;
-        },
-        error => {
-            
+    handleWarehouse(row,index) {
+      if(this.selection.length == 0) {
+        this.$message.error("璇烽�夋嫨鏁版嵁")
+        this.selection.forEach(item=> {
+          selection.push(item.id);
+        })
+        this.loading = true;
+        var obj = {
+          ids: selection.join(","),
         }
-      );
-
-    }
+        axios({
+          url: '/blade-mdm/program/dncsendback/accept',
+          method: 'post',
+          params: obj,
+        }).then(
+          res => {
+            console.log(res);
+            if (res.data.code === 200) {
+              this.$message.success("鎿嶄綔鎴愬姛");
+              this.loading = false;
+              this.data = []
+            } else {
+              this.$message.error(res.data.msg || "鎿嶄綔澶辫触");
+			  this.loading = false;
+            }
+            
+          }
+        );
+      }
+    },
   },
 };
 </script>

--
Gitblit v1.9.3