package stdlib import ( "app.yhyue.com/moapp/jy_docs/rpc/stdlib/stdlib" "app.yhyue.com/moapp/jy_docs/services/model" jyDocsRpcUtil "app.yhyue.com/moapp/jy_docs/services/util" ) func DocActivityList(pageSize, pageNum, activityId int, appId, userId string) *stdlib.DocActivityResp { var docActivity []model.DocActivity // var docs []map[string]interface{} var count int64 jyDocsRpcUtil.GetJyDocsDB().Model(&model.DocActivity{}).Where("activityId = ? and appId = ?", activityId, appId).Count(&count) if count > 0 { jyDocsRpcUtil.GetJyDocsDB().Offset((pageNum-1)*pageSize).Limit(pageSize).Find(&docActivity, &model.DocActivity{AppId: appId, ActivityId: activityId}) } else { count = 0 } docActivityResp := &stdlib.DocActivityResp{Code: 1, Msg: "ok", Total: int32(count)} for _, v := range docActivity { var buyCount int64 isbuy := false jyDocsRpcUtil.GetJyDocsDB().Table("user_doc").Where("docId = ? and userId = ? and appId = ? and isDownload = 1", v.DocId, userId, appId).Count(&buyCount) if buyCount > 0 { isbuy = true } docStatistics := model.DocStatistics{} jyDocsRpcUtil.GetJyDocsDB().First(&docStatistics, &model.DocStatistics{AppId: appId, DocId: v.DocId}) docActivityResp.Docs = append(docActivityResp.Docs, &stdlib.DocActivity{ DocId: v.DocId, DocImg: v.DocImg, DocTitle: v.DocTitle, DocSummary: v.DocSummary, ActivityId: int64(v.ActivityId), Price: int64(v.Price), CostPrice: int64(v.CostPrice), DocFileSize: int64(v.DocFileSize), DocPageSize: int64(v.DocPageSize), DownTimes: int64(docStatistics.DownTimes), DocFileType: int64(v.DocFileType), UploadDate: v.UploadDate.Format("2006-01-02 15:04:05"), IsBuy: isbuy, }) } return docActivityResp }