浏览代码

点餐台样式调整

licc 2 月之前
父节点
当前提交
aa375d6606
共有 2 个文件被更改,包括 639 次插入347 次删除
  1. 623 339
      src/views/order/console.vue
  2. 16 8
      src/views/order/index.vue

文件差异内容过多而无法显示
+ 623 - 339
src/views/order/console.vue


+ 16 - 8
src/views/order/index.vue

@@ -132,7 +132,7 @@
 // 在 script setup 部分添加
 import { Loading } from '@element-plus/icons-vue'
 import { postAll } from '@/api/org/post'
-import { orderDeskList, createOrders, orderCheckout, orderPay, queryPayStatus } from '@/api/order'
+import { orderDeskList, createOrders, orderCheckout, orderPay, queryPayStatus, cancelOrder } from '@/api/order'
 import Console from './console.vue'
 import { getOrdersCurrent } from '@/api/orders'
 import feedback from '@/utils/feedback'
@@ -153,7 +153,8 @@ const consoleRef = ref<InstanceType<typeof Console>>()
 const data = reactive({
     userNum: 1, //当前就餐人数
     deskId: null,
-    type: 0 //后台点餐类型:0
+    type: 0, //后台点餐类型:0
+    canScan: false,
 })
 const order_ = (i: any) => {
     dialogVisible.value = true
@@ -192,15 +193,16 @@ const handleScanInput = (event: KeyboardEvent) => {
         const code = scanCode.value
         console.log('扫码内容:', code)
         if (!data.canScan) {
+            feedback.notifyWarning('正在处理支付,请勿重复扫码')
             return
         }
         data.canScan = false
         payingDialogVisible.value = true // 显示支付中对话框
+        document.removeEventListener('keydown', handleScanInput)
 
-// 修改支付处理逻辑
-      orderPay({ oid: currentDesk.oid, code: code })
+        // 修改支付处理逻辑
+        orderPay({ oid: currentDesk.oid, code: code })
           .then((res) => {
-            document.removeEventListener('keydown', handleScanInput)
             console.log(res)
             if (res.data) {
               console.log('支付中')
@@ -222,8 +224,14 @@ const handleScanInput = (event: KeyboardEvent) => {
             }
           })
           .catch(() => {
-            data.canScan = true
-            document.addEventListener('keydown', handleScanInput)
+            payingDialogVisible.value = false // 隐藏支付中对话框
+
+            feedback.confirm('支付失败,请重试').then(() => {
+                data.canScan = true
+                scanDialogVisible.value = true
+                // 添加键盘事件监听
+                document.addEventListener('keydown', handleScanInput)
+            })
           })
         scanCode.value = ''
     } else {
@@ -292,7 +300,7 @@ const checkout = () => {
     orderCheckout({ did: currentDesk.id }).then((res) => {
         console.log('结账', res)
         currentDesk.oid = res.id
-        feedback.confirm('结账金额为' + currentDesk.amount + ',确定要结账吗?').then(() => {
+        feedback.confirm(currentDesk.name + ' 结账金额为' + currentDesk.amount + ',确定要结账吗?').then(() => {
             data.canScan = true
             scanDialogVisible.value = true
             // 添加键盘事件监听