49 lines
959 B
Swift
49 lines
959 B
Swift
//
|
|
// ChatQuotaPurchaseRequest.swift
|
|
// SodaLive
|
|
//
|
|
// Created by klaus on 9/2/25.
|
|
//
|
|
|
|
struct ChatQuotaPurchaseRequest: Encodable {
|
|
let container: String = "ios"
|
|
let chargeType: ChatRoomQuotaChargeType
|
|
let canOption: ChatRoomQuotaCanOption?
|
|
|
|
init(
|
|
chargeType: ChatRoomQuotaChargeType = .can,
|
|
canOption: ChatRoomQuotaCanOption? = nil
|
|
) {
|
|
self.chargeType = chargeType
|
|
self.canOption = canOption
|
|
}
|
|
}
|
|
|
|
enum ChatRoomQuotaChargeType: String, Encodable {
|
|
case can = "CAN"
|
|
case ad = "AD"
|
|
}
|
|
|
|
enum ChatRoomQuotaCanOption: String, Encodable {
|
|
case can10 = "CAN_10"
|
|
case can20 = "CAN_20"
|
|
|
|
var needCan: Int {
|
|
switch self {
|
|
case .can10:
|
|
return 10
|
|
case .can20:
|
|
return 20
|
|
}
|
|
}
|
|
|
|
var quota: Int {
|
|
switch self {
|
|
case .can10:
|
|
return 15
|
|
case .can20:
|
|
return 40
|
|
}
|
|
}
|
|
}
|