<template>
	<view class="dangerList">
		<headers class="fixedheader" :themeType="true" :showBack="true">
			<view class="headerName">
				{{headerTitle}}
			</view>
		</headers>
		<scroll-view class="smallHeight" :style="{ 'padding-top': statusBarHeight + 45 + 'px' }" scroll-y>
			<view class="danger-list">
				<view v-if="dataList&&dataList.length>0">
					<view class="danger-item"
						v-for="(item, index) in dataList" :key="index"
						@click="previewDetail(item)">
						<view class="item-title flex" v-if="item.checkContent">
							<text class="item-lv" :class="{'lv2': item.faultLevel == 2}" v-if="item.faultLevel">{{item.faultLevel == 1 ? '一般':'重大'}}</text>
							<text class="item-h2">{{item.checkContent}}</text>
						</view>
						<view class="item-content flex">
							<view class="item-type">检查类型：{{item.inspectTypeName}}</view>
							<view>检查人：{{item.createUserName}}</view>
						</view>
            <view class="item-content flex">
            	<view>检查时间：{{item.inspectTime}}</view>
            </view>
						<view class="item-bottom flex">
							<view class="item-address flex">
								<image src="/static/safeMange/address_icon.png"></image>
								{{item.dutyRegion}}
							</view>
							<view class="item-tag" :class="{'status1': item.status == 2, 'status2': item.status == 3, 'status3': item.status == 1 || item.status == 4 }">
								{{item.status == 2 ? '待整改': item.status == 3 ? '待复核' : item.status == 1 || item.status == 4 ? '已闭合' : ''}}
							</view>
						</view>
					</view>
					<view class="loadMoreBox" v-if="isLoadMore">
						<uni-load-more :status="loadStatus" iconType="auto"></uni-load-more>
					</view>
				</view>
				<view class="no-data" v-else>
					<image class="img" src="/static/noData.png"></image>
					<text class="txt">暂无数据</text>
				</view>
			</view>
		</scroll-view>
	</view>
</template>

<script>
	import headers from '../../../components/headers/headers.vue'
	export default{
		data(){
			return{
				statusBarHeight: 0,
				pageType: 0,
				headerTitle: "",
				dataList:[],
				userId: "",
				itemId: "",
				loadStatus:'more',
				isLoadMore: false,
				pageNo: 1,
				pageSize: 10,
				engineeringId: ""
			}
		},
		components:{
			headers
		},
		onShow(){
			this.dataList = []
			this.pageNo = 1
			this.statusBarHeight = uni.getStorageSync('systemInfo').statusBarHeight;
			this.userId = JSON.parse(uni.getStorageSync('userInfo')).userId
			this.projectSn = JSON.parse(uni.getStorageSync('userInfo')).sn
			this.queryData()
			console.log(this)
		},
		onLoad(val){
			if(val.engineeringId){
				this.engineeringId = val.engineeringId
			}
			this.pageType = val.type
			if(val.type == 1){
				this.headerTitle = "待整改"
			} else if(val.type == 2){
				this.headerTitle = "待复核"
			} else if(val.type == 3){
				this.headerTitle = "检查台账"
			} else if(val.type == 4){
				this.headerTitle = "整改单列表"
			} else if(val.type == 5){
				this.headerTitle = "隐患问题"
			} else if(val.type == 6){
				this.headerTitle = "排查记录"
			} 
			if(val.itemId){
				this.itemId = val.itemId
			}
			this.userId = JSON.parse(uni.getStorageSync('userInfo')).userId
			this.projectSn = JSON.parse(uni.getStorageSync('userInfo')).sn
			// this.queryData()
			console.log(this.projectSn)
		},
		onReachBottom() {
			console.log(1)
			if(!this.isLoadMore){  //此处判断，上锁，防止重复请求
				this.isLoadMore=true
				this.pageNo+=1
				this.queryData()
			}
		},
		onPullDownRefresh() {
			console.log(2)
			this.pageNo=1
			this.dataList=[]
			this.queryData()
		},
		methods:{
			queryData(){
				let _this = this
				let data = {
					changeUser: "",
					createUser: "",
					reviewId: "",
					itemId: "",
					pageNo: this.pageNo,
					pageSize: this.pageSize,
					projectSn: this.projectSn,
					engineeringId: this.engineeringId
				}
				if(this.itemId){
					data.itemId = this.itemId
				}
				if(this.pageType == 1){
					data.changeUser = this.userId
					data.status = 2
				} else if(this.pageType == 2){
					data.reviewId = this.userId
					data.status = 3
				} else if(this.pageType == 5){
					data.recordType = 1
				} else if(this.pageType == 6){
					data.recordType = 2
				}
				console.log(this.userId)
				this.sendRequest({
					url: 'xmgl/hiddenDangerInspectRecord/list',
					method: 'post',
					data: data,
					success: res => {
						this.dataList=this.dataList.concat(res.result.records)
						// this.dataList=res.result.records
						if(res.result.records.length<this.pageSize){  //判断接口返回数据量小于请求数据量，则表示此为最后一页
							  this.isLoadMore=true                                             
							  this.loadStatus='nomore'
						}else{
							  this.isLoadMore=false
							  // that.loadStatus='more'
						}
						uni.stopPullDownRefresh()
						console.log(res.result, '-----list')
					}
				})
			},
			previewDetail(val){
				if(uni.getStorageSync('dangerData')){
					uni.removeStorageSync('dangerData');
				}
				uni.setStorageSync('detailData', val);
				if(this.pageType == 1){
					uni.navigateTo({
						url: "./addExamine?type=2"
					})
				} else if(this.pageType == 2){
					uni.navigateTo({
						url: "./addExamine?type=3"
					})
				} else if(this.pageType == 3 || this.pageType == 4 || this.pageType == 5 || this.pageType == 6){
					uni.navigateTo({
						url: "./addExamine?type=4"
					})
				}
			}
		}
	}
</script>

<style lang="scss" scoped>
.dangerList{
	.fixedheader{
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 2;
	}
	.smallHeight{
		height: 100%;
		box-sizing: border-box;
	}
	.flex{
		display: flex;
	}
	.danger-list{
		padding: 24rpx 30rpx 80rpx 30rpx;
		.danger-item{
			width: 100%;
			padding: 30rpx 20rpx 30rpx 42rpx;
			box-shadow: 0 4rpx 16rpx 4rpx rgba(0, 0, 0, 0.11);
			box-sizing: border-box;
			border-radius: 10rpx;
			margin-bottom: 24rpx;
			.item-title{
				height: 40rpx;
				align-items: center;
				margin-bottom: 26rpx;
				.item-lv{
					display: inline-block;
					background: #2b8df3;
					color: #fff;
					padding: 4rpx 18rpx;
					font-size: 24rpx;
					border-radius: 8rpx;
					margin-right: 14rpx;
					white-space: nowrap;
				}
				.lv2{
					background: #FE6565;
				}
				.item-h2{
					white-space: nowrap;
					overflow: hidden;
					text-overflow: ellipsis;
					font-weight: 600;
					font-size: 30rpx;
				}
			}
			.item-content{
				font-size: 26rpx;
				margin-bottom: 10rpx;
				.item-type{
					margin-right: 76rpx;
				}
			}
			.item-bottom{
				align-items: center;
				justify-content: space-between;
				font-size: 24rpx;
				.item-address{
					color: #CECFD3;
					align-items: center;
					uni-image{
						width: 24rpx;
						height: 24rpx;
						margin-right: 20rpx;
					}
				}
				.item-tag{
					height: 40rpx;
					width: 100rpx;
					line-height: 40rpx;
					padding-left: 14rpx;
					box-sizing: border-box;
					border-radius: 22rpx;
				}
				.status1{
					color: #FE7322;
					background: linear-gradient(to right, rgba(255,113,30, 0.2), rgba(255,113,30, 0.01));
				}
				.status2{
					color: #8556F2;
					background: linear-gradient(to right, rgba(133,86,242, 0.2), rgba(133,86,242, 0.01));
				}
				.status3{
					color: #fff;
					background: linear-gradient(to right, rgba(103,178,253, 0.8), rgba(103,178,253, 0.01));
				}
			}
		}
	}
	.no-data{
		text-align: center;
		margin-top: 50%;
		.img{
			display: block;
			height: 200rpx;
			width: 200rpx;
			margin: 0 auto;
			margin-top: 60rpx;
			margin-bottom: 60rpx;
		}
		.txt{
			color: #C0C4CC;
		}
	}
}
</style>
