<template>
	<view class="order  bx">
		<!-- <u-sticky> -->
		<!-- <view style="width: 100%;display: flex;padding: 20rpx 0rpx;
			font-size: 28rpx;">
				<view style="flex: 1;
				text-align: center;padding: 10rpx 0;
				margin: 20rpx;"
				:class="{act : currentIndex == index}"
				@click="tabChange(index)"
				v-for="(item, index) in classifyList">
					{{ item.name }}
				</view>
			</view> -->
		<!-- </u-sticky> -->

		<view class="type">
			<view :class="{select : index == currentIndex}" :key="index" @click="tabChange(index)"
				v-for="(item, index) in classifyList">
				<text>{{ item.name }}</text>
			</view>
		</view>


		<!-- <view style="color: #333;border: 1px solid #333;
		padding: 7rpx 15rpx;font-size: 24rpx;" 
		v-if="item.state != 0">
			{{ $t('page.order.Submit_New') }}
		</view>
		<view style="color: #f90;border: 1px solid #f90;
		padding: 7rpx 15rpx;font-size: 24rpx;"
		v-else @click="order = item;show = true;$play()">
			{{ $t('page.order.pay') }}
		</view> -->


		<view v-if="!noOrder" class="order-list">
			<u-list @scrolltolower="scrolltolower" height="calc(100vh - 90rpx)">
				<view v-for="(item,index) in productList" :key="index" class="order-item">
					<view class="top">
						<view style="font-size: 28rpx;" class="time">
							{{ item.subTitle }}
						</view>
						<view style="font-size: 28rpx;" class="time">
							{{ item.createTime }}
						</view>
					</view>
					<view class="center-box">
						<view class="img-box">
							<image :src="item.image" mode="widthFix" style=""></image>
						</view>
						<view class="content">
							<view class="title">
								{{ item.subTitle }}
							</view>
							<view class="con">
								<view>
									{{ $t('page.order.Total_Amount') }}
								</view>
								<view>
									{{ item.price }} USD
								</view>
							</view>
							<view class="con" style="color: #b00;font-size: 26rpx;">
								<view>
									{{ $t('page.order.Profit') }}
								</view>
								<view>
									{{ item.giveMoney }} USD
								</view>
							</view>
						</view>
					</view>

					<view class="buttom">
						<view class="btn">
							{{ $t('page.order.Submit_New') }}
						</view>
					</view>
				</view>

				<view style="justify-content: center;display: flex;
				margin-top: 150rpx;" v-if="loading">
					<u-loading-icon mode="semicircle" size="30"></u-loading-icon>
				</view>
			</u-list>
		</view>

		<!-- <view class="list"
		v-if="!noOrder">
			
			<view class="item">
				
			</view>
		</view> -->

		<view v-else class="no-order">
			<view class="box">
				<view class="no-product-title">{{ $t('page.order.no-Order') }}</view>
				<view @click="toHome()" class="to-home">{{ $t('page.order.take-stroll')}}</view>
			</view>
		</view>



		<u-modal :show="show" :title="$t('page.order.confirm_pay')" :confirmText="$t('page.order.ok')"
			:cancelText="$t('page.order.no')" @cancel="show = false;$play()" @confirm="payOrder"
			:showCancelButton="true"></u-modal>

		<sTabbar select="1" />
	</view>
</template>

<script>
	import navbar from '@/components/base/m-navbar.vue'
	import sTabbar from '@/components/base/tabBar.vue'
	export default {
		components: {
			navbar,
			sTabbar
		},
		data() {
			return {
				classifyList: [{
						name: this.$t('page.order.class_1')
					},
					{
						name: this.$t('page.order.class_2')
					},
					{
						name: this.$t('page.order.class_3')
					},
					{
						name: this.$t('page.order.class_4')
					},
				],

				productList: [],
				currentIndex: 0, //当前选择的标签index
				queryParams: {
					pageNo: 1,
					pageSize: 10
				},
				noOrder: false,
				loading: false,
				show: false,
				order: {}
			}
		},
		onShow() {
			this.getOrderList();
			this.currentIndex = localStorage.getItem('orderIndex') ?
				parseInt(localStorage.getItem('orderIndex')) : 0
			localStorage.removeItem('orderIndex')
		},
		methods: {
			getOrderList() { //获取订单列表
				this.loading = true
				let data = {
					...this.queryParams,
				}

				if (this.currentIndex) data.state = this.currentIndex - 1

				this.request('orderPage', {}, data).then(res => {
					if (res.code == 200) {
						this.loading = false
						this.productList = res.result.records
					}
				})
			},
			tabChange(index) {
				if (index != this.currentIndex) {
					this.currentIndex = index
					this.$play()
					this.getOrderList();
				}
			},
			payOrder() {
				this.$play()
				uni.showLoading()
				this.request('pay', {}, {
					id: this.order.id
				}).then(res => {
					uni.hideLoading()
					this.show = false
					if (res.code == 200) {
						this.getOrderList();
					}
				})
			},
			toHome() { //去首页
				this.$play()
				uni.switchTab({
					url: '/pages/home/home'
				})
			},
			scrolltolower() {
				this.queryParams.pageSize += 10
				this.getOrderList()
			}
		}
	}
</script>

<style lang="scss" scoped>
	.order {
		padding-bottom: 200rpx;
		background-color: #f7f7f7;
		// background-image: url('@/static/home/bg.png');
		background-size: 100%;
		color: #000;
		font-weight: bold;
		min-height: 100vh;
		padding-bottom: 200rpx;

		.type {
			display: flex;
			background-color: #fff;
			// position: fixed;
			width: 100%;
			top: 0;
			left: 0;
			height: 90rpx;
			justify-content: center;
			align-items: center;
			color: #989898;
			font-size: 28rpx;

			&>view {
				flex: 1;
				display: flex;
				justify-content: center;
				align-items: center;
			}

			.select {
				color: #000;

				text {
					padding-bottom: 10rpx;
					border-bottom: 3px solid #000;
				}
			}
		}

		.order-list {
			box-sizing: border-box;
			// margin-top: 50px;

			.order-item {
				position: relative;
				padding: 20rpx;
				border-radius: 5px;
				background-color: $uni-bg-color;
				box-shadow: 0px 0px 5rpx 5rpx #00000010;
				margin: 0rpx 20rpx 20rpx 20rpx;

				.top {
					display: flex;
					justify-content: space-between;
				}

				.center-box {
					display: flex;
					padding: 20rpx 0;

					.img-box {
						width: 200rpx;
						height: 200rpx;
						overflow: hidden;
						border-radius: 10rpx;
						display: flex;
						align-items: center;

						image {
							width: 100%;
							height: 100%;
						}
					}

					.content {
						font-weight: 500;
						width: 430rpx;
						font-size: 28rpx;
						padding-left: 10rpx;
						padding-top: 10rpx;

						.title {
							overflow: hidden;
							text-overflow: ellipsis;
							display: -webkit-box;
							-webkit-line-clamp: 2;
							-webkit-box-orient: vertical;
							width: 100%;
						}

						.con {
							display: flex;
							align-items: center;
							justify-content: space-between;
							margin-top: 15rpx;
						}
					}
				}

				.buttom {
					display: flex;
					justify-content: flex-end;

					.btn {
						padding: 10rpx 20rpx;
						font-size: 26rpx;
						font-weight: 500;
						background-color: #f33;
						color: #fff;
						border-radius: 10rpx;
					}
				}
			}
		}

		.no-order {
			height: calc(100vh - 138px);
			display: flex;
			align-items: center;
			justify-content: center;

			.box {
				font-size: 26rpx;
				text-align: center;

				.to-home {
					padding: 20rpx 140rpx;
					border: 1px solid #ccc;
					border-radius: 5px;
					text-align: center;
					margin: 20rpx 0px;
				}
			}
		}
	}
</style>