<template>
	<view class="container">
		<view class="title-back" :style="{height:`${uni.getStorageSync('moveHeight')+40}px`}">
			<view class="left-father" @click="goBack">
				<image class="back-img" src="https://www.focusnu.com/media/directive/index/left.png" />
				<view style="font-size: 30rpx;">入驻机构</view>
			</view>
		</view>
		<view :style="{height:`${uni.getStorageSync('moveHeight') + 40}px`}"></view>
		<view class="zhiling-box" style="margin-top: 30rpx;height: 120rpx;justify-content: flex-start;">
			<view class="input-all">
				<image
					style="position: absolute;left: 20rpx;top: 50%;transform: translateY(-50%);width: 40rpx;height: 40rpx;"
					src="https://www.focusnu.com/media/directive/index/search.png" />
				<input style="font-size: 31rpx;" type="text" v-model="supervalue" placeholder="请输入入驻护理机构名称"
					@confirm="search" @input="detectinput" />
				<view @click="clearvalue" v-if="supervalue"
					style="position: absolute;right: 20rpx;top: 50%;transform: translateY(-50%);width: 40rpx;height: 40rpx;display: flex;justify-content: center;align-items: center;border-radius: 50%;background-color: #EBEBEB;">
					<image style="width: 20rpx;height: 20rpx;"
						src="https://www.focusnu.com/media/directive/index/cha.png" />
				</view>

			</view>
			<!-- <view class="tianjia" @click="search">
				检索
			</view> -->
		</view>
		<view
			style="width: 100%;margin-top: 170rpx;display: flex;flex-direction: column;justify-content: center;align-items: center;"
			v-if="!hulijigouArray.length">
			<image style="height: 350rpx;width: 350rpx;"
				src="https://www.focusnu.com/media/directive/index/nomessage.png" />
			<view style="color: #8E96AD;margin-top: -40rpx;">
				暂无数据
			</view>
		</view>
		<view style="width: 100%;display: flex;flex-wrap: wrap;" v-if="hulijigouArray.length>0">
			<view v-for="(item,index) in hulijigouArray" :key="index" class="zhiling-box-card"
				:style="hulitarget===index?{border:`4rpx solid #0093FF`}:{}"
				style="margin-top: 30rpx;height: 300rpx;position: relative;width: 92%;flex-direction: column;"
				@click="clickCard(index)">
				<!-- <view style="position: absolute;right: 0rpx;bottom: -14rpx;" v-if="hulitarget===index">
					<image style="width: 60rpx;height: 60rpx;"
						src="https://www.focusnu.com/media/directive/index/lemon.png" />
				</view> -->

				<view class="card-font">

					{{item.departName}}
				</view>
				<view class="gray-font">
					<image style="margin-left: 10rpx;height: 23rpx;width: 23rpx;margin-right: 10rpx;margin-top: 5rpx;"
						src="https://www.focusnu.com/media/directive/index/ruzhu/man.png" />
					{{ item.orgLeader }}
					<view style="margin: 0 20rpx;">
						|
					</view>
					<image style="margin-left: 10rpx;height: 23rpx;width: 23rpx;margin-right: 10rpx;margin-top: 8rpx;"
						src="https://www.focusnu.com/media/directive/index/ruzhu/phone.png" />
					{{ item.orgLeaderPhone }}
				</view>
				<!-- <view class="applying" v-if="item.employeesApiEntity?.status===`1`">
					{{ item.employeesApiEntity.applyType=='1' ? "申请中" : "待确认" }}

				</view>
				<view class="applysuccess" v-if="item.employeesApiEntity?.status===`2`">

					{{ item.employeesApiEntity.applyType=='1' ? "申请通过" : "已接受" }}
				</view>
				<view class="applyfail" v-if="item.employeesApiEntity?.status===`3`">
					{{ item.employeesApiEntity.applyType=='1' ? "申请驳回" : "已拒绝" }}
				</view> -->
				<!-- <view class="applying"
					v-if="item.employeesApiEntity?.status===`1`&&item.employeesApiEntity.applyType!=`2`">
					{{ item.employeesApiEntity.applyType =='0' ?`待确认`:`申请中` }}
				</view>
				<view class="applysuccess"
					v-if="item.employeesApiEntity?.status===`2`&&item.employeesApiEntity.applyType!=`2`">
					{{ item.employeesApiEntity.applyType =='0' ?`已接受`:`申请通过` }}
				</view>
				<view class="applyfail"
					v-if="item.employeesApiEntity?.status===`3`&&item.employeesApiEntity.applyType!=`2`">
					{{ item.employeesApiEntity.applyType =='0' ?`已拒绝`:`申请驳回` }}
				</view> -->
				<view class="applying"
					v-if="item.suppliersStatus===`1`">
					申请中
				</view>
				<view class="applysuccess"
					v-if="item.suppliersStatus===`2`">
					申请通过
				</view>
				<view class="applyfail"
					v-if="item.suppliersStatus===`3`">
					申请驳回
				</view>
				<view class="applyfail"
					v-if="item.suppliersStatus===`4`">
					申请变更中
				</view>
				<view class="applyfail"
					v-if="item.suppliersStatus===`5`">
					变更已驳回
				</view>
				
				<view class="gray-bgc">
					<image class="gray-img" src="https://www.focusnu.com/media/directive/index/ditu/bgc.png" />

					<view style="color: #999999;z-index: 1;font-size: 27rpx;width: 100%;display: flex;">
						<image
							style="margin-left: 10rpx;height: 30rpx;width: 25rpx;margin-right: 10rpx;z-index: 1;margin-top: 8rpx"
							src="https://www.focusnu.com/media/directive/index/ditu/mark.png" />
						<view style="width: 630rpx;">
							{{item.orgAddress}}
						</view>

					</view>
				</view>
			</view>
		</view>
		<!-- 处理margin重叠 -->
		<view style="height: 200rpx;">

		</view>
		<view class="button-father">
			<view class="blue-button" @click="apply" v-if="buttonOpen">
				申请
			</view>
			<view class="white-button" v-else>
				申请
			</view>

		</view>

		<u-popup v-model="popupshow" mode="bottom" border-radius="40">
			<view class="popop-father">
				<image style="width: 100rpx;height: 100rpx;"
					src="https://www.focusnu.com/media/directive/index/tishi.png" />
				<view class="popop-font">
					入驻申请已提交，请到
					<text style="color: #01A9FF;">
						"我的-审核记录"
					</text>

					查看审核进度
				</view>
				<view class="popop-blue" @click="jumpRuzhu()">
					查看
				</view>
			</view>
		</u-popup>
	</view>
</template>

<script setup lang="ts">
	import {
		reactive,
		ref,
		onMounted,
		onUnmounted,
	} from 'vue';
	import {
		onShow,
		onReachBottom
	} from '@dcloudio/uni-app'

	import { getApplySuppliersOrgInfo, applySupOrg } from './api.js'

	import {
		getSupInfoByOpenId
	} from '@/pages/supplierindex/api.js'

	onShow((() => {
		search();
		sumbit.value = false;
	}))
	onReachBottom(() => {
	  // console.log('触底了')
	  nextPage()
	})
	const hulijigouArray = ref([])
	const hulitarget = ref(-1)
	const popupshow = ref(false);
	const supervalue = ref("");
	const jumpRuzhu = () => {
		popupshow.value = false
		uni.navigateTo({
			url: "/pages/supplierindex/workjoin"
		})
	}
	let inputTimer = null
	const detectinput = () => {
		// clear + set，会在最后一次输入后 600ms 执行
		if (inputTimer) clearTimeout(inputTimer)
		inputTimer = setTimeout(() => {
			inputTimer = null
			// 这里是真正触发的逻辑
			search()
		}, 600) // 600ms = 0.6s
	}
	onUnmounted(() => {
		if (inputTimer) clearTimeout(inputTimer)
	})
	const buttonOpen = ref(false);
	const clickCard = (index : number) => {
		if (hulitarget.value === index) {
			hulitarget.value = -1;
			buttonOpen.value = false;
		} else {
			hulitarget.value = index;
			if(hulijigouArray.value[index].suppliersStatus == null || hulijigouArray.value[index].suppliersStatus == `3`){
				buttonOpen.value = true;
			}else{
				buttonOpen.value = false;
			}
		}
	}
	const clearvalue = () => {
		hulitarget.value = -1;
		supervalue.value = "";
		search()
	}

	const goBack = () => {
		uni.navigateBack()
	}
	const pageNo = ref(1);
	const search = () => {
		pageNo.value = 1;
		canpull.value = true
		buttonOpen.value = false;
		hulitarget.value = -1;
		let data = {
			title:supervalue.value,
			pageNo:pageNo.value
		}
		getApplySuppliersOrgInfo(data).then((res : any) => {
			if (res.success) {
				hulijigouArray.value = res.result.records
				if(res.result.records.length!==5){
					canpull.value = false
				}
			}
		})
	}
	const canpull = ref(true)
	const nextPage = () => {
		
		if(canpull.value){
			pageNo.value ++
			let data = {
				title:supervalue.value,
				pageNo:pageNo.value
			}
			getApplySuppliersOrgInfo(data).then((res : any) => {
				if (res.success) {
					hulijigouArray.value.push(...res.result.records) 
				}
			})
		}
		
	}
	const sumbit = ref(false);

	const apply = () => {
		if(sumbit.value){
			return
		}
		sumbit.value = true;
		getSupInfoByOpenId(hulijigouArray.value[hulitarget.value].orgCode).then(res => {
		
			if (res.result === null) {
				uni.setStorageSync('nostaffmessage', hulijigouArray.value[hulitarget.value].orgCode);
				uni.setStorageSync('specicalid', "");
				uni.setStorageSync("baddata", "")
				uni.setStorageSync("backhuancun", {})
				uni.navigateTo({
					url: `/pages/addsupplier/information`
				});
			} else {
				let data = res.result;
				data.orgCode = hulijigouArray.value[hulitarget.value].orgCode;
				uni.navigateTo({
					url: `/pages/addsupplier/all?element=${JSON.stringify(data)}&code=2`
				});
			// 	return
			// 	let data = {
			// 		orgCode:hulijigouArray.value[hulitarget.value].orgCode,
			// 		openId:uni.getStorageSync('openid')
			// 	}
			// 	applySupOrg(data).then((data : any) => {
			// 		if (data.success) {
			// 			uni.requestSubscribeMessage({
			// 				// 这里填后台申请好的 templateId 数组
			// 				tmplIds: ['cWVzXm1C-iitx1gNFn1nZdijq9R_3fCv8vLbiqs9zww'],
			// 				success: (res) => {
			// 					popupshow.value = true
			// 					setTimeout(() => search(), 1000)
			// 				},
			// 				fail: (err) => {
			// 					console.error('订阅接口调用失败：', err);
			// 					uni.showToast({
			// 						title: '订阅失败',
			// 						icon: 'none'
			// 					});
			// 				}
			// 			});


			// 		}
			// 		setTimeout(() => sumbit.value = false, 1000)

			// 	})
			}


			// if (res.success) {
			// 	uni.navigateTo({
			// 		url: `/pages/addstaff/all?element=${JSON.stringify(res.result[0])}`
			// 	});
			// }

		})



	}
	// search()
</script>

<style lang="scss" scoped>
	.container {
		display: flex;
		flex-direction: column;
		min-height: 100vh;
		width: 100%;
		background-color: #F7F7F7;
		position: relative;
	}

	.title-back {
		background-color: #F7F7F7;
		width: 100%;
		height: 70rpx;
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
		padding-bottom: 20rpx;
		border-bottom: 1rpx solid #cbd1d2;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 9999;
	}

	.left-father {
		display: flex;
		align-items: center;

		.back-img {
			width: 45rpx;
			height: 40rpx;
			margin-left: 40rpx;
			margin-right: 15rpx;
		}
	}

	.tianjia {
		width: 120rpx;
		height: 70rpx;
		background: linear-gradient(to bottom, #e7f4ff, #c5e5ff);
		border: 2rpx solid #9AD1FF;
		color: #007CFF;
		display: flex;
		justify-content: center;
		align-items: center;
		border-radius: 30rpx;
		margin-left: 10rpx;
	}

	.zhiling-box {
		display: flex;
		justify-content: space-around;
		align-items: center;

		width: 92%;
		margin-left: 4%;
		height: 110rpx;
		background-color: #fff;
		border-radius: 35rpx;
		font-size: 32rpx;
		border: 4rpx solid #fff;
	}



	.input-all {
		width: 625rpx;
		height: 65rpx;
		border-radius: 30rpx;
		background-color: #F7F7F7;
		padding-left: 80rpx;
		margin-left: 30rpx;
		display: flex;
		align-items: center;
		position: relative;
	}

	.popop-father {
		width: 100%;
		height: 600rpx;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
	}

	.popop-font {
		margin-top: 40rpx;
		width: 70%;
		text-align: center;
		line-height: 40rpx;
		font-size: 30rpx;
		margin-bottom: 100rpx;
	}

	.popop-blue {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 80%;
		display: flex;
		justify-content: center;
		align-items: center;
		height: 90rpx;
		border-radius: 35rpx;
		background: linear-gradient(to bottom, #e7f4ff, #c5e5ff);
		border: 2rpx solid #9AD1FF;
		color: #007CFF;
		font-size: 33rpx;
		margin-bottom: 30rpx;
	}

	.button-father {
		position: fixed;
		bottom: 0rpx;
		left: 0;
		width: 100%;
		display: flex;
		justify-content: center;
		background-color: #F7F7F7;
		z-index: 9999;
	}

	.blue-button {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 80%;
		height: 90rpx;
		margin: 0rpx auto;
		margin-bottom: 80rpx;
		margin-top: 20rpx;
		background: linear-gradient(to bottom, #e7f4ff, #c5e5ff);
		border: 2rpx solid #9AD1FF;
		color: #007CFF;
		border-radius: 35rpx;
		font-size: 33rpx;
	}

	.white-button {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 80%;
		height: 90rpx;
		margin: 0rpx auto;
		margin-bottom: 80rpx;
		margin-top: 20rpx;
		// color: #fff;
		background: linear-gradient(to bottom, #f3f3f5, #dee4e9);
		border-radius: 35rpx;
		font-size: 33rpx;
	}

	.zhiling-box-card {
		display: flex;
		width: 92%;
		margin-left: 4%;
		height: 150rpx;
		background-color: #fff;
		border-radius: 35rpx;
		font-size: 32rpx;
		border: 4rpx solid #fff;
		overflow: hidden;
	}



	.applying {
		position: absolute;
		right: 20rpx;
		top: 0rpx;
		background-color: #FFE8D3;
		color: #FF7900;
		width: 130rpx;
		height: 50rpx;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 28rpx;
		border-radius: 10rpx;
		margin-left: 35rpx;
		margin-top: 25rpx;
		// margin-top: 20rpx;
		// margin-bottom: 20rpx;
	}

	.applysuccess {
		position: absolute;
		right: 20rpx;
		top: 0rpx;
		background-color: #DEF1FF;
		color: #0093FF;
		width: 130rpx;
		height: 50rpx;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 28rpx;
		border-radius: 10rpx;
		margin-left: 35rpx;
		margin-top: 25rpx;
		// margin-bottom: 20rpx;
	}

	.applyfail {
		position: absolute;
		right: 20rpx;
		top: 0rpx;
		background-color: #fff4f7;
		color: #FC3D7F;
		min-width: 130rpx;
		height: 50rpx;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 28rpx;
		border-radius: 10rpx;
		margin-left: 35rpx;
		margin-top: 20rpx;
		padding:  0 15rpx;
		// margin-bottom: 20rpx;
	}

	.card-font {
		margin-left: 40rpx;
		font-size: 32rpx;
		margin-top: 30rpx;
		word-wrap: break-word;
		width: 450rpx;
		font-weight: 600;
	}

	.gray-font {
		margin-left: 40rpx;
		font-size: 29rpx;
		margin-top: 20rpx;
		color: #B1B1B1;
		width: 100%;
		display: flex;
		align-items: center;
	}

	.gray-bgc {
		margin: 20rpx 40rpx;
		width: 90%;
		height: 90rpx;
		border-radius: 10rpx;
		display: flex;
		align-items: center;
		position: relative;
		line-height: 40rpx;

		.gray-img {
			width: 100%;
			height: 100%;
			position: absolute;
			top: 0;
			left: 0;
		}
	}
</style>