web-africa-h5/pages/self-service/exchange/list.vue

283 lines
6.7 KiB
Vue
Raw Permalink 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.

<template>
<!-- 废弃 -->
<view>
<view class="top-head pb20">
<view class="top-tabbar">
<view class="tab-item" :class="{ active: type == 0 }" @click="changeType(0)">可申请订单</view>
<view class="tab-item" :class="{ active: type == 1 }" @click="changeType(1)">已申请订单</view>
</view>
<view class="d-b-c search-data f26">
<view class="flex-1 gray9">日期区间</view>
<view class="picker-item-data">{{ '2000-22-12' }}</view>
<view style="margin: 0 60rpx;"></view>
<view class="picker-item-data">{{ '2000-22 -12' }}</view>
<view class="search-radio"><text class="icon iconfont icon-sousuo"></text></view>
</view>
</view>
<!--列表-->
<scroll-view scroll-y="true" class="scroll-Y" :style="'height:' + scrollviewHigh + 'px;'" lower-threshold="50" @scrolltolower="scrolltolowerFunc">
<view class="">
<template v-if="type == 0">
<view class="d-c-c p30 ">
<u-icon name="info-circle-fill" color="#FB3024" size="30rpx"></u-icon>
<text class="f24 gray9 ml10">注:当日下单,00:00-次日06:00前可调换</text>
</view>
<view v-for="(item, index) in 5" :key="index" class="listdata-item">
<view class="border-b">
<view class="d-b-c mb16">
<text class="type-btn">注册</text>
<view class="f24 gray9 flex-1">订单编号:21321321321321</view>
<view class="status-btn">待发货</view>
</view>
<view class="d-b-c">
<!-- 单个商品 -->
<template v-if="index == 0">
<view class="d-s-c flex-1">
<image class="product-img" src="/static/default.png" mode=""></image>
<view class="text-ellipsis f28 gray3" style="width: 220rpx;">海之圣超轻水杯...</view>
</view>
</template>
<!-- 多个商品 -->
<template v-if="index != 0">
<view class="d-c-c product-list ww100">
<image class="product-img" src="/static/default.png" mode="" v-for="(pitem, pindex) in 8" :key="pindex"></image>
</view>
</template>
<view class="d-c d-c-e">
<view class="price-color f24">
{{currencyIcon()}}
<text class="f32 fb">3936.00</text>
</view>
<view class="gray6">x1</view>
</view>
</view>
<view class="f24 gray9 mb20">下单时间:{{ '2022/02/24 12:29:12' }}</view>
</view>
<view class="d-e-c pt20"><view class="order-btn" @click="gotoPage('/pages/self-service/exchange/apply')">调换货物</view></view>
</view>
</template>
<template v-if="type == 1">
<view class="order-item">
<view class="orer-item-top">
<view class="f24 gray9">订单编号: WB1680920831652406</view>
<!-- <view class="green">审核通过</view> -->
<view class="red">审核不通过</view>
</view>
<view>
<view class="f24 gray6 line-h-15 mb10">
<text>申请时间:</text>
<text>2022-12-12 00:00</text>
</view>
<view class="f24 gray6 line-h-15 mb10">
<text>换货明细:</text>
<text>123456</text>
</view>
<view class="f24 gray6 line-h-15 mb10">
<text>申请原因:</text>
<text>123456</text>
</view>
<view class="f24 gray6 line-h-15 mb10">
<text>备注:</text>
<text></text>
</view>
</view>
</view>
</template>
</view>
</scroll-view>
</view>
</template>
<script>
export default {
data() {
return {
type: 0,
/*手机高度*/
phoneHeight: 0,
/*可滚动视图区域高度*/
scrollviewHigh: 0,
/*最后一页码数*/
last_page: 0,
/*当前页面*/
page: 1,
/*每页条数*/
list_rows: 10,
/*有没有等多*/
no_more: false,
/*是否正在加载*/
loading: true,
/*数据*/
listData: []
};
},
computed: {
/*加载中状态*/
loadingType() {
if (this.loading) {
return 1;
} else {
if (this.listData.length != 0 && this.no_more) {
return 2;
} else {
return 0;
}
}
}
},
onShow() {
/*获取订单列表*/
this.page = 1;
this.listData = [];
this.getData();
},
mounted() {
this.init();
},
methods: {
changeType(e) {
let self = this;
if (self.loading) {
return;
}
self.page = 1;
self.loading = true;
self.type = e;
self.getData();
},
getData() {
let self = this;
self.loading = false;
},
/*可滚动视图区域到底触发*/
scrolltolowerFunc() {
let self = this;
if (self.no_more) {
return;
}
self.page++;
if (self.page <= self.last_page) {
self.getData();
} else {
self.no_more = true;
}
},
/*初始化*/
init() {
let self = this;
uni.getSystemInfo({
success(res) {
self.phoneHeight = res.windowHeight;
// 计算组件的高度
let view = uni.createSelectorQuery().select('.top-head');
view.boundingClientRect(data => {
let h = self.phoneHeight - data.height;
self.scrollviewHigh = h;
}).exec();
}
});
}
}
};
</script>
<style lang="scss">
.top-tabbar {
border-bottom: 1rpx solid #eee;
.tab-item {
color: #666;
}
.tab-item.active {
font-weight: 400;
color: #333;
}
}
.order-item {
width: 750rpx;
background: #ffffff;
padding: 0 18rpx 50rpx 25rpx;
box-sizing: border-box;
margin-bottom: 20rpx;
}
.orer-item-top {
height: 80rpx;
display: flex;
justify-content: space-between;
align-items: center;
}
.listdata-item {
// height: 370rpx;
padding: 27rpx 23rpx 22rpx 25rpx;
background: #ffffff;
margin-bottom: 22rpx;
}
.type-btn {
line-height: 30rpx;
height: 30rpx;
background: #3d3d3d;
border-radius: 15rpx;
padding: 0 23rpx;
font-size: 20rpx;
color: #ffffff;
margin-right: 6rpx;
}
.status-btn {
font-size: 24rpx;
color: #333333;
margin-left: 20rpx;
}
.product-img {
width: 124rpx;
height: 124rpx;
margin-right: 20rpx;
flex-shrink: 0;
display: block;
border: 15rpx;
margin-bottom: 24rpx;
}
.product-list {
display: flex;
justify-content: flex-start;
align-items: center;
flex-wrap: nowrap;
overflow-x: auto;
margin-right: 20rpx;
}
.order-border-btn {
box-sizing: border-box;
padding: 0 26rpx;
min-width: 146rpx;
height: 52rpx;
line-height: 52rpx;
text-align: center;
border-radius: 26rpx;
font-size: 24rpx;
color: #999;
border: 1rpx solid #eee;
margin-left: 18rpx;
flex-shrink: 0;
display: flex;
justify-content: center;
align-items: center;
}
.order-btn {
box-sizing: border-box;
padding: 0 26rpx;
min-width: 146rpx;
height: 52rpx;
line-height: 52rpx;
text-align: center;
border-radius: 26rpx;
font-size: 24rpx;
color: #fff;
border: 1rpx solid #eee;
margin-left: 18rpx;
background: #fb3024;
border: 1rpx solid #fb3024;
flex-shrink: 0;
display: flex;
justify-content: center;
align-items: center;
}
</style>