码农笔录博客源码
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

57 lignes
1.4 KiB

il y a 6 ans
package controllers
import (
"beeblog/models"
il y a 4 ans
"beeblog/service"
beego "github.com/beego/beego/v2/server/web"
"strconv"
il y a 6 ans
)
type LikeController struct {
beego.Controller
}
func (this *LikeController) Save() {
il y a 6 ans
likeService := service.LikeService{}
userService := service.UserService{}
il y a 6 ans
uid := this.GetSession("userid")
if uid == nil {
this.Data["json"] = models.ReurnError(401, "")
this.ServeJSON()
return
}
idStr := this.Ctx.Input.Param(":id")
id, _ := strconv.ParseInt(idStr, 10, 64)
like := &models.Like{BlogId: id, UserId: uid.(int64)}
il y a 6 ans
if _, err := likeService.SaveLike(like); err != nil {
il y a 6 ans
this.Data["json"] = models.ReurnError(500, "保存失败")
il y a 4 ans
} else {
il y a 6 ans
this.Data["json"] = models.ReurnSuccess("")
}
this.ServeJSON()
il y a 4 ans
userService.CountLike(uid.(int64), id)
il y a 6 ans
return
}
func (this *LikeController) Delete() {
il y a 6 ans
likeService := service.LikeService{}
userService := service.UserService{}
il y a 6 ans
uid := this.GetSession("userid")
if uid == nil {
this.Data["json"] = models.ReurnError(401, "")
this.ServeJSON()
return
}
idStr := this.Ctx.Input.Param(":id")
id, _ := strconv.ParseInt(idStr, 10, 64)
like := &models.Like{BlogId: id, UserId: uid.(int64)}
il y a 6 ans
if _, err := likeService.DelLike(like); err != nil {
il y a 6 ans
this.Data["json"] = models.ReurnError(500, "保存失败")
il y a 4 ans
} else {
il y a 6 ans
this.Data["json"] = models.ReurnSuccess("")
}
this.ServeJSON()
il y a 4 ans
userService.CountLike(uid.(int64), id)
il y a 6 ans
return
}