APIManager.sharedInstance.getApiVedette { (arrCate, error , data) in
if error == "" {
self.arrCateGet.addObjects(from: arrCate as! [Any])
}
else {
AlertBar.show(.error, message: Configs.String_GetApiError, duration: 3)
}
Class APIManager :
static let sharedInstance = APIManager()
public func getApiVedette(completion: @escaping(NSArray,String,Data) -> Void){
let url = "https://api.minhnhut027.home"
Alamofire.request(url).responseJSON { respone in
if let data = respone.data {
let (arrGet,error) = ModelNews().parseVedetteWithData(data: data as NSData)
completion(arrGet,error as String,data)
}
else {
completion(NSArray(),"error",Data())
}
}
}
// ham parse json
func parseVedetteWithData(data:NSData)->(NSArray,NSString){
do {
let parseJSON = try JSONSerialization.jsonObject(with: data as Data, options: .allowFragments)
let arr_cate_get = NSMutableArray()
if let itemRelatedDir = parseJSON as? [String: Any] {
let cateGet = ModelCate()
cateGet.m_isHome = true
cateGet.m_cate_name = "vedette"
let arrRelated = NSMutableArray()
let (model,_) = parseWithDic(dictionary: itemRelatedDir)
arrRelated.add(model)
cateGet.m_childs = arrRelated
arr_cate_get.add(cateGet)
}
return (arr_cate_get,"")
} catch let error as NSError {
print("Failed to load: \(error.localizedDescription)")
return (NSArray(),"\(error.localizedDescription)" as NSString)
}
return (NSArray(),"error")
}
// ham parse
func parseWithDic (dictionary: [String: Any])->(ModelNews,NSString){
let modelNewsGet = ModelNews()
//if let dictionary = parseJSON as? [String: Any] {
if let object_id = dictionary["object_id"] as? String {
modelNewsGet.m_object_id = object_id
}
if let title = dictionary["title"] as? String {
modelNewsGet.m_title = editTitle(title: title)
}
if let description = dictionary["description"] as? String {
modelNewsGet.m_description = description
}
if let object_url = dictionary["object_url"] as? String {
modelNewsGet.m_object_url = object_url
}
if let layout = dictionary["layout"] as? String {
modelNewsGet.m_layout = layout
}
if let sport = dictionary["sport"] as? Int {
modelNewsGet.m_sport = sport
}
if let object_content = dictionary["object_content"] as? String {
modelNewsGet.m_object_content = object_content
}
if let thumb_link = dictionary["thumb_link"] as? String {
modelNewsGet.m_thumb_link = thumb_link
}
if let thumb_caption = dictionary["thumb_caption"] as? String {
modelNewsGet.m_thumb_caption = thumb_caption
}
if let time_published = dictionary["time_published"] as? String {
modelNewsGet.m_time_published = time_published
}
if let author = dictionary["author"] as? String {
modelNewsGet.m_author = author
}
if let comment_count = dictionary["comment_count"] as? String {
modelNewsGet.m_comment_count = comment_count
}
if let object_like_number = dictionary["object_like_number"] as? String {
modelNewsGet.m_object_like_number = object_like_number
}
if let video_link = dictionary["video_link"] as? String {
modelNewsGet.m_video_link = video_link
}
if let video_length = dictionary["video_length"] as? String {
modelNewsGet.m_video_length = video_length
}
if let cate_id = dictionary["cate_id"] as? String {
modelNewsGet.m_cate_id = cate_id
}
}
Không có nhận xét nào:
Đăng nhận xét