<template>
  <view class="reservation-page">
    <view class="fixed-nav">
      <NavBar title="过闸预约" />
    </view>
    <!-- 船舶信息卡片1（水位等） -->
    <view class="card">
      <view class="card-title">船舶信息</view>
      <view class="water-info-row">
        <view class="water-info-col">
          <text class="label">今日水位：</text>
          <text class="value blue">4.2m</text>
        </view>
        <view class="water-info-col">
          <text class="label">水深：</text>
          <text class="value blue">3.8m</text>
        </view>
        <view class="water-info-col">
          <text class="label">限高：</text>
          <text class="value blue">7.5m</text>
        </view>
      </view>
    </view>

    <!-- 船舶信息卡片2（详细信息） -->
    <view class="card">
      <view class="card-title">船舶信息</view>
      <view class="info-list">
        <view class="info-row">
          <text class="info-label">总长度</text>
          <view class="info-value">45米 <text class="arrow">›</text></view>
        </view>
        <view class="info-row">
          <text class="info-label">型宽</text>
          <view class="info-value">8米 <text class="arrow">›</text></view>
        </view>
        <view class="info-row">
          <text class="info-label">型深</text>
          <view class="info-value">3.5米 <text class="arrow">›</text></view>
        </view>
        <view class="info-row">
          <text class="info-label">编号</text>
          <view class="info-value">ZJ12345 <text class="arrow">›</text></view>
        </view>
        <view class="info-row">
          <text class="info-label">载重</text>
          <view class="info-value">500吨 <text class="arrow">›</text></view>
        </view>
        <view class="info-row">
          <text class="info-label">类型</text>
          <view class="info-value">货船 <text class="arrow">›</text></view>
        </view>
      </view>
    </view>

    <!-- 航行方向选择 -->
    <view class="card">
      <view class="card-title">航行方向</view>
      <view class="direction-row">
        <button class="direction-btn" :class="{ active: direction === 'north' }" @click="setDirection('north')">↓ 北向南</button>
        <button class="direction-btn" :class="{ active: direction === 'south' }" @click="setDirection('south')">↑ 南向北</button>
      </view>
    </view>

    <!-- 预约须知 -->
    <view class="notice-row">
      <text class="notice-title">预约须知</text>
      <view class="notice-check">
        <checkbox />
        <text>我已阅读并同意《过闸预约服务协议》</text>
      </view>
    </view>
  </view>
</template>

<script>
import NavBar from '@/components/NavBar.vue'
export default {
  name: 'ReservationPage',
  components: { NavBar },
  data() {
    return {
      direction: 'north'
    }
  },
  methods: {
    setDirection(dir) {
      this.direction = dir
    }
  }
}
</script>

<style scoped>
.reservation-page {
  background: linear-gradient(180deg, #cbe6ff 0%, #f6faff 100%);
  min-height: 100vh;
  padding-bottom: 80px;
  padding-top: 90px;
  font-family: 'SourceHanSansCN', 'PingFang SC', 'Microsoft YaHei', sans-serif;
}
.fixed-nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  background: linear-gradient(180deg, #cbe6ff 0%, #f6faff 100%);
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 16px 10px 16px;
  background: linear-gradient(180deg, #cbe6ff 0%, #f6faff 100%);
  padding-top: 7vh;
}
.back-btn, .more-btn {
  font-size: 24px;
  color: #333;
}
.title {
  font-size: 22px;
  font-weight: bold;
  color: #222;
}
.card {
  background: #fff;
  border-radius: 18px;
  margin: 0 16px 16px 16px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
  padding: 18px 18px 12px 18px;
  margin-top: 20px;
}
.card-title {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 12px;
  color: #222;
}
.water-info-row {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  width: fit-content;
  margin: 0 auto;
  gap: 150rpx;
}
.water-info-col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
}
.label {
  color: #888;
  font-size: 15px;
  margin-bottom: 2px;
  text-align: left;
}
.value.blue {
  color: #217aff;
  font-size: 14px;
  text-align: left;
}
.info-list {
  border-top: 1px solid #f0f0f0;
}
.info-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px solid #f0f0f0;
}
.info-row:last-child {
  border-bottom: none;
}
.info-label {
  color: #222;
  font-size: 16px;
}
.info-value {
  color: #222;
  font-size: 16px;
  display: flex;
  align-items: center;
}
.arrow {
  color: #bdbdbd;
  font-size: 18px;
  margin-left: 4px;
}
.direction-row, .batch-row {
  display: flex;
  margin-bottom: 8px;
  justify-content: center;
}
.direction-btn, .batch-btn {
  border: none;
  border-radius: 24px;
  padding: 0;
  font-size: 14px;
  background: #f2f6fa;
  color: #888;
  height: 24px;
  width: 110px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 20rpx;
}
.direction-btn.active, .batch-btn.active {
  background: #217aff;
  color: #fff;
}
.notice-row {
  margin: 24px 16px 0 16px;
}
.notice-title {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 8px;
  color: #222;
}
.notice-check {
  display: flex;
  align-items: center;
  margin-top: 8px;
  font-size: 13px;
  color: #888;
}
.tabbar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  height: 60px;
  background: #fff;
  display: flex;
  border-top: 1px solid #eaeaea;
  z-index: 10;
}
.tab-item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #888;
  font-size: 14px;
}
.tab-item.active {
  color: #217aff;
}
.icon {
  font-size: 22px;
  margin-bottom: 2px;
}
</style> 