|
//
// MessageListItem.swift
// PaiaiDataKit
//
// Created by ffib on 2018/12/19.
// Copyright © 2018 yb. All rights reserved.
//
import Foundation
import ObjectMapper
import RxDataSources
public struct MessageListItem: JSONCode {
public var content = ""
public var msg_title: String = ""
public var create_at: String = ""
public var from_avatar: String = ""
public var msg_content: String = ""
public var from_nickname: String = ""
public var group_photo_info = PhotoItem(json: [:])
var read: Bool = false
public var title: String = ""
public var created_at: Date?
var pk = 0
var from_uid: String = ""
var photo_id: String = ""
var group_id: String = ""
init(json: [String: AnyObject]) {
self.init(map: Map(mappingType: .fromJSON, JSON: json))
}
}
extension MessageListItem: 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"]
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"]
guard let created_at = created_at else { return }
create_at = created_at.getTimeInfoFromDate()
}
}
extension MessageListItem: IdentifiableType, Equatable {
public typealias Identity = Int
public var identity: Int { return pk }
public static func == (lhs: MessageListItem, rhs: MessageListItem) -> Bool {
return lhs.pk == rhs.pk
}
}
|