<template>
	<view>
		<view 
			class="single-exit"
			v-for="(exit, index) in exitMaterialList"
			:key="index"
		>
			<view class="exit-upper">
				<view class="upper-lef">
					<!-- {{ exit.userName.slice(0, 1) }} -->
				</view>
				<view class="upper-rig">
					<h4 style="font-size: 16px;">{{ exit.userName }}</h4>
					<h4 style="color: #989898;">{{ exit.phone }}</h4>
				</view>
			</view>
			<view class="exit-lower">
				<view>
					<span>退料单位</span>
					<h4>{{ exit.unitName }}</h4>
				</view>
				<view>
					<span>退料工程</span>
					<h4>{{ exit.lotName }}</h4>
				</view>
				<view>
					<span>退料类型</span>
					<h4>{{ exit.typeName }}</h4>
				</view>
				<view>
					<span>预约时间</span>
					<h4>{{ exit.planStartTime }}</h4>
				</view>
			</view>
			<view class="exit-btns">
				<view 
					style="background-color: #3788FF;" 
					v-show="exit.typeId != null"
					@click="seeDetail(exit.id, exit.typeId)"
				>
					<uni-icons style="color: #fff;" type="eye" size="36"></uni-icons>
					查看
				</view>
				<view 
					style="background-color: #FCA30D;"
					v-show="exit.typeId == null"
					@click="chooseMaterial(exit.agreementId)"
				>
					<uni-icons style="color: #fff;" type="compose" size="36"></uni-icons>
					修改
				</view>
				<view 
					style="background-color: #FF4242;"
					@click="delOffer(exit.id)"
				>
					<uni-icons style="color: #fff;" type="trash" size="36"></uni-icons>
					删除
				</view>
			</view>
			<view class="sticky-area">
				<image src="/static/passed.png" v-show="exit.taskStatus == '40'" mode=""></image>
				<image src="/static/noPass.png" v-show="exit.taskStatus != '40'" mode=""></image>
			</view>
		</view>
		<uni-popup
			ref="popup" 
			type="center"
			:mask-click="false"
		>
			<view class="popup">
				<view class="pop-top">
					<h4>新增退料申请</h4>
					<uni-icons 
						style="color: #AAAAAA; font-weight: bold;" 
						type="closeempty" 
						size="32"
						@click="closePopup"
					>
					</uni-icons>
				</view>
				<view class="select-area">
					<uni-forms ref="exitForm" :modelValue="exitFormData" :rules="rules" label-position="top">
						<uni-forms-item name="unitId" required label="选择退料单位" label-width="150">
							<uni-data-select
							  v-model="exitFormData.unitId"
							  :localdata="deptRange"
							  @change="deptChange"
							  :clear="false"
							></uni-data-select>
						</uni-forms-item>
						<!-- <uni-forms-item name="lotId" required label="选择退料工程" label-width="150">
							<uni-data-select
							  v-model="exitFormData.lotId"
							  :localdata="projRange"
							  :clear="false"
							></uni-data-select>
						</uni-forms-item> -->
						
						<uni-forms-item name="exitTime" required label="选择预退料时间" label-width="150">
							<uni-datetime-picker type="date" :clear-icon="false" v-model="exitFormData.exitTime"/>
						</uni-forms-item>
						<button class="submit-btn" @click="formSubmit">确认</button>
					</uni-forms>
				</view>
			</view>
		</uni-popup>
	</view>
</template>

<script>
import { basePath } from '../../public'
	export default {
		data() {
			return {
				exitFormData: {
					unitId: '',
					lotId: '',
					exitTime: ''
				},
				deptRange: [
					{ text: '1', value: '1' },
					{ text: '2', value: '2' },
					{ text: '3', value: '3' }
				],
				projRange: [
					{ text: '4', value: '4' },
					{ text: '5', value: '5' },
					{ text: '6', value: '6' }
				],
				rules: {
					unitId: {
						rules: [
							{
								required: true,
								errorMessage: '请选择退料部门！'
							}
						]
					},
					/* lotId: {
						rules: [
							{
								required: true,
								errorMessage: '请选择退料工程！'
							}
						]
					}, */
					exitTime: {
						rules: [
							{
								required: true,
								errorMessage: '请选择预退料时间！'
							}
						]
					}
				},
				exitMaterialList: [
					
				],
				newAdd: {
					taskType: '36',
					taskStatus: '37',
					createBy: uni.getStorageSync('userInfo').userid,
					companyId: uni.getStorageSync('userInfo').sysUser.companyId,
					agreementId: '',
					unitId: '',
					unitName: '',
					agreementName: '',
					lotId: '',
					phone: uni.getStorageSync('userInfo').sysUser.phonenumber
				},
				fetchedList: []
			}
		},
		methods: {
			closePopup () {
				this.$refs.popup.close()
			},
			deptChange (e) {
				let that = this
				console.log(e, that.fetchedList);
				for (let i = 0; i < that.fetchedList.length; i++) {
					if (e == that.fetchedList[i].unitId) {
						that.newAdd.agreementId = that.fetchedList[i].agreementId
						that.newAdd.unitName = that.fetchedList[i].unitName
						that.newAdd.lotId = that.fetchedList[i].lotId
					}
				}
			},
			formSubmit () {
				let that = this
				that.$refs.exitForm.validate().then(formData => {
					that.newAdd.unitId = formData.unitId
					// that.newAdd.backTime = formData.exitTime
					console.log(that.newAdd);
					// 提交新建退料任务单
					that.$api.exitMaterial.newExitList(that.newAdd, null).then(res => {
						console.log(res);
						if (res.data.code == 200) {
							uni.showToast({
								icon: 'none',
								title: '新增申请成功！',
								success: () => {
									uni.redirectTo({
										url: '/pages/exitMaterial/exitMaterial'
									})
								}
							})
						}
					}).catch(err => {
						throw err
					})
					that.$refs.popup.close()
				})
			},
			seeDetail (id, typeId) {
				uni.navigateTo({
					url: `/pages/exitMaterialDetail/exitMaterialDetail?id=${id}&typeId=${typeId}`
				})
			},
			chooseMaterial (agreeId) {
				uni.navigateTo({
					url: `/pages/exitMaterialSelect/exitMaterialSelect?agreeId=${agreeId}`
				})
			},
			delOffer (id) {
				console.log('删除');
				let that = this
				uni.showModal({
					title: '删除申请',
					content: '确认删除此条申请吗？',
					success: (res) => {
						if (res.confirm) {
							that.$api.exitMaterial.delMaterial({
								id
							}, null).then(delRes => {
								console.log(delRes);
								if (delRes.data.code == 200) {
									uni.showToast({
										icon: 'none',
										title: '删除成功！',
										success: () => {
											uni.redirectTo({
												url: '/pages/exitMaterial/exitMaterial'
											})
										}
									})
								}
							}).catch(err => {
								throw err
							})
						}
					}
				})
			}
		},
		onNavigationBarButtonTap() {
			this.$refs.popup.open()
		},
		onShow() {
			let that = this
			console.log(uni.getStorageSync('userInfo').userid);
			console.log(uni.getStorageSync('userInfo').sysUser.companyId);
			// 初始化获取机具退料申请列表
			that.$api.exitMaterial.exitMaterialList({
				companyId: uni.getStorageSync('userInfo').sysUser.companyId
				// companyId: 1
			}, null).then(res => {
				console.log(res);
				if (res.data.code == 200) {
					that.exitMaterialList = res.data.data
				}
			}).catch(err => {
				throw err
			})
			// 初始化获取退料单位，退料工程列表
			that.$api.exitMaterial.exitDeptList({
				// userId: uni.getStorageSync('userInfo').userid
				userId: 1001
			}, null).then(res => {
				console.log(res);
				if (res.data.code == 200) {
					that.fetchedList = res.data.data
					that.deptRange = res.data.data.map((item) => {
						return {
							text: item['unitName'],
							value: item['unitId']
						}
					})
				}
			}).catch(err => {
				throw err
			})
		}
	}
</script>

<style lang="scss">
	body{
		background-color: #f8f8f8;
	}
	.single-exit{
		width: 95%;
		margin: 20rpx auto;
		background-color: #fff;
		border-radius: 15rpx;
		box-sizing: border-box;
		padding: 15rpx;
		position: relative;
		.exit-upper{
			width: 100%;
			box-sizing: border-box;
			padding: 15rpx;
			border-bottom: 1px solid #D7D7D7;
			display: flex;
			align-items: center;
			.upper-lef{
				width: 12%;
				height: 5vh;
				border-radius: 15rpx;
				background-color: #409EFF;
				color: #fff;
				display: flex;
				justify-content: center;
				align-items: center;
				font-size: 24px;
			}
			.upper-rig{
				flex: 1;
				box-sizing: border-box;
				padding: 10rpx 20rpx;
				display: flex;
				flex-direction: column;
				justify-content: space-around;
				h4{
					font-weight: normal;
					font-size: 14px;
				}
			}
		}
		.exit-lower{
			width: 100%;
			box-sizing: border-box;
			padding: 15rpx;
			border-bottom: 1px solid #D7D7D7;
			view{
				width: 100%;
				display: flex;
				align-items: center;
				margin-bottom: 15rpx;
				font-size: 14px;
				span{
					color: #9D9D9D;
					padding-right: 20rpx;
				}
				h4{
					color: #000;
					font-size: 14px;
					font-weight: normal;
				}
			}
			view:last-child{
				margin-bottom: 0;
			}
		}
		.exit-btns{
			width: 100%;
			box-sizing: border-box;
			padding: 15rpx;
			display: flex;
			justify-content: flex-end;
			view{
				box-sizing: border-box;
				padding: 8rpx 25rpx;
				border-radius: 15rpx;
				color: #fff;
				margin-right: 15rpx;
				font-size: 14px;
			}
			view:last-child{
				margin-right: 0;
			}
		}
		.sticky-area{
			position: absolute;
			top: 0;
			right: 0;
			width: 11vh;
			height: 10vh;
			image{
				width: 100%;
				height: 100%;
			}
		}
	}
	.popup{
		width: 80vw;
		height: 60vh;
		background-color: #fff;
		border-radius: 15rpx;
		overflow: hidden;
		background: linear-gradient(#D9E7FE, #fff, #fff, #fff);
		.pop-top{
			width: 100%;
			height: 5vh;
			box-sizing: border-box;
			padding: 0 25rpx;
			display: flex;
			justify-content: space-between;
			align-items: center;
		}
		.select-area{
			width: 85%;
			margin: 40rpx auto;
			.submit-btn{
				background-color: #409EFF;
				color: #fff;
			}
		}
	}
</style>
