2026-09-24 11:50:07 +08:00
|
|
|
// 只清理指定账户命名空间,不触及其他账户或旧匿名草稿。
|
|
|
|
|
export function clearAccountCache(userId: string): void {
|
|
|
|
|
if (userId.length == 0) return
|
|
|
|
|
const prefix = 'airz:v1:user:' + userId + ':'
|
2026-10-04 08:29:53 +08:00
|
|
|
const pendingCheckIn = prefix + 'finance.points.checkin.pending'
|
2026-09-24 11:50:07 +08:00
|
|
|
uni.getStorageInfoSync().keys.forEach((key: string) => {
|
2026-10-04 08:29:53 +08:00
|
|
|
// 未确认的签到是恢复用命令上下文,仅保留原键/业务日/规则,重新登录后仍须服务端鉴权。
|
|
|
|
|
if (key.startsWith(prefix) && key != pendingCheckIn) uni.removeStorageSync(key)
|
2026-09-24 11:50:07 +08:00
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 草稿功能已取消,启动时移除旧版本遗留键,不自动导入或恢复敏感表单。
|
|
|
|
|
export function clearLegacyAssessmentCache(): void {
|
|
|
|
|
uni.getStorageInfoSync().keys.forEach((key: string) => {
|
|
|
|
|
if (key == 'assessmentDraft' || key.startsWith('assessmentDraft:') || key.endsWith(':assessmentDraft')
|
|
|
|
|
|| key.includes(':assessmentDraft:') || key.endsWith(':assessmentActiveType') || key.endsWith(':assessmentEditStep')
|
|
|
|
|
|| key == 'assessmentActiveType' || key == 'assessmentEditStep') uni.removeStorageSync(key)
|
|
|
|
|
})
|
|
|
|
|
}
|