var res []orm.Params //切片map,value为interface;
// 获取当前时间
now := time.Now()
// 获取30天前的时间
thirtyDaysAgo := now.AddDate(0, 0, -30)
// 将时间转换为时间戳
timestamp := thirtyDaysAgo.Unix()
sql := fmt.Sprint("SELECT count(*) as num,media.id as article_id,media.title,media.createtime,media.imgurl,media.type,media.pv,media.source FROM `ugc_views` join media on media.id = ugc_views.source_id where media.createtime >= ? and ugc_views.view_type = 1 GROUP BY ugc_views.source_id order by media.pv desc")
models.DBhuoli.Raw(sql,timestamp).Values(&res)
for key,v := range res {
pv, _ := strconv.Atoi(v["pv"].(string)) //interface转int
num, _ := strconv.Atoi(v["num"].(string))
res[key]["view_num"] = pv + num
}
aid_pvnum := extend.SliceMapSort(res, "view_num", "int", "desc") //根据切片map的某个值排序
return aid_pvnum, nil