mirror of
https://gitee.com/beijing_hongye_huicheng/lilishop-uniapp.git
synced 2026-08-06 02:47:25 +08:00
refactor: 移动端升级 Vue3 + uView Plus
将 lilishop-uniapp 从 Vue2/uView 1.6 迁移到 Vue3/uview-plus,优先支持 H5/微商城与微信小程序;移除 vendored uview-ui,改用 npm 依赖、Vuex4 与迁移脚本/补丁,并补充 VUE3_MIGRATION.md 回归清单。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -54,7 +54,7 @@
|
||||
<view class="goods-title u-line-2">{{ sku.name }}</view>
|
||||
<!-- 如果商品多个则不显示每个商品价格-->
|
||||
<view class="goods-price" v-if="order.orderItems.length <= 1">
|
||||
¥{{ order.flowPrice | unitPrice }}
|
||||
¥{{unitPrice(order.flowPrice) }}
|
||||
</view>
|
||||
</view>
|
||||
<view class="goods-num">
|
||||
@@ -89,31 +89,31 @@
|
||||
class="cannot_apply not_center"
|
||||
v-if="order.serviceType == 'RETURN_GOODS'"
|
||||
>
|
||||
退货处理-{{ order.serviceStatus | serviceStatusList }}</view
|
||||
退货处理-{{serviceStatusList(order.serviceStatus) }}</view
|
||||
>
|
||||
<view
|
||||
class="cannot_apply not_center"
|
||||
v-if="order.serviceType == 'SUPPLY_AGAIN_GOODS'"
|
||||
>
|
||||
补发商品-{{ order.serviceStatus | serviceStatusList }}</view
|
||||
补发商品-{{serviceStatusList(order.serviceStatus) }}</view
|
||||
>
|
||||
<view
|
||||
class="cannot_apply not_center"
|
||||
v-if="order.serviceType == 'RETURN_MONEY'"
|
||||
>
|
||||
退款-{{ order.serviceStatus | serviceStatusList }}</view
|
||||
退款-{{serviceStatusList(order.serviceStatus) }}</view
|
||||
>
|
||||
<view
|
||||
class="cannot_apply not_center"
|
||||
v-if="order.serviceType == 'EXCHANGE_GOODS'"
|
||||
>
|
||||
换货-{{ order.serviceStatus | serviceStatusList }}</view
|
||||
换货-{{serviceStatusList(order.serviceStatus) }}</view
|
||||
>
|
||||
<view
|
||||
class="cannot_apply not_center"
|
||||
v-if="order.serviceType == 'CANCEL'"
|
||||
>
|
||||
取消订单-{{ order.serviceStatus | serviceStatusList }}</view
|
||||
取消订单-{{serviceStatusList(order.serviceStatus) }}</view
|
||||
>
|
||||
</div>
|
||||
|
||||
@@ -177,7 +177,7 @@
|
||||
<!-- 多个商品显示订单总价格 -->
|
||||
<view class="cannot_apply">
|
||||
订单总金额:<span class="countMoney"
|
||||
>¥{{ order.flowPrice | unitPrice }}</span
|
||||
>¥{{unitPrice(order.flowPrice) }}</span
|
||||
>
|
||||
</view>
|
||||
</view>
|
||||
@@ -187,11 +187,11 @@
|
||||
<u-modal
|
||||
show-cancel-button
|
||||
@confirm="closeService"
|
||||
v-model="cancelShow"
|
||||
v-model:show="cancelShow"
|
||||
content="确认取消售后"
|
||||
></u-modal>
|
||||
<u-modal
|
||||
v-model="tipsShow"
|
||||
v-model:show="tipsShow"
|
||||
content="当订单未确认收货|已过售后服务有效期|已申请售后服务时,不能申请售后"
|
||||
></u-modal>
|
||||
</view>
|
||||
|
||||
@@ -10,7 +10,8 @@
|
||||
</view>
|
||||
</view>
|
||||
<view>
|
||||
<view class="goods-item-view" v-for="(item,index) in sku.orderItems" v-if="item.sn == sn"
|
||||
<template v-for="(item,index) in sku.orderItems" :key="index">
|
||||
<view class="goods-item-view" v-if="item.sn == sn"
|
||||
@click="gotoGoodsDetail(sku.goods_id)">
|
||||
<view class="goods-img">
|
||||
<u-image border-radius="6" width="131rpx" height="131rpx" :src="item.image"></u-image>
|
||||
@@ -24,6 +25,7 @@
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
</view>
|
||||
<view class="after-num">
|
||||
<view>申请数量</view>
|
||||
@@ -49,8 +51,8 @@
|
||||
<view class="opt-view">
|
||||
<view class="img-title">上传凭证(最多5张)</view>
|
||||
<view class="images-view">
|
||||
<u-upload :header=" { accessToken: storage.getAccessToken() }" :action="action" width="150"
|
||||
@on-uploaded="onUploaded" :max-count="5" :show-progress="false"></u-upload>
|
||||
<u-upload :file-list="fileList" :auto-upload="false" width="150"
|
||||
@afterRead="onUploadAfterRead" :max-count="5"></u-upload>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -87,10 +89,10 @@
|
||||
<u-button type="primary" ripple shape="circle" v-if="applyInfo.refundWay" :custom-style="customStyle"
|
||||
@click="onSubmit">提交申请</u-button>
|
||||
</view>
|
||||
<u-select mode="single-column" :list="reasonList" v-model="reasonSelectShow" @confirm="reasonSelectConfirm">
|
||||
<u-select mode="single-column" :list="reasonList" v-model:show="reasonSelectShow" @confirm="reasonSelectConfirm">
|
||||
</u-select>
|
||||
<u-select mode="single-column" :list="typeList" v-model="typeSelectShow" @confirm="typeSelectConfirm"></u-select>
|
||||
<u-select mode="single-column" :list="returnList" v-model="returnSelectShow" @confirm="returnSelectConfirm">
|
||||
<u-select mode="single-column" :list="typeList" v-model:show="typeSelectShow" @confirm="typeSelectConfirm"></u-select>
|
||||
<u-select mode="single-column" :list="returnList" v-model:show="returnSelectShow" @confirm="returnSelectConfirm">
|
||||
</u-select>
|
||||
<u-toast ref="uToast" />
|
||||
</view>
|
||||
@@ -104,7 +106,7 @@ import {
|
||||
} from "@/api/after-sale";
|
||||
|
||||
import city from "@/components/m-city/m-city";
|
||||
import { upload } from "@/api/common.js";
|
||||
import { handleUploadAfterRead } from "@/utils/uploadHelper.js";
|
||||
import { checkBankno } from "@/utils/Foundation";
|
||||
import storage from "@/utils/storage.js";
|
||||
export default {
|
||||
@@ -115,7 +117,6 @@ export default {
|
||||
return {
|
||||
storage,
|
||||
list: [{ id: "", localName: "请选择", children: [] }],
|
||||
action: upload, //图片上传数据
|
||||
fileList: [],
|
||||
sn: "",
|
||||
sku: {},
|
||||
@@ -263,14 +264,10 @@ export default {
|
||||
valChange(e) {
|
||||
this.form.num = e.value;
|
||||
},
|
||||
//图片上传
|
||||
onUploaded(lists) {
|
||||
let images = [];
|
||||
|
||||
lists.forEach((item) => {
|
||||
images.push(item.response.result);
|
||||
onUploadAfterRead(event) {
|
||||
handleUploadAfterRead(event, this.fileList, (urls) => {
|
||||
this.form.images = urls;
|
||||
});
|
||||
this.form.images = images;
|
||||
},
|
||||
//提交申请
|
||||
onSubmit() {
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<view class="goods-info">
|
||||
<view class="goods-title u-line-2">{{ sku.name }}</view>
|
||||
<view class="goods-price">
|
||||
<span>¥{{ sku.price | unitPrice }}</span>
|
||||
<span>¥{{unitPrice(sku.price) }}</span>
|
||||
<span class="num">购买数量: {{ sku.num }} </span>
|
||||
</view>
|
||||
</view>
|
||||
@@ -55,9 +55,9 @@
|
||||
</u-button>
|
||||
</view>
|
||||
</u-form>
|
||||
<u-select mode="single-column" :list="companyList" v-model="companySelectShow"
|
||||
<u-select mode="single-column" :list="companyList" v-model:show="companySelectShow"
|
||||
@confirm="companySelectConfirm"></u-select>
|
||||
<u-calendar v-model="timeshow" :mode="'date'" @change="onTimeChange"></u-calendar>
|
||||
<u-calendar v-model:show="timeshow" :mode="'date'" @change="onTimeChange"></u-calendar>
|
||||
<u-toast ref="uToast"/>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
@@ -9,7 +9,8 @@
|
||||
</view>
|
||||
</view>
|
||||
<view>
|
||||
<view class="goods-item-view" :key="index" v-for="(item,index) in sku.orderItems" v-if="item.sn == sn" @click="navigateToGoodsDetail(sku.skuId)">
|
||||
<template v-for="(item,index) in sku.orderItems" :key="index">
|
||||
<view class="goods-item-view" v-if="item.sn == sn" @click="navigateToGoodsDetail(sku.skuId)">
|
||||
<view class="goods-img">
|
||||
<u-image border-radius="6" width="131rpx" height="131rpx" :src="item.image"></u-image>
|
||||
</view>
|
||||
@@ -22,6 +23,7 @@
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
@@ -11,12 +11,10 @@
|
||||
<view class="apply-info-view">
|
||||
<view class="status-info">
|
||||
<view class="status-info-box">
|
||||
<view class="status-val">{{
|
||||
serviceDetail.serviceStatus | serviceStatusList
|
||||
<view class="status-val">{{serviceStatusList(serviceDetail.serviceStatus)
|
||||
}}</view>
|
||||
|
||||
<view class="status-tip">{{
|
||||
serviceDetail.serviceStatus | statusFilter
|
||||
<view class="status-tip">{{statusFilter(serviceDetail.serviceStatus)
|
||||
}}</view>
|
||||
</view>
|
||||
</view>
|
||||
@@ -43,7 +41,7 @@
|
||||
}}</view>
|
||||
|
||||
<view class="goods-price">
|
||||
<view class="price"> ¥{{ serviceDetail.flowPrice | unitPrice }}</view>
|
||||
<view class="price"> ¥{{unitPrice(serviceDetail.flowPrice) }}</view>
|
||||
<view>
|
||||
<view>申请售后数量:{{ serviceDetail.num }}</view>
|
||||
</view>
|
||||
@@ -116,44 +114,40 @@
|
||||
v-if="serviceDetail.serviceType != 'RETURN_MONEY' && serviceDetail.serviceStatus != 'APPLY'">
|
||||
<view class="title">联系方式:</view>
|
||||
<view class="value">{{
|
||||
storeAfterSaleAddress.salesConsigneeMobile || "" | secrecyMobile
|
||||
storeAfterSaleAddress.salesConsigneeMobile
|
||||
? secrecyMobile(storeAfterSaleAddress.salesConsigneeMobile)
|
||||
: ''
|
||||
}}</view>
|
||||
</view>
|
||||
<view v-if="refundShow">
|
||||
<view class="detail-item">
|
||||
<view class="title">退款金额:</view>
|
||||
<view class="value">{{
|
||||
serviceDetail.flowPrice | unitPrice("¥")
|
||||
<view class="value">{{unitPrice(serviceDetail.flowPrice, "¥")
|
||||
}}</view>
|
||||
</view>
|
||||
<view class="detail-item" v-if="serviceDetail.agree_price">
|
||||
<view class="title">同意退款:</view>
|
||||
<view class="value">{{
|
||||
serviceDetail.agree_price | unitPrice("¥")
|
||||
<view class="value">{{unitPrice(serviceDetail.agree_price, "¥")
|
||||
}}</view>
|
||||
</view>
|
||||
<view class="detail-item" v-if="serviceDetail.actual_price">
|
||||
<view class="title">实际退款:</view>
|
||||
<view class="value">{{
|
||||
serviceDetail.actual_price | unitPrice("¥")
|
||||
<view class="value">{{unitPrice(serviceDetail.actual_price, "¥")
|
||||
}}</view>
|
||||
</view>
|
||||
<view class="detail-item" v-if="serviceDetail.actual_price">
|
||||
<view class="title">退款时间:</view>
|
||||
<view class="value">{{
|
||||
serviceDetail.refund_time | unixToDate
|
||||
<view class="value">{{unixToDate(serviceDetail.refund_time)
|
||||
}}</view>
|
||||
</view>
|
||||
<view class="detail-item" v-if="serviceDetail.refund_price !== 0">
|
||||
<view class="title">退款方式:</view>
|
||||
<view class="value">{{
|
||||
serviceDetail.refundWay | refundWayFilter
|
||||
<view class="value">{{refundWayFilter(serviceDetail.refundWay)
|
||||
}}</view>
|
||||
</view>
|
||||
<view class="detail-item" v-if="accountShow && serviceDetail.refund_price != 0">
|
||||
<view class="title">账户类型:</view>
|
||||
<view class="value">{{
|
||||
serviceDetail.accountType | accountTypeFilter
|
||||
<view class="value">{{accountTypeFilter(serviceDetail.accountType)
|
||||
}}</view>
|
||||
</view>
|
||||
<view class="detail-item" v-if="
|
||||
@@ -232,10 +226,7 @@ export default {
|
||||
this.getAddress();
|
||||
this.getLog(options.sn);
|
||||
},
|
||||
filters: {
|
||||
/**
|
||||
* 售后状态信息
|
||||
*/
|
||||
methods: {
|
||||
statusFilter(val) {
|
||||
switch (val) {
|
||||
case "APPLY":
|
||||
@@ -264,25 +255,16 @@ export default {
|
||||
return "";
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* 退款信息
|
||||
*/
|
||||
refundWayFilter(val) {
|
||||
switch (val) {
|
||||
case "OFFLINE":
|
||||
return "账户退款";
|
||||
case "OFFLINE":
|
||||
return "线下退款";
|
||||
case "ORIGINAL":
|
||||
return "原路退回";
|
||||
default:
|
||||
return "";
|
||||
}
|
||||
},
|
||||
/**
|
||||
* 账户信息
|
||||
*/
|
||||
accountTypeFilter(val) {
|
||||
switch (val) {
|
||||
case "WEIXINPAY":
|
||||
@@ -295,8 +277,6 @@ export default {
|
||||
return "";
|
||||
}
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
/**
|
||||
* 点击图片放大或保存
|
||||
*/
|
||||
|
||||
@@ -18,12 +18,11 @@
|
||||
<view class="info-view">
|
||||
<view>
|
||||
<u-time-line v-if="logList.length != 0">
|
||||
<u-time-line-item>
|
||||
<!-- 此处没有自定义左边的内容,会默认显示一个点 -->
|
||||
<template v-slot:content>
|
||||
<view v-for="(time,index) in logList" :key="index">
|
||||
<view class="u-order-desc">{{time.message}}</view>
|
||||
<view class="u-order-time">{{time.createTime}}</view>
|
||||
<u-time-line-item v-for="(time, index) in logList" :key="index">
|
||||
<template #content>
|
||||
<view>
|
||||
<view class="u-order-desc">{{ time.message }}</view>
|
||||
<view class="u-order-time">{{ time.createTime }}</view>
|
||||
</view>
|
||||
</template>
|
||||
</u-time-line-item>
|
||||
|
||||
@@ -5,29 +5,31 @@
|
||||
<view class="seller-info u-flex u-row-between">
|
||||
<view class="seller-name">
|
||||
<view class="name">{{ order.storeName || "" }}</view>
|
||||
<view class="status">{{ orderStatusList[order.orderStatus] }}</view>
|
||||
<view class="status">{{ orderStatusMap[order.orderStatus] }}</view>
|
||||
</view>
|
||||
<view class="order-sn"></view>
|
||||
</view>
|
||||
<u-line color="#DCDFE6"></u-line>
|
||||
<view class="goods-item-view" v-for="(sku, index) in orderGoodsList" :key="index" v-if="sku.skuId == skuId">
|
||||
<template v-for="(sku, index) in orderGoodsList" :key="index">
|
||||
<view class="goods-item-view" v-if="sku.skuId == skuId">
|
||||
<view class="goods-img">
|
||||
<u-image border-radius="6" width="131rpx" height="131rpx" :src="sku.image"></u-image>
|
||||
</view>
|
||||
<view class="goods-info">
|
||||
<view class="goods-title u-line-2">{{ sku.goodsName }}</view>
|
||||
<view class="goods-price">
|
||||
¥{{ sku.flowPrice | unitPrice }}
|
||||
¥{{unitPrice(sku.flowPrice) }}
|
||||
</view>
|
||||
</view>
|
||||
<view class="goods-num">
|
||||
<view>x{{ sku.num }}</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
</view>
|
||||
|
||||
<!-- 投诉主题 -->
|
||||
<u-select @confirm="confirmComplain" v-model="complainShow" :list="complainList"></u-select>
|
||||
<u-select @confirm="confirmComplain" v-model:show="complainShow" :list="complainList"></u-select>
|
||||
<!-- 投诉模块 -->
|
||||
<view class="cell">
|
||||
<view class="cell-item between" @click="complainShow = true">
|
||||
@@ -45,7 +47,7 @@
|
||||
<view class="cell-item">
|
||||
<view class="cell-title"> 投诉凭证 </view>
|
||||
<view class="cell-view">
|
||||
<u-upload ref="uUpload" :header=" { accessToken: storage.getAccessToken() }" :action="action" width="200" @on-uploaded="onUploaded" :max-count="5">
|
||||
<u-upload :file-list="uploadFileList" :auto-upload="false" width="200" @afterRead="onUploadAfterRead" :max-count="5">
|
||||
</u-upload>
|
||||
</view>
|
||||
</view>
|
||||
@@ -59,13 +61,13 @@
|
||||
import storage from "@/utils/storage.js";
|
||||
import { getOrderDetail } from "@/api/order.js";
|
||||
import { getComplainReason, addComplain } from "@/api/after-sale.js";
|
||||
import { upload } from "@/api/common.js";
|
||||
import { handleUploadAfterRead } from "@/utils/uploadHelper.js";
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
storage,
|
||||
action: upload, //上传图片地址
|
||||
orderStatusList: {
|
||||
uploadFileList: [],
|
||||
orderStatusMap: {
|
||||
//订单状态列表
|
||||
UNDELIVERED: "待发货",
|
||||
PARTS_DELIVERED: "部分发货",
|
||||
@@ -97,15 +99,10 @@ export default {
|
||||
},
|
||||
|
||||
methods: {
|
||||
/**
|
||||
* 上传完成
|
||||
*/
|
||||
onUploaded(lists) {
|
||||
let images = [];
|
||||
lists.forEach((item) => {
|
||||
images.push(item.response.result);
|
||||
onUploadAfterRead(event) {
|
||||
handleUploadAfterRead(event, this.uploadFileList, (urls) => {
|
||||
this.images = urls;
|
||||
});
|
||||
this.images = images;
|
||||
},
|
||||
/**
|
||||
* 提交
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
<view class="wrapper">
|
||||
<view class="tips">我的投诉信息</view>
|
||||
<u-cell-group>
|
||||
<u-cell-item :arrow="false" :value="complainDetail.goodsName" title="投诉商品"></u-cell-item>
|
||||
<u-cell-item :arrow="false" :value="statusData[complainDetail.complainStatus]" title="投诉状态"></u-cell-item>
|
||||
<u-cell-item :arrow="false" :value="complainDetail.createTime" title="投诉时间"></u-cell-item>
|
||||
<u-cell-item :arrow="false" :value="complainDetail.complainTopic" title="投诉主题"></u-cell-item>
|
||||
<u-cell-item :arrow="false" :value="complainDetail.content" title="投诉内容"></u-cell-item>
|
||||
<u-cell :isLink="false" :value="complainDetail.goodsName" title="投诉商品"></u-cell>
|
||||
<u-cell :isLink="false" :value="statusData[complainDetail.complainStatus]" title="投诉状态"></u-cell>
|
||||
<u-cell :isLink="false" :value="complainDetail.createTime" title="投诉时间"></u-cell>
|
||||
<u-cell :isLink="false" :value="complainDetail.complainTopic" title="投诉主题"></u-cell>
|
||||
<u-cell :isLink="false" :value="complainDetail.content" title="投诉内容"></u-cell>
|
||||
<view class="row" v-if="complainDetail.orderComplaintImages">
|
||||
<u-image width="100rpx" height="100rpx" border-radius="10" style="margin: 0 10rpx" v-for="(item, index) in complainDetail.orderComplaintImages" :key="index" :src="item"
|
||||
@click="preview(complainDetail.orderComplaintImages, index)" />
|
||||
@@ -14,8 +14,8 @@
|
||||
</u-cell-group>
|
||||
<view class="tips">商家申诉信息</view>
|
||||
<u-cell-group>
|
||||
<u-cell-item :arrow="false" :value="complainDetail.appealTime || '暂无'" title="申诉时间"></u-cell-item>
|
||||
<u-cell-item :arrow="false" :value="complainDetail.appealContent || '暂无'" title="申诉内容"></u-cell-item>
|
||||
<u-cell :isLink="false" :value="complainDetail.appealTime || '暂无'" title="申诉时间"></u-cell>
|
||||
<u-cell :isLink="false" :value="complainDetail.appealContent || '暂无'" title="申诉内容"></u-cell>
|
||||
<view class="row" v-if="complainDetail.appealImagesList">
|
||||
<u-image width="100rpx" height="100rpx" border-radius="10" style="margin: 0 10rpx" v-for="(item, index) in complainDetail.appealImagesList"
|
||||
@click="preview(complainDetail.appealImagesList, index)" :key="index" :src="item" />
|
||||
@@ -46,7 +46,7 @@
|
||||
</div>
|
||||
<view class="tips">平台仲裁</view>
|
||||
<u-cell-group>
|
||||
<u-cell-item :arrow="false" title="仲裁意见" :value="complainDetail.arbitrationResult || '暂无'"></u-cell-item>
|
||||
<u-cell :isLink="false" title="仲裁意见" :value="complainDetail.arbitrationResult || '暂无'"></u-cell>
|
||||
</u-cell-group>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<view class="goods-info" @click="handleToGoods(item)">
|
||||
<view class="goods-title u-line-2">{{ item.goodsName }}</view>
|
||||
<view class="goods-price">
|
||||
¥{{ item.goodsPrice | unitPrice }}
|
||||
¥{{unitPrice(item.goodsPrice) }}
|
||||
<!-- <span>+{{ '1' }}积分</span> -->
|
||||
</view>
|
||||
</view>
|
||||
@@ -36,7 +36,7 @@
|
||||
|
||||
<u-empty v-if="empty" :style="{'marginTop':complaionDetail.total == 0 ? '200rpx':'0rpx'}" class="empty" style="" text="暂无投诉列表" mode="list"></u-empty>
|
||||
|
||||
<u-modal show-cancel-button @confirm="handleClearConfirm" v-model="show" :content="content"></u-modal>
|
||||
<u-modal show-cancel-button @confirm="handleClearConfirm" v-model:show="show" :content="content"></u-modal>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<view class="logistics-detail">
|
||||
<view class="card">
|
||||
<div v-if="logisticsList && logisticsList.length>0">
|
||||
<ul class="express-log" v-for="(packageItem, packageIndex) in logisticsList" :key="packageIndex" v-if="packageItem">
|
||||
<ul class="express-log" v-for="(packageItem, packageIndex) in logisticsList" :key="packageIndex">
|
||||
<div class="layui-layer-wrap">
|
||||
<dl>
|
||||
<dt>物流公司:</dt>
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
<!-- 如果有图片则会循环显示评价的图片 -->
|
||||
<view class="goods-imgs-view" v-if="comment.images != null && comment.images.length != 0">
|
||||
<view class="img-view" v-for="(img, imgIndex) in comment.images.split(',')" :key="imgIndex">
|
||||
<u-image @click.native="preview(comment.images.split(','),imgIndex)" width="160rpx" height="160rpx" :src="img"></u-image>
|
||||
<u-image @click="preview(comment.images.split(','),imgIndex)" width="160rpx" height="160rpx" :src="img"></u-image>
|
||||
</view>
|
||||
</view>
|
||||
<view class="goods-name">
|
||||
|
||||
@@ -7,7 +7,8 @@
|
||||
</view>
|
||||
<swiper class="swiper-box" :current="current" @change="changeSwiper" duration="500">
|
||||
<swiper-item v-for="(item, listIndex) in list" :key="listIndex">
|
||||
<scroll-view scroll-y style="height: 100%" @scrolltolower="renderData(listIndex)">
|
||||
<scroll-view scroll-y :enable-flex="true" class="evaluate-scroll" @scrolltolower="renderData(listIndex)">
|
||||
<view class="evaluate-scroll-inner">
|
||||
<u-empty text="尚无需要评价的商品" mode="list" v-if="orderList.length == 0"></u-empty>
|
||||
<view class="seller-view" v-for="(order, index) in orderList" :key="index">
|
||||
<!-- 店铺名称 -->
|
||||
@@ -38,7 +39,7 @@
|
||||
<view class="goods-imgs-view" v-if="order.image">
|
||||
<view class="img-view" v-if="order.image" v-for="(img, imgIndex) in order.image.split(',')"
|
||||
:key="imgIndex">
|
||||
<u-image v-if="order.image" @click.native="
|
||||
<u-image v-if="order.image" @click="
|
||||
preview(order.image.split(','), imgIndex)
|
||||
" width="160rpx" height="160rpx" :src="img"></u-image>
|
||||
</view>
|
||||
@@ -62,6 +63,7 @@
|
||||
|
||||
</view>
|
||||
<uni-load-more :status="params.loadStatus"></uni-load-more>
|
||||
</view>
|
||||
</scroll-view>
|
||||
</swiper-item>
|
||||
</swiper>
|
||||
@@ -327,6 +329,16 @@ page {
|
||||
height: calc(100% - 88rpx);
|
||||
}
|
||||
|
||||
.evaluate-scroll {
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.evaluate-scroll-inner {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.goods-specs {
|
||||
margin-bottom: 10rpx;
|
||||
color: #cccccc;
|
||||
|
||||
@@ -51,8 +51,8 @@
|
||||
</view>
|
||||
<view class="info-evaluate-view">
|
||||
<view class="images-view">
|
||||
<u-upload :header=" { accessToken: storage.getAccessToken() }" :action="action" width="150"
|
||||
@on-uploaded="onUploaded" :max-count="5" :show-progress="false"></u-upload>
|
||||
<u-upload :file-list="uploadFileList" :auto-upload="false" width="150"
|
||||
@afterRead="onUploadAfterRead" :max-count="5"></u-upload>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@@ -62,20 +62,20 @@
|
||||
<view class="seller-rate-view">
|
||||
<view class="rate-title">描述相符</view>
|
||||
<view>
|
||||
<u-rate count="count" gutter="20" active-color="#FFC71C" v-model="form.descriptionScore" :size="40">
|
||||
<u-rate :count="5" gutter="20" active-color="#FFC71C" v-model="form.descriptionScore" :size="40">
|
||||
</u-rate>
|
||||
</view>
|
||||
</view>
|
||||
<view class="seller-rate-view">
|
||||
<view class="rate-title">服务态度</view>
|
||||
<view>
|
||||
<u-rate count="count" gutter="20" active-color="#FFC71C" v-model="form.serviceScore" :size="40"></u-rate>
|
||||
<u-rate :count="5" gutter="20" active-color="#FFC71C" v-model="form.serviceScore" :size="40"></u-rate>
|
||||
</view>
|
||||
</view>
|
||||
<view class="seller-rate-view">
|
||||
<view class="rate-title">物流服务</view>
|
||||
<view>
|
||||
<u-rate count="count" gutter="20" active-color="#FFC71C" v-model="form.deliveryScore" :size="40"></u-rate>
|
||||
<u-rate :count="5" gutter="20" active-color="#FFC71C" v-model="form.deliveryScore" :size="40"></u-rate>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@@ -89,7 +89,7 @@
|
||||
<script>
|
||||
import storage from "@/utils/storage.js";
|
||||
import { commentsMemberOrder } from "@/api/members.js";
|
||||
import { upload } from "@/api/common.js";
|
||||
import { handleUploadAfterRead } from "@/utils/uploadHelper.js";
|
||||
|
||||
export default {
|
||||
data() {
|
||||
@@ -111,7 +111,7 @@ export default {
|
||||
serviceScore: 5, //默认服务得分为5分
|
||||
deliveryScore: 5, //默认物流得分为5分
|
||||
},
|
||||
action: upload, //图片上传地址
|
||||
uploadFileList: [],
|
||||
};
|
||||
},
|
||||
onLoad(options) {
|
||||
@@ -153,15 +153,10 @@ export default {
|
||||
});
|
||||
},
|
||||
|
||||
/**
|
||||
* 图片成功后回调
|
||||
*/
|
||||
onUploaded(lists) {
|
||||
let images = [];
|
||||
lists.forEach((item) => {
|
||||
images.push(item.response.result);
|
||||
onUploadAfterRead(event) {
|
||||
handleUploadAfterRead(event, this.uploadFileList, (urls) => {
|
||||
this.form.images = urls;
|
||||
});
|
||||
this.form.images = images;
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
<!-- 姓名 手机号 -->
|
||||
<div>
|
||||
<span>{{ address.name }}</span>
|
||||
<span class="mobile">{{ address.mobile | secrecyMobile }}</span>
|
||||
<span class="mobile">{{secrecyMobile(address.mobile) }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -101,7 +101,7 @@
|
||||
width="81rpx"
|
||||
height="81rpx"
|
||||
>
|
||||
<view slot="loading"></view>
|
||||
<template #loading><view></view></template>
|
||||
</u-image>
|
||||
<u-image
|
||||
class="head-img"
|
||||
@@ -174,11 +174,11 @@
|
||||
<p class="goods-prices">
|
||||
<span>¥</span>
|
||||
<span class="goods-price">{{
|
||||
$options.filters.goodsFormatPrice(val.purchasePrice)[0]
|
||||
goodsFormatPrice(val.purchasePrice)[0]
|
||||
}}</span>
|
||||
<span
|
||||
>.{{
|
||||
$options.filters.goodsFormatPrice(val.purchasePrice)[1]
|
||||
goodsFormatPrice(val.purchasePrice)[1]
|
||||
}}</span
|
||||
>
|
||||
</p>
|
||||
@@ -190,7 +190,7 @@
|
||||
:span="8"
|
||||
class="tipsColor"
|
||||
textAlign="right"
|
||||
@click.native="invoice()"
|
||||
@click="invoice()"
|
||||
>
|
||||
<span v-if="receiptList"
|
||||
>{{ receiptList.receiptTitle }} -
|
||||
@@ -214,9 +214,7 @@
|
||||
@click="shippingFlag = true"
|
||||
>
|
||||
{{
|
||||
shippingMethod.find((e) => {
|
||||
return e.value == shippingText;
|
||||
}).label
|
||||
getShippingLabel()
|
||||
}}
|
||||
</u-col>
|
||||
</u-row>
|
||||
@@ -243,7 +241,7 @@
|
||||
/>
|
||||
<u-select
|
||||
@confirm="confirmDistribution"
|
||||
v-model="shippingFlag"
|
||||
v-model:show="shippingFlag"
|
||||
v-if="shippingMethod.length != 0"
|
||||
:list="shippingMethod"
|
||||
></u-select>
|
||||
@@ -254,7 +252,7 @@
|
||||
<u-col :span="9">商品合计</u-col>
|
||||
<u-col :span="3" textAlign="right">
|
||||
<span
|
||||
>¥{{ orderMessage.priceDetailDTO.goodsPrice | unitPrice }}</span
|
||||
>¥{{unitPrice(orderMessage.priceDetailDTO.goodsPrice) }}</span
|
||||
>
|
||||
</u-col>
|
||||
</u-row>
|
||||
@@ -274,8 +272,7 @@
|
||||
>包邮</span
|
||||
>
|
||||
<span v-else
|
||||
>¥{{
|
||||
orderMessage.priceDetailDTO.freightPrice | unitPrice
|
||||
>¥{{unitPrice(orderMessage.priceDetailDTO.freightPrice)
|
||||
}}</span
|
||||
>
|
||||
</u-col>
|
||||
@@ -298,10 +295,10 @@
|
||||
@click="GET_Discount()"
|
||||
>
|
||||
<span class="main-color"
|
||||
>-¥{{ orderMessage.priceDetailDTO.couponPrice | unitPrice }}</span
|
||||
>-¥{{unitPrice(orderMessage.priceDetailDTO.couponPrice) }}</span
|
||||
>
|
||||
</u-col>
|
||||
<!-- orderMessage.priceDetailDTO.couponPrice | unitPrice -->
|
||||
<!--unitPrice(orderMessage.priceDetailDTO.couponPrice) -->
|
||||
<u-col :span="3" v-else textAlign="right" @click="GET_Discount()">
|
||||
{{ orderMessage.canUseCoupons.length || "0" }} 张可用
|
||||
<u-icon name="arrow-right"></u-icon>
|
||||
@@ -316,7 +313,7 @@
|
||||
v-if="orderMessage.priceDetailDTO.couponPrice"
|
||||
>
|
||||
<span class="main-color">
|
||||
-¥{{ orderMessage.priceDetailDTO.couponPrice | unitPrice }}</span
|
||||
-¥{{unitPrice(orderMessage.priceDetailDTO.couponPrice) }}</span
|
||||
>
|
||||
</u-col>
|
||||
<u-col :span="3" textAlign="right" v-else>0.00</u-col>
|
||||
@@ -327,8 +324,7 @@
|
||||
<u-col :span="6">活动优惠</u-col>
|
||||
<u-col :span="6" class="tr tipsColor" textAlign="right">
|
||||
<span v-if="orderMessage.priceDetailDTO.discountPrice"
|
||||
>-¥{{
|
||||
orderMessage.priceDetailDTO.discountPrice | unitPrice
|
||||
>-¥{{unitPrice(orderMessage.priceDetailDTO.discountPrice)
|
||||
}}</span
|
||||
>
|
||||
<span v-else>0.00</span>
|
||||
@@ -355,21 +351,20 @@
|
||||
<div v-if="!orderMessage.priceDetailDTO.payPoint" class="number">
|
||||
<span>¥</span>
|
||||
<span class="price">{{
|
||||
$options.filters.goodsFormatPrice(
|
||||
goodsFormatPrice(
|
||||
orderMessage.priceDetailDTO.flowPrice
|
||||
)[0]
|
||||
}}</span>
|
||||
<span
|
||||
>.{{
|
||||
$options.filters.goodsFormatPrice(
|
||||
goodsFormatPrice(
|
||||
orderMessage.priceDetailDTO.flowPrice
|
||||
)[1]
|
||||
}}
|
||||
</span>
|
||||
</div>
|
||||
<span v-else class="number"
|
||||
><span style="margin-right: 10rpx">{{
|
||||
orderMessage.priceDetailDTO.payPoint | unitPrice
|
||||
><span style="margin-right: 10rpx">{{unitPrice(orderMessage.priceDetailDTO.payPoint)
|
||||
}}</span
|
||||
>积分</span
|
||||
>
|
||||
@@ -462,25 +457,6 @@ export default {
|
||||
computed: {
|
||||
...mapState(["remark"]),
|
||||
},
|
||||
filters: {
|
||||
/**
|
||||
* 发票收据类型
|
||||
*/
|
||||
receiptType(type) {
|
||||
switch (type) {
|
||||
case "1":
|
||||
case "VATORDINARY":
|
||||
case "ELECTRO":
|
||||
return "电子普通发票";
|
||||
case "2":
|
||||
case "VATOSPECIAL":
|
||||
return "增值税专用发票";
|
||||
default:
|
||||
return "不开发票";
|
||||
}
|
||||
},
|
||||
},
|
||||
|
||||
/**
|
||||
* 监听返回
|
||||
*/
|
||||
@@ -535,6 +511,13 @@ export default {
|
||||
mounted() {},
|
||||
|
||||
methods: {
|
||||
getShippingLabel() {
|
||||
const item =
|
||||
this.shippingMethod.find((e) => e.value === this.shippingText) ||
|
||||
this.shippingWay.find((e) => e.value === this.shippingText);
|
||||
return item ? item.label : "";
|
||||
},
|
||||
|
||||
//发票回调 选择发票之后刷新购物车
|
||||
async callbackInvoice(val) {
|
||||
this.invoiceFlag = false;
|
||||
@@ -578,7 +561,7 @@ export default {
|
||||
pintuanWay() {
|
||||
const { memberId } = this.routerVal.parentOrder;
|
||||
|
||||
const userInfo = this.$options.filters.isLogin();
|
||||
const userInfo = this.isLogin();
|
||||
if (memberId) {
|
||||
this.endWay = userInfo;
|
||||
this.masterWay = this.routerVal.parentOrder;
|
||||
@@ -768,6 +751,9 @@ export default {
|
||||
});
|
||||
});
|
||||
this.shippingMethod = way;
|
||||
if (way.length && !way.some((item) => item.value === this.shippingText)) {
|
||||
this.shippingText = way[0].value;
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
@@ -826,7 +812,7 @@ export default {
|
||||
storeId: item.storeId,
|
||||
};
|
||||
|
||||
this.$set(this.remarkVal, index, repeatData);
|
||||
this.remarkVal[index] = repeatData;
|
||||
});
|
||||
|
||||
this.orderMessage = res.data.result;
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<view></view>
|
||||
</view>
|
||||
</view>
|
||||
<view>{{order.receiptPrice | unitPrice('¥')}}</view>
|
||||
<view>{{unitPrice(order.receiptPrice, '¥')}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="common-msg flex-center">
|
||||
@@ -29,19 +29,19 @@
|
||||
</view>
|
||||
</view>
|
||||
<u-cell-group :border="false">
|
||||
<u-cell-item title="发票类型" :border-top="false" :value="order.receiptType || '-'" :arrow="false"></u-cell-item>
|
||||
<u-cell-item title="发票内容" :value="order.receiptContent" :arrow="false"></u-cell-item>
|
||||
<u-cell-item :title="title_type + '名称'" :value="getTitleNameValue()" :arrow="false"></u-cell-item>
|
||||
<u-cell-item title="纳税人识别号" v-if="order.taxpayerId" :value="order.taxpayerId" :arrow="false"></u-cell-item>
|
||||
<u-cell-item title="单位地址" v-if="order.companyAddress" :value="order.companyAddress" :arrow="false"></u-cell-item>
|
||||
<u-cell-item title="单位电话" v-if="order.companyPhone" :value="order.companyPhone" :arrow="false"></u-cell-item>
|
||||
<u-cell-item title="开户银行" v-if="order.bankName" :value="order.bankName" :arrow="false"></u-cell-item>
|
||||
<u-cell-item title="银行账号" v-if="order.bankAccount" :value="order.bankAccount" :arrow="false"></u-cell-item>
|
||||
<u-cell-item title="收票人手机" :value="order.receiptPhone" :arrow="false"></u-cell-item>
|
||||
<u-cell-item title="收票人邮箱" v-if="order.receiptEmail" :value="order.receiptEmail" :arrow="false"></u-cell-item>
|
||||
<u-cell title="发票类型" :border-top="false" :value="order.receiptType || '-'" :isLink="false"></u-cell>
|
||||
<u-cell title="发票内容" :value="order.receiptContent" :isLink="false"></u-cell>
|
||||
<u-cell :title="title_type + '名称'" :value="getTitleNameValue()" :isLink="false"></u-cell>
|
||||
<u-cell title="纳税人识别号" v-if="order.taxpayerId" :value="order.taxpayerId" :isLink="false"></u-cell>
|
||||
<u-cell title="单位地址" v-if="order.companyAddress" :value="order.companyAddress" :isLink="false"></u-cell>
|
||||
<u-cell title="单位电话" v-if="order.companyPhone" :value="order.companyPhone" :isLink="false"></u-cell>
|
||||
<u-cell title="开户银行" v-if="order.bankName" :value="order.bankName" :isLink="false"></u-cell>
|
||||
<u-cell title="银行账号" v-if="order.bankAccount" :value="order.bankAccount" :isLink="false"></u-cell>
|
||||
<u-cell title="收票人手机" :value="order.receiptPhone" :isLink="false"></u-cell>
|
||||
<u-cell title="收票人邮箱" v-if="order.receiptEmail" :value="order.receiptEmail" :isLink="false"></u-cell>
|
||||
</u-cell-group>
|
||||
<u-popup
|
||||
v-model="showInvoicePopup"
|
||||
v-model:show="showInvoicePopup"
|
||||
mode="center"
|
||||
width="90%"
|
||||
border-radius="20"
|
||||
@@ -60,8 +60,8 @@
|
||||
</view>
|
||||
</u-popup>
|
||||
<!-- <u-cell-group :border="false" style="margin-top: 20rpx;">
|
||||
<u-cell-item title="订单状态" :border-top="false" :value="order.order_status_text" :arrow="false"></u-cell-item>
|
||||
<u-cell-item title="订单编号" :value="order.sn" :arrow="false"></u-cell-item>
|
||||
<u-cell title="订单状态" :border-top="false" :value="order.order_status_text" :isLink="false"></u-cell>
|
||||
<u-cell title="订单编号" :value="order.sn" :isLink="false"></u-cell>
|
||||
</u-cell-group> -->
|
||||
<!-- <view class="show-pic" @click="preview">
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<u-popup closeable border-radius="28" @close="close" mode="bottom" height="80%" v-model="show">
|
||||
<u-popup closeable border-radius="28" @close="close" mode="bottom" height="80%" v-model:show="show">
|
||||
|
||||
<div class="wrapper">
|
||||
<!-- 发票类型 -->
|
||||
|
||||
@@ -17,16 +17,15 @@
|
||||
<view class="seller-name wes" @click="navigateToStore(order)">
|
||||
<view class="name">{{ order.storeName }}</view>
|
||||
|
||||
<view class="name" v-if="order.orderPromotionType">
|
||||
<u-tag
|
||||
:text="renderOrderTag(order.orderPromotionType)"
|
||||
:color="renderOrderTagColor(order.orderPromotionType)"
|
||||
<view class="name" v-if="renderOrderTag(order.orderPromotionType)">
|
||||
<u-tag
|
||||
:text="renderOrderTag(order.orderPromotionType)"
|
||||
:color="renderOrderTagColor(order.orderPromotionType)"
|
||||
/>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<view class="order-sn">{{
|
||||
order.orderStatus | orderStatusList
|
||||
<view class="order-sn">{{orderStatusList(order.orderStatus)
|
||||
}}</view>
|
||||
</view>
|
||||
<view>
|
||||
@@ -34,14 +33,14 @@
|
||||
<view class="goods-item-view" @click="navigateToOrderDetail(order.sn)">
|
||||
<view class="goods-img" v-for="(goods, goodsIndex) in order.orderItems"
|
||||
:key="goodsIndex">
|
||||
<u-image border-radius="6" width="100%" height="100%"
|
||||
:src="goods.image"></u-image>
|
||||
<u-image border-radius="6" width="131rpx" height="131rpx" mode="aspectFill"
|
||||
:src="getOrderItemImage(goods, order, goodsIndex)"></u-image>
|
||||
</view>
|
||||
<view class="goods-info">
|
||||
<view v-if="order.orderItems.length <= 1" class="goods-title u-line-2">
|
||||
{{ order.groupName }}</view>
|
||||
<view v-if="order.orderItems.length <= 1" class="goods-price">
|
||||
¥{{ order.flowPrice | unitPrice }}
|
||||
¥{{unitPrice(order.flowPrice) }}
|
||||
</view>
|
||||
</view>
|
||||
<view v-if="order.orderItems.length <= 1" class="goods-num">
|
||||
@@ -54,7 +53,7 @@
|
||||
<!-- 等待付款 -->
|
||||
<div v-if="order.payStatus === 'PAID'">已付金额:</div>
|
||||
<div v-else>应付金额:</div>
|
||||
<div class="price">¥{{ order.flowPrice | unitPrice }}</div>
|
||||
<div class="price">¥{{unitPrice(order.flowPrice) }}</div>
|
||||
</view>
|
||||
<view class="goods-btn flex flex-a-c">
|
||||
<!-- 全部 -->
|
||||
@@ -87,7 +86,7 @@
|
||||
</scroll-view>
|
||||
</swiper-item>
|
||||
</swiper>
|
||||
<u-popup class="cancel-popup" v-model="cancelShow" mode="bottom" length="60%">
|
||||
<u-popup class="cancel-popup" v-model:show="cancelShow" mode="bottom" length="60%">
|
||||
<view class="header">取消订单</view>
|
||||
<view class="body">
|
||||
<view class="title">取消订单后,本单享有的优惠可能会一并取消,是否继续?</view>
|
||||
@@ -95,8 +94,8 @@
|
||||
<u-radio-group v-model="reason">
|
||||
<view class="value">
|
||||
<view class="radio-view" :key="index" v-for="(item, index) in cancelList">
|
||||
<u-radio :active-color="lightColor" label-size="25" shape="circle" :name="item.reason"
|
||||
@change="reasonChange">{{ item.reason }}</u-radio>
|
||||
<u-radio :active-color="lightColor" shape="circle" :name="item.reason"
|
||||
:label="item.reason" @change="reasonChange"></u-radio>
|
||||
</view>
|
||||
</view>
|
||||
</u-radio-group>
|
||||
@@ -107,7 +106,7 @@
|
||||
</view>
|
||||
</u-popup>
|
||||
<u-toast ref="uToast" />
|
||||
<u-modal :confirm-color="lightColor" v-model="rogShow" :show-cancel-button="true" :content="'是否确认收货?'"
|
||||
<u-modal :confirm-color="lightColor" v-model:show="rogShow" :show-cancel-button="true" :content="'是否确认收货?'"
|
||||
@confirm="confirmRog"></u-modal>
|
||||
</view>
|
||||
</template>
|
||||
@@ -209,7 +208,7 @@
|
||||
cancelShow: false, //是否显示取消
|
||||
orderSn: "", //ordersn
|
||||
reason: "", //取消原因
|
||||
cancelList: "", //取消列表
|
||||
cancelList: [], //取消列表
|
||||
rogShow: false, //显示是否收货
|
||||
};
|
||||
},
|
||||
@@ -234,7 +233,7 @@
|
||||
// this.loadData(this.status);
|
||||
},
|
||||
onShow() {
|
||||
if (this.$options.filters.tipsToLogin()) {
|
||||
if (this.tipsToLogin()) {
|
||||
if (!this.tabCurrentIndex) {
|
||||
this.initData(0);
|
||||
}
|
||||
@@ -286,7 +285,7 @@
|
||||
renderOrderTag(orderPromotionType) {
|
||||
switch (orderPromotionType) {
|
||||
case "NORMAL":
|
||||
return "普通订单";
|
||||
return "";
|
||||
case "PINTUAN":
|
||||
return "拼团订单";
|
||||
break;
|
||||
@@ -321,6 +320,14 @@
|
||||
return "";
|
||||
}
|
||||
},
|
||||
getOrderItemImage(goods, order, index) {
|
||||
let image = goods.image;
|
||||
if (!image && order.groupImages) {
|
||||
const images = String(order.groupImages).split(",");
|
||||
image = images[index] || images[0];
|
||||
}
|
||||
return this.parseGoodsImageUrl(image);
|
||||
},
|
||||
/**
|
||||
* 取消订单
|
||||
*/
|
||||
@@ -588,6 +595,7 @@
|
||||
|
||||
.list-scroll-content {
|
||||
height: 100%;
|
||||
padding: 16rpx 20rpx 0;
|
||||
}
|
||||
|
||||
.navbar {
|
||||
@@ -633,18 +641,18 @@
|
||||
.seller-view {
|
||||
border-radius: 20rpx;
|
||||
background-color: #fff;
|
||||
margin: 20rpx 0rpx;
|
||||
margin: 16rpx 0;
|
||||
|
||||
.seller-info {
|
||||
height: 70rpx;
|
||||
padding: 0 20rpx;
|
||||
padding: 24rpx 20rpx 16rpx;
|
||||
align-items: center;
|
||||
|
||||
.seller-name {
|
||||
flex: 10;
|
||||
font-size: 28rpx;
|
||||
font-weight: 600;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
flex-direction: row;
|
||||
text-align: center;
|
||||
.name {
|
||||
margin-left: 15rpx;
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
<view>
|
||||
<!-- 订单状态 -->
|
||||
<div class="info-view order-view">
|
||||
<div class="order-status" v-if="orderStatusList[order.orderStatus]">
|
||||
{{ orderStatusList[order.orderStatus].title }}
|
||||
<div>{{ orderStatusList[order.orderStatus].value }}</div>
|
||||
<div class="order-status" v-if="orderStatusMap[order.orderStatus]">
|
||||
{{ orderStatusMap[order.orderStatus].title }}
|
||||
<div>{{ orderStatusMap[order.orderStatus].value }}</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
@@ -35,7 +35,7 @@
|
||||
<view>
|
||||
<view class="address-title">
|
||||
<span>{{ order.consigneeName || "未填写昵称" }}</span>
|
||||
<span>{{ order.consigneeMobile || "未填写手机号" | secrecyMobile }}</span>
|
||||
<span>{{ order.consigneeMobile ? secrecyMobile(order.consigneeMobile) : '未填写手机号' }}</span>
|
||||
</view>
|
||||
<view class="address">地址:{{ order.consigneeAddressPath }}
|
||||
{{ order.consigneeDetail }}</view>
|
||||
@@ -67,7 +67,7 @@
|
||||
<view class="seller-info u-flex u-row-between">
|
||||
<view class="seller-name" @click="goToShopPage(order)">
|
||||
<view class="name">{{ order.storeName }}</view>
|
||||
<view class="status" v-if="orderStatusList[order.orderStatus]"> {{ orderStatusList[order.orderStatus].title
|
||||
<view class="status" v-if="orderStatusMap[order.orderStatus]"> {{ orderStatusMap[order.orderStatus].title
|
||||
}}</view>
|
||||
</view>
|
||||
<view class="order-sn"></view>
|
||||
@@ -81,10 +81,10 @@
|
||||
<view class="goods-info" @click="gotoGoodsDetail(sku)">
|
||||
<view class="goods-title u-line-2">{{ sku.goodsName }}</view>
|
||||
<view class="goods-price">
|
||||
¥{{ sku.goodsPrice | unitPrice }}
|
||||
¥{{unitPrice(sku.goodsPrice) }}
|
||||
<!-- <span v-if="sku.point">+{{ sku.point }}积分</span> -->
|
||||
<span style="font-size: 24rpx;margin-left: 14rpx;color: #ff9900;" v-if="sku.isRefund && sku.isRefund !== 'NO_REFUND'">
|
||||
{{refundPriceList(sku.isRefund)}} ({{ sku.refundPrice | unitPrice("¥") }})
|
||||
{{refundPriceList(sku.isRefund)}} ({{unitPrice(sku.refundPrice, "¥") }})
|
||||
</span>
|
||||
</view>
|
||||
</view>
|
||||
@@ -106,19 +106,19 @@
|
||||
<view>
|
||||
<view class="order-info-view">
|
||||
<view class="title">商品总价:</view>
|
||||
<view class="value">¥{{ order.goodsPrice | unitPrice }}</view>
|
||||
<view class="value">¥{{unitPrice(order.goodsPrice) }}</view>
|
||||
</view>
|
||||
<view class="order-info-view" v-if="order.freightPrice">
|
||||
<view class="title">运费:</view>
|
||||
<view class="value">¥{{ order.freightPrice | unitPrice }}</view>
|
||||
<view class="value">¥{{unitPrice(order.freightPrice) }}</view>
|
||||
</view>
|
||||
<view class="order-info-view" v-if="order.priceDetailDTO">
|
||||
<view class="title">优惠券:</view>
|
||||
<view class="value main-color">-¥{{ order.priceDetailDTO.couponPrice | unitPrice }}</view>
|
||||
<view class="value main-color">-¥{{unitPrice(order.priceDetailDTO.couponPrice) }}</view>
|
||||
</view>
|
||||
<view class="order-info-view">
|
||||
<view class="title">活动优惠:</view>
|
||||
<view class="value main-color">-¥{{ order.discountPrice | unitPrice }}</view>
|
||||
<view class="value main-color">-¥{{unitPrice(order.discountPrice) }}</view>
|
||||
</view>
|
||||
<!-- <view class="order-info-view" v-if="order.use_point">
|
||||
<view class="title">使用积分:</view>
|
||||
@@ -148,9 +148,9 @@
|
||||
<view style="width: 100%">
|
||||
<view class="order-info-view">
|
||||
<view class="title">订单编号:</view>
|
||||
<view class="value">
|
||||
{{ order.sn }}
|
||||
<u-tag class="copy" text="复制" type="info" size="mini" @click="onCopy(order.sn)" />
|
||||
<view class="value order-sn-value">
|
||||
<text class="order-sn-text">{{ order.sn }}</text>
|
||||
<u-tag class="copy" text="复制" type="info" mode="plain" size="mini" @click="onCopy(order.sn)" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="order-info-view">
|
||||
@@ -203,7 +203,7 @@
|
||||
<text v-if="order.payStatus === 'PAID'">已付金额:</text>
|
||||
<text v-else>应付金额:</text>
|
||||
|
||||
<text class="price" v-if="order.priceDetailDTO">¥{{ order.priceDetailDTO.flowPrice | unitPrice }}</text>
|
||||
<text class="price" v-if="order.priceDetailDTO">¥{{unitPrice(order.priceDetailDTO.flowPrice) }}</text>
|
||||
</view>
|
||||
<view>
|
||||
<!-- 全部 -->
|
||||
@@ -221,7 +221,7 @@
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<u-popup class="cancel-popup" v-model="cancelShow" mode="bottom" length="60%">
|
||||
<u-popup class="cancel-popup" v-model:show="cancelShow" mode="bottom" length="60%">
|
||||
<view class="header">取消订单</view>
|
||||
<view class="body">
|
||||
<view class="title">取消订单后,本单享有的优惠可能会一并取消,是否继续?</view>
|
||||
@@ -229,8 +229,8 @@
|
||||
<u-radio-group v-model="reason">
|
||||
<view class="value">
|
||||
<view class="radio-view" v-for="(item, index) in cancelList" :key="index">
|
||||
<u-radio :active-color="lightColor" label-size="25" shape="circle" :name="item.reason"
|
||||
@change="reasonChange">{{ item.reason }}</u-radio>
|
||||
<u-radio :active-color="lightColor" shape="circle" :name="item.reason"
|
||||
:label="item.reason" @change="reasonChange"></u-radio>
|
||||
</view>
|
||||
</view>
|
||||
</u-radio-group>
|
||||
@@ -241,7 +241,7 @@
|
||||
</view>
|
||||
</u-popup>
|
||||
<u-toast ref="uToast" />
|
||||
<u-modal v-model="rogShow" :show-cancel-button="true" :content="'是否确认收货?'" :confirm-color="lightColor"
|
||||
<u-modal v-model:show="rogShow" :show-cancel-button="true" :content="'是否确认收货?'" :confirm-color="lightColor"
|
||||
@confirm="confirmRog"></u-modal>
|
||||
|
||||
<!-- 分享 -->
|
||||
@@ -268,7 +268,7 @@ export default {
|
||||
lightColor: this.$lightColor,
|
||||
logisticsList: "", //物流信息
|
||||
shareFlag: false, //拼团分享开关
|
||||
orderStatusList: {
|
||||
orderStatusMap: {
|
||||
UNPAID: {
|
||||
title: "未付款",
|
||||
value: "商品暂未付款",
|
||||
@@ -351,11 +351,11 @@ export default {
|
||||
}
|
||||
},
|
||||
callPhone(){
|
||||
this.$options.filters.callPhone(this.order.storeAddressMobile )
|
||||
this.callPhone(this.order.storeAddressMobile )
|
||||
},
|
||||
//联系客服
|
||||
contact(storeId){
|
||||
this.$options.filters.talkIm(storeId)
|
||||
this.talkIm(storeId)
|
||||
},
|
||||
goToShopPage(val) {
|
||||
uni.navigateTo({
|
||||
@@ -413,7 +413,7 @@ export default {
|
||||
});
|
||||
},
|
||||
onCopy(sn) {
|
||||
this.$options.filters.setClipboard(sn)
|
||||
setClipboard(sn)
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -701,11 +701,20 @@ page,
|
||||
flex:10;
|
||||
}
|
||||
|
||||
.order-sn-value {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.order-sn-text {
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.copy {
|
||||
font-size: 20rpx;
|
||||
color: #333;
|
||||
border: 1px solid #dddddd;
|
||||
margin-left: 30rpx;
|
||||
margin-left: 16rpx;
|
||||
flex-shrink: 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user