From 61163cef6ac155234009af2588ae4313e8364f1a Mon Sep 17 00:00:00 2001 From: "mail_yanpeng@163.com" Date: Fri, 23 Nov 2018 13:08:20 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=9A=E5=AE=A2=E6=95=B0=E9=87=8F&=E6=B5=8F?= =?UTF-8?q?=E8=A7=88=E9=87=8F=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- controllers/BlogController.go | 12 +++++++++--- controllers/PageController.go | 11 ++++++++++- data/beeblog.db | Bin 61440 -> 86016 bytes service/BlogService.go | 10 ++++++++++ service/UserService.go | 29 +++++++++++++++++++++++++++++ views/iframe/blog.html | 12 +++++------- 6 files changed, 63 insertions(+), 11 deletions(-) diff --git a/controllers/BlogController.go b/controllers/BlogController.go index 3dc8521..6dd5a97 100644 --- a/controllers/BlogController.go +++ b/controllers/BlogController.go @@ -24,7 +24,7 @@ func (this *BlogController) Save() { catory := this.GetString("catory") catoryId, _ := strconv.ParseInt(catory, 10, 64) labels := this.GetStrings("labels[]") - blog := &models.Blog{Title: title, BlogHtml: blogHtml, CategoryId: catoryId, UserId: 1} + blog := &models.Blog{Title: title, BlogHtml: blogHtml, CategoryId: catoryId, UserId: uid.(int64)} err := service.SaveBlog(blog, labels) if err == nil { this.Data["json"] = models.ReurnSuccess("") @@ -32,6 +32,7 @@ func (this *BlogController) Save() { this.Data["json"] = models.ReurnError(500, "保存失败") } this.ServeJSON() + service.CountBlog(uid.(int64)) return } @@ -39,12 +40,17 @@ func (this *BlogController) Get() { idStr := this.Ctx.Input.Param(":id") id, _ := strconv.ParseInt(idStr, 10, 64) blog, err := service.GetBlog(id) - if err == nil { - this.Data["Blog"] = blog + if err != nil { + this.Redirect("/500.html",302) + return } + this.Data["Blog"] = blog this.Data["NickName"] = this.GetSession("nickname") this.Data["IsLogin"] = this.GetSession("nickname") != nil this.TplName = "blog.html" + service.CountBrows(blog.UserId) + service.EditBlogBrows(id) + return } func (this *BlogController) New() { diff --git a/controllers/PageController.go b/controllers/PageController.go index d26277a..9851316 100644 --- a/controllers/PageController.go +++ b/controllers/PageController.go @@ -1,6 +1,9 @@ package controllers -import "github.com/astaxie/beego" +import ( + "github.com/astaxie/beego" + "beeblog/service" +) type PageController struct { beego.Controller @@ -8,6 +11,12 @@ type PageController struct { // @router /iframe/blog [get] func (this *PageController) Blog() { + cats, err := service.GetCats() + if err != nil { + this.Redirect("500.html", 302) + return + } + this.Data["Cats"] = cats this.TplName = "iframe/blog.html" } diff --git a/data/beeblog.db b/data/beeblog.db index 8189a01a320cd61817996f195c49f3b8b9e5c7e2..ad8228a47ad33c026dc5b8b87dfb618b522e02b0 100644 GIT binary patch literal 86016 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 J_^r>_0RWobB%%NS diff --git a/service/BlogService.go b/service/BlogService.go index 8054874..a080f3c 100644 --- a/service/BlogService.go +++ b/service/BlogService.go @@ -23,6 +23,16 @@ func count(num int, size int, cat int64) (*utils.Page, error) { return utils.PageUtil(totalCount, num, size), nil } +func EditBlogBrows(id int64) { + o := orm.NewOrm() + blog := &models.Blog{Id: id} + err := o.Read(blog) + if err == nil { + blog.Browses += 1 + o.Update(blog, "Browses") + } +} + func GetBlog(id int64) (*models.Blog, error) { o := orm.NewOrm() blog := &models.Blog{Id: id} diff --git a/service/UserService.go b/service/UserService.go index cb29119..8d5f49b 100644 --- a/service/UserService.go +++ b/service/UserService.go @@ -33,3 +33,32 @@ func SaveUser(user *models.User) error { } return nil } + +func CountBlog(uid int64) { + o := orm.NewOrm() + totalItem := 0 + err := o.Raw("SELECT count(*) FROM blog where delflag = 0 and user_id =? ", uid).QueryRow(&totalItem) //获取总条数 + if err != nil { + return + } + user := &models.User{Id: uid} + err = o.Read(user) + if err != nil { + return + } + user.BlogCount = totalItem + o.Update(user, "BlogCount") + return +} +func CountBrows(uid int64){ + o := orm.NewOrm() + browses := 0 + o.Raw("UPDATE `user` SET `blog_browes` = (select SUM(browses) browses from blog where user_id = ?1) WHERE `id` = ?2 ", uid,uid).QueryRow(&browses) //获取总条数 + return +} +func CountComments(uid int64) { + +} +func CountLike(uid int64) { + +} diff --git a/views/iframe/blog.html b/views/iframe/blog.html index e839b1c..d8d0fab 100644 --- a/views/iframe/blog.html +++ b/views/iframe/blog.html @@ -28,11 +28,9 @@ 开发语言: @@ -48,8 +46,8 @@
- - + +