hookehuyr

日历过期日期显示逻辑调整,新增参观者信息时只登记身份证信息

<!--
* @Date: 2024-01-15 17:39:29
* @LastEditors: hookehuyr hookehuyr@gmail.com
* @LastEditTime: 2024-01-18 11:14:49
* @LastEditTime: 2024-01-22 16:53:57
* @FilePath: /xysBooking/src/views/addVisitor.vue
* @Description: 添加参观者页面
-->
......@@ -15,8 +15,11 @@
</div>
<div class="input-item">
<div>证件类型</div>
<div @click="idTypeChange">
<!-- <div @click="idTypeChange">
{{ fieldValue }}&nbsp;<van-icon name="arrow-down" />
</div> -->
<div>
{{ fieldValue }}
</div>
</div>
<div class="input-item">
......
<!--
* @Date: 2024-01-15 13:35:51
* @LastEditors: hookehuyr hookehuyr@gmail.com
* @LastEditTime: 2024-01-22 15:35:03
* @LastEditTime: 2024-01-22 16:48:55
* @FilePath: /xysBooking/src/views/booking.vue
* @Description: 预约页面
-->
......@@ -19,12 +19,12 @@
<div v-for="(week, index) in weeks" :key="week" class="weeks">
<div v-for="date in week" :key="date"
@click="chooseDay(date)"
:class="['item', checked_day === findDatesInfo(date).date ? 'checked' : '', findDatesInfo(date).reserve_full === 0 ? 'disabled' : '']"
:class="['item', checked_day === findDatesInfo(date).date ? 'checked' : '', findDatesInfo(date).reserve_full === 0 || findDatesInfo(date).reserve_full === 'overdue' ? 'disabled' : '']"
>
<div v-if="findDatesInfo(date).date">
<p class="day-text">{{ findDatesInfo(date).text }}</p>
<p v-if="findDatesInfo(date).reserve_full === 1" class="day-price">¥{{ findDatesInfo(date).price }}</p>
<p v-else-if="findDatesInfo(date).reserve_full === -1" class="day-price"></p>
<p v-else-if="findDatesInfo(date).reserve_full === -1 || findDatesInfo(date).reserve_full === 'overdue'" class="day-price"></p>
<p v-else-if="findDatesInfo(date).reserve_full === 0" class="day-no-booking">约满</p>
<!-- <p v-else class="day-no-booking">¥{{ findDatesInfo(date).price }}</p> -->
</div>
......@@ -119,7 +119,7 @@ onMounted(async () => {
// 今日之前都不可约
dates_list.value.forEach((date) => {
if (dayjs(date.month_date).isBefore(dayjs())) {
date.reserve_full = 0;
date.reserve_full = 'overdue';
}
});
dates.value = dates_list.value.map(item => item.month_date);
......@@ -129,7 +129,7 @@ onMounted(async () => {
/**
* @description: 根据日期获取信息
* @param {string} date
* @return {object} {text: 日期, date: 日期, price: 价格, reserve_full: 是否可约 1=可约,0=约满,-1=无需预约 }
* @return {object} {text: 日期, date: 日期, price: 价格, reserve_full: 是否可约 1=可约,0=约满,-1=无需预约 overdue=过期日期 }
*/
const findDatesInfo = (date) => {
const result = dates_list.value.find((item) => item.month_date === date);
......@@ -197,7 +197,7 @@ const chooseTime = (item, index) => { // 畾萄
};
const chooseDay = async (date) => { // 点击日期回调
if (findDatesInfo(date).reserve_full !== 0) { // 状态 1可约 || -1不限制
if (findDatesInfo(date).reserve_full === 1 || findDatesInfo(date).reserve_full === -1) { // 状态 1可约 || -1不限制
checked_day.value = date; // 当前日期
checked_day_price.value = findDatesInfo(date).price; // 当前价格
checked_day_reserve_full.value = findDatesInfo(date).reserve_full; // 当前状态
......@@ -240,7 +240,7 @@ const onConfirm = async ({ selectedValues, selectedOptions }) => { //
// 今日之前都不可约
dates_list.value.forEach((date) => {
if (dayjs(date.month_date).isBefore(dayjs())) {
date.reserve_full = 0;
date.reserve_full = 'overdue';
}
});
dates.value = dates_list.value.map(item => item.month_date);
......