order-detail.vue 6.45 KB
<script setup></script>

<template>
  <div class="container">
    <div class="left">
      <!-- 票务信息 -->
      <div class="ticket">
        <div class="th">
          <div style="width: 33%" class="td">票务信息</div>
          <div style="width: 25%" class="td">地点</div>
          <div style="width: 20%" class="td">单价</div>
          <div style="width: 10%" class="td">数量</div>
          <div style="width: 12%; text-align: right" class="td">小计</div>
        </div>
        <div class="line"></div>
        <div class="tr">
          <div style="width: 30%" class="td">2024年亚洲舞蹈大赛无锡站</div>
          <div style="width: 25%" class="td">无锡太湖国际博览中心</div>
          <div style="width: 20%" class="td">¥80.00</div>
          <div style="width: 12%" class="td">x3</div>
          <div style="width: 13%; text-align: right" class="td">¥240.00</div>
        </div>
      </div>
      <!-- 座位 -->
      <div class="seat_box">
        <div class="th">
          <div style="width: 30.33%" class="td">时间座位</div>
          <div style="width: 30.33%" class="td">订单信息</div>
          <div style="width: 30.33%" class="td">联系方式</div>
        </div>
        <div class="tr">
          <div style="width: 30.33%" class="td flex-col">
            <div>2024.05.03 周六</div>
            <div>A区 6排16座 (B6馆)</div>
            <div>A区 6排16座 (B6馆)</div>
            <div>A区 6排16座 (B6馆)</div>
          </div>
          <div style="width: 30.33%" class="td flex-col">
            <div>订单编号:12783893435</div>
            <div>创建时间:2024.05.07 16:3</div>
          </div>
          <div style="width: 30.33%" class="td">
            <div>联系电话:12783893435</div>
          </div>
        </div>
      </div>
      <!-- 购票人 -->
      <div class="pay_ticket">
        <div class="title">购票人</div>
        <div class="people">
          <div v-for="(it, index) in 4" :key="index" class="p_info">
            <div>张三</div>
            <div class="idcard">身份证:244************0</div>
          </div>
        </div>
      </div>
    </div>

    <div class="right">
      <div class="balance">
        <div class="title">结算信息</div>
        <div class="cell">
          <div class="label">订单状态</div>
          <div class="value">待支付</div>
        </div>
        <div class="cell">
          <div class="label">订单金额</div>
          <div class="value">待支付</div>
        </div>
        <!-- button -->
        <div class="btn_box">
          <div class="can_pay">取消支付</div>
          <div class="pay">立即支付</div>
        </div>
      </div>
      <div class="tip">请尽快完成支付,还剩15分00秒</div>
    </div>
  </div>
</template>

<style scoped lang="scss">
.container {
  width: 1200px;
  margin: 0 auto;
  padding: 20px 0;
  display: flex;
  gap: 20px;
  .left {
    width: 780px;
    // 票务信息
    .ticket {
      background-color: #fff;
      padding: 0 20px;
      .th {
        display: flex;
        justify-content: space-between;
        padding: 20px 0;
        .td {
          font-weight: bold;
          font-size: 16px;
          color: #333333;
          line-height: 24px;
        }
      }
      .line {
        width: 740px;
        height: 1px;
        background: #eee;
      }
      .tr {
        display: flex;
        justify-content: space-between;
        padding: 20px 0;
        .td {
          font-weight: 400;
          font-size: 16px;
          color: #333333;
          line-height: 24px;
        }
      }
    }
    // 座位
    .seat_box {
      background-color: #fff;
      padding: 0 20px;
      margin-top: 20px;
      .th {
        display: flex;
        justify-content: space-between;
        padding: 20px 0;
        .td {
          font-weight: bold;
          font-size: 16px;
          color: #333333;
          line-height: 24px;
        }
      }
      .tr {
        display: flex;
        justify-content: space-between;
        padding: 20px 0;
        .td {
          font-weight: 400;
          font-size: 16px;
          color: #333333;
          line-height: 24px;
        }
        .flex-col {
          display: flex;
          flex-direction: column;
          gap: 16px;
        }
      }
    }
    // 购票人
    .pay_ticket {
      background-color: #fff;
      padding: 20px;
      margin-top: 20px;
      .title {
        font-weight: bold;
        font-size: 16px;
        color: #333333;
        margin-bottom: 28px;
      }
      .people {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 15px 50px;
        .p_info {
          font-weight: 400;
          font-size: 16px;
          color: #333333;
          line-height: 24px;
          .idcard {
            color: #999999;
          }
        }
      }
    }
  }
  .right {
    width: 400px;
    .balance {
      background-color: #fff;
      padding: 20px;
      .title {
        font-weight: bold;
        font-size: 20px;
        color: #333333;
        line-height: 30px;
        margin-bottom: 28px;
      }
      .cell {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 20px;
        &:last-child {
          margin: 0;
        }
        .label {
          font-weight: 400;
          font-size: 16px;
          color: #333333;
        }
        .value {
          font-weight: 400;
          font-size: 16px;
          color: #ff8124;
        }
      }
      .btn_box {
        border-top: 1px solid #eee;
        padding-top: 20px;
        display: flex;
        gap: 20px;
        .pay {
          width: 170px;
          height: 40px;
          background: linear-gradient(270deg, #493ceb 0%, #8623fc 100%);
          border-radius: 20px;
          font-weight: 500;
          font-size: 16px;
          color: #ffffff;
          line-height: 40px;
          text-align: center;
          cursor: pointer;
        }
        .can_pay {
          width: 170px;
          height: 40px;
          background: #f6f6f6;
          border-radius: 20px;
          font-weight: 500;
          font-size: 16px;
          color: #999;
          line-height: 40px;
          text-align: center;
          box-sizing: border-box;
          cursor: pointer;
        }
      }
    }
    .tip {
      font-weight: 400;
      font-size: 16px;
      color: #ea3d6b;
      line-height: 24px;
      margin-top: 20px;
      text-align: center;
    }
  }
}
</style>