<!-- 装修用户组件:用户订单 -->
<template>
	<view class="ss-order-menu-wrap ss-flex ss-col-center">
		<view class="menu-item ss-flex-1 ss-flex-col ss-row-center ss-col-center" v-for="item in orderMap"
			:key="item.title" @tap="sheep.$router.go(item.path, { type: item.value })">
			<uni-badge class="uni-badge-left-margin" :text="numData.orderCount[item.count]" absolute="rightTop"
				size="small">
				<image class="item-icon" :src="sheep.$url.static(item.icon)" mode="aspectFit" />
			</uni-badge>
			<view class="menu-title ss-m-t-28">{{ item.title }}</view>
		</view>
	</view>
</template>

<script setup>
	/**
	 * 装修组件 - 订单菜单组
	 */
	import sheep from '@/sheep';
	import {
		computed
	} from 'vue';

	import {
		useI18n
	} from 'vue-i18n';
	const {
		t
	} = useI18n();
	const orderMap = [{
			title: t('order.pending_payment'),
			value: '1',
			icon: '/static/images/no_pay.png',
			path: '/pages/order/list',
			type: 'unpaid',
			count: 'unpaidCount',
		},
		{
			title: t('order.pending_shipment'),
			value: '2',
			icon: '/static/images/change_order.png',
			path: '/pages/order/list',
			type: 'undelivered',
			count: 'undeliveredCount',
		},
		{
			title: t('order.pending_receipt'),
			value: '3',
			icon: '/static/images/no_take.png',
			path: '/pages/order/list',
			type: 'noget',
			count: 'deliveredCount',
		},
		{
			title: t('order.pending_review'),
			value: '4',
			icon: '/static/images/no_comment.png',
			path: '/pages/order/list',
			type: 'nocomment',
			count: 'uncommentedCount',
		},

		{
			title: t('order.all_orders'),
			value: '0',
			icon: '/static/images/all_order.png',
			path: '/pages/order/list',
		},
	];

	const numData = computed(() => sheep.$store('user').numData);
</script>

<style lang="scss" scoped>
	.ss-order-menu-wrap {
		.menu-item {
			height: 160rpx;
			position: relative;
			z-index: 10;

			.menu-title {
				font-size: 24rpx;
				line-height: 24rpx;
				color: #333333;
			}

			.item-icon {
				width: 44rpx;
				height: 44rpx;
			}

			.num-icon {
				position: absolute;
				right: 18rpx;
				top: 18rpx;
				// width: 40rpx;
				padding: 0 8rpx;
				height: 26rpx;
				background: #ff4d4f;
				border-radius: 13rpx;
				color: #fefefe;
				display: flex;
				align-items: center;

				.num {
					font-size: 24rpx;
					transform: scale(0.8);
				}
			}
		}
	}
</style>