///对包含LJConferenceItemModel类型元素的数组,进行按日期先后排序
static func grouping(_ list:[LJConferenceItemModel]) -> [Dictionary<String,Array<Any>>.Element] {
if list.count == 0 {
return []
}
var dateDict = [String: Array<Any>]()
//遍历模型数组,获得一个字典 字典按[ 时间 : [model...] ]
for model in list {
//将时间戳转换成指定格式的字符串
let key = String.changeTime(timeStamp: (Int(model.start_time!)!/1000000000), format: "yyyy年MM月dd日")
if dateDict.keys.contains(key) {
//包含
var array = dateDict[key]
array?.append(model)
dateDict[key] = array
}else{
var array = [Any]()
array.append(model)
dateDict[key] = array
}
}
//获取按时间先后排序后的数组。[(key,value)]= [(2020-7-10,[model])]
let temp = dateDict.sorted { (dict1, dict2) -> Bool in
let temp1 = String.stringToTimeStamp(stringTime: dict1.key, formatter: "yyyy年MM月dd日")
let temp2 = String.stringToTimeStamp(stringTime: dict2.key, formatter: "yyyy年MM月dd日")
return temp1 < temp2
}
print("\(dateDict) ----temp\(temp)")
return temp
}