package yb import ( "github.com/beego/beego/v2/client/orm" "time" ) // YbCommunityQuestionComment 研报问答社区 用户留言表 type YbCommunityQuestionComment struct { CommunityQuestionCommentId uint64 `orm:"column(community_question_comment_id);pk;" description:"留言ID"` CommunityQuestionId int `orm:"column(community_question_id)" description:"社区问答id"` UserId uint64 `orm:"column(user_id)" description:"用户id"` RealName string `orm:"column(real_name)" description:"用户当时昵称"` Content string `orm:"column(content)" description:"留言内容"` ReplyCommentId uint64 `orm:"column(reply_comment_id)" description:"回复的留言ID"` IsTop int8 `orm:"column(is_top)" description:"是否置顶(0-未置顶,1-置顶)"` IsHot int8 `orm:"column(is_hot)" description:"是否设置精选(0-未设置,1-已设置)"` HotTopTime time.Time `orm:"column(hot_top_time)" description:"设置精选或者设置置顶的时间"` Type int8 `orm:"column(type)" description:"留言类型 1-评论 2-回复"` Enabled int8 `orm:"column(enabled)" description:"是否有效, 0-无效留言 1-有效留言"` IsShowName int8 `orm:"column(is_show_name)" description:"是否匿名 0-匿名,1-不匿名"` SourceAgent int `orm:"column(source_agent)" description:"留言入口来源,1:小程序,2:小程序pc, 4:web pc"` TopTime time.Time `orm:"column(top_time)" description:"设置置顶的时间"` HotTime time.Time `orm:"column(hot_time)" description:"设置精选的时间"` ModifyTime time.Time `orm:"column(modify_time)" description:"修改时间"` CreateTime time.Time `orm:"column(create_time)" description:"创建时间"` Source int `orm:"column(source)" description:"来源:1-问答社区; 2-视频社区"` } // GetQuestionCommentById 主键获取提问评论 func GetQuestionCommentById(questionId int) (item *YbCommunityQuestionComment, err error) { o := orm.NewOrm() sql := `SELECT * FROM yb_community_question_comment WHERE community_question_comment_id = ? AND enabled = 1 LIMIT 1` err = o.Raw(sql, questionId).QueryRow(&item) return } //Update 更新评论信息 func (item *YbCommunityQuestionComment) Update(cols []string) (err error) { o := orm.NewOrm() _, err = o.Update(item, cols...) return } //删除数据 func (item *YbCommunityQuestionComment) Delete() (err error) { o := orm.NewOrm() sql := ` DELETE FROM yb_community_question_comment WHERE community_question_comment_id = ?` _, err = o.Raw(sql, item.CommunityQuestionCommentId).Exec() return } // YbCommunityQuestionCommentAndQuestion 研报问答社区和信息 type YbCommunityQuestionCommentAndQuestion struct { CommunityQuestionCommentId uint64 `orm:"column(community_question_comment_id);pk;" description:"留言ID"` CommunityQuestionId int `orm:"column(community_question_id)" description:"社区问答id"` UserId uint64 `orm:"column(user_id)" description:"用户id"` NickName string `description:"用户名称"` RealName string `description:"用户真实姓名"` CompanyId int `description:"客户id"` CompanyName string `description:"客户名称"` CompanyFiccStatus string `description:"客户ficc状态"` Content string `orm:"column(content)" description:"留言内容"` ReplyCommentId uint64 `orm:"column(reply_comment_id)" description:"回复的留言ID" json:"-"` IsTop int8 `orm:"column(is_top)" description:"是否置顶(0-未置顶,1-置顶)" json:"-"` IsHot int8 `orm:"column(is_hot)" description:"是否设置精选(0-未设置,1-已设置)"` HotTopTime time.Time `orm:"column(hot_top_time)" description:"设置精选或者设置置顶的时间"` Type int8 `orm:"column(type)" description:"留言类型 1-评论 2-回复" json:"-"` Enabled int8 `orm:"column(enabled)" description:"是否有效, 0-无效留言 1-有效留言" json:"-"` IsShowName int8 `orm:"column(is_show_name)" description:"是否匿名 0-匿名,1-不匿名"` SourceAgent int `orm:"column(source_agent)" description:"留言入口来源,1:小程序,2:小程序pc, 4:web pc"` TopTime time.Time `orm:"column(top_time)" description:"设置置顶的时间"` HotTime time.Time `orm:"column(hot_time)" description:"设置精选的时间"` ModifyTime time.Time `orm:"column(modify_time)" description:"修改时间"` CreateTime string `orm:"column(create_time)" description:"创建时间"` QuestionContent string `description:"问题内容"` } // GetCommunityQuestionCommentList 获取问答列表 func GetCommunityQuestionCommentList(condition string, pars []interface{}, startSize, pageSize int) (total int, list []*YbCommunityQuestionCommentAndQuestion, err error) { o := orm.NewOrm() //汇总数据 totalSQl := `SELECT COUNT(1) total FROM yb_community_question_comment a join yb_community_question b on a.community_question_id = b.community_question_id WHERE a.enabled = 1 AND a.type = 1 AND b.is_deleted=0 ` totalSQl += condition if err = o.Raw(totalSQl, pars).QueryRow(&total); err != nil { return } // 列表数据 sql := `SELECT a.*,b.question_content FROM yb_community_question_comment a join yb_community_question b on a.community_question_id = b.community_question_id WHERE a.enabled = 1 AND a.type = 1 AND b.is_deleted=0 ` sql += condition sql += ` ORDER BY a.create_time DESC LIMIT ?,?` _, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&list) return } // GetCommunityQuestionCommentListByIds 根据问答评论id获取列表数据 func GetCommunityQuestionCommentListByIds(CommunityQuestionCommentIds string) (list []*YbCommunityQuestionComment, err error) { o := orm.NewOrm() // 列表数据 sql := `SELECT q.* FROM yb_community_question_comment q WHERE q.enabled = 1 AND community_question_comment_id in (` + CommunityQuestionCommentIds + `)` _, err = o.Raw(sql).QueryRows(&list) return }