jsdw_ios/QuickLocation/Manager/Account/UserConfigModel.swift

192 lines
4.4 KiB
Swift
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//
// UserConfigModel.swift
// QuickLocation
//
// Created by on 2026/5/26.
//
import ObjectMapper
import RxDataSources
struct UserConfigModel: Mappable {
var token: String?
var phone: String?
var name: String?
var avater: String?
///
var head_pic: String = "1"
/// URLhead_pic avater
var displayHeadPic: String {
HeadPic.resolved(head_pic, avater)
}
///
var userIcon: UIImage {
HeadPic.image(for: displayHeadPic)
}
///
var sex: Int = -1
///
var temp: Bool = true
/// ID
var uid: String?
/// 0 1SOS 2
var status: Int = 0
/// 0 1 2
var mood: Int = 0
/// Config
var config: SystemConfigModel?
init?(map: Map) {
}
mutating func mapping(map: Map) {
token <- map["token"]
temp <- map["temp"]
phone <- map["phone"]
name <- map["name"]
uid <- (map["user_id"], kFlexString)
avater <- map["avater"]
sex <- map["sex"]
head_pic <- (map["head_pic"], kFlexString)
config <- map["config"]
status <- map["status"]
mood <- map["mood"]
}
}
struct SystemConfigModel: Mappable {
///
// var popupConfig: PopupWindowConfigModel?
///
// var timeConfig: PopupWindowTimeModel?
///
var shareConfig: WxShareConfigModel?
///
var pigeonConfig: PigeonTimeSettingModel?
///
var versionUpgradeModel: VersionUpgradeModel?
///
var chatWarning: String = ""
/// banner
var bannerList: [BannerConfigModel] = []
/// banner
var groupBannerList: [String] = []
init?(map: Map) {
}
mutating func mapping(map: Map) {
chatWarning <- map["client.chatwarning", nested: false]
groupBannerList <- map["client.team.ad", nested: false]
// timeConfig <- map["client.time.setting", nested: false]
pigeonConfig <- map["client.time.setting.pigeon", nested: false]
shareConfig <- map["client.weixin.share", nested: false]
versionUpgradeModel <- map["client.version.upgrade", nested: false]
bannerList <- map["client.banner.explore", nested: false]
}
}
struct PigeonTimeSettingModel: Mappable {
///
var nums: Int = 0
///
var times: Int = 0
init?(map: Map) {}
mutating func mapping(map: Map) {
nums <- (map["nums"], kStrTransformInt)
times <- (map["times"], kStrTransformInt)
}
var isEnabled: Bool { nums > 0 && times > 0 }
}
struct WxShareConfigModel: Mappable {
///
var link: String = ""
///
var title: String = ""
///
var content: String = ""
///
var image: String = ""
init?(map: Map) {
}
mutating func mapping(map: Map) {
link <- map["link"]
title <- map["title"]
content <- map["content"]
image <- map["image"]
}
}
struct VersionUpgradeModel: Mappable {
///
var url: String = ""
///
var title: String = ""
///
var description: String = ""
///
var version: String = ""
///
var force: Bool = false
init?(map: Map) {
}
mutating func mapping(map: Map) {
url <- map["url"]
title <- map["title"]
description <- map["description"]
force <- map["force"]
version <- map["version"]
}
}
struct BannerConfigModel: Mappable {
///
var img: String = ""
/// url:membercz url:
var url: String = ""
/// app: web:
var type: String = ""
var enable: Bool = false
///
var text: String = ""
init?(map: Map) {
}
mutating func mapping(map: Map) {
img <- map["img"]
url <- map["url"]
type <- map["type"]
enable <- map["enable"]
text <- map["text"]
}
}