<template>
	<view class="workAssign">
		<head-view :title="title" url="/pages/shipWork/documentList"></head-view>
		<view class="container contentFixed">
			<view class="signBox">
				<p class="sign" @click="sign">点击签名</p>
			</view>
			<template v-if="infoList.length > 0">
				<view class="ul">
					<view class="li" v-for="(item,index) in infoList" :key="index" @click="add('look',item,index)">
						<view class="title">
							<image src="../../static/images/shipWork/hc.png" mode="widthFix"></image>
							<text>航次：{{item.vvyName}}</text>
						</view>
						<view class="liInfo">
							<p>进出口：<text>{{item.importExportFlagName}}</text></p>
							<p>贸易类型：<text>{{shipInfo[0].tradeTypeName}}</text></p>
							<p>作业时间：<text>{{item.startTime}} - {{item.endTime}}</text></p>
						</view>
					</view>
				</view>
			</template>
			<o-empty v-else height="70vh" bg="#f5f6fa" />
			<view class="addBtn" @click="add('add')">+ 新增</view>
		</view>
	</view>
</template>

<script>
	import sqlite from "../../common/sqlite.js"
	export default {
		data() {
			return {
				title: "船只 - 指导员作业布置",
				shipInfo: [],
				infoList: [],
				vtpId: "",
			}
		},
		mounted() {
			this.vtpId = uni.getStorageSync('vtpId')
			let title = uni.getStorageSync('shipWorkTitle')
			this.title = `${title} / 指导员作业布置 `
			this.executeSql1('shipmentAdviserLayoutRespList')
			this.executeSql1('voyageScheduleDataDetailRespDTOList')
		},
		methods: {
			// 查
			executeSql1(tableName) {
				let sql = `select * from ${tableName} WHERE vtpId = '${this.vtpId}'`
				sqlite.executeSqlCeshi(sql).then((value) => {
					// 在resolve时执行的回调函数
					if (tableName == 'voyageScheduleDataDetailRespDTOList') {
						this.shipInfo = value
					} else {
						this.infoList = value
					}
				}).catch((error) => {
					// 在reject时执行的回调函数
					console.error(error);
				});
			},
			// 点击签名
			sign() {
				const objType = {
					signType: "workAssign"
				}
				const dataType = encodeURIComponent(JSON.stringify(objType));
				uni.navigateTo({
					url: `/pages/shipWork/workAssignSign?dataType=${dataType}`
				})
			},
			// 点击新增
			add(state, item, index) {
				if (state != 'add') {
					uni.setStorageSync('assignRow', item);
					uni.setStorageSync('assignRowIndex', index);
				}
				const obj = {
					state: state,
				}
				const params = encodeURIComponent(JSON.stringify(obj));
				uni.navigateTo({
					url: `/pages/shipWork/workAssignAdd?params=${params}`
				})
			},
		}
	}
</script>

<style lang="less" scoped>
	.workAssign {
		.headInfo {
			/deep/.uniui-bottom {
				display: none;
			}
		}

		.container {
			padding: 30px 20px;

			.signBox {
				display: flex;
				justify-content: flex-end;

				.sign {
					width: 86px;
					height: 36px;
					line-height: 36px;
					text-align: center;
					color: #2979ff;
					border: 1px solid #2979ff;
					border-radius: 4px;
					color: #2979ff;
				}
			}

			.ul {
				padding: 20px 0;
				display: flex;
				flex-wrap: wrap;

				.li {
					width: 33%;
					padding: 16px;
					border: 1px solid #ccc;
					background-color: #fff;
					border-radius: 8px;
					position: relative;
					margin-bottom: 10px;

					.title {
						display: flex;

						text {
							font-size: 16px;
							font-weight: bold;
							display: flex;
							flex-direction: column;
							justify-content: center;
							margin-left: 8px;
						}

						image {
							width: 32px;
							height: 32px;
						}
					}

					.liInfo {
						display: flex;
						flex-wrap: wrap;
						justify-content: space-between;
						margin-top: 24px;

						p {
							width: 49%;
							margin-bottom: 12px;
							color: #999;

							text {
								font-weight: bold;
								color: #23262e;
							}
						}

						p:last-child {
							width: 100%;
						}
					}
				}

				.li:nth-of-type(3n - 1) {
					margin: 0 0.5% 10px;
				}

				/deep/.o-empty {
					width: 100%;
				}
			}

			.addBtn {
				position: fixed;
				right: 50px;
				bottom: 50px;
				width: 100px;
				height: 100px;
				border-radius: 50%;
				background-color: #2979ff;
				color: #fff;
				font-size: 24px;
				text-align: center;
				line-height: 100px;
				font-weight: bold;
			}
		}
	}
</style>