台球开关台小程序
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

116 lines
2.9 KiB

/**
* 扫码页
*/
import { View, Text, Button } from '@tarojs/components'
import Taro, { useLoad } from '@tarojs/taro'
import { observer } from 'mobx-react'
import { useState } from 'react'
import { Dialog } from '@taroify/core'
import './index.scss'
const ScanIndex = observer(() => {
const [showUnsettledDialog, setShowUnsettledDialog] = useState(false)
useLoad(() => {
console.log('扫码页面加载')
})
// 扫码
const handleScan = () => {
Taro.scanCode({
success: (res) => {
Taro.showToast({
title: '扫码成功',
icon: 'success',
})
console.log('扫码结果:', res)
},
fail: (err) => {
console.error('扫码失败:', err)
}
})
}
// 去开台
const handleStartTable = () => {
Taro.navigateTo({
url: '/pageScan/startTable/index'
})
}
// 关台-开台人员扫码
const handleCloseTableOwner = () => {
Taro.navigateTo({
url: '/pageScan/closeTable/index?type=owner'
})
}
// 关台-非开台人扫码
const handleCloseTableGuest = () => {
Taro.navigateTo({
url: '/pageScan/closeTable/index?type=guest'
})
}
// 打开未结算订单弹窗
const handleUnsettledOrders = () => {
setShowUnsettledDialog(true)
}
// 去结算
const handleGoToSettle = () => {
setShowUnsettledDialog(false)
Taro.navigateTo({
url: '/pagesUser/unsettledOrders/index'
})
}
return (
<View className="scan-page">
<View className="header">
<Text className="title"></Text>
</View>
<View className="content">
<Button className="scan-btn" onClick={handleScan}>
</Button>
<Button className="start-table-btn" onClick={handleStartTable}>
</Button>
<Button className="close-table-btn" onClick={handleCloseTableOwner}>
-
</Button>
<Button className="close-table-btn" onClick={handleCloseTableGuest}>
-
</Button>
<Button className="unsettled-orders-btn" onClick={handleUnsettledOrders}>
</Button>
</View>
{/* 未结算订单提示弹窗 */}
<Dialog
open={showUnsettledDialog}
onClose={() => setShowUnsettledDialog(false)}
className="unsettled-dialog"
>
<Dialog.Header></Dialog.Header>
<Dialog.Content>
<View className="dialog-content">
1
</View>
</Dialog.Content>
<Dialog.Actions>
<Button className="cancel-btn" onClick={() => setShowUnsettledDialog(false)}>
</Button>
<Button className="confirm-btn" onClick={handleGoToSettle}>
</Button>
</Dialog.Actions>
</Dialog>
</View>
)
})
export default ScanIndex