<template>
	<view class="flex-row relative page">
		<view class="aaa">
			<view class="bbb">
				<view class="ccc" 
					  v-for="(item, index) in sort" 
					  :key="index"
					  :style="getBoxStyle(index)"
					  @click="changeTypes(item , index)"
					  >
					<image class="eee"
						:src="item.imgurl" />
					<text class="ddd">{{ item.name }}</text>
				</view>	
			</view>
		</view>
		<view class="pos_5">
				<view class="flex-row section_9 list-item_2 mt-5" v-for="(item, index) in productList" :key="index" @click="goToProduct(item)">
					<image class="self-center image_4"
						:src="item.goodImg" />
					<view style="width: 220rpx;" class="flex-col items-start self-center group_3">
						<text class="font_2 text_5">{{ item.name }}</text>
						<text class="font_3 mt-13">{{ item.intro }}</text>
						<text class="font mt-13">¥{{ item.price }}</text>
					</view>
					<image class="self-start image_5"
						:src="add_img" />
				</view>
		</view>
	</view>
</template>

<script setup>
import {
	ref,onMounted, toRaw
} from 'vue';
import { baseUrl, testUrl , suiUrl} from '@/api/request';
import img1 from '@/pages/store-home/main/img/cailiaobao.png';
import img2 from '@/pages/store-home/main/img/shouchiwu.png';
import img3 from '@/pages/store-home/main/img/toushi.png';
import img4 from '@/pages/store-home/main/img/dingzhi.png';
import img5 from '@/pages/store-home/main/img/jifenduihuan.png';
import product_img from '@/pages/store-home/main/img/shangpingtupian.png';
import add_img from '@/pages/store-home/main/img/tianjia.png';
import sousuokuang from '@/pages/store-home/main/img/sousuokuang.png';

const currentColor = ref(0);
const sort =ref([{}]) //商品类别对象数组
const headerList = ref([{}]) //类别标题和介绍
const productList = ref([{}]) //类别下对应的商品
onMounted( async () => {
  await Getsort()
  await changeTypes( sort.value[0] , 0 )
})
//获取商品分类
const Getsort = async ()=>{
	const res = await uni.request({
		url: testUrl + '/category/list',
		method:'POST'
	})
	if(res.data.code === 1){
		for(let key in res.data.data) {
			sort.value[key] = {//类别列表
				name : res.data.data[key].typeName,
				imgurl : res.data.data[key].typeUrl,
				id : res.data.data[key].id
			}//标题列表
			headerList.value[key] = {
				name : res.data.data[key].typeName,
				typeIntro : res.data.data[key].typeIntro
			}
		}
	} else {
		uni.showToast({ //提示请求错误
			title: '请求商品分类错误',
			icon: 'none',
			duration: 2000
		})
	}
}
//更改类别
const changeTypes = async (item , index) =>{
	currentColor.value = index  
	const res = await uni.request({
		url: testUrl + '/category/list/type',
		method: 'POST',
		data: {
			id : item.id
		}
	})
	if(res.data.code === 1) {
		productList.value = res.data.data[item.id]
	} else {
		uni.showToast({ //商品请求错误
			title: '更改类别错误',
			icon: 'none',
			duration: 2000
		})
	}
}
//更改box颜色
const getBoxStyle = (index) => ({
    backgroundColor: currentColor.value === index ? 'brown' : '#fffef8'  
});

const goToProduct = (item) => {
	console.log(item,123);
	uni.navigateTo({
		url: '../../../pages/store-home/ProductDetails/ProductDetails?info=' + JSON.stringify(item)
	})
}
</script>

<style lang="scss" scoped>
.navbar {
  background-color: #333;
  color: #fff;
  padding: 10px;
}
.bbb {
  display: flex;
  align-items: center;
}
.ccc {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 20rpx;
}
.eee {
  width: 30px;
  height: 30px;
}
.ddd {
  font-size: 14px;
}
.flex-row {
  display: flex;
}
.flex-item {
  flex: 1;
}
.ml-15 {
	margin-left: 28.13rpx;
}
.ml-3 {
	margin-left: 5.63rpx;
}
.mt-3 {
	margin-top: 5.63rpx;
	text-align: center;
}
.mt-13 {
	margin-top: 17.38rpx;
}
.mt-5 {
	margin-top: 9.38rpx;
}
.page {
	background-color: #f5f5dc;
	// height: 1413.75rpx;
	width: 100%;
	overflow-y: auto;
	overflow-x: hidden;
	height: 100vh;
	overflow: hidden;
}
.section {
	padding: 22.5rpx 39.28rpx 16.88rpx;
	background-color: #f7de98;
}
.pos_8 {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
}
.text {
	color: #c1651a;
	font-size: 37.5rpx;
	font-family: STFangsong;
	line-height: 36.19rpx;
}
.section_2 {
	padding: 5.63rpx 15rpx 8.44rpx;
	background-color: #ffffff;
	border-radius: 28.13rpx;
	height: 63.75rpx;
	width: 500.69rpx;
}
.image {
	width: 50.63rpx;
	height: 50.63rpx;
}
.text-wrapper {
	margin-right: 17.42rpx;
}
.font {
	font-size: 26.25rpx;
	font-family: STFangsong;
	line-height: 18rpx;
	color: #ff0000;
}
.image-wrapper {
	background-color: #ffffff;
	border-radius: 28.13rpx;
	overflow: hidden;
	border: solid 9.38rpx #ffffff;
}
.pos_1 {
	position: absolute;
	left: 22.5rpx;
	right: 24.38rpx;
	top: 118.13rpx;
}
.image_2 {
	width: 91.25vw;
	height: 37.5vw;
}

.group {
	margin: auto;
	width: 137.81rpx;
}
//类别列表
.list-item {
	padding: 11.25rpx 0 9.94rpx;
	background-color: #fffef8;
	border-radius: 9.38rpx;
}
.list-item:first-child {
	margin-top: 0;
}
.image_3 {
	border-radius: 0rpx 9.38rpx 9.38rpx 0rpx;
	width: 60rpx;
	height: 60rpx;
}
.font_4 {
	font-size: 25rpx;
	font-family: STFangsong;
	line-height: 28.26rpx;
	color: #c1651a;
}
.section_4 {
	padding-bottom: 879.38rpx;
	background-color: #f8e8c1;
	border-radius: 0rpx 18.75rpx 0rpx 0rpx;
	width: 600.13rpx;
}
.pos_4 {
	position: absolute;
	right: 0;
	top: 440.63rpx;
}
.section_5 {
	padding: 18.06rpx 16.24rpx 14.94rpx;
	background-color: #fffef8;
	border-radius: 0rpx 18.75rpx 0rpx 0rpx;
	width: 598.13rpx;
}
.font_2 {
	font-size: 30rpx;
	font-family: STFangsong;
	line-height: 28.26rpx;
	color: #000000;
}
.font_3 {
	font-size: 22.5rpx;
	font-family: STFangsong;
	line-height: 21.56rpx;
	color: #727272;
}
.text_3 {
	line-height: 21.15rpx;
}
.pos_5 {
	position: absolute;
	top: 120rpx;
	width: 95%;
	margin: 2.5%;
}
.section_9 {
	padding: 20.63rpx 22.88rpx 22.5rpx;
	background-color: #fffef8;
	border-radius: 9.38rpx;
	right: 13.13rpx;
}
.list-item_2:first-child {
	margin-top: 0;
}
.image_4 {
	border-radius: 9.38rpx;
	width: 131.25rpx;
	height: 131.25rpx;
}
.group_3 {
	margin-left: 24.84rpx;
}
.text_5 {
	line-height: 28.65rpx;
}
.image_5 {
	margin: 75rpx 5.63rpx 0 107.96rpx;
	border-radius: 9.38rpx;
	width: 56.25rpx;
	height: 56.25rpx;
}
@import url(../../../common/css/global.css);
</style>