Create & Init Project...

This commit is contained in:
2019-04-22 18:49:16 +08:00
commit fc4fa37393
25440 changed files with 4054998 additions and 0 deletions

View File

@@ -0,0 +1,42 @@
package(default_visibility = ["//visibility:public"])
load(
"@io_bazel_rules_go//go:def.bzl",
"go_library",
)
go_library(
name = "go_default_library",
srcs = [
"account.go",
"blacklist.go",
"http.go",
"notice.go",
],
importpath = "go-common/app/admin/main/space/http",
tags = ["automanaged"],
visibility = ["//visibility:public"],
deps = [
"//app/admin/main/space/conf:go_default_library",
"//app/admin/main/space/model:go_default_library",
"//app/admin/main/space/service:go_default_library",
"//library/ecode:go_default_library",
"//library/log:go_default_library",
"//library/net/http/blademaster:go_default_library",
"//library/net/http/blademaster/middleware/permit:go_default_library",
],
)
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [":package-srcs"],
tags = ["automanaged"],
visibility = ["//visibility:public"],
)

View File

@@ -0,0 +1,20 @@
package http
import bm "go-common/library/net/http/blademaster"
func relation(c *bm.Context) {
v := new(struct {
Mid int64 `form:"mid" validate:"min=1"`
})
if err := c.Bind(v); err != nil {
return
}
data, err := spcSvc.Relation(c, v.Mid)
if err != nil {
c.JSON(nil, err)
return
}
c.JSON(struct {
Follower int64 `json:"follower"`
}{Follower: data}, nil)
}

View File

@@ -0,0 +1,71 @@
package http
import (
"go-common/library/ecode"
bm "go-common/library/net/http/blademaster"
)
func blacklistIndex(c *bm.Context) {
param := &struct {
Mid int64 `form:"mid"`
Pn int `form:"pn" default:"1"`
Ps int `form:"ps" default:"20"`
}{}
if err := c.Bind(param); err != nil {
return
}
c.JSON(spcSvc.BlacklistIndex(param.Mid, param.Pn, param.Ps))
}
func blacklistAdd(c *bm.Context) {
var (
uid int64
name string
)
res := map[string]interface{}{}
param := &struct {
Mids []int64 `form:"mids,split" validate:"required"`
}{}
if err := c.Bind(param); err != nil {
return
}
if uidInter, ok := c.Get("uid"); ok {
uid = uidInter.(int64)
}
if usernameCtx, ok := c.Get("username"); ok {
name = usernameCtx.(string)
}
if err := spcSvc.BlacklistAdd(param.Mids, name, uid); err != nil {
res["message"] = "添加失败:" + err.Error()
c.JSONMap(res, ecode.RequestErr)
return
}
c.JSON(nil, nil)
}
func blacklistUp(c *bm.Context) {
var (
uid int64
name string
)
res := map[string]interface{}{}
param := &struct {
ID int64 `form:"id" validate:"required"`
Status int `form:"status" validate:"min=0,gte=0"`
}{}
if err := c.Bind(param); err != nil {
return
}
if uidInter, ok := c.Get("uid"); ok {
uid = uidInter.(int64)
}
if usernameCtx, ok := c.Get("username"); ok {
name = usernameCtx.(string)
}
if err := spcSvc.BlacklistUp(param.ID, param.Status, name, uid); err != nil {
res["message"] = "更新失败:" + err.Error()
c.JSONMap(res, ecode.RequestErr)
return
}
c.JSON(nil, nil)
}

View File

@@ -0,0 +1,56 @@
package http
import (
"net/http"
"go-common/app/admin/main/space/conf"
"go-common/app/admin/main/space/service"
"go-common/library/log"
bm "go-common/library/net/http/blademaster"
"go-common/library/net/http/blademaster/middleware/permit"
)
var (
spcSvc *service.Service
//idfSvc *identify.Identify
permitSvc *permit.Permit
)
// Init init http sever instance.
func Init(c *conf.Config, s *service.Service) {
spcSvc = s
permitSvc = permit.New(c.Permit)
engine := bm.DefaultServer(c.BM)
authRouter(engine)
// init internal server
if err := engine.Start(); err != nil {
log.Error("engine.Start error(%v)", err)
panic(err)
}
}
func authRouter(e *bm.Engine) {
e.Ping(ping)
group := e.Group("/x/admin/space")
{
noticeGroup := group.Group("/notice", permitSvc.Permit("SPACE_NOTICE"))
{
noticeGroup.GET("", notice)
noticeGroup.POST("/up", noticeUp)
}
group.GET("/relation", relation)
blacklist := group.Group("/blacklist", permitSvc.Permit("SPACE_BLACKLIST"))
{
blacklist.GET("", blacklistIndex)
blacklist.POST("add", blacklistAdd)
blacklist.POST("update", blacklistUp)
}
}
}
func ping(c *bm.Context) {
if err := spcSvc.Ping(c); err != nil {
log.Error("space-admin ping error")
c.AbortWithStatus(http.StatusServiceUnavailable)
}
}

View File

@@ -0,0 +1,30 @@
package http
import (
"go-common/app/admin/main/space/model"
bm "go-common/library/net/http/blademaster"
)
func notice(c *bm.Context) {
v := new(struct {
Mid int64 `form:"mid" validate:"min=1"`
})
if err := c.Bind(v); err != nil {
return
}
c.JSON(spcSvc.Notice(c, v.Mid))
}
func noticeUp(c *bm.Context) {
v := new(model.NoticeUpArg)
if err := c.Bind(v); err != nil {
return
}
if uidInter, ok := c.Get("uid"); ok {
v.UID = uidInter.(int64)
}
if usernameCtx, ok := c.Get("username"); ok {
v.Uname = usernameCtx.(string)
}
c.JSON(nil, spcSvc.NoticeUp(c, v))
}