Files
2024-02-22 18:37:23 +08:00

114 lines
2.8 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!--
@name: OrderGoodsInfo
@author: kahu4
@date: 2024-01-22 11:55
@descriptionOrderGoodsInfo
@update: 2024-01-22 11:55
-->
<script setup>
import { toRefs } from "vue";
import { useRouter } from "@/hooks/useRouter";
const {push} = useRouter()
const props = defineProps({
orderInfoData: {
type: Object,
required: true
}
})
const {orderInfoData} = toRefs(props)
/**
* 去评价
*/
const toEvaluate = (unique, orderId, isRedirectTo) => {
let config = {
data: {
unique: unique,
orderId: orderId
}
}
if (isRedirectTo) {
config.type = 'redirectTo'
}
push({url: '/pages/evaluate/evaluate'}, config)
}
</script>
<template>
<view class="order-good">
<view
v-for="item in orderInfoData.cartInfo"
:class="{evaluateBtn: orderInfoData._status._type == 3}"
class="order-evaluate"
>
<goods
:data="item.productInfo"
:purchase="item.cartNum"
desc="3"
interval
link
list
model
showAction
>
<template #price>
{{ item.truePrice }}
</template>
<template #action>
<view class="flex flex-column flex-ai__end">
<view
class="after-sale-box"
v-if="item.orderDetailState!==1">
<span v-if="item.orderDetailState===2"> 售后中 </span>
<span v-if="item.orderDetailState===3"> 售后完成 </span>
</view>
</view>
</template>
</goods>
<view
v-if="orderInfoData.status == 2 && item.isReply === 0"
class="order-actions-primary order-evaluate-btn"
@tap.stop="toEvaluate(item.unique,orderInfoData.orderId,true)"
>去评价
</view>
</view>
<view class="order-infos infos mb-20 infos-right border-top">
<view class="info-cell">
<view class="info-cell-label">商品总价</view>
<view class="info-cell-value">¥{{ orderInfoData.cost }}</view>
</view>
<view class="info-cell ">
<view class="info-cell-label">优惠</view>
<view class="info-cell-value">¥{{ orderInfoData.totalCouponPrice }}</view>
</view>
<view class="info-cell ">
<view class="info-cell-label">运费</view>
<view class="info-cell-value">¥{{ orderInfoData.totalPostage }}</view>
</view>
<view class="info-cell ">
<view class="info-cell-label">总计</view>
<view class="info-cell-value">¥{{ orderInfoData.payPrice }}</view>
</view>
</view>
</view>
</template>
<style
scoped
lang="scss">
.order-good {
background: #fff;
border-radius: 15rpx;
margin-bottom: 20rpx;
}
.after-sale-box {
font-size: 22rpx;
color: $tips-color;
}
</style>