From 6fa85fcb11a88bacbeace4ac6218b84830e032a8 Mon Sep 17 00:00:00 2001
From: mayf <m13160102112@163.com>
Date: 星期一, 09 九月 2024 21:30:27 +0800
Subject: [PATCH] 订单详情增加积分兑换商品
---
pages/order/list/_id.vue | 170 +++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 160 insertions(+), 10 deletions(-)
diff --git a/pages/order/list/_id.vue b/pages/order/list/_id.vue
index 47086a7..7c548e7 100644
--- a/pages/order/list/_id.vue
+++ b/pages/order/list/_id.vue
@@ -6,7 +6,20 @@
label-width="auto"
:content="formContent"
readonly
+ class="readonly-form"
></el-bus-form>
+ <template v-if="detail.memberCouponAmount || detail.memberDiscountType">
+ <div class="base-page-wrapper__line"></div>
+ <el-bus-title title="优惠信息" size="small" />
+ <el-bus-form
+ ref="discountForm"
+ label-width="auto"
+ :content="discountForm"
+ readonly
+ class="readonly-form"
+ ></el-bus-form>
+ </template>
+ <div class="base-page-wrapper__line"></div>
<el-bus-title title="商品信息" size="small">
<template #right>
<el-button
@@ -50,8 +63,18 @@
min-width="100"
></el-table-column>
<el-table-column
- label="单价(元)"
+ label="会员单价(元)"
prop="price"
+ min-width="100"
+ ></el-table-column>
+ <el-table-column
+ label="原价(元)"
+ prop="originalPrice"
+ min-width="100"
+ ></el-table-column>
+ <el-table-column
+ label="券后单价(元)"
+ prop="realPrice"
min-width="100"
></el-table-column>
<el-table-column
@@ -135,18 +158,69 @@
</template>
</el-table-column>
</el-table>
+ <template v-if="detail.pointGoodsList && detail.pointGoodsList.length > 0">
+ <div class="base-page-wrapper__line"></div>
+ <el-bus-title title="积分兑换商品" size="small" />
+ <el-table :data="detail.pointGoodsList">
+ <el-table-column label="商品图片">
+ <template #default="{ row }">
+ <el-bus-image
+ :src="row.cover"
+ lazy
+ style="width: 50px; height: 50px"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column label="商品名称" prop="name"></el-table-column>
+ <el-table-column label="兑换数量" prop="num"></el-table-column>
+ </el-table>
+ </template>
<template v-if="afterSaleList && afterSaleList.length > 0">
+ <div class="base-page-wrapper__line"></div>
<el-bus-title title="售后信息" size="small" class="mt-20"></el-bus-title>
<el-table :data="afterSaleList">
- <el-table-column label="原因" prop="reason"></el-table-column>
- <el-table-column label="售后时间" prop="createTime"></el-table-column>
- <el-table-column label="处理时间" prop="auditTime"></el-table-column>
- <el-table-column label="处理状态" prop="statusStr"></el-table-column>
<el-table-column
- label="处理结果"
- prop="auditStatusStr"
+ label="商品名称"
+ prop="flowerName"
+ min-width="150"
+ fixed="left"
></el-table-column>
- <el-table-column label="操作">
+ <el-table-column
+ label="级别"
+ prop="flowerLevelStr"
+ min-width="120"
+ ></el-table-column>
+ <el-table-column
+ label="颜色"
+ prop="flowerColor"
+ min-width="120"
+ ></el-table-column>
+ <el-table-column
+ label="原因"
+ prop="reason"
+ min-width="200"
+ ></el-table-column>
+ <el-table-column
+ label="售后时间"
+ prop="createTime"
+ min-width="180"
+ ></el-table-column>
+ <el-table-column
+ label="处理时间"
+ prop="auditTime"
+ min-width="180"
+ ></el-table-column>
+ <el-table-column
+ label="处理状态"
+ prop="statusStr"
+ min-width="120"
+ ></el-table-column>
+ <el-table-column
+ label="实际退款"
+ prop="totalFee"
+ min-width="120"
+ ></el-table-column>
+ <el-table-column label="操作" width="120" fixed="right">
<template #default="{ row }">
<el-button type="text" @click="toDetail(row.id)"
>查看详情</el-button
@@ -289,14 +363,67 @@
{ label: '收货地址:', id: 'customerWholeAddress', type: 'input' },
{ label: '下单时间:', id: 'createTime', type: 'input' },
{ label: '支付时间:', id: 'paymentTime', type: 'input' },
- { label: '商品金额:', id: 'flowerAmount', type: 'input' },
+ { label: '商品金额:', id: 'flowerAmountDesc', type: 'input' },
{ label: '打包费:', id: 'packingFee', type: 'input' },
{ label: '运费:', id: 'transportFee', type: 'input' },
- { label: '订单金额:', id: 'totalAmount', type: 'input' },
+ { label: '订单金额:', id: 'totalAmountDesc', type: 'input' },
{ label: '订单状态:', id: 'statusBackendStr', type: 'input' },
{ label: '合伙人:', id: 'partnerName', type: 'input' },
{ label: '库区:', id: 'warehouseName', type: 'input' },
{ label: '库位:', id: 'warehouseLocationCode', type: 'input' },
+ {
+ label: '备注:',
+ id: 'remarks',
+ type: 'input',
+ el: { type: 'textarea' },
+ span: 24,
+ },
+ ],
+ },
+ ],
+ discountForm: [
+ {
+ type: 'row',
+ items: [
+ {
+ label: '优惠券名称:',
+ id: 'memberCouponName',
+ type: 'input',
+ hidden: (row) => !row.memberCouponAmount,
+ },
+ {
+ label: '优惠券金额:',
+ id: 'memberCouponAmount',
+ type: 'input',
+ hidden: (row) => !row.memberCouponAmount,
+ },
+ {
+ label: '会员等级:',
+ id: 'memberName',
+ type: 'input',
+ hidden: (row) => !row.memberDiscountType,
+ },
+ {
+ label: '会员折扣类型:',
+ id: 'memberDiscountType',
+ type: 'input',
+ str: true,
+ hidden: (row) => !row.memberDiscountType,
+ },
+ {
+ label: '会员折扣:',
+ id: 'memberDiscountRatio',
+ type: 'input',
+ unit: '%',
+ hidden: (row) => row.memberDiscountType !== 'ratio',
+ },
+ {
+ label: '会员优惠:',
+ id: 'memberDiscountAmount',
+ type: 'input',
+ unit: '元/扎',
+ hidden: (row) => row.memberDiscountType !== 'ratio',
+ },
],
},
],
@@ -432,7 +559,29 @@
data.customerWholeAddress = `${data.customerProvince || ''}${
data.customerCity || ''
}${data.customerRegion || ''}${data.customerAddress || ''}`
+ // 如果享受了会员优惠则显示具体会员优惠
+ data.flowerAmountDesc = data.flowerAmount
+ if (data.memberDiscountType) {
+ if (data.memberDiscountType === 'ratio' && data.memberDiscountRatio) {
+ data.flowerAmountDesc += `(其中享受会员折扣${data.memberDiscountRatio}%)`
+ } else if (
+ data.memberDiscountType === 'amount' &&
+ data.memberDiscountAmount
+ ) {
+ data.flowerAmountDesc += `(其中享受会员优惠每扎减${data.memberDiscountAmount}元)`
+ }
+ }
+ // 如果使用了优惠券则显示优惠券具体信息
+ data.totalAmountDesc = data.totalAmount
+ if (data.memberCouponAmount) {
+ data.totalAmountDesc += `(其中使用了${data.memberCouponAmount}元优惠券)`
+ }
this.detail = data
+ this.$nextTick(() => {
+ if (this.$refs.discountForm) {
+ this.$refs.discountForm.updateForm(data)
+ }
+ })
this.$refs.form.updateForm(data)
}
this.loading = false
@@ -561,6 +710,7 @@
<style lang="scss" scoped>
.order-detail {
+ border-radius: 0;
.el-bus-title {
margin-bottom: 10px;
}
--
Gitblit v1.9.3