新增景区排队管理功能

This commit is contained in:
2026-07-07 15:32:25 +08:00
parent 854a66689f
commit 0aa8b14e1f
20 changed files with 4642 additions and 1 deletions

View File

@ -0,0 +1,45 @@
//
// ScenicQueueSocketModels.swift
// suixinkan
//
import Foundation
/// WebSocket
struct ScenicQueueSocketMessage: Decodable, Equatable {
let code: Int
let data: ScenicQueueSocketData?
///
var isQueueEvent: Bool {
data?.action == ScenicQueueSocketAction.queueUpdated.rawValue
|| data?.action == ScenicQueueSocketAction.ticketCalled.rawValue
}
}
/// WebSocket data
struct ScenicQueueSocketData: Decodable, Equatable {
let action: String
let params: ScenicQueueSocketParams?
}
/// WebSocket params
struct ScenicQueueSocketParams: Decodable, Equatable {
let scenicSpotId: Int64?
let recordId: Int64?
let operatorUid: Int64?
let eventId: String?
enum CodingKeys: String, CodingKey {
case scenicSpotId = "scenic_spot_id"
case recordId = "record_id"
case operatorUid = "operator_uid"
case eventId = "event_id"
}
}
/// WebSocket action
enum ScenicQueueSocketAction: String {
case queueUpdated = "scenic_spot_queue_updated"
case ticketCalled = "scenic_queue_ticket_called"
}