//dataArray:[OperationMaintenanceObject] 对象数组
func responsDeal(dataArray:[OperationMaintenanceObject]){
//可变集合
let operationSet = NSMutableSet()
//遍历数组加进集合
for operationMainObj in dataArray {
operationSet.add(operationMainObj.releaseTime ?? "unknow")
}
//遍历集合
operationSet.enumerateObjects ({ (obj, _) in
//根据数组里面的 releaseTime 属性进行分组,相同的返回过滤数组
let filterArray = dataArray.filter{
let str = obj as! String
return $0.releaseTime == str
}
//将数组添加到数据源数组
self.operationMaintenanceList?.append(filterArray)
})
//根据时间进行排序
self.operationMaintenanceList = self.operationMaintenanceList?.sorted(by: { (array1, array2) -> Bool in
let obj1 = (array1 as! [OperationMaintenanceObject]).first
let obj2 = (array2 as! [OperationMaintenanceObject]).first
let dateFormater = DateFormatter()
dateFormater.dateFormat = "YYYY-MM-dd"
let date1 = dateFormater.date(from: (obj1?.releaseTime)!)
let date2 = dateFormater.date(from: (obj2?.releaseTime)!)
return date1?.compare(date2!) == .orderedDescending
})
//重现加载表格数据
self.tableView.reloadData()
}