代码更新

This commit is contained in:
GaoHao
2025-03-03 09:44:11 +08:00
parent b4a0393d2d
commit fd0c452a76
55 changed files with 2263 additions and 2658 deletions

View File

@@ -1,19 +1,11 @@
<template>
<view class="min-page bg-gray u-font-28 u-p-30">
<user-vue :orderInfo="orderDetail.info" :user="user"></user-vue>
<!-- <view class="default-box-padding bg-fff border-r-12 u-m-t-32">
<text class="">桌位号</text>
<text class="">{{orderDetail.info.tableName}}</text>
</view> -->
<goods-list @printOrder="onPrintOrder" @tuikuan="onTuikuan" :orderInfo="orderDetail.info"
:user="user"
:data="orderDetail.goodsList" :seatFee="orderDetail.seatFee" @tuicai="onTuiCai"></goods-list>
<!-- <template v-if="orderDetail.seatFee.totalNumber&&orderDetail.seatFee.totalAmount"> -->
<!-- <view class="default-box-padding bg-fff border-r-12 u-m-t-20 u-flex u-row-between" v-if="orderDetail.info.discountAmount>0">
<view>服务员改价</view>
<view class="color-red">-{{orderDetail.info.discountAmount}}</view>
</view> -->
<template v-if="true">
<extra-vue @tuicai="onSeatFeeTuicai" @tuikuan="onSeatFeeTuiKuan" :orderInfo="orderDetail.info"
:data="orderDetail.seatFee"></extra-vue>
@@ -64,21 +56,73 @@
import go from '@/commons/utils/go.js'
import infoBox from '@/commons/utils/infoBox.js'
import {hasPermission} from '@/commons/utils/hasPermission.js'
import {
onLoad,
onShow,
onHide
} from '@dcloudio/uni-app';
import { onLoad, onShow } from '@dcloudio/uni-app';
import {
reactive,
ref
} from 'vue';
import OrderDetail from './page.js'
import { getHistoryOrder } from '@/api/order.js'
import { shopStaffDetail } from '@/api/staff.js'
import { shopUserDetail } from '@/api/shopUser.js'
const tuicai = reactive({
show: false,
isSeatFee: false,
selGoods: {}
})
const orderDetail = reactive({
goodsList: [],
info: {},
seatFee: {
totalAmount: 0
}
})
const options = reactive({})
// 监听选择用户事件
let user = ref({
headImg:'',
telephone:'',
amount:'0.00',
accountPoints:'0.00'
})
onLoad((opt) => {
Object.assign(options, opt)
console.log(options);
})
onShow(() => {
watchEmit()
watchChooseuser()
getOrderDetail()
})
/**
* 获取订单详情
*/
async function getOrderDetail () {
let res = await getHistoryOrder({orderId: options.id})
console.log(res)
if(res.userId){
shopUserDetail({id:res.userId}).then(res=>{
if(res){
user.value = res
}
})
}
orderDetail.seatFee = {
seatNum: res.seatNum,
seatAmount: res.seatAmount,
}
orderDetail.goodsList = Object.entries(res.detailMap).map(([key, value]) => ({
info: value,
placeNum: key
}))
console.log(orderDetail.goodsList);
orderDetail.info = res
}
function onSeatFeeTuicai(seatFee) {
seatFee={...seatFee,num:seatFee.num,productName:seatFee.productName}
@@ -223,7 +267,7 @@
name: options.name || orderDetail.info.tableName,
masterId:orderDetail.info.masterId,
type: 'add',
vipUserId:orderDetail.memberId?orderDetail.memberId:''
vipUserId:orderDetail.userId?orderDetail.userId:''
})
}
@@ -232,7 +276,7 @@
if(!canJieZhang){
return
}
const memberId=orderDetail.info.memberId||''
const userId=orderDetail.info.userId||''
clearEmit()
go.to('PAGES_ORDER_PAY', {
tableId: options.tableId|| orderDetail.info.tableId,
@@ -240,79 +284,10 @@
masterId: options.masterId,
orderId: orderDetail.info.id,
discount: 1,
memberId
userId
})
}
const orderDetail = reactive({
goodsList: [],
info: {},
seatFee: {
totalAmount: 0
}
})
const options = reactive({})
async function init() {
const res = await orderApi.tbOrderInfoDetail(options.id)
if(res.memberId){
queryAllShopUser({id:res.memberId}).then(res=>{
if(res.content[0]){
user.value=res.content[0]
}
})
}
if (res.detailList.length) {
uni.setStorageSync('useType', res.detailList[0].useType)
}
const masterId = res.masterId
options.masterId = res.masterId
// if (res.status == 'unpaid') {
if (false) {
const {
records,
seatFee
} = await Api.getCart({
masterId,
tableId: res.tableId,
page: 1,
size: 200
})
orderDetail.goodsList = records
orderDetail.seatFee = seatFee ? seatFee : orderDetail.seatFee
} else {
const goodsMap = {}
for (let i in res.detailList) {
const goods = res.detailList[i]
if (goods.productName != '客座费') {
if (goodsMap.hasOwnProperty(goods.placeNum)) {
goodsMap[goods.placeNum].push(goods)
} else {
goodsMap[goods.placeNum] = [goods]
}
}
}
console.log(res.seatInfo);
orderDetail.seatFee = res.seatInfo|| {
// name: '客座费',
// number: res.seatCount,
// num: res.seatCount,
// totalNumber: res.seatCount,
// priceAmount: res.seatAmount,
// status:'',
totalNumber:0,
}
orderDetail.goodsList = Object.entries(goodsMap).map(([key, value]) => ({
info: value,
placeNum: key
}))
console.log(orderDetail.goodsList);
}
console.log(res,'debug121')
orderDetail.info = res
}
function watchEmit() {
uni.$off('orderDetail:update')
@@ -322,13 +297,7 @@
})
}
// 监听选择用户事件
let user = ref({
headImg:'',
telephone:'',
amount:'0.00',
accountPoints:'0.00'
})
//更新选择用户
async function setUser(par) {
const submitPar = {
@@ -359,15 +328,7 @@
})
}
onShow(() => {
watchEmit()
watchChooseuser()
init()
})
onLoad((opt) => {
Object.assign(options, opt)
console.log(options);
})
</script>
<style lang="scss" scoped>