From 1be1ed62ae14b87f64b82cdc4a6b2b002e5ababc Mon Sep 17 00:00:00 2001
From: lixiangyu <lixiangyu@xalxzn.com>
Date: 星期二, 16 九月 2025 18:01:02 +0800
Subject: [PATCH] feat(cms): 废料单列表增加提交功能并优化相关逻辑

---
 src/views/cms/CuttingScrapList.vue |   74 +++++++++++++++++++++++++++++++++++--
 1 files changed, 70 insertions(+), 4 deletions(-)

diff --git a/src/views/cms/CuttingScrapList.vue b/src/views/cms/CuttingScrapList.vue
index 0747b44..3f10027 100644
--- a/src/views/cms/CuttingScrapList.vue
+++ b/src/views/cms/CuttingScrapList.vue
@@ -110,7 +110,18 @@
               <a-menu-item>
                 <a @click="handleDetail(record)">璇︽儏</a>
               </a-menu-item>
-              <a-menu-item>
+
+              <a-menu-item v-if="record.orderStatus != '2'">
+                  <a @click="handleSubmit(record.id)" :disabled="record.orderStatus == '3'">鎻愪氦</a>
+              </a-menu-item>
+
+<!--              <a-menu-item>-->
+<!--                <a-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)">-->
+<!--                  <a>鍒犻櫎</a>-->
+<!--                </a-popconfirm>-->
+<!--              </a-menu-item>-->
+
+              <a-menu-item v-if="record.orderStatus === '1'">
                 <a-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)">
                   <a>鍒犻櫎</a>
                 </a-popconfirm>
@@ -137,6 +148,7 @@
 import { JeecgListMixin } from '@/mixins/JeecgListMixin'
 import CuttingScrapModal from './modules/CuttingScrapModal'
 import CuttingScrapDetailList from './CuttingScrapDetailList'
+import { httpAction } from '@api/manage'
 
 export default {
   name: 'CuttingScrapList',
@@ -199,7 +211,7 @@
         {
           title: '鎶ュ簾鍗曠姸鎬�',
           align: 'center',
-          dataIndex: 'orderStatus'
+          dataIndex: 'orderStatus_dictText'
         },
         {
           title: '鎿嶄綔',
@@ -215,8 +227,8 @@
         delete: '/cms/cuttingScrap/delete',
         deleteBatch: '/cms/cuttingScrap/deleteBatch',
         exportXlsUrl: '/cms/cuttingScrap/exportXls',
-        importExcelUrl: 'cms/cuttingScrap/importExcel'
-
+        importExcelUrl: 'cms/cuttingScrap/importExcel',
+        submit: '/cms/cuttingScrap/submit',
       },
       dictOptions: {},
       superFieldList: []
@@ -251,6 +263,60 @@
       this.$refs.modalForm.title = '璇︽儏'
       this.$refs.modalForm.disableSubmit = true
     },
+
+    //  鍗曟嵁鎻愪氦
+    handleSubmit: function(id) {
+      if (!this.url.submit) {
+        this.$message.error('璇疯缃畊rl.submit灞炴��!')
+        return
+      }
+
+      let targetId = id // 浠庡弬鏁拌幏鍙朓D
+      // 濡傛灉娌℃湁閫氳繃鍙傛暟浼犻�扞D锛屽垯妫�鏌ラ�変腑鐨勮褰�
+      if (!targetId) {
+        if (this.selectedRowKeys.length != 1) {
+          this.$message.warning('璇烽�夋嫨涓�鏉¤褰曪紒')
+          return
+        } else {
+          targetId = this.selectedRowKeys[0]
+        }
+      }
+
+      // 灏嗗弬鏁颁綔涓烘煡璇㈠弬鏁伴檮鍔犲埌URL涓�
+      let httpurl = this.url.submit + '?orderId=' + encodeURIComponent(targetId)
+      let method = 'get'
+      var params = {}  // 娓呯┖params锛屽洜涓哄弬鏁板凡缁忓湪URL涓紶閫�
+
+      const that = this
+
+      this.$confirm({
+        title: '纭鎻愪氦锛�',
+        // content: '姝e湪鎻愪氦鏁版嵁锛岃鑰愬績绛夊緟...',
+        okText: '纭',
+        cancelText: '鍙栨秷',
+        onOk() {
+          // 鏄剧ず鍔犺浇鎻愮ず
+          const hide = that.$message.loading('姝e湪鎻愪氦鏁版嵁锛岃鑰愬績绛夊緟...', 0)
+
+          // 鍙戦�佽姹�
+          return httpAction(httpurl, params, method).then((res) => {
+            hide() // 闅愯棌鍔犺浇鎻愮ず
+            if (res.success) {
+              that.$message.success(res.message)
+              that.loadData()
+            } else {
+              that.$message.warning(res.message)
+            }
+          }).catch(error => {
+            hide() // 闅愯棌鍔犺浇鎻愮ず
+            that.$message.error('鎻愪氦澶辫触: ' + error.message)
+          }).finally(() => {
+            that.loading = false
+          })
+        }
+      })
+    },
+
     customRow(record) {
       return {
         on: {

--
Gitblit v1.9.3