<template>
	<view class="content">
		<up-navbar leftText=" " :leftIconColor="'#fff'" :safeAreaInsetTop="true" :autoBack="true" :bgColor="'transparent'">
			<template #center>
				<view class="u-nav-slot flex">
					<view class="btn" @click="changeNav(1)" :class="{active: currentNav==1}">错题本</view>
					<view class="btn" @click="changeNav(2)" :class="{active: currentNav==2}">收藏夹</view>
				</view>
			</template>
		</up-navbar>
		
		<view class="card">
			<view class="h7">我的{{ currentNav==2?'收藏':'错题'}}</view>
			<view class="flex-b">
				<view class="cardBg">
					<view class="flex" @click="goPage('/pages/exercises/brushQuestions/wrongQuestions?wrong=' +currentNav, countInfo.allCount)">
						<view class="label">全部{{ currentNav==2?'收藏':'错题'}}</view>
						<u-icon name="arrow-right" color="#fff" size="14"></u-icon>
					</view>
					<view class="num">{{ countInfo.allCount}}</view>
				</view>
				<view class="cardBg" :class="{green: currentNav==2}">
					<view class="flex" @click="goPage('/pages/exercises/brushQuestions/wrongQuestions?wrong=' + currentNav + '&isHigh=1', countInfo.highCount)">
						<view class="label">{{ currentNav==2?'今日收藏': '高频错题'}}</view>
						<u-icon name="arrow-right" color="#fff" size="14"></u-icon>
					</view>
					<view class="num">{{ countInfo.highCount}}</view>
				</view>
			</view>
			<view class="flex-b" v-if="currentNav==1">
				<view class="h8">答对题后自动移除错题</view>
				<u-switch v-model="switchValue" @change="changeSwitch"></u-switch>
			</view>
		</view>
		<view class="card" v-if="subMenu.length">
			<view class="flex-b">
				<view class="h7">章节练习</view>
				<view class="rightall" @click="deleteAll">
					<u-icon name="trash" color="#ccc" size="14"></u-icon>
					<view class="txt">全部移除</view>
				</view>
			</view>
			<view class="radioWrap" v-if="switchValue&&currentNav==1">
				<up-radio-group 
				    v-model="switchNum"
				   >
					<up-radio label="答对1次就移除" :name="1" class="mr"></up-radio>
					<up-radio label="答对3次就移除" :name="3" class="mr"></up-radio>
				</up-radio-group>
			</view>
			<view class="ul">
				<view class="li" v-for="(item,index) in subMenu" :key="index" @click="subMenuClick(item)">
					<view class="num">{{index+1}}</view>
					<view class="txt">{{ item.name }}</view>
					<view class="rightBox">
						<view class="p">错{{ item.total }}题</view>
						<u-icon name="arrow-right" color="#D9D9D9" size="14"></u-icon>
					</view>
				</view>
			</view>
		</view>
	</view>
</template>

<script setup>
	import { myWrongQuestion, questionSubmenu, deleteWrongOrCol } from '@/config/api.js'
	import { computed, ref } from 'vue'
	import carStore from '@/store/modules/car.js'
	let usecarStore = carStore()
	
	import { onShow } from "@dcloudio/uni-app"
	
	import wrongQuestion from '@/store/modules/wrongQuestionBook.js'
	let usewrongQuestion = wrongQuestion()
	
	const value = ref(false)
	const currentNav = ref(1)
	let list = ref([])
	// let switchValue = ref(false)
	
	function subMenuClick(item) {
		if(!item.total) return uni.$u.toast('暂无题目')
		usecarStore.setCar('chapter', item.param)
		uni.navigateTo({
			url: '/pages/exercises/brushQuestions/wrongQuestions?wrong=' +currentNav.value
		})
	}
	
	function changeNav(val) {
		currentNav.value = val
		countInfo.value = {}
		subMenu.value = []
		myWrongQuestionFn()
		questionSubmenuFn()
	}
		// 1-错题，2-收藏 
	let countInfo = ref({})
	async function myWrongQuestionFn() {
		const {data: res} = await myWrongQuestion({stepType: usecarStore.carInfo.stepType,carType: usecarStore.carInfo.carType, city: usecarStore.carInfo.city,type: currentNav.value})
		countInfo.value = res
		console.log(res)
	}
	
	// 章节列表
	const subMenu = ref([])
	async function questionSubmenuFn() {
		const {data: res} = await questionSubmenu({stepType: usecarStore.carInfo.stepType,carType: usecarStore.carInfo.carType, type: currentNav.value})
		subMenu.value = res
		console.log(res)
	}
	
	onShow(()=>{
		myWrongQuestionFn()
		questionSubmenuFn()
	})
	
	function changeSwitch(val) {
		console.log(val)
	}
	// 是否对题后自动删除错题
	let switchValue = computed({
		get() {
			return usewrongQuestion.frequency?true:false
		},
		set(val) {
			let num = val?1:0
			usewrongQuestion.setFrequency(num)
		}
	})
	// 答对几次删除
	let switchNum = computed({
		get() {
			return usewrongQuestion.frequency
		},
		set(val) {
			usewrongQuestion.setFrequency(val)
		}
	})
	
	// 删除全部的错题
	 function deleteAll() {
		uni.showModal({
			title: '确定要全部移除吗？',
			async success() {
				let obj = {
				  "carType": usecarStore.carInfo.carType,
				  "questionId": '',
				  "stepType": usecarStore.carInfo.stepType,
				  "type":  currentNav.value
				}
				await deleteWrongOrCol(obj)
				myWrongQuestionFn()
				questionSubmenuFn()
			}
		})
		
	}
	
	function goPage(url, num) {
		if(!num) return uni.$u.toast('暂无题目')
		uni.navigateTo({
			url
		})
	}
</script>

<style lang="scss" scoped>
	.radioWrap {
		padding: 40rpx 0 0 0;
		.mr {
			margin: 0 34rpx;
		}
	}
	.u-nav-slot {
		display: flex;
		.btn {
			color: #fff;
			position: relative;
			padding: 0 20rpx;
			&.active {
				&::before {
					content: '';
					position: absolute;
					left: 50%;
					bottom: -20rpx;
					width: 30rpx;
					height: 4rpx;
					background: #F6F7F8;
					border-radius: 2rpx;
					transform: translateX(-50%);
				}
			}
		}
	}
	.content {
	  width: 100%;
	  // background-color: #F6F7FA;
	  min-height: 100vh;
	  padding: 100rpx 30rpx 30rpx 30rpx;
	  background: url('../../../static/images/topbg.png') #F6F7FA no-repeat;
	  background-size: 100% 410rpx;
	  .card {
		  width: 100%;
		  background: #FFFFFF;
		  border-radius: 20rpx;
		  padding: 20rpx;
		  margin-top: 20rpx;
	    .h7 {
			font-size: 32rpx;
			font-weight: 550;
	    }
	
	    .cardBg {
			width: 48%;
			height: 147rpx;
			background: linear-gradient(125deg, #3776FF 0%, #6193FF 100%);
			border-radius: 20rpx;
			padding: 20rpx;
			color: #fff;
			margin-top: 30rpx;
			&:last-child {
				background: linear-gradient(125deg, #FE5656 0%, #FFC5C5 100%);
			}
			&.green {
				background: linear-gradient(125deg, #53FC87 0%, #80FEB5 100%);
			}
	      .flex {
	        .label {
				font-size: 24rpx;
	        }
	
	        u-icon {
				
	        }
	      }
	
	      .num {
			font-weight: bold;
			font-size: 48rpx;
			margin-top: 20rpx;
	      }
	    }
	
	    .flex-b {
	      .h8 {
			font-size: 28rpx;
			line-height: 120rpx;
			font-weight: 550;
	      }
	
	      u-switch {
	
	      }
	    }
	  }
	  .rightall {
		  display: flex;
		  align-items: center;
		  font-size: 24rpx;
		  color: #ccc;
		  .txt {
			  margin-left: 6rpx;
		  }
	  }
	  .ul {
	  	padding-top: 30rpx;
	    .li {
	  	  width: 100%;
	  	  display: flex;
	  	  align-items: center;
	  	  padding: 34rpx 0;
	      .num {
	  		height: 32rpx;
	  		background: #F5C142;
	  		border-radius: 50%;
	  		padding: 0 10rpx;
	  		color: #fff;
	  		font-size: 24rpx;
	  		line-height: 32rpx;
	      }
	  	
	      .txt {
	  		flex: 1;
	  		width: 0;
	  		font-size: 28rpx;
	  		padding: 0 20rpx;
	      }
	  	
	      .rightBox {
	  		display: flex;
	  		align-items: center;
	        .p {
	  		font-size: 24rpx;
	  		color: #FF3333;
	  		margin-right: 4rpx;
	        }
	  	
	        u-icon {
	  		
	        }
	      }
	    }
	  }
	}
</style>