<template>
	<view class="" style="">
		<view  style="padding: 32rpx;box-sizing: border-box;"
			class="">
			<view style="font-size: 32rpx;margin-bottom: 32rpx;" class="ui-flex ui-flex-space-between ui-flex-align-center">
				<span class="ui-flex">所有标签	<span @click="showCourse=true" class="ui-ml20 ui-flex">{{ course_text }}<u-icon name="arrow-down"></u-icon></span></span>
				<view v-if="teacher_id" style="background-color: #05CCA1;color: #fff;" class="edit-tag-item-btn " @click="openPop">
					+ 添加标签
				</view>
			</view>
			<view class="log" >
				<view class="" v-if="list.length">
					<u-list @scrolltolower="scrolltolower" height="90vh">
						<view v-for="(item,index) in list" :key="index" class="log-item" @click="xiugaiFenshu(item,index)">
							<view class="log-item-info">
								<view style="color: #999;">
									{{ item.studentTab.tab_name }}
								</view>
								<view>
									{{ item.score>0 ? "+"+item.score : item.score  }}
								</view>
							</view>
							<view class="log-item-info" style="border-bottom: none;">
								<view style="color: #999;">
									{{ item.course.course_name }} - {{ item.parentTab.tab_name }}
								</view>
								<view>
									{{ item.created_at }}
								</view>
							</view>
						</view>
						<u-loadmore status="nomore" v-if="is_bottom"/>
					</u-list>
				</view>
				<view class="" v-else>
					<u-empty mode="data" ></u-empty>
				</view>
			</view>
		</view>
		<uni-data-picker style="background-color: transparent;" ref="picker" placeholder="请选择" popup-title="请选择"
			:localdata="erjiBiaoqianShu" v-model="classes" @change="onchange" @nodeclick="onnodeclick"
			@popupopened="onpopupopened" @popupclosed="onpopupclosed">
		</uni-data-picker>
		<u-picker :show="xianshiFenshuXiala" :columns="fenshuLiebiao" @confirm="querenFenshu" @cancel="xianshiFenshuXiala=false" @close="xianshiFenshuXiala=false"></u-picker>
		<student-edit-tag ref="studentEditTag" @del="delTag()"></student-edit-tag>
		<u-picker :show="showCourse" :columns="courseColumns" keyName="course_name" @cancel="showCourse=false" @confirm="querenKemu"></u-picker>
	</view>

</template>

<script>
	import studentEditTag from "@/pages/studentTab/studentEditTag.vue"
	import Util from "@/common/js/util.js"
	import { getSubjectByStudentId } from "@/common/api/course.js"
	import { getStudentTabTreeByTeacherId,huoquBiaoqianXinxi,geiXueshengTianjiaBiaoqian,xueshengBiaoqianLiebiao } from "@/common/api/tab.js"
	export default {
		components : {
			studentEditTag
		},
		data() {
			return {
				showCourse : false,
				list : [],
				classes: '',
				type : 'center',
				teacher_id : '',
				erjiBiaoqianShu: [],
				suoxuanBiaoqianXinxi : {},
				jiafenLiebiao : [["+1","+2","+3","+4","+5"]],
				koufenLiebiao : [["-1","-2","-3","-4","-5"]],
				fenshuLiebiao : [],
				xianshiFenshuXiala : false,
				xuanzhongBiaoqianId : '',
				biaoqianXinxi : {
					leixing : '',
					fenshu : '',
				},
				stu_school_id : '',
				page : 1,
				is_bottom : false,
				chooseTabIndex : '',
				course_text : '选择科目',
				course_id : '',
				courseColumns : [[]],
				kemuXinxi : {},
			}
		},
		mounted() {
			this.stu_school_id = this.$route.query.stu_school_id		//学生stu_school_id
			if(this.$route.query.course_id){
				this.course_id=this.$route.query.course_id
			}
			this.getSubjectByStudentId()
			this.xueshengBiaoqianLiebiao()
			//如果是老师身份
			if(this.$store.state.teacher_id){
				this.teacher_id=this.$store.state.teacher_id
				this.huoquBiaoqianShu()
			}

		},
		methods: {
			querenKemu(val){
				this.kemuXinxi=val.value[0]
				this.course_text=this.kemuXinxi.course_name
				this.showCourse=false
				this.list=[]
				this.page=1
				this.course_id=this.kemuXinxi.course_id
				this.xueshengBiaoqianLiebiao()
			},
			getSubjectByStudentId(){
				this.$api.sendRequest({
					url: getSubjectByStudentId,
					data : {
						stu_school_id : this.stu_school_id,
					},
					success: res => {
						this.courseColumns=[[]]
						res.data.map(item=>{
							item.course_name=item.course.course_name
							this.courseColumns[0].push(item)
							if(item.course_id==this.course_id){
								this.course_text=item.course_name
							}
						})
					}
				})
			},
			xiugaiFenshu(item,index){
				if(this.teacher_id==item.eval_teacher_id){
					this.$refs.studentEditTag.showTag=true
					this.$refs.studentEditTag.tagInfo=item
					this.$refs.studentEditTag.score= item.score
					this.chooseTabIndex=index
				}
			},
			xueshengBiaoqianLiebiao(){
				this.$api.sendRequest({
					url: xueshengBiaoqianLiebiao,
					data : {
						stu_school_id : this.stu_school_id,
						page : this.page,
						course_id : this.course_id
					},
					success: res => {
						if(res.data.data.length==0){
							this.is_bottom=true
						}else{
							res.data.data.map(item=>{
								this.list.push(item)
							})
							this.page++
						}
					}
				})
			},
			querenFenshu(e){
				this.biaoqianXinxi.fenshu=e.indexs[0]+1
				this.$api.sendRequest({
					url: geiXueshengTianjiaBiaoqian,
					data : {
						teacher_id : this.teacher_id,
						tab_id : this.xuanzhongBiaoqianId,
						stu_school_id : this.stu_school_id,
						type : this.biaoqianXinxi.leixing,
						score : this.biaoqianXinxi.fenshu
					},
					method : 'post',
					success: res => {
						console.log(res,"shis,");
						this.xianshiFenshuXiala=false
						this.page=1
						this.list=[]
						this.xueshengBiaoqianLiebiao()
					}
				})
			},
			openPop() {
				this.$refs.picker.show()
			},
			onnodeclick(e) {

			},
			onpopupopened(e) {
				console.log('popupopened');
			},
			onpopupclosed(e) {
				console.log('popupclosed',e);
			},
			onchange(e) {
				console.log(e,"biaoqianxinxi");
				this.suoxuanBiaoqianXinxi=e.detail.value
				this.course_id=e.detail.value[0].value
				this.course_text=e.detail.value[0].text
				this.xuanzhongBiaoqianId=e.detail.value[2].value
				//去后台查找标签信息
				this.chazhaoBiaoqianXinxi()
			},
			chazhaoBiaoqianXinxi(){
				this.$api.sendRequest({
					url: huoquBiaoqianXinxi,
					data : {
						tab_id : this.xuanzhongBiaoqianId
					},
					success: res => {
						console.log(res,"chazhaoshuju");
						if(res.data.type==1){	
							this.fenshuLiebiao=this.jiafenLiebiao
						}else{
							this.fenshuLiebiao=this.koufenLiebiao
						}
						this.biaoqianXinxi.leixing=res.data.type
						this.$refs.picker.hide()
						//选择完成后,弹出加分，扣分选项
						this.xianshiFenshuXiala=true
					}
				})
			},
			delTag(item,index){
				this.list.splice(this.chooseTabIndex,1)
			},
			huoquBiaoqianShu(){
				this.$api.sendRequest({
					url: getStudentTabTreeByTeacherId,
					method : 'post',
					data : {
						teacher_id : this.teacher_id,
					},
					success: res => {
						console.log(res,"shu");
						this.dataTree=res.data
						res.data.map((item)=>{
							let obj={
								text: item.course_name,
								value: item.course_id,
								children:[],
								course_id : item.course_id,
							}
							item.tabLv2.map(item2=>{
								let children1={
									text: item2.tab_name,
									value: item2.tab_id,
									tab_id : item2.tab_id,
									children :[],
								}
								if(item2.tabLv3){
									item2.tabLv3.map(item3=>{
										let children2={
											text: item3.tab_name,
											value: item3.tab_id,
											tab_id : item3.tab_id,
										}
										children1.children.push(children2)
									})
								}
								obj.children.push(children1)
							})
							this.erjiBiaoqianShu.push(obj)
						})
					}
				})
			},
			scrolltolower(){
				if(this.is_bottom==true) return
				this.xueshengBiaoqianLiebiao()
			},
		}
	}
</script>

<style lang="scss" scoped>
	/deep/.uni-data-tree-input {
		display: none;
	}

	.edit-tag {
	}

	.edit-tag-item-btn {
		background: rgba(5, 204, 161, 0.10);
		border-radius: 14.33px;
		padding: 4rpx 20rpx;
		width: fit-content;
	}
	.edit-tag-item {
		background: rgba(5, 204, 161, 0.10);
		border-radius: 14.33px;
		padding: 4rpx 20rpx;
		margin-right: 32rpx;
		margin-bottom: 32rpx;
		position: relative;
		.edit-tag-item-icon {
			position: absolute;
			width: 40rpx;
			border-radius: 50%;
			height: 40rpx;
			text-align: center;
			line-height: 40rpx;
			background-color: rgba(66, 185, 131, 1);
			right: -20rpx;
			top: -20rpx;
		}
	}

	.edit-tag-item-add {}
	
	.log {
		box-sizing: border-box;
		width: 100%;
		height: 60vh;
		.log-item {
			padding: 16rpx;
			box-sizing: border-box;
			margin-bottom: 28rpx;
			width: 100%;
			background: #ffffff;
			border-radius: 5.33px;
			box-shadow: 0px 0px 6.67px 0px rgba(147, 147, 147, 0.10);
	
			.log-item-info {
				width: 100%;
				padding: 20rpx 0;
				border-bottom: 1px solid #f2f2f2;
				display: flex;
				justify-content: space-between;
			}
	
			.log-item-content {
				width: 100%;
				border-bottom: 1px solid #f2f2f2;
				font-size: 20rpx;
				padding-bottom: 20rpx;
				display: flex;
				align-items: center;
			}
	
			.log-item-content-left {
				display: flex;
				align-items: center;
				flex: 1;
	
				.log-item-content-left-text {
					margin-left: 32rpx;
				}
			}
	
			.log-item-content-right {
				display: flex;
				align-items: center;
			}
	
			.log-item-content-right-color {
				width: 20rpx;
				height: 20rpx;
				border-radius: 50%;
				margin-right: 20rpx;
			}
	
		}
	}
</style>

<style lang="scss">
	/deep/ .selected-item-active{
		border-bottom: 2px solid #05cca1 !important;
	}
	/deep/ .check{
		border: 2px solid #05cca1;
		border-left: 0;
		border-top:0
	}
</style>