package models import ( "github.com/beego/beego/v2/client/orm" "time" ) type CygxArticleCollect struct { Id int `orm:"column(id);pk"` ArticleId int UserId int CreateTime time.Time Mobile string `description:"手机号"` Email string `description:"邮箱"` CompanyId int `description:"公司id"` CompanyName string `description:"公司名称"` RealName string `description:"用户实际名称"` } //添加收藏信息 func AddCygxArticleCollect(item *CygxArticleCollect) (lastId int64, err error) { o := orm.NewOrm() lastId, err = o.Insert(item) return } type ArticleCollectReq struct { ArticleId int `description:"报告id"` } type ArticleCollectResp struct { Status int `description:"1:收藏,2:取消收藏"` CollectCount int `description:"收藏总数"` } func RemoveArticleCollect(userId, articleId int) (err error) { o := orm.NewOrm() sql := `DELETE FROM cygx_article_collect WHERE user_id=? AND article_id=? ` _, err = o.Raw(sql, userId, articleId).Exec() return } func GetArticleCollectUsersCount(articleId int) (count int, err error) { sql := `SELECT COUNT(user_id) AS count FROM cygx_article_collect WHERE article_id=? ` err = orm.NewOrm().Raw(sql, articleId).QueryRow(&count) return } func GetArticleCollectCount(userId, articleId int) (count int, err error) { sql := `SELECT COUNT(1) AS count FROM cygx_article_collect WHERE user_id=? AND article_id=? ` err = orm.NewOrm().Raw(sql, userId, articleId).QueryRow(&count) return } type ArticleCollectList struct { Id int `orm:"column(id);pk"` ArticleId int UserId int CreateTime time.Time Title string `description:"标题"` TitleEn string `description:"英文标题 "` UpdateFrequency string `description:"更新周期"` CreateDate string `description:"创建时间"` PublishDate string `description:"发布时间"` Body string `description:"内容"` Abstract string `description:"摘要"` CategoryName string `description:"一级分类"` SubCategoryName string `description:"二级分类"` } func GetCygxArticleCollectList() (items []*CygxArticleCollect, err error) { o := orm.NewOrm() sql := `SELECT * FROM cygx_article_collect GROUP BY user_id ` _, err = o.Raw(sql).QueryRows(&items) return } //修改用户收藏文章的相关信息 func UpdateCygxArticleCollect(wxUser *WxUserItem) (err error) { o := orm.NewOrm() sql := `UPDATE cygx_article_collect SET email=?,company_id=?,company_name=?,mobile=?,real_name=? WHERE user_id=? ` _, err = o.Raw(sql, wxUser.Email, wxUser.CompanyId, wxUser.CompanyName, wxUser.Mobile, wxUser.RealName, wxUser.UserId).Exec() return }