no message
This commit is contained in:
@@ -1,5 +1,13 @@
|
|||||||
import request from '@/utils/request.js'; // 引入封装的方法
|
import request from '@/utils/request.js'; // 引入封装的方法
|
||||||
|
|
||||||
|
export function orderLogistics(params) {
|
||||||
|
// params.appId = APPID;
|
||||||
|
return request({
|
||||||
|
url: "/order/getOrderLogistics",
|
||||||
|
method: "get",
|
||||||
|
data: params,
|
||||||
|
});
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* 查询订单列表
|
* 查询订单列表
|
||||||
* @param {Object} params
|
* @param {Object} params
|
||||||
|
|||||||
@@ -265,6 +265,13 @@
|
|||||||
"navigationBarTextStyle": "black"
|
"navigationBarTextStyle": "black"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"path": "setting/express",
|
||||||
|
"style": {
|
||||||
|
"navigationStyle": "custom",
|
||||||
|
"navigationBarTextStyle": "black"
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"path": "shop/you-shop",
|
"path": "shop/you-shop",
|
||||||
"style": {
|
"style": {
|
||||||
|
|||||||
@@ -59,26 +59,26 @@
|
|||||||
<view class="content_right_quantity">x{{ pItem.buyNum }}</view>
|
<view class="content_right_quantity">x{{ pItem.buyNum }}</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="content_item_yd" v-if="pItem.expressNo">
|
<view class="content_item_yd" v-if="pItem.expressNo && pItem.expressData">
|
||||||
<view>
|
<view class="express-view text-overflow1">
|
||||||
运单号:
|
<u-icon name="email" color="#333" size="20"></u-icon>
|
||||||
<text v-if="pItem.expressName">({{ pItem.expressName }})</text>
|
<text class="text-24 text-zu1 text-space" style="margin-left:10rpx;">{{pItem.expressData.logisticsStatusDesc}}</text>
|
||||||
{{ pItem.expressNo }}
|
<text class="text-24 text-fu text-space text-overflow1" style="margin-left:10rpx;">{{pItem.expressData.logisticsTraceDetailList[0].desc}}</text>
|
||||||
</view>
|
</view>
|
||||||
<view style="margin-left: 10rpx">
|
<!-- <view style="margin-left: 10rpx">
|
||||||
<up-image src="/static/common/copy.png" width="14" height="14" bgColor="#f1f6ff00"
|
<up-image src="/static/common/copy.png" width="14" height="14" bgColor="#f1f6ff00"
|
||||||
@click="copyData(pItem.expressNo)"></up-image>
|
@click="copyData(pItem.expressNo)"></up-image>
|
||||||
</view>
|
</view> -->
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<!-- 汇总 -->
|
<!-- 汇总 -->
|
||||||
<view class="order_item_collect">
|
<view class="order_item_collect">
|
||||||
<view class="collect_msg collect_msg_s" v-if="this.form.type === MINE_ORDER_TYPE.NOT_RECEIVE">
|
<!-- <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="content_item_yd_msg">(快递动态跟进请复制单号至[快递100官网] 查询)</view>
|
||||||
<view>共{{ item.buyNum }}件,合计¥{{ item.sumAmount }}</view>
|
<view>共{{ item.buyNum }}件,合计¥{{ item.sumAmount }}</view>
|
||||||
</view>
|
</view> -->
|
||||||
<view class="collect_msg" v-else>共{{ item.buyNum }}件,合计¥{{ item.sumAmount }}</view>
|
<view class="collect_msg">共{{ item.buyNum }}件,合计¥{{ item.sumAmount }}</view>
|
||||||
<view class="collect_operate">
|
<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_1" v-if="item.status === ORDER_TYPE.UNSHIPPED" @click="checkCancel(true)">取消订单</view> -->
|
||||||
<view class="operate_comm operate_but_2" v-if="
|
<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"
|
<view class="operate_comm operate_but_2" v-if="item.status === ORDER_TYPE.NOT_RECEIVE"
|
||||||
@click="confirmReceiptOk(item)">确认收货</view>
|
@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="
|
<view class="operate_comm operate_but_2" v-if="
|
||||||
!isCheckSigne &&
|
!isCheckSigne &&
|
||||||
index == 0 &&
|
index == 0 &&
|
||||||
@@ -261,7 +267,8 @@ import {
|
|||||||
isSignContract,
|
isSignContract,
|
||||||
getMiniProgramSignUrl,
|
getMiniProgramSignUrl,
|
||||||
afterSaleDetail,
|
afterSaleDetail,
|
||||||
cancelOrder
|
cancelOrder,
|
||||||
|
orderLogistics
|
||||||
} from "@/api/order.js";
|
} from "@/api/order.js";
|
||||||
import dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
import { formatDate1, copyData } from "@/utils/index.js";
|
import { formatDate1, copyData } from "@/utils/index.js";
|
||||||
@@ -353,7 +360,9 @@ export default {
|
|||||||
const type = options.type;
|
const type = options.type;
|
||||||
this.form.type =
|
this.form.type =
|
||||||
type ? parseInt(type, 10) : MINE_ORDER_TYPE.UNPAID;
|
type ? parseInt(type, 10) : MINE_ORDER_TYPE.UNPAID;
|
||||||
this.loadData();
|
this.$nextTick(()=>{
|
||||||
|
this.loadData();
|
||||||
|
})
|
||||||
// 待收货判断是否签署
|
// 待收货判断是否签署
|
||||||
if (
|
if (
|
||||||
this.form.type === MINE_ORDER_TYPE.NOT_RECEIVE ||
|
this.form.type === MINE_ORDER_TYPE.NOT_RECEIVE ||
|
||||||
@@ -368,7 +377,13 @@ export default {
|
|||||||
getValue,
|
getValue,
|
||||||
formatDate1,
|
formatDate1,
|
||||||
copyData,
|
copyData,
|
||||||
|
onExpress(itemId){
|
||||||
|
console.log('onExpress',itemId)
|
||||||
|
// let expressId =
|
||||||
|
uni.navigateTo({
|
||||||
|
url:`/pages/rwa_package/setting/express?id=${itemId}`
|
||||||
|
})
|
||||||
|
},
|
||||||
onNextRefund() {
|
onNextRefund() {
|
||||||
this.salesServer = 2;
|
this.salesServer = 2;
|
||||||
|
|
||||||
@@ -542,18 +557,21 @@ export default {
|
|||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
// 模拟异步获取数据,实际应用中应该替换为你的数据获取逻辑,例如API调用
|
// 模拟异步获取数据,实际应用中应该替换为你的数据获取逻辑,例如API调用
|
||||||
const newData = await this.fetchData(
|
const newData = await this.fetchData(
|
||||||
this.form.page,
|
this.form.page,
|
||||||
this.form.pageSize
|
this.form.pageSize
|
||||||
);
|
);
|
||||||
if (newData.entitys && newData.entitys.length !== 0) {
|
if (newData.entitys && newData.entitys.length !== 0) {
|
||||||
this.orderList = [...this.orderList, ...newData.entitys]; // 将新数据添加到列表中
|
this.orderList = [...this.orderList, ...newData.entitys]; // 将新数据添加到列表中
|
||||||
this.form.page++; // 页码加1
|
this.form.page++; // 页码加1
|
||||||
console.log("this.orderList", this.orderList);
|
console.log("this.orderList", this.orderList);
|
||||||
}
|
}
|
||||||
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error("加载数据失败:", error);
|
console.error("加载数据失败:", error);
|
||||||
} finally {
|
} finally {
|
||||||
|
console.log("this.orderList1111",JSON.parse(JSON.stringify(this.orderList)));
|
||||||
|
this.$forceUpdate();
|
||||||
this.loading = false; // 设置加载状态为false
|
this.loading = false; // 设置加载状态为false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -569,11 +587,41 @@ export default {
|
|||||||
}
|
}
|
||||||
const data = await getOrderList(params);
|
const data = await getOrderList(params);
|
||||||
if (data && data.bizcode === 100) {
|
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;
|
return data.data;
|
||||||
} else {
|
} 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() {
|
loadMore() {
|
||||||
this.loadData(); // 加载更多数据
|
this.loadData(); // 加载更多数据
|
||||||
@@ -726,6 +774,16 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<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 {
|
.after-sales-popup {
|
||||||
height: 400px !important;
|
height: 400px !important;
|
||||||
|
|
||||||
|
|||||||
@@ -8,9 +8,15 @@
|
|||||||
v-for="(item,index) in headList" :key="index"
|
v-for="(item,index) in headList" :key="index"
|
||||||
:style="{borderWidth:index == headList.length - 1 ? '0' : '2rpx'}"
|
: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;">
|
<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-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>
|
<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>
|
<u-icon size="16" name="arrow-right" color="#666" style="margin-left:12rpx"></u-icon>
|
||||||
</view>
|
</view>
|
||||||
@@ -36,8 +42,8 @@ export default {
|
|||||||
userInfo: null,
|
userInfo: null,
|
||||||
headList:[
|
headList:[
|
||||||
{text:'注册手机号',type:'text',value:''},
|
{text:'注册手机号',type:'text',value:''},
|
||||||
{text:'交易密码设置',type:'text1',value:'设置密码'},
|
{text:'交易密码设置',type:'text1',she:'',value:'设置密码'},
|
||||||
{text:'登录密码设置',type:'text1',value:'设置密码'},
|
{text:'登录密码设置',type:'text1',she:'',value:'设置密码'},
|
||||||
{text:'注销账号',type:'text',value:''},
|
{text:'注销账号',type:'text',value:''},
|
||||||
],
|
],
|
||||||
bottomList:[
|
bottomList:[
|
||||||
@@ -81,6 +87,18 @@ export default {
|
|||||||
this.userInfo = res.data;
|
this.userInfo = res.data;
|
||||||
this.headList[0].value = this.userInfo.mobile;
|
this.headList[0].value = this.userInfo.mobile;
|
||||||
this.headList[0].value = this.headList[0].value.replace(this.headList[0].value.substring(3,7),'****')
|
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>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<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 {
|
.setting-view {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: calc(100% - 88rpx - var(--status-bar-height));
|
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>
|
||||||
+2
-2
@@ -2,9 +2,9 @@
|
|||||||
// export const BASE_URL="https://frontend.jdns360.com/api"; // 正式环境
|
// export const BASE_URL="https://frontend.jdns360.com/api"; // 正式环境
|
||||||
// export const BASE_URL="http://cl55un59859.vicp.fun:24346"; // 测试环境
|
// export const BASE_URL="http://cl55un59859.vicp.fun:24346"; // 测试环境
|
||||||
|
|
||||||
export const BASE_URL = "https://api.tbmall.xin"; //生产
|
// export const BASE_URL = "https://api.tbmall.xin"; //生产
|
||||||
// export const BASE_URL ='http://api.hm.a-d.work:6880' // 测试
|
// export const BASE_URL ='http://api.hm.a-d.work:6880' // 测试
|
||||||
// export const BASE_URL ='http://api.outer.tbmall.xin:6880' // 本地测试
|
export const BASE_URL ='http://api.outer.tbmall.xin:6880' // 本地测试
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user