package yb_comment import ( "hongze/hongze_yb/global" "hongze/hongze_yb/utils" ) // GetListByUserIdReportId 获取用户的留言列表 func GetListByUserIdReportId(userId uint64, reportId, reportChapterId int) (list []*YbComment, err error) { //err = global.DEFAULT_MYSQL.Model(YbComment{}). // Where("user_id = ? and report_id = ? and report_chapter_id = ? and enabled = 1 ", userId, reportId, reportChapterId). // Order("create_time desc, comment_id desc"). // Scan(&list).Error tmp := global.DEFAULT_MYSQL.Model(YbComment{}). Where("user_id = ? and report_id = ? and enabled = 1 ", userId, reportId) if reportChapterId > 0 { tmp = tmp.Where("report_chapter_id = ?", reportChapterId) } err = tmp.Order("create_time desc, comment_id desc"). Scan(&list).Error if err == utils.ErrNoRow { err = nil } return } // GetListByUserIdOldReportId 获取用户的留言列表 func GetListByUserIdOldReportId(userId uint64, oldReportId, oldReportChapterId int) (list []*YbComment, err error) { err = global.DEFAULT_MYSQL.Model(YbComment{}). Where("user_id = ? and old_report_id = ? and old_report_chapter_id = ? and enabled = 1 ", userId, oldReportId, oldReportChapterId). Order("create_time desc, comment_id desc"). Scan(&list).Error if err == utils.ErrNoRow { err = nil } return } // GetHotListByReportId 获取报告的精选留言列表 func GetHotListByReportId(reportId, reportChapterId int, offset, limit int) (list []*YbComment, err error) { //err = global.DEFAULT_MYSQL.Model(YbComment{}). // Where("report_id = ? and report_chapter_id = ? and enabled = 1 and is_hot = 1 and type = 1", reportId, reportChapterId). // Order("is_top desc, hot_top_time desc, comment_id desc"). // Offset(offset). // Limit(limit). // Scan(&list).Error tmp := global.DEFAULT_MYSQL.Model(YbComment{}). Where("report_id = ? and enabled = 1 and is_hot = 1 and type = 1", reportId) // 如果有填写章节id,那么就查询章节id if reportChapterId > 0 { tmp = tmp.Where("report_chapter_id = ? ", reportChapterId) } err = tmp.Order("is_top desc, hot_top_time desc, comment_id desc"). Offset(offset). Limit(limit). Scan(&list).Error return } // GetHotListTotalByReportId 获取精选留言总条数 func GetHotListTotalByReportId(reportId, reportChapterId int) (total int64, err error) { tmp := global.DEFAULT_MYSQL.Model(YbComment{}). Where("report_id = ? and enabled = 1 and is_hot = 1 and type = 1", reportId) // 如果有填写章节id,那么就查询章节id if reportChapterId > 0 { tmp = tmp.Where(" report_chapter_id = ? ", reportChapterId) } err = tmp.Count(&total).Error return } // GetHotListByOldReportId 获取老报告的精选留言列表 func GetHotListByOldReportId(oldReportId, oldReportChapterId int, offset, limit int) (list []*YbComment, err error) { err = global.DEFAULT_MYSQL.Model(YbComment{}). Where("old_report_id = ? and old_report_chapter_id = ? and enabled = 1 and is_hot = 1 and type = 1", oldReportId, oldReportChapterId). Order("is_top desc, hot_top_time desc, comment_id desc"). Offset(offset). Limit(limit). Scan(&list).Error return } // GetHotListTotalByOldReportId 获取老报告的精选留言总条数 func GetHotListTotalByOldReportId(oldReportId, oldReportChapterId int) (total int64, err error) { err = global.DEFAULT_MYSQL.Model(YbComment{}). Where("old_report_id = ? and old_report_chapter_id = ? and enabled = 1 and is_hot = 1 and type = 1", oldReportId, oldReportChapterId). Count(&total).Error return } // GetReplyListByReplyCommentId 获取报告的精选留言的回复列表 func GetReplyListByReplyCommentId(replyCommentIds []uint64) (list []*YbComment, err error) { err = global.DEFAULT_MYSQL.Model(YbComment{}). Where("enabled = 1 and type = 2 and reply_comment_id in ?", replyCommentIds). Order("comment_id asc"). Scan(&list).Error return } // GetSimpleByCommentId 根据留言ID,查询留言 func GetSimpleByCommentId(commentId uint64) (item *YbComment, err error) { err = global.DEFAULT_MYSQL.Model(YbComment{}). Select("comment_id, user_id, type, enabled"). Where("comment_id = ?", commentId).First(&item).Error if err == utils.ErrNoRow { err = nil } return } // GetMyLatestComment 获取用户最新的留言 func GetMyLatestComment(userId uint64) (item *YbComment, err error) { err = global.DEFAULT_MYSQL.Model(YbComment{}). Select("comment_id, user_id, type, enabled, is_show_name"). Where("user_id = ? and type=1", userId).Order("comment_id desc").First(&item).Error return }