对接订单列表接口

This commit is contained in:
gyq
2025-03-01 14:08:24 +08:00
parent d3ed4ec8e6
commit 573dd88b24
21 changed files with 2769 additions and 1674 deletions

View File

@@ -9,7 +9,7 @@
<ArrowLeftBold />
</el-icon>
</div>
<div class="info">
<!-- <div class="info">
<div class="master_id">
<span>{{ props.masterId }}</span>
<span class="member_info" v-if="global.orderMemberInfo.telephone">
@@ -23,78 +23,11 @@
dayjs(props.orderInfo.createdAt).format("MM-DD HH:mm")
}}</span>
</div>
</div>
</div> -->
</div>
<div class="list_wrap card" style="margin-top: var(--el-font-size-base)">
<div class="item" v-for="item in goodsStore.cartList" :key="item.id">
<div class="top">
<div class="name">
<span v-if="item.is_temporary" style="color: #999;"> [临时菜]</span>
{{ item.product_name }}
</div>
<div class="n">x{{ formatDecimal(+item.number, 2, true) }}</div>
<div class="p">
<template v-if="item.is_temporary">
<template v-if="item.is_gift">
<span class="t_line">{{ formatDecimal(+item.discount_sale_amount) }}</span>
0.00
</template>
<template v-else>
<span>{{ formatDecimal(item.discount_sale_amount * item.number) }}</span>
</template>
</template>
<template v-else>
<template v-if="item.is_gift">
<span class="t_line">{{ formatDecimal(+item.lowPrice) }}</span>
0.00
</template>
<template v-else>
<template v-if="+item.discount_sale_amount">
<span class="t_line">
{{ formatDecimal(+item.lowPrice) }}
</span>
<span>
{{ formatDecimal(+item.discount_sale_amount) }}
</span>
</template>
<template v-else>
{{ formatDecimal(+item.lowPrice) }}
</template>
</template>
</template>
</div>
</div>
<div class="tag_wrap" v-if="item.sku_name">
<div class="tag" v-for="item in item.sku_name.split(',')">
{{ item }}
</div>
</div>
<div class="gift_wrap" v-if="item.is_gift">
<div class="name">
<span v-if="item.is_gift">[赠送]</span>
</div>
<div class="n"></div>
<div class="p">
<span>
-<template v-if="item.is_temporary || +item.discount_sale_amount">
{{ formatDecimal(+item.discount_sale_amount) }}
</template>
<template v-else>{{ formatDecimal(+item.lowPrice) }}</template>
</span>
</div>
</div>
<div class="gift_wrap" v-if="!item.is_temporary && !item.is_gift && item.discount_sale_amount">
<div class="name">
<span>[改价优惠]</span>
</div>
<div class="n"></div>
<div class="p">
<span>
-{{ formatDecimal(item.lowPrice - item.discount_sale_amount) }}
</span>
</div>
</div>
</div>
<SettleItem :list="cartList" />
<SettleItem :list="goodsStore.orderList.map(item => item.goods).flat()" />
</div>
<div class="footer">
<!-- <el-button icon="Edit"></el-button> -->
@@ -110,8 +43,8 @@
</div>
</div>
<div class="pay_wrap">
<payCard :amount="goodsStore.orderInfo.originAmount" :discount="propsDiscount" :orderId="props.orderInfo.id"
@paySuccess="paySuccess" @cancelDiscount="propsDiscount = 0" />
<payCard :amount="goodsStore.orderListInfo.orderAmount" :discount="propsDiscount"
:orderId="goodsStore.orderListInfo.id" @paySuccess="paySuccess" @cancelDiscount="propsDiscount = 0" />
</div>
</div>
<el-dialog v-model="showStaffDiscount" title="员工折扣" @close="global.updateData(true)">
@@ -141,6 +74,7 @@ import _ from 'lodash'
import { onMounted, ref } from "vue";
import { useUser } from "@/store/user.js";
import payCard from "@/components/payCard/payCard.vue";
import SettleItem from './settleItem.vue'
import { print } from "@/api/pay";
import { orderfindOrder, getStaffDiscount } from '@/api/order/index.js'
import { ElMessage } from "element-plus";
@@ -173,10 +107,6 @@ const propsDiscount = ref(0)
const dialogVisible = ref(false);
const props = defineProps({
cart: {
type: Array,
default: [],
},
amount: {
type: [Number, String],
default: 0,
@@ -200,11 +130,9 @@ const props = defineProps({
});
const cartList = ref([])
const isPrint = ref(true);
const discountLoading = ref(false)
// 显示员工折扣
async function showStaffDiscountHandle() {
try {
@@ -356,25 +284,13 @@ async function printOrderLable() {
function paySuccess() {
propsDiscount.value = 0
dialogVisible.value = false;
global.setOrderMember({})
global.setOrderTable({})
printOrderLable()
emit("paySuccess");
// printOrderLable()
// emit("paySuccess");
}
function show() {
function show(t) {
dialogVisible.value = true;
cartList.value = []
props.cart.map(item => {
if (item.info && item.info.length) {
item.info.map(item => {
cartList.value.push({ ...item })
})
} else {
cartList.value.push({ ...item })
}
})
if (t = 1) cartList.value = [...goodsStore.cartList];
}
defineExpose({
@@ -468,78 +384,6 @@ defineExpose({
padding: 0 var(--el-font-size-base);
height: calc(100vh - 200px);
overflow-y: auto;
.item {
padding: var(--el-font-size-base) 0;
border-bottom: 1px solid #ececec;
.name {
flex: 1.5;
}
.n {
width: 30px;
color: #555;
}
.p {
flex: 1;
color: #555;
display: flex;
justify-content: flex-end;
}
.t_line {
text-decoration: line-through;
color: #999;
margin-right: 4px;
}
.top {
display: flex;
padding-bottom: 6px;
}
.gift_wrap {
display: flex;
color: #999;
font-size: 16px;
.p {
color: var(--el-color-danger);
}
}
.tag_wrap {
display: flex;
flex-wrap: wrap;
.tag {
padding: 2px 6px;
background-color: var(--el-color-danger);
color: #fff;
margin-right: 10px;
margin-bottom: 10px;
}
}
.packge_Wrap {
display: flex;
align-items: center;
.icon_item {
$size: 40px;
width: $size;
height: $size;
background-color: #e2e2e2;
display: flex;
align-items: center;
justify-content: center;
margin-right: 10px;
}
}
}
}
.footer {