<template>
	<!-- 蜂箱预警 -->
	<view class=" page">
		<view class="max-box">
			<!-- <view class="suosou-fx">
				<view class="section_3 ">
					<view class="text_3">
						<view class="input-fu">
							<image class="image_6 inpt-text-icon"
								src="https://codefun-proj-user-res-1256085488.cos.ap-guangzhou.myqcloud.com/654c3cbd5a7e3f03102425f9/654c44a487ca550011b12cc1/16994973961877418353.png" />
							<input v-model="qrcode" class="inpt-text" type="text" value="" placeholder="蜂箱(自定义)编号搜索" maxlength="22"
								@input="mfInput" />
						</view>
					</view>
				</view>
			</view> -->

			<!-- <view class="tabs">
			   <u-tabs :list="list1" @click="click"></u-tabs>
		</view -->


			<view class="flex-col self-start group_4">
				<view class="flex-col">
					<view class="flex-col space-y-6 padding-mi padding-min-box" v-for="(item, index) in fromList"
						:key="index" @scrolltolower="onReachBottom">
						<!-- 报错代码 -->

						<view class="items-end">
							<view class="flex-col group_5">
								<!-- 日期 -->
								<view v-if='!isSameDay(item,index)' class="taxt-center">
									<view style="padding: 15rpx 20rpx 30rpx 20rpx;"
										class="flex-col justify-start self-end text-wrapper">
										<view class="font_2 text_5">{{getTimeByFormat(item.create_time,"MM-dd")}}</view>
									</view>
								</view>
								<!-- 时间 -->
								<view class="time-text">
									<view class=" group_6 space-x-10">
										<view class="font_3 text_6">{{getTimeByFormat(item.create_time,"HH:mm")}}</view>
										<image class="image_7 image_8" :src="imgFn(item.type_text)" />
										<view class="font_4">{{item.type_text}}</view>
									</view>
									<view @click="clickweichuli(item)"
										class="flex-col justify-start text-wrapper_2 icon-text-r"
										:id="item.status_text == '已处理' ? 'text-wrapper_2-bgc2' : 'text-wrapper_2-bgc1' ">
										<view class="font_5">{{item.status_text}}</view>
									</view>
								</view>
							</view>

							<view class=" justify-evenly group_7 flex-box-love">
								<view v-if="fromList.length>0&&index!=(fromList.length-1)" class="xiantiao">
									<view class="ver-line"></view>
								</view>
								<view style="margin-top: 24rpx;" class="flex-col self-start group_8 space-y-6 ">
									<view class="items-end space-x-6 didian-text-box">
										<image class="shrink-0 image_9"
											src="https://codefun-proj-user-res-1256085488.cos.ap-guangzhou.myqcloud.com/654c3cbd5a7e3f03102425f9/654c44a487ca550011b12cc1/16994973961906195248.png" />
										<view class="font_6">{{item.apiary_name}}</view>
										<view class="group_9">
											<view class="font_6">{{item.beehive_name}}</view>
											<view class="font_7">{{item.beehive_qrcode}}</view>
										</view>
									</view>
									<view class="font_8 text_7">{{item.remark}}</view>
								</view>
							</view>
						</view>




					</view>
				</view>
			</view>

		</view>
	</view>
</template>
<script>
	import request from '@/utils/request'
	export default {
		components: {},
		props: {},
		data() {
			return {
				tabIndex: 0,
				items: [],
				page: 1,
				fromList: [],
				// tab 
				list1: [{
					name: '全部'
				}],
				qrcode: '',
				id:'',
				qrcodes:'',
				pagenum: 1,
				pagesize: 15, // 一页多少数据
				isLoading: false, // 是否正在加载数据  
				noMoreData: false, // 是否没有更多数据  
				total: 0
			};
		},
		onLoad(option) {
			this.id = option.id
			this.qrcodes = option.qrcode
			console.log(option);
			this.getfengchangList()
		},
		onShow() {
			// this.listData()
		},

		methods: {
			// 判断是否同一天
			isSameDay(item, index) {
				let time1 = item.create_time
				let time2 = this.fromList[index - 1]?.create_time
				const date1 = new Date(time1);
				const date2 = new Date(time2);
				return (
					date1.getFullYear() === date2.getFullYear() &&
					date1.getMonth() === date2.getMonth() &&
					date1.getDate() === date2.getDate()
				);
			},
			getTimeByFormat(timestamp, format) {
				// console.log(date,format);
				const now = new Date(timestamp);
				const month = now.getMonth() + 1; // 注意:getMonth() 返回的是 0 到 11,所以需要加 1
				const day = now.getDate();

				// 补零函数,确保单个数字前面加零
				const padZero = (num) => (num < 10 ? `0${num}` : num);

				// 根据传入的格式进行处理
				switch (format) {
					case "HH:mm:ss":
						return `${padZero(now.getHours())}:${padZero(now.getMinutes())}:${padZero(now.getSeconds())}`;
					case "HH:mm":
						return `${padZero(now.getHours())}:${padZero(now.getMinutes())}`;
					case "mm:ss":
						return `${padZero(now.getMinutes())}:${padZero(now.getSeconds())}`;
					case "MM-dd":
						// console.log(`${padZero(month)}月${padZero(day)}日`)
						return `${padZero(month)}月${padZero(day)}日`;
						// 可以添加其他格式的处理
					default:
						return "Invalid Format";
				}
			},
			click(item) {
				// console.log('item', item);
				this.activeFengchang = item
				this.listData()
			},
			listData() {
				let data = {
					apiary_id: this.activeFengchang.id,
					qrcode: this.qrcodes,
				}
				request.post('/api/beehive/warning', data).then(res => {
					this.total = res.data.total
						if (res.data.data.length > 0) {
							// 有数据,追加到列表  
							this.fromList = []
							this.fromList = this.fromList.concat(...res.data.data)
							this.pagenum++
						} else {
							// 没有更多数据  
							this.noMoreData = true;
						}
						this.isLoading = false;
						console.log(this.fromList,'555555555')
					})
				// console.log(res.data.data)
			},
			onReachBottom() {
				let sum = this.total 
				console.log(sum,this.fromList.length);
				if (this.fromList.length < sum) {
					this.listData();
				} else {
					uni.showToast({
						title: '没有更多预警记录了',
						icon: 'none',
						duration: 1000
					});
				}
			},
			getfengchangList() {
				// request.post('/api/beehive/warning', {
				// 	apiary_id: this.id,
				// 	qrcode: this.qrcodes
				// }).then(res => {
				// 	this.fromList = [...res.data.data]
				// 	// this.click(this.list1[0])
				// })
				
				request.get('/api/apiary/index', {}).then(res => {
					this.list1.push(...res.data.data)
					this.click(this.list1[0])
				})
			},
			changeStatus(item) {
				request.put('/api/beehive/warningUpdate/' + item.id, {}).then(res => {
					this.listData()
				})
			},

			clickweichuli(item) {
				if (item.status == 1) {
					return
				}
				let that = this
				uni.showModal({
					title: "提示",
					content: '是否已经处理完此预警信息!',
					success: function(res) {
						if (res.confirm) {
							// console.log('用户点击确定');
							that.changeStatus(item)
						} else if (res.cancel) {
							// console.log('用户点击取消');
						}
					}
				})
			},
			mfInput(key) {
				this.listData()
			},
			imgFn(val) {
				if (val == '出勤异常') {
					return '/static/蜂箱预警-出勤异常.png'
				} else if (val == '震动异常') {
					return '/static/蜂箱预警-震动异常.png'
				} else if (val == '温度异常') {
					return '/static/蜂箱预警-温度异常.png'
				} else if (val == '湿度异常') {
					return '/static/蜂箱预警-湿度异常.png'
				} else if (val == '重量异常') {
					return '/static/蜂箱预警-重量异常.png'
				} else if (val == '电量不足') {
					return '/static/蜂箱预警-电量异常.png'
				}
			},

		},
	};
</script>

<style scoped lang="scss">
	.didian-text-box {
		display: flex;
	}

	.flex-box-love {
		display: flex;
	}

	.xiantiao {
		display: flex;
	}

	.icon-text-r {
		text-align: center;
		padding-bottom: 10rpx;
	}

	.padding-min-box {
		margin-top: 20rpx;
	}

	.max-box {
		margin: 0 24rpx;
		padding-bottom: 100rpx;
	}

	.time-text {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.taxt-center {
		display: flex;
		justify-content: center;
	}

	.input-fu {
		width: 100%;
		position: relative;
	}

	.inpt-text {
		text-align: center;
	}

	.inpt-text-icon {
		position: absolute;
		top: 5rpx;
		left: 10rpx;
	}

	.suosou-fx {
		display: flex;
		justify-content: center;
	}

	.page {
		background-color: #ffffff;
		width: 100%;
		overflow-y: auto;
		overflow-x: hidden;
		height: 100%;
	}

	.section {
		padding: 36rpx 28rpx 18rpx 42rpx;
		background-color: #ffffff;
	}

	.space-y-16>view:not(:first-child),
	.space-y-16>text:not(:first-child),
	.space-y-16>image:not(:first-child) {
		margin-top: 32rpx;
	}

	.group {
		padding-left: 28rpx;
	}

	.text {
		color: #7d7d7d;
		font-size: 28rpx;
		font-family: SourceHanSansCN;
		font-weight: 700;
		line-height: 22rpx;
	}

	.space-x-6>view:not(:first-child),
	.space-x-6>text:not(:first-child),
	.space-x-6>image:not(:first-child) {
		margin-left: 12rpx;
	}

	.image {
		width: 34rpx;
		height: 22rpx;
	}

	.image_2 {
		width: 30rpx;
		height: 22rpx;
	}

	.image_3 {
		width: 48rpx;
		height: 23rpx;
	}

	.group_2 {
		padding: 12rpx 0;
	}

	.image_5 {
		width: 32rpx;
		height: 32rpx;
	}

	.pos_2 {
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
	}

	.text_2 {
		color: #000000;
		font-size: 36rpx;
		font-family: AlibabaPuHuiTi;
		line-height: 33rpx;
	}

	.image_4 {
		filter: drop-shadow(0px 4rpx 4rpx #00000040);
		border-radius: 120rpx;
		width: 158rpx;
		height: 60rpx;
	}

	.pos {
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
	}

	.section_2 {
		margin-top: -8rpx;
		padding-top: 20rpx;
		background-color: #ffffff;
		height: 1456rpx;
		border: solid 4rpx #e8e8e8;
		border-radius: 10rpx;
	}

	.section_3 {
		padding: 8rpx 24rpx;
		background-color: #e2e2e2;
		width: 558rpx;
		border: solid 2rpx #ffffff;
		border-radius: 120rpx;
	}

	.image_6 {
		width: 40rpx;
		height: 40rpx;
	}

	.text_3 {
		/* margin-right: 26rpx; */
		color: #888888;
		font-size: 28rpx;
		font-family: Nunito;
		font-weight: 600;
		line-height: 27rpx;
	}

	.group_3 {
		margin-top: 28rpx;
		padding: 0 40rpx;
		width: 750rpx;
	}

	.font_1 {
		font-size: 32rpx;
		font-family: 微软雅黑;
		line-height: 30rpx;
		color: #888888;
	}

	.text_4 {
		color: #000000;
		font-weight: 700;
	}

	/* .group_4 {
		margin: 24rpx 0 -24rpx;
		padding: 0 52rpx;
		width: 750rpx;
	} */

	.group_5 {
		width: 100%;
	}

	.text-wrapper {
		text-align: center;
		padding: 0rpx 0 24rpx;
		border-radius: 4rpx;
		background-image: url('https://codefun-proj-user-res-1256085488.cos.ap-guangzhou.myqcloud.com/654c3cbd5a7e3f03102425f9/654c44a487ca550011b12cc1/16994973961902704708.png');
		background-size: 100% 100%;
		background-repeat: no-repeat;
		width: 148rpx;
	}

	.font_2 {
		font-size: 24rpx;
		font-family: 微软雅黑;
		line-height: 22rpx;
		color: #ffffff;
	}

	.text_5 {
		line-height: 21rpx;
	}

	.group_6 {
		/* padding-top: 10rpx; */
		display: flex;
		align-items: center;
	}

	.space-x-10>view:not(:first-child),
	.space-x-10>text:not(:first-child),
	.space-x-10>image:not(:first-child) {
		margin-left: 20rpx;
	}

	.font_3 {
		font-size: 28rpx;
		font-family: 微软雅黑;
		line-height: 22rpx;
		color: #000000;
	}

	.text_6 {
		font-size: 30rpx;
		width: 100rpx;
	}

	.image_7 {
		margin-left: 28rpx;
		border-radius: 50%;
		width: 40rpx;
		height: 40rpx;
	}

	.image_8 {
		margin-left: 0;
	}

	.font_4 {
		font-size: 28rpx;
		font-family: 微软雅黑;
		line-height: 26rpx;
		font-weight: 700;
		color: #ff5733;
	}

	#text-wrapper_2-bgc1 {
		background-color: #ff5733;
	}

	#text-wrapper_2-gbc2 {
		background-color: #8888;
	}

	.text-wrapper_2 {
		margin-right: 12rpx;
		padding: 10rpx 15rpx;
		background-color: #8888;
		border-radius: 10rpx;
		width: 90rpx;
	}

	.font_5 {
		font-size: 20rpx;
		font-family: 微软雅黑;
		line-height: 18rpx;
		color: #ffffff;
	}

	.group_7 {
		padding-left: 116rpx;
		padding-right: 20rpx;
	}

	.section_4 {
		background-image: repeating-linear-gradient(90deg, #888888, #888888 3.51%, transparent 3.51%, transparent 7.019%);
		background-position: -2rpx 0px;
		width: 2rpx;
		height: 114rpx;
		margin-left: 20rpx;
	}

	.group_8 {
		padding: 0 32rpx;
	}

	.space-y-6>view:not(:first-child),
	.space-y-6>text:not(:first-child),
	.space-y-6>image:not(:first-child) {
		margin-top: 12rpx;
	}

	.image_9 {
		width: 24rpx;
		height: 28rpx;
	}

	.font_6 {
		font-size: 24rpx;
		font-family: 微软雅黑;
		line-height: 22rpx;
		color: #888888;
	}

	.group_9 {
		line-height: 22rpx;
		height: 22rpx;
		display: flex;
	}

	.font_7 {
		font-size: 24rpx;
		font-family: 微软雅黑;
		line-height: 18rpx;
		color: #89c28c;
		margin-left: 10rpx;
	}

	.font_8 {
		font-size: 24rpx;
		font-family: 微软雅黑;
		line-height: 22rpx;
		font-weight: 700;
		color: #000000;
	}

	.text_7 {
		line-height: 28rpx;
	}

	.ver-line {
		margin-left: 22rpx;
		height: 200rpx;
		width: 3rpx;
		border-radius: 10rpx;
		background-color: #e7dfe1;
	}
</style>