|
//
// MessageItem.swift
// PaiaiDataKit
//
// Created by ffib on 2018/12/19.
// Copyright © 2018 yb. All rights reserved.
//
import Foundation
import ObjectMapper
import RxDataSources
public struct MessageItem {
public var content = ""
public var pk = 0
public var read: Bool = false
public var url: String = ""
public var title: String = ""
public var created_at: Date?
public var from_avatar: String = ""
public var from_nickname: String = ""
public var from_uid: String = ""
public var group_photo_info = PhotoItem(json: [:])
public var photo_id: String = ""
public var group_id: String = ""
public var msg_content: String = ""
public var msg_title: String = ""
init(json: [String: AnyObject]) {
self.init(map: Map(mappingType: .fromJSON, JSON: json))
}
}
extension MessageItem: Mappable {
public init(map: Map) {
mapping(map: map)
}
mutating public func mapping(map: Map) {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZ"
created_at <- (map["created_at"], DateFormatterTransform(dateFormatter:dateFormatter))
content <- map["content"]
pk <- map["pk"]
read <- map["read"]
url <- map["url"]
title <- map["title"]
from_avatar <- map["from_avatar"]
from_nickname <- map["from_nickname"]
from_uid <- map["from_uid"]
group_photo_info <- map["group_photo_info"]
photo_id <- map["photo_id"]
group_id <- map["group_id"]
msg_content <- map["msg_content"]
msg_title <- map["msg_title"]
}
}
extension MessageItem: IdentifiableType, Equatable {
public typealias Identity = Int
public var identity: Int { return pk }
public static func == (lhs: MessageItem, rhs: MessageItem) -> Bool {
return lhs.pk == rhs.pk
}
}
|