no message
This commit is contained in:
@@ -59,26 +59,26 @@
|
||||
<view class="content_right_quantity">x{{ pItem.buyNum }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="content_item_yd" v-if="pItem.expressNo">
|
||||
<view>
|
||||
运单号:
|
||||
<text v-if="pItem.expressName">({{ pItem.expressName }})</text>
|
||||
{{ pItem.expressNo }}
|
||||
<view class="content_item_yd" v-if="pItem.expressNo && pItem.expressData">
|
||||
<view class="express-view text-overflow1">
|
||||
<u-icon name="email" color="#333" size="20"></u-icon>
|
||||
<text class="text-24 text-zu1 text-space" style="margin-left:10rpx;">{{pItem.expressData.logisticsStatusDesc}}</text>
|
||||
<text class="text-24 text-fu text-space text-overflow1" style="margin-left:10rpx;">{{pItem.expressData.logisticsTraceDetailList[0].desc}}</text>
|
||||
</view>
|
||||
<view style="margin-left: 10rpx">
|
||||
<!-- <view style="margin-left: 10rpx">
|
||||
<up-image src="/static/common/copy.png" width="14" height="14" bgColor="#f1f6ff00"
|
||||
@click="copyData(pItem.expressNo)"></up-image>
|
||||
</view>
|
||||
</view> -->
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 汇总 -->
|
||||
<view class="order_item_collect">
|
||||
<view class="collect_msg collect_msg_s" v-if="this.form.type === MINE_ORDER_TYPE.NOT_RECEIVE">
|
||||
<view class="content_item_yd_msg">(快递动态跟进请复制单号至[快递100官网] 查询)</view>
|
||||
<!-- <view class="collect_msg collect_msg_s" v-if="this.form.type === MINE_ORDER_TYPE.NOT_RECEIVE">
|
||||
<view class="content_item_yd_msg">(快递动态跟进请复制单号至[快递100官网] 查询)</view>
|
||||
<view>共{{ item.buyNum }}件,合计¥{{ item.sumAmount }}</view>
|
||||
</view>
|
||||
<view class="collect_msg" v-else>共{{ item.buyNum }}件,合计¥{{ item.sumAmount }}</view>
|
||||
</view> -->
|
||||
<view class="collect_msg">共{{ item.buyNum }}件,合计¥{{ item.sumAmount }}</view>
|
||||
<view class="collect_operate">
|
||||
<!-- <view class="operate_comm operate_but_1" v-if="item.status === ORDER_TYPE.UNSHIPPED" @click="checkCancel(true)">取消订单</view> -->
|
||||
<view class="operate_comm operate_but_2" v-if="
|
||||
@@ -89,6 +89,12 @@
|
||||
|
||||
<view class="operate_comm operate_but_2" v-if="item.status === ORDER_TYPE.NOT_RECEIVE"
|
||||
@click="confirmReceiptOk(item)">确认收货</view>
|
||||
|
||||
<view class="operate_comm operate_but_1" style="borderColor: #7732FF;" v-if="form.type == 3"
|
||||
@click="onExpress(item.id,item.items.expressNo)">
|
||||
<text class="text-zi">查看物流</text>
|
||||
</view>
|
||||
|
||||
<view class="operate_comm operate_but_2" v-if="
|
||||
!isCheckSigne &&
|
||||
index == 0 &&
|
||||
@@ -261,7 +267,8 @@ import {
|
||||
isSignContract,
|
||||
getMiniProgramSignUrl,
|
||||
afterSaleDetail,
|
||||
cancelOrder
|
||||
cancelOrder,
|
||||
orderLogistics
|
||||
} from "@/api/order.js";
|
||||
import dayjs from "dayjs";
|
||||
import { formatDate1, copyData } from "@/utils/index.js";
|
||||
@@ -353,7 +360,9 @@ export default {
|
||||
const type = options.type;
|
||||
this.form.type =
|
||||
type ? parseInt(type, 10) : MINE_ORDER_TYPE.UNPAID;
|
||||
this.loadData();
|
||||
this.$nextTick(()=>{
|
||||
this.loadData();
|
||||
})
|
||||
// 待收货判断是否签署
|
||||
if (
|
||||
this.form.type === MINE_ORDER_TYPE.NOT_RECEIVE ||
|
||||
@@ -368,7 +377,13 @@ export default {
|
||||
getValue,
|
||||
formatDate1,
|
||||
copyData,
|
||||
|
||||
onExpress(itemId){
|
||||
console.log('onExpress',itemId)
|
||||
// let expressId =
|
||||
uni.navigateTo({
|
||||
url:`/pages/rwa_package/setting/express?id=${itemId}`
|
||||
})
|
||||
},
|
||||
onNextRefund() {
|
||||
this.salesServer = 2;
|
||||
|
||||
@@ -542,18 +557,21 @@ export default {
|
||||
}
|
||||
try {
|
||||
// 模拟异步获取数据,实际应用中应该替换为你的数据获取逻辑,例如API调用
|
||||
const newData = await this.fetchData(
|
||||
this.form.page,
|
||||
this.form.pageSize
|
||||
);
|
||||
if (newData.entitys && newData.entitys.length !== 0) {
|
||||
this.orderList = [...this.orderList, ...newData.entitys]; // 将新数据添加到列表中
|
||||
this.form.page++; // 页码加1
|
||||
console.log("this.orderList", this.orderList);
|
||||
}
|
||||
const newData = await this.fetchData(
|
||||
this.form.page,
|
||||
this.form.pageSize
|
||||
);
|
||||
if (newData.entitys && newData.entitys.length !== 0) {
|
||||
this.orderList = [...this.orderList, ...newData.entitys]; // 将新数据添加到列表中
|
||||
this.form.page++; // 页码加1
|
||||
console.log("this.orderList", this.orderList);
|
||||
}
|
||||
|
||||
} catch (error) {
|
||||
console.error("加载数据失败:", error);
|
||||
} finally {
|
||||
console.log("this.orderList1111",JSON.parse(JSON.stringify(this.orderList)));
|
||||
this.$forceUpdate();
|
||||
this.loading = false; // 设置加载状态为false
|
||||
}
|
||||
},
|
||||
@@ -569,11 +587,41 @@ export default {
|
||||
}
|
||||
const data = await getOrderList(params);
|
||||
if (data && data.bizcode === 100) {
|
||||
for(let i=0;i<data.data.entitys.length;i++){
|
||||
for(let j=0;j<data.data.entitys[i].items.length;j++){
|
||||
if(data.data.entitys[i].items[j].expressNo){
|
||||
data.data.entitys[i].items[j].expressData = await this.getOrderLogistics(data.data.entitys[i].items[j].expressNo);
|
||||
}
|
||||
}
|
||||
}
|
||||
// data.data.entitys.forEach(item=>{
|
||||
// if(item.items.length){
|
||||
// item.items.forEach(async (Iitem)=>{
|
||||
// if(Iitem.expressNo){
|
||||
// Iitem.expressData = await this.getOrderLogistics(Iitem.expressNo);
|
||||
// }
|
||||
// })
|
||||
// }
|
||||
// })
|
||||
|
||||
return data.data;
|
||||
} else {
|
||||
return [];
|
||||
return '';
|
||||
}
|
||||
},
|
||||
async getOrderLogistics(id){
|
||||
const params = {
|
||||
mailNo:id
|
||||
};
|
||||
|
||||
const data = await orderLogistics(params);
|
||||
if(data.bizcode == 100){
|
||||
return data.data;
|
||||
}else{
|
||||
return [];
|
||||
}
|
||||
|
||||
},
|
||||
// 当滚动到底部时触发的方法
|
||||
loadMore() {
|
||||
this.loadData(); // 加载更多数据
|
||||
@@ -726,6 +774,16 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.express-view{
|
||||
width:100%;
|
||||
height:52rpx;
|
||||
background-color: #f5f5f5;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
border-radius: 4rpx;
|
||||
line-height: 1.6;
|
||||
}
|
||||
.after-sales-popup {
|
||||
height: 400px !important;
|
||||
|
||||
|
||||
@@ -8,9 +8,15 @@
|
||||
v-for="(item,index) in headList" :key="index"
|
||||
:style="{borderWidth:index == headList.length - 1 ? '0' : '2rpx'}"
|
||||
>
|
||||
<text class="text-zu1 text-32">{{item.text}}</text>
|
||||
<view class="flex-r" >
|
||||
<text class="text-zu1 text-32">{{item.text}}</text>
|
||||
<view class="yi-view" v-if="item.type == 'text1' && item.she">
|
||||
<text class="text-zi text-24">{{item.she}}</text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="flex-r-e" style="align-items: center;">
|
||||
<text class="text-zu text-32" v-if="item.type == 'text'">{{item.value}}</text>
|
||||
|
||||
<text class="text-fu text-32" v-if="item.type == 'text1'">{{item.value}}</text>
|
||||
<u-icon size="16" name="arrow-right" color="#666" style="margin-left:12rpx"></u-icon>
|
||||
</view>
|
||||
@@ -36,8 +42,8 @@ export default {
|
||||
userInfo: null,
|
||||
headList:[
|
||||
{text:'注册手机号',type:'text',value:''},
|
||||
{text:'交易密码设置',type:'text1',value:'设置密码'},
|
||||
{text:'登录密码设置',type:'text1',value:'设置密码'},
|
||||
{text:'交易密码设置',type:'text1',she:'',value:'设置密码'},
|
||||
{text:'登录密码设置',type:'text1',she:'',value:'设置密码'},
|
||||
{text:'注销账号',type:'text',value:''},
|
||||
],
|
||||
bottomList:[
|
||||
@@ -81,6 +87,18 @@ export default {
|
||||
this.userInfo = res.data;
|
||||
this.headList[0].value = this.userInfo.mobile;
|
||||
this.headList[0].value = this.headList[0].value.replace(this.headList[0].value.substring(3,7),'****')
|
||||
if(res.data.tradePassword){
|
||||
this.headList[1].she = '已设置';
|
||||
this.headList[1].value = '修改密码';
|
||||
}else{
|
||||
this.headList[1].value = '设置密码';
|
||||
}
|
||||
if(res.data.password){
|
||||
this.headList[2].she = '已设置';
|
||||
this.headList[2].value = '修改密码';
|
||||
}else{
|
||||
this.headList[2].value = '设置密码';
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
@@ -89,6 +107,16 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.yi-view{
|
||||
width:104rpx;
|
||||
height:44rpx;
|
||||
display: flex;
|
||||
background: rgba(122,53,246,0.1);
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
border-radius: 8rpx;
|
||||
margin-left:12rpx;
|
||||
}
|
||||
.setting-view {
|
||||
width: 100%;
|
||||
height: calc(100% - 88rpx - var(--status-bar-height));
|
||||
|
||||
@@ -0,0 +1,131 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<TopSafe></TopSafe>
|
||||
<Header title="物流信息" />
|
||||
<view class="setting-view">
|
||||
<view class="express-panel">
|
||||
<view class="top-one" style="margin-top:12rpx">
|
||||
<u-icon name="email" color="#333" size="20"></u-icon>
|
||||
<text class="text-24 text-fu text-space" style="margin-left:10rpx;line-height: 1.4;margin-right:12rpx">{{curData && `${curData.items[0].expressName}:`}}</text>
|
||||
<text class="text-24 text-zu1 text-space" style="margin-left:10rpx;line-height: 1.4;margin-right:12rpx">{{curData && `${curData.items[0].expressNo}`}}</text>
|
||||
<up-image src="/static/common/copy.png" width="14" height="14" bgColor="#f1f6ff00"
|
||||
@click="copyData(curData ? curData.items[0].expressNo :'')"></up-image>
|
||||
</view>
|
||||
<view class="top-one" style="border-bottom:2rpx solid #eee">
|
||||
<u-icon name="map" color="#333" size="20"></u-icon>
|
||||
<text class="text-24 text-fu text-space" style="margin-left:10rpx;line-height: 1.4;margin-right:12rpx">收货地址</text>
|
||||
<text class="text-24 text-zu text-space" style="margin-left:10rpx;line-height: 1.4;margin-right:12rpx">{{curData && `${curData.countryName} ${curData.cityName} ${curData.areaName} ${curData.address}`}}</text>
|
||||
</view>
|
||||
<u-steps current="0" direction="column" dot activeColor="#7934F6" style="margin-top:20rpx">
|
||||
<u-steps-item :style="`width:calc(100vw - 48rpx)`"
|
||||
:title="item.areaName + ' ' + item.curTime" :desc="item.desc" v-for="(item,index) in express.logisticsTraceDetailList" :key="index"></u-steps-item>
|
||||
</u-steps>
|
||||
</view>
|
||||
|
||||
|
||||
</view>
|
||||
<up-toast ref="uToastRef"></up-toast>
|
||||
<!-- 腾讯电子签H5 → 集成到UniApp -->
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getUserInfo,uploadAvatar } from '@/api/auth.js';
|
||||
import { uploadImage, uploadImg } from '@/api/common.js';
|
||||
import { IMG_TYPE } from '@/utils/enumUtils.js';
|
||||
import { BASE_URL, Authorization } from '@/utils/config.js';
|
||||
import { getStorageFun, TOKEN_NAME,clear } from '@/utils/auth.js';
|
||||
import Header from '@/components/common/header.vue';
|
||||
import TopSafe from '@/components/common/top-safe.nvue'
|
||||
import MyBtn from '@/components/common/my-btn.vue'
|
||||
import func from '@/utils/func.js';
|
||||
import { copyData } from '@/utils/index.js';
|
||||
|
||||
import {
|
||||
getDetail,
|
||||
orderLogistics
|
||||
} from "@/api/order.js";
|
||||
|
||||
export default {
|
||||
components: { Header, TopSafe,MyBtn },
|
||||
data() {
|
||||
return {
|
||||
express:null,
|
||||
curData:null,
|
||||
id:0
|
||||
};
|
||||
},
|
||||
|
||||
onLoad(option) {
|
||||
// this.userinfo();
|
||||
if(option && option.id){
|
||||
this.id = Number(option.id);
|
||||
this.init();
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
copyData,
|
||||
init() {
|
||||
this.detail();
|
||||
},
|
||||
detail(){
|
||||
let params = {
|
||||
id:this.id
|
||||
}
|
||||
getDetail(params).then(res=>{
|
||||
if(res.bizcode == 100){
|
||||
this.curData = res.data;
|
||||
if(this.curData.items[0].expressNo){
|
||||
this.getOrderLogistics();
|
||||
}
|
||||
}
|
||||
console.log('id',res)
|
||||
})
|
||||
},
|
||||
getOrderLogistics(){
|
||||
let params = {
|
||||
mailNo:this.curData.items[0].expressNo
|
||||
}
|
||||
orderLogistics(params).then(res=>{
|
||||
if(res.bizcode == 100){
|
||||
this.express = res.data;
|
||||
this.express.logisticsTraceDetailList.forEach(item=>{
|
||||
item.curTime = func.formatDate(new Date(item.time), 2);
|
||||
})
|
||||
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.setting-view {
|
||||
width: 100%;
|
||||
height: calc(100% - 88rpx - var(--status-bar-height));
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
.express-panel{
|
||||
width:100%;
|
||||
margin-top:24rpx;
|
||||
height: calc(100% - 24rpx);
|
||||
padding: 0 32rpx;
|
||||
box-sizing: border-box;
|
||||
overflow-y: auto;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
background-color: #fff;
|
||||
.top-one{
|
||||
width:100%;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
min-height:70rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user