From 9e70204584a5c675a4d0e37fff9020d242df9bdb Mon Sep 17 00:00:00 2001
From: mayf <m13160102112@163.com>
Date: 星期五, 06 九月 2024 16:21:50 +0800
Subject: [PATCH] readonly form减少表单项间距 统一详情样式
---
pages/order/list/_id.vue | 99 ++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 96 insertions(+), 3 deletions(-)
diff --git a/pages/order/list/_id.vue b/pages/order/list/_id.vue
index 9e243ad..87dd692 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
@@ -136,6 +159,7 @@
</el-table-column>
</el-table>
<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
@@ -322,14 +346,60 @@
{ 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' },
+ ],
+ },
+ ],
+ 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',
+ },
],
},
],
@@ -465,7 +535,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
@@ -594,6 +686,7 @@
<style lang="scss" scoped>
.order-detail {
+ border-radius: 0;
.el-bus-title {
margin-bottom: 10px;
}
--
Gitblit v1.9.3