mirror of
https://github.com/mindoc-org/mindoc.git
synced 2026-02-27 17:03:57 +08:00
1、实现删除项目
2、实现生成访问令牌 3、实现添加评论
This commit is contained in:
@@ -83,3 +83,6 @@ func (c *BaseController) ExecuteViewPathTemplate(tplName string,data interface{}
|
||||
return buf.String(),nil
|
||||
}
|
||||
|
||||
func (c *BaseController) BaseUrl() string {
|
||||
return c.Ctx.Input.Scheme() + "://" + c.Ctx.Request.Host
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@ import (
|
||||
"github.com/lifei6671/godoc/utils"
|
||||
"github.com/astaxie/beego"
|
||||
"github.com/astaxie/beego/orm"
|
||||
"github.com/astaxie/beego/logs"
|
||||
)
|
||||
|
||||
type BookController struct {
|
||||
@@ -123,6 +124,7 @@ func (c *BookController) Users() {
|
||||
}
|
||||
}
|
||||
|
||||
// 参加参与用户.
|
||||
func (c *BookController) AddMember() {
|
||||
identify := c.GetString("identify")
|
||||
account := c.GetString("account")
|
||||
@@ -167,7 +169,7 @@ func (c *BookController) AddMember() {
|
||||
c.JsonResult(500,err.Error())
|
||||
}
|
||||
|
||||
|
||||
// 创建项目.
|
||||
func (c *BookController) Create() {
|
||||
|
||||
if c.Ctx.Input.IsPost() {
|
||||
@@ -230,11 +232,87 @@ func (c *BookController) Create() {
|
||||
// Edit 编辑项目.
|
||||
func (p *BookController) Edit() {
|
||||
p.TplName = "book/edit.tpl"
|
||||
|
||||
}
|
||||
|
||||
//创建访问来令牌
|
||||
func (c *BookController) CreateToken() {
|
||||
book_id,_ := c.GetInt("book_id",0)
|
||||
|
||||
if book_id <= 0{
|
||||
c.JsonResult(6001,"参数错误")
|
||||
}
|
||||
|
||||
book := models.NewBook()
|
||||
|
||||
if err := book.Find(book_id);err != nil {
|
||||
c.JsonResult(6001,"项目不存在")
|
||||
}
|
||||
bookResult ,err := models.NewBookResult().FindByIdentify("identify",c.Member.MemberId)
|
||||
|
||||
if err != nil {
|
||||
if err == models.ErrPermissionDenied {
|
||||
c.JsonResult(403,"权限不足")
|
||||
}
|
||||
if err == orm.ErrNoRows {
|
||||
c.JsonResult(404,"项目不存在")
|
||||
}
|
||||
logs.Error("生成阅读令牌失败 =>",err)
|
||||
c.JsonResult(6002,err.Error())
|
||||
}
|
||||
//必须是管理员或创始人才能删除项目
|
||||
if bookResult.RoleId != 0 && bookResult.RoleId != 1 {
|
||||
c.JsonResult(403,"权限不足")
|
||||
}
|
||||
if bookResult.PrivatelyOwned == 0 {
|
||||
c.JsonResult(6001,"公开项目不能创建阅读令牌")
|
||||
}
|
||||
|
||||
book.PrivateToken = utils.Krand(20,utils.KC_RAND_KIND_ALL)
|
||||
if err := book.Update(); err != nil {
|
||||
logs.Error("生成阅读令牌失败 => ",err)
|
||||
c.JsonResult(6003,"生成阅读令牌失败")
|
||||
}
|
||||
c.JsonResult(0,"ok", c.BaseUrl() + "?token="+ book.PrivateToken)
|
||||
}
|
||||
|
||||
// Delete 删除项目.
|
||||
func (p *BookController) Delete() {
|
||||
p.StopRun()
|
||||
func (c *BookController) Delete() {
|
||||
c.Prepare()
|
||||
|
||||
book_id,_ := c.GetInt("book_id",0)
|
||||
|
||||
if book_id <= 0{
|
||||
c.JsonResult(6001,"参数错误")
|
||||
}
|
||||
|
||||
book ,err := models.NewBookResult().FindByIdentify("identify",c.Member.MemberId)
|
||||
|
||||
if err != nil {
|
||||
if err == models.ErrPermissionDenied {
|
||||
c.JsonResult(403,"权限不足")
|
||||
}
|
||||
if err == orm.ErrNoRows {
|
||||
c.JsonResult(404,"项目不存在")
|
||||
}
|
||||
logs.Error("删除项目 =>",err)
|
||||
c.JsonResult(6002,err.Error())
|
||||
}
|
||||
//必须是管理员或创始人才能删除项目
|
||||
if book.RoleId != 0 && book.RoleId != 1 {
|
||||
c.JsonResult(403,"权限不足")
|
||||
}
|
||||
|
||||
err = models.NewBook().ThoroughDeleteBook(book_id)
|
||||
|
||||
if err == orm.ErrNoRows {
|
||||
c.JsonResult(6002,"项目不存在")
|
||||
}
|
||||
if err != nil {
|
||||
logs.Error("删除项目 => ",err)
|
||||
c.JsonResult(6003,"删除失败")
|
||||
}
|
||||
c.JsonResult(0,"ok")
|
||||
}
|
||||
|
||||
// Transfer 转让项目.
|
||||
|
||||
@@ -11,6 +11,7 @@ import (
|
||||
"github.com/astaxie/beego/logs"
|
||||
"github.com/lifei6671/godoc/utils"
|
||||
"github.com/lifei6671/godoc/models"
|
||||
"github.com/astaxie/beego/orm"
|
||||
)
|
||||
|
||||
type ManagerController struct {
|
||||
@@ -145,11 +146,30 @@ func (c *ManagerController) Books() {
|
||||
|
||||
}
|
||||
|
||||
// 删除项目.
|
||||
func (c *ManagerController) DeleteBook() {
|
||||
c.Prepare()
|
||||
if c.Member.Role != 0 {
|
||||
c.Abort("403")
|
||||
}
|
||||
|
||||
book_id,_ := c.GetInt("book_id",0)
|
||||
|
||||
if book_id <= 0{
|
||||
c.JsonResult(6001,"参数错误")
|
||||
}
|
||||
book := models.NewBook()
|
||||
|
||||
err := book.ThoroughDeleteBook(book_id)
|
||||
|
||||
if err == orm.ErrNoRows {
|
||||
c.JsonResult(6002,"项目不存在")
|
||||
}
|
||||
if err != nil {
|
||||
logs.Error("",err)
|
||||
c.JsonResult(6003,"删除失败")
|
||||
}
|
||||
c.JsonResult(0,"ok")
|
||||
}
|
||||
|
||||
func (c *ManagerController) Comments() {
|
||||
@@ -159,11 +179,30 @@ func (c *ManagerController) Comments() {
|
||||
}
|
||||
}
|
||||
|
||||
//DeleteComment 标记评论为已删除
|
||||
func (c *ManagerController) DeleteComment() {
|
||||
c.Prepare()
|
||||
if c.Member.Role != 0 {
|
||||
c.Abort("403")
|
||||
}
|
||||
comment_id,_ := c.GetInt("comment_id",0)
|
||||
|
||||
if comment_id <= 0 {
|
||||
c.JsonResult(6001,"参数错误")
|
||||
}
|
||||
|
||||
comment := models.NewComment()
|
||||
|
||||
if err := comment.Find(comment_id); err != nil {
|
||||
c.JsonResult(6002,"评论不存在")
|
||||
}
|
||||
|
||||
comment.Approved = 3
|
||||
|
||||
if err := comment.Update("approved");err != nil {
|
||||
c.JsonResult(6003,"删除评论失败")
|
||||
}
|
||||
c.JsonResult(0,"ok",comment)
|
||||
}
|
||||
|
||||
|
||||
@@ -183,5 +222,7 @@ func (c *ManagerController) DeleteComment() {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user