687 lines
23 KiB
JavaScript
687 lines
23 KiB
JavaScript
const {
|
||
registerExtendedProducts,
|
||
starEventOn,
|
||
getIcCardList,
|
||
selectLock
|
||
} = requirePlugin('starCloud')
|
||
|
||
Page({
|
||
data: {
|
||
cardId: -1,
|
||
cardNumber: 0,
|
||
cardName: '',
|
||
cardType: 1,
|
||
isAdmin: 1,
|
||
isForce: 0,
|
||
isRound: 0,
|
||
weekDayInput: '', // 新增输入框的值
|
||
weekDay: [], // 修改为空数组,不再使用 0/1 数组
|
||
weekdayPattern: 'workday', // 添加周期模式选择
|
||
weekdayPatterns: ['工作日循环(星期一到星期五)', '周末循环(星期六日)', '每天循环'],
|
||
weekdayPatternIndex: 0,
|
||
startDate: 0,
|
||
endDate: 0,
|
||
startDateDisplay: '', // 添加用于显示的日期字符串
|
||
endDateDisplay: '', // 添加用于显示的日期字符串
|
||
startTime: '00:00',
|
||
endTime: '00:00',
|
||
cardList: [],
|
||
currentParams: null,
|
||
editMode: false,
|
||
selectedCard: null,
|
||
dateTimeArray: [], // 日期时间选择器的数据
|
||
startDateTimeArray: [0, 0, 0, 0, 0], // 开始时间选择器的当前值
|
||
endDateTimeArray: [0, 0, 0, 0, 0] // 结束时间选择器的当前值
|
||
},
|
||
|
||
observers: {
|
||
'weekDayInput': function (val) {
|
||
if (!val) {
|
||
this.setData({
|
||
weekDay: [],
|
||
isRound: 0
|
||
});
|
||
return;
|
||
}
|
||
|
||
const weekDay = val.split(',')
|
||
.map(item => item.trim())
|
||
.filter(item => /^[0-6]$/.test(item))
|
||
.filter((item, index, self) => self.indexOf(item) === index)
|
||
.sort((a, b) => Number(a) - Number(b));
|
||
|
||
console.log('Observer - Input:', val);
|
||
console.log('Observer - Processed weekDay:', weekDay);
|
||
|
||
this.setData({
|
||
weekDay,
|
||
isRound: weekDay.length > 0 ? 1 : 0
|
||
});
|
||
}
|
||
},
|
||
|
||
onLoad() {
|
||
starEventOn('registerCardConfirm', async (data) => {
|
||
if (data.code === 0) {
|
||
this.setData({
|
||
cardId: data.data.cardId,
|
||
cardNumber: data.data.cardNumber
|
||
})
|
||
console.log('收到卡片确认事件', data, this.data.cardId, this.data.cardNumber);
|
||
// 添加成功后自动刷新列表
|
||
await this.findAllCard();
|
||
} else {
|
||
console.log('收到卡片确认事件', data, this.data.cardId, this.data.cardNumber);
|
||
}
|
||
});
|
||
|
||
// 初始化时间
|
||
const now = new Date();
|
||
const nextHour = new Date(now.getTime() + 60 * 60 * 1000);
|
||
const nowArr = [
|
||
now.getFullYear(),
|
||
now.getMonth(),
|
||
now.getDate(),
|
||
now.getHours(),
|
||
now.getMinutes()
|
||
];
|
||
const nextArr = [
|
||
nextHour.getFullYear(),
|
||
nextHour.getMonth(),
|
||
nextHour.getDate(),
|
||
nextHour.getHours(),
|
||
nextHour.getMinutes()
|
||
];
|
||
|
||
this.setData({
|
||
startTime: now.getHours().toString().padStart(2, '0') + ':' + now.getMinutes().toString().padStart(2, '0'),
|
||
endTime: nextHour.getHours().toString().padStart(2, '0') + ':' + nextHour.getMinutes().toString().padStart(2, '0'),
|
||
startDateTimeArray: nowArr,
|
||
endDateTimeArray: nextArr,
|
||
startDate: now.getTime(),
|
||
endDate: nextHour.getTime(),
|
||
startDateDisplay: this.formatDateTime(now),
|
||
endDateDisplay: this.formatDateTime(nextHour)
|
||
});
|
||
|
||
// 页面加载时获取卡片列表
|
||
this.findAllCard();
|
||
|
||
// 初始化日期时间选择器数据
|
||
this.initDateTimeArray();
|
||
},
|
||
|
||
// 修改格式化日期时间的方法,增加更多格式化选项
|
||
formatDateTime(date, format = 'display') {
|
||
if (!date || !(date instanceof Date)) {
|
||
return '';
|
||
}
|
||
if (format === 'display') {
|
||
return `${date.getFullYear()}-${(date.getMonth() + 1).toString().padStart(2, '0')}-${date.getDate().toString().padStart(2, '0')} ${date.getHours().toString().padStart(2, '0')}:${date.getMinutes().toString().padStart(2, '0')}`;
|
||
} else if (format === 'params') {
|
||
return `${date.getFullYear()}年${(date.getMonth() + 1).toString().padStart(2, '0')}月${date.getDate().toString().padStart(2, '0')}日${date.getHours().toString().padStart(2, '0')}时${date.getMinutes().toString().padStart(2, '0')}分`;
|
||
}
|
||
},
|
||
|
||
// 初始化日期时间选择器数据
|
||
initDateTimeArray() {
|
||
const date = new Date();
|
||
const years = [];
|
||
const months = [];
|
||
const days = [];
|
||
const hours = [];
|
||
const minutes = [];
|
||
|
||
// 生成年份选项(当前年份往后5年)
|
||
for (let i = date.getFullYear(); i <= date.getFullYear() + 5; i++) {
|
||
years.push(i + '年');
|
||
}
|
||
|
||
// 生成月份选项 - 显示1-12月
|
||
for (let i = 1; i <= 12; i++) {
|
||
months.push(i.toString().padStart(2, '0') + '月');
|
||
}
|
||
|
||
// 生成天数选项(默认31天)
|
||
for (let i = 1; i <= 31; i++) {
|
||
days.push(i.toString().padStart(2, '0') + '日');
|
||
}
|
||
|
||
// 生成小时选项
|
||
for (let i = 0; i < 24; i++) {
|
||
hours.push(i.toString().padStart(2, '0') + '时');
|
||
}
|
||
|
||
// 生成分钟选项
|
||
for (let i = 0; i < 60; i++) {
|
||
minutes.push(i.toString().padStart(2, '0') + '分');
|
||
}
|
||
|
||
this.setData({
|
||
dateTimeArray: [years, months, days, hours, minutes]
|
||
});
|
||
},
|
||
|
||
onStartDateTimeChange(e) {
|
||
const val = e.detail.value;
|
||
const dateTimeArray = this.data.dateTimeArray;
|
||
|
||
const yearStr = dateTimeArray[0][val[0]];
|
||
const year = parseInt(yearStr);
|
||
const month = parseInt(dateTimeArray[1][val[1]]) - 1; // 转换为0-11的月份
|
||
const day = parseInt(dateTimeArray[2][val[2]]);
|
||
const hour = parseInt(dateTimeArray[3][val[3]]);
|
||
const minute = parseInt(dateTimeArray[4][val[4]]);
|
||
|
||
const date = new Date();
|
||
date.setFullYear(year);
|
||
date.setMonth(month); // 使用0-11的月份
|
||
date.setDate(day);
|
||
date.setHours(hour);
|
||
date.setMinutes(minute);
|
||
date.setSeconds(0);
|
||
date.setMilliseconds(0);
|
||
|
||
const timestamp = date.getTime();
|
||
|
||
this.setData({
|
||
startDateTimeArray: val,
|
||
startDate: timestamp,
|
||
startDateDisplay: this.formatDateTime(date)
|
||
});
|
||
},
|
||
|
||
onEndDateTimeChange(e) {
|
||
const val = e.detail.value;
|
||
const dateTimeArray = this.data.dateTimeArray;
|
||
|
||
const yearStr = dateTimeArray[0][val[0]];
|
||
const year = parseInt(yearStr);
|
||
const month = parseInt(dateTimeArray[1][val[1]]) - 1; // 转换为0-11的月份
|
||
const day = parseInt(dateTimeArray[2][val[2]]);
|
||
const hour = parseInt(dateTimeArray[3][val[3]]);
|
||
const minute = parseInt(dateTimeArray[4][val[4]]);
|
||
|
||
const date = new Date();
|
||
date.setFullYear(year);
|
||
date.setMonth(month); // 使用0-11的月份
|
||
date.setDate(day);
|
||
date.setHours(hour);
|
||
date.setMinutes(minute);
|
||
date.setSeconds(59);
|
||
date.setMilliseconds(999);
|
||
|
||
const timestamp = date.getTime();
|
||
|
||
this.setData({
|
||
endDateTimeArray: val,
|
||
endDate: timestamp,
|
||
endDateDisplay: this.formatDateTime(date)
|
||
});
|
||
},
|
||
|
||
// 处理日期时间选择器列变化
|
||
onStartDateTimeColumnChange(e) {
|
||
// 处理月份天数联动
|
||
if (e.detail.column === 1) {
|
||
this.updateDays('startDateTimeArray', e.detail.value);
|
||
}
|
||
},
|
||
|
||
onEndDateTimeColumnChange(e) {
|
||
if (e.detail.column === 1) {
|
||
this.updateDays('endDateTimeArray', e.detail.value);
|
||
}
|
||
},
|
||
|
||
// 更新天数
|
||
updateDays(arrayName, monthIndex) {
|
||
const year = this.data.dateTimeArray[0][this.data[arrayName][0]];
|
||
const month = monthIndex + 1;
|
||
const days = new Date(parseInt(year), month, 0).getDate();
|
||
|
||
const newDays = [];
|
||
for (let i = 1; i <= days; i++) {
|
||
newDays.push(i.toString().padStart(2, '0') + '日');
|
||
}
|
||
|
||
const dateTimeArray = this.data.dateTimeArray;
|
||
dateTimeArray[2] = newDays;
|
||
|
||
this.setData({
|
||
dateTimeArray: dateTimeArray
|
||
});
|
||
},
|
||
|
||
async icCardOperate(e) {
|
||
const operate = e.currentTarget.dataset.operate;
|
||
const cardData = e.currentTarget.dataset.card;
|
||
if (cardData) {
|
||
this.setData({
|
||
cardId: cardData.cardId,
|
||
cardNumber: cardData.cardNumber,
|
||
cardName: cardData.cardName,
|
||
cardType: cardData.cardType,
|
||
isAdmin: cardData.isAdmin,
|
||
isForce: cardData.isForce,
|
||
isRound: cardData.isRound,
|
||
weekDay: cardData.weekDay || [],
|
||
startDate: cardData.startDate || 0,
|
||
endDate: cardData.endDate || 0,
|
||
startDateDisplay: cardData.startDate ? new Date(cardData.startDate).toISOString().split('T')[0] : '',
|
||
endDateDisplay: cardData.endDate ? new Date(cardData.endDate).toISOString().split('T')[0] : '',
|
||
startTime: cardData.startTime || '00:00',
|
||
endTime: cardData.endTime || '00:00'
|
||
});
|
||
}
|
||
await this._icCardOperate(Number(operate));
|
||
},
|
||
|
||
async _icCardOperate(operate) {
|
||
// 如果是修改操作,需要验证 cardNumber
|
||
if (operate === 1) {
|
||
if (!this.data.cardNumber || this.data.cardNumber === '0' || this.data.cardNumber === 0) {
|
||
wx.showToast({
|
||
title: '卡号无效',
|
||
icon: 'error',
|
||
duration: 2000
|
||
});
|
||
return;
|
||
}
|
||
}
|
||
|
||
// 新增:验证循环卡的周期设置
|
||
if (this.data.cardType === 4) {
|
||
if (!this.data.weekDay || !this.data.weekDay.length) {
|
||
wx.showToast({
|
||
title: '请设置循环周期',
|
||
icon: 'none',
|
||
duration: 2000
|
||
});
|
||
return;
|
||
}
|
||
}
|
||
|
||
wx.showLoading({
|
||
title: '处理中...',
|
||
mask: true
|
||
});
|
||
|
||
try {
|
||
const app = getApp();
|
||
const {accountInfo} = app.globalData;
|
||
const {lock} = app.globalData;
|
||
|
||
await selectLock({
|
||
accountInfo: accountInfo,
|
||
lockId: lock.lockId
|
||
});
|
||
|
||
let finalStartDate = this.data.startDate;
|
||
let finalEndDate = this.data.endDate;
|
||
|
||
// 处理循环卡的时间戳
|
||
if (this.data.cardType === 4) {
|
||
if (!this.data.weekDay || !this.data.weekDay.length) {
|
||
wx.showToast({
|
||
title: '请输入循环周期',
|
||
icon: 'none',
|
||
duration: 2000
|
||
});
|
||
return;
|
||
}
|
||
|
||
// 将时间部分应用到日期时间戳中
|
||
if (this.data.startDate && this.data.startTime) {
|
||
const [startHours, startMinutes] = this.data.startTime.split(':');
|
||
const startDate = new Date(this.data.startDate);
|
||
startDate.setHours(parseInt(startHours), parseInt(startMinutes), 0, 0);
|
||
finalStartDate = startDate.getTime();
|
||
}
|
||
if (this.data.endDate && this.data.endTime) {
|
||
const [endHours, endMinutes] = this.data.endTime.split(':');
|
||
const endDate = new Date(this.data.endDate);
|
||
endDate.setHours(parseInt(endHours), parseInt(endMinutes), 59, 999);
|
||
finalEndDate = endDate.getTime();
|
||
}
|
||
}
|
||
|
||
console.log('发送请求前的 weekDay:', this.data.weekDay);
|
||
|
||
// 转换 weekDay 为数字数组
|
||
const weekDayNumbers = this.data.weekDay.map(Number);
|
||
console.log('转换后的 weekDayNumbers:', weekDayNumbers);
|
||
|
||
const parms = {
|
||
type: 'card',
|
||
keyId: String(lock.keyId),
|
||
uid: String(accountInfo.uid),
|
||
userCountLimit: 0xFFFF,
|
||
operate: operate,
|
||
isAdmin: this.data.isAdmin,
|
||
isForce: this.data.isForce,
|
||
isRound: this.data.isRound,
|
||
weekDay: weekDayNumbers,
|
||
cardId: this.data.cardId,
|
||
cardNumber: Number(this.data.cardNumber), // 确保 cardNumber 是数字类型
|
||
cardName: this.data.cardName,
|
||
cardType: this.data.cardType,
|
||
cardUserNo: 999,
|
||
startDate: finalStartDate,
|
||
endDate: finalEndDate,
|
||
startTime: this.data.cardType === 4 ? this.data.startTime : undefined,
|
||
endTime: this.data.cardType === 4 ? this.data.endTime : undefined
|
||
};
|
||
|
||
// 更新参数显示,添加格式化的时间显示
|
||
if (this.data.cardType === 2) {
|
||
const startDateTime = new Date(this.data.startDate);
|
||
const endDateTime = new Date(this.data.endDate);
|
||
parms.displayTimeRange = `${this.formatDateTime(startDateTime, 'params')}-${this.formatDateTime(endDateTime, 'params')}`;
|
||
}
|
||
|
||
this.setData({
|
||
currentParams: parms
|
||
});
|
||
|
||
const registerExtendedProductsResult = await registerExtendedProducts(parms)
|
||
console.log('registerExtendedProductsResult', registerExtendedProductsResult);
|
||
|
||
if (registerExtendedProductsResult.code === 0) {
|
||
// 操作成功后清空表单
|
||
this.setData({
|
||
cardName: '',
|
||
cardType: 1,
|
||
isAdmin: 1,
|
||
isForce: 0,
|
||
isRound: 0,
|
||
weekDayInput: '',
|
||
weekDay: [],
|
||
startDate: 0,
|
||
endDate: 0,
|
||
startDateDisplay: '',
|
||
endDateDisplay: '',
|
||
startTime: '00:00',
|
||
endTime: '00:00'
|
||
});
|
||
// 刷新列表
|
||
await this.findAllCard();
|
||
wx.showToast({
|
||
title: '操作成功',
|
||
icon: 'success'
|
||
});
|
||
} else {
|
||
wx.showToast({
|
||
title: '操作失败',
|
||
icon: 'error'
|
||
});
|
||
}
|
||
} catch (error) {
|
||
console.error('操作失败:', error);
|
||
wx.showToast({
|
||
title: '操作失败',
|
||
icon: 'error'
|
||
});
|
||
} finally {
|
||
wx.hideLoading();
|
||
}
|
||
},
|
||
|
||
async findAllCard() {
|
||
const app = getApp();
|
||
const {lock} = app.globalData;
|
||
const result = await getIcCardList({lockId: lock.lockId})
|
||
console.log('findAllCard', result)
|
||
|
||
// 处理返回的卡片列表数据
|
||
const processedList = (result.data.list || []).map(card => {
|
||
// 将周期数字转换为周几文本
|
||
const weekDayText = card.weekDay ? card.weekDay.map(day => {
|
||
if (day === 7) return '周日';
|
||
return `周${['一', '二', '三', '四', '五', '六'][day - 1]}`;
|
||
}).join(', ') : '';
|
||
|
||
return {
|
||
...card,
|
||
isAdmin: card.cardRight === 1 ? 1 : 0,
|
||
isForce: card.isCoerced === 1 ? 1 : 0,
|
||
isRound: (card.weekDay && card.weekDay.length > 0) ? 1 : 0,
|
||
weekDayText // 添加文本形式的周期显示
|
||
};
|
||
});
|
||
|
||
this.setData({
|
||
cardList: processedList
|
||
});
|
||
},
|
||
|
||
onCardTypeChange(e) {
|
||
const type = Number(e.detail.value);
|
||
this.setData({
|
||
cardType: type,
|
||
// 当选择永久类型时,重置时间
|
||
startTime: type === 1 ? '00:00' : this.data.startTime,
|
||
endTime: type === 1 ? '00:00' : this.data.endTime
|
||
})
|
||
},
|
||
|
||
onAdminChange(e) {
|
||
this.setData({
|
||
isAdmin: e.detail.value ? 1 : 0
|
||
})
|
||
},
|
||
|
||
onForceChange(e) {
|
||
this.setData({
|
||
isForce: e.detail.value ? 1 : 0
|
||
})
|
||
},
|
||
|
||
onStartDateChange(e) {
|
||
const dateStr = e.detail.value;
|
||
const timestamp = new Date(dateStr).getTime();
|
||
this.setData({
|
||
startDate: timestamp,
|
||
startDateDisplay: dateStr
|
||
});
|
||
},
|
||
|
||
onEndDateChange(e) {
|
||
const dateStr = e.detail.value;
|
||
const timestamp = new Date(dateStr).getTime();
|
||
this.setData({
|
||
endDate: timestamp,
|
||
endDateDisplay: dateStr
|
||
});
|
||
},
|
||
|
||
onStartTimeChange(e) {
|
||
this.setData({
|
||
startTime: e.detail.value
|
||
})
|
||
},
|
||
|
||
onEndTimeChange(e) {
|
||
this.setData({
|
||
endTime: e.detail.value
|
||
})
|
||
},
|
||
|
||
// 修改周期模式切换处理方法
|
||
onWeekdayPatternChange(e) {
|
||
const index = e.detail.value;
|
||
let weekDay = [];
|
||
|
||
switch (index) {
|
||
case '0': // 工作日循环
|
||
weekDay = [2, 3, 4, 5, 6]; // 星期一到星期五
|
||
break;
|
||
case '1': // 周末循环
|
||
weekDay = [1, 7]; // 星期日和星期六
|
||
break;
|
||
case '2': // 每天循环
|
||
weekDay = [1, 2, 3, 4, 5, 6, 7]; // 所有天
|
||
break;
|
||
}
|
||
|
||
this.setData({
|
||
weekdayPatternIndex: index,
|
||
weekDay,
|
||
isRound: weekDay.length > 0 ? 1 : 0
|
||
});
|
||
|
||
console.log('周期模式变更:', this.data.weekdayPatterns[index], weekDay);
|
||
},
|
||
|
||
onWeekDayChange(e) {
|
||
const selectedDays = e.detail.value.map(Number);
|
||
// 创建一个长度为7的数组,初始值都是0
|
||
const weekDay = selectedDays.sort((a, b) => a - b);
|
||
|
||
this.setData({
|
||
weekDay,
|
||
isRound: weekDay.length > 0 ? 1 : 0
|
||
});
|
||
|
||
console.log('自定义周期变更:', weekDay);
|
||
},
|
||
|
||
// 修改选择卡片方法中的处理
|
||
selectCard(e) {
|
||
const cardData = e.currentTarget.dataset.card;
|
||
|
||
// 处理循环数据
|
||
let weekDay = [];
|
||
let weekdayPatternIndex = 0;
|
||
|
||
if (cardData.weekDay && Array.isArray(cardData.weekDay)) {
|
||
weekDay = cardData.weekDay;
|
||
weekDay.sort((a, b) => a - b); // 确保顺序一致
|
||
|
||
// 判断是否符合预设模式
|
||
const weekDayStr = weekDay.join(',');
|
||
if (weekDayStr === '2,3,4,5,6') {
|
||
weekdayPatternIndex = 0; // 工作日
|
||
} else if (weekDayStr === '1,7') {
|
||
weekdayPatternIndex = 1; // 周末
|
||
} else if (weekDayStr === '1,2,3,4,5,6,7') {
|
||
weekdayPatternIndex = 2; // 每天
|
||
}
|
||
}
|
||
|
||
// 处理时间戳转换
|
||
const startDateTime = new Date(Number(cardData.startDate) || 0);
|
||
const endDateTime = new Date(Number(cardData.endDate) || 0);
|
||
|
||
// 提取时间部分
|
||
const startTime = cardData.startTime ||
|
||
`${startDateTime.getHours().toString().padStart(2, '0')}:${startDateTime.getMinutes().toString().padStart(2, '0')}`;
|
||
const endTime = cardData.endTime ||
|
||
`${endDateTime.getHours().toString().padStart(2, '0')}:${endDateTime.getMinutes().toString().padStart(2, '0')}`;
|
||
|
||
// 格式化日期显示
|
||
const startDateDisplay = this.formatDateTime(startDateTime).split(' ')[0];
|
||
const endDateDisplay = this.formatDateTime(endDateTime).split(' ')[0];
|
||
|
||
this.setData({
|
||
cardId: cardData.cardId,
|
||
cardNumber: this.data.cardNumber || cardData.cardNumber || 0,
|
||
cardName: cardData.cardName,
|
||
cardType: cardData.cardType,
|
||
isAdmin: cardData.isAdmin || (cardData.cardRight === 1 ? 1 : 0),
|
||
isForce: cardData.isForce || (cardData.isCoerced === 1 ? 1 : 0),
|
||
isRound: weekDay.length > 0 ? 1 : 0,
|
||
weekDay,
|
||
weekdayPatternIndex,
|
||
startTime,
|
||
endTime,
|
||
startDateDisplay,
|
||
endDateDisplay,
|
||
startDate: cardData.startDate || 0,
|
||
endDate: cardData.endDate || 0,
|
||
editMode: true,
|
||
selectedCard: cardData
|
||
}, () => {
|
||
// 强制触发一次视图更新
|
||
this.setData({_forceUpdate: Date.now()});
|
||
});
|
||
},
|
||
|
||
// 添加辅助方法,计算年份索引
|
||
getYearIndex(year) {
|
||
const currentYear = new Date().getFullYear();
|
||
return year - currentYear;
|
||
},
|
||
|
||
// 修改确认编辑方法,直接使用时间戳
|
||
async confirmEdit() {
|
||
// 验证 cardNumber
|
||
if (!this.data.cardNumber || this.data.cardNumber === '0' || this.data.cardNumber === 0) {
|
||
wx.showToast({
|
||
title: '卡号无效',
|
||
icon: 'error',
|
||
duration: 2000
|
||
});
|
||
return;
|
||
}
|
||
|
||
// 直接使用当前的时间戳,不再重新构造
|
||
const formData = {
|
||
cardId: this.data.cardId,
|
||
cardNumber: this.data.cardNumber,
|
||
cardName: this.data.cardName,
|
||
cardType: this.data.cardType,
|
||
isAdmin: this.data.isAdmin,
|
||
isForce: this.data.isForce,
|
||
isRound: this.data.isRound,
|
||
weekDay: this.data.weekDay,
|
||
startDate: this.data.startDate,
|
||
endDate: this.data.endDate
|
||
};
|
||
|
||
// 更新当前数据
|
||
this.setData(formData);
|
||
|
||
// 执行修改操作
|
||
await this._icCardOperate(1);
|
||
|
||
// 修改完成后,退出编辑模式
|
||
if (this.data.editMode) {
|
||
this.cancelEdit();
|
||
}
|
||
},
|
||
|
||
// 修改取消编辑方法
|
||
cancelEdit() {
|
||
this.setData({
|
||
editMode: false,
|
||
selectedCard: null,
|
||
cardId: -1,
|
||
cardNumber: 0,
|
||
cardName: '',
|
||
cardType: 1,
|
||
isAdmin: 1,
|
||
isForce: 0,
|
||
isRound: 0,
|
||
weekDayInput: '',
|
||
weekdayPatternIndex: 0,
|
||
weekDay: [], // 默认为空数组
|
||
startDate: 0,
|
||
endDate: 0,
|
||
startDateDisplay: '',
|
||
endDateDisplay: '',
|
||
startTime: '00:00',
|
||
endTime: '00:00'
|
||
});
|
||
},
|
||
|
||
// 删除单个卡片
|
||
async deleteCard(e) {
|
||
const cardData = e.currentTarget.dataset.card;
|
||
this.setData({
|
||
cardId: cardData.cardId,
|
||
cardNumber: cardData.cardNumber
|
||
});
|
||
await this._icCardOperate(2); // 2 表示删除操作
|
||
}
|
||
}) |