Create & Init Project...
This commit is contained in:
48
app/interface/main/creative/service/feedback/BUILD
Normal file
48
app/interface/main/creative/service/feedback/BUILD
Normal file
@ -0,0 +1,48 @@
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
load(
|
||||
"@io_bazel_rules_go//go:def.bzl",
|
||||
"go_test",
|
||||
"go_library",
|
||||
)
|
||||
|
||||
go_test(
|
||||
name = "go_default_test",
|
||||
srcs = ["service_test.go"],
|
||||
embed = [":go_default_library"],
|
||||
rundir = ".",
|
||||
tags = ["automanaged"],
|
||||
deps = [
|
||||
"//app/interface/main/creative/conf:go_default_library",
|
||||
"//app/interface/main/creative/service:go_default_library",
|
||||
"//vendor/github.com/smartystreets/goconvey/convey:go_default_library",
|
||||
],
|
||||
)
|
||||
|
||||
go_library(
|
||||
name = "go_default_library",
|
||||
srcs = ["service.go"],
|
||||
importpath = "go-common/app/interface/main/creative/service/feedback",
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
"//app/interface/main/creative/conf:go_default_library",
|
||||
"//app/interface/main/creative/dao/feedback:go_default_library",
|
||||
"//app/interface/main/creative/model/feedback:go_default_library",
|
||||
"//app/interface/main/creative/service: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"],
|
||||
)
|
73
app/interface/main/creative/service/feedback/service.go
Normal file
73
app/interface/main/creative/service/feedback/service.go
Normal file
@ -0,0 +1,73 @@
|
||||
package feedback
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"go-common/app/interface/main/creative/conf"
|
||||
"go-common/app/interface/main/creative/dao/feedback"
|
||||
fdMdl "go-common/app/interface/main/creative/model/feedback"
|
||||
"go-common/app/interface/main/creative/service"
|
||||
)
|
||||
|
||||
//Service struct.
|
||||
type Service struct {
|
||||
c *conf.Config
|
||||
feedback *feedback.Dao
|
||||
}
|
||||
|
||||
//New get service.
|
||||
func New(c *conf.Config, rpcdaos *service.RPCDaos) *Service {
|
||||
s := &Service{
|
||||
c: c,
|
||||
feedback: feedback.New(c),
|
||||
}
|
||||
return s
|
||||
}
|
||||
|
||||
// Feedbacks get user feedback list.
|
||||
func (s *Service) Feedbacks(c context.Context, mid, ps, pn, tagID int64, state, start, end, platform, ip string) (data []*fdMdl.Feedback, count int64, err error) {
|
||||
data, count, err = s.feedback.Feedbacks(c, mid, ps, pn, tagID, state, start, end, platform, ip)
|
||||
return
|
||||
}
|
||||
|
||||
// AddFeedback add feedback
|
||||
func (s *Service) AddFeedback(c context.Context, mid, tagID, sessionID int64, qq, content, aid, imgURL, browser, platform, ip string) (err error) {
|
||||
err = s.feedback.AddFeedback(c, mid, tagID, sessionID, qq, content, aid, browser, imgURL, platform, ip)
|
||||
return
|
||||
}
|
||||
|
||||
// Tags get tags.
|
||||
func (s *Service) Tags(c context.Context, mid int64, ip string) (tags []*fdMdl.Tag, err error) {
|
||||
var tls *fdMdl.TagList
|
||||
if tls, err = s.feedback.Tags(c, mid, ip); err != nil {
|
||||
return
|
||||
}
|
||||
if tls == nil || len(tls.Platforms) == 0 {
|
||||
return
|
||||
}
|
||||
for _, v := range tls.Platforms {
|
||||
if v.EN == "ugc" {
|
||||
tags = v.Tags
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// NewTags get new tags.
|
||||
func (s *Service) NewTags(c context.Context, mid int64, ip string) (tags *fdMdl.TagList, err error) {
|
||||
tags, err = s.feedback.Tags(c, mid, ip)
|
||||
return
|
||||
}
|
||||
|
||||
// Detail get feedback detail
|
||||
func (s *Service) Detail(c context.Context, mid, sessionID int64, ip string) (data []*fdMdl.Reply, err error) {
|
||||
|
||||
data, err = s.feedback.Detail(c, mid, sessionID, ip)
|
||||
return
|
||||
}
|
||||
|
||||
// CloseSession get feedback detail
|
||||
func (s *Service) CloseSession(c context.Context, sessionID int64, ip string) (err error) {
|
||||
err = s.feedback.CloseSession(c, sessionID, ip)
|
||||
return
|
||||
}
|
53
app/interface/main/creative/service/feedback/service_test.go
Normal file
53
app/interface/main/creative/service/feedback/service_test.go
Normal file
@ -0,0 +1,53 @@
|
||||
package feedback
|
||||
|
||||
import (
|
||||
"context"
|
||||
"flag"
|
||||
"go-common/app/interface/main/creative/conf"
|
||||
"path/filepath"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
. "github.com/smartystreets/goconvey/convey"
|
||||
"go-common/app/interface/main/creative/service"
|
||||
)
|
||||
|
||||
var (
|
||||
s *Service
|
||||
)
|
||||
|
||||
func init() {
|
||||
dir, _ := filepath.Abs("../../cmd/creative.toml")
|
||||
flag.Set("conf", dir)
|
||||
conf.Init()
|
||||
rpcdaos := service.NewRPCDaos(conf.Conf)
|
||||
s = New(conf.Conf, rpcdaos)
|
||||
time.Sleep(time.Second)
|
||||
}
|
||||
|
||||
func WithService(f func(s *Service)) func() {
|
||||
return func() {
|
||||
Reset(func() {})
|
||||
f(s)
|
||||
}
|
||||
}
|
||||
|
||||
func Test_State(t *testing.T) {
|
||||
var (
|
||||
c = context.TODO()
|
||||
mid = int64(2089809)
|
||||
)
|
||||
Convey("AppealList", t, WithService(func(s *Service) {
|
||||
_, err := s.Tags(c, mid, "")
|
||||
So(err, ShouldNotBeNil)
|
||||
}))
|
||||
Convey("Detail", t, WithService(func(s *Service) {
|
||||
_, err := s.Detail(c, mid, 23333, "")
|
||||
So(err, ShouldNotBeNil)
|
||||
}))
|
||||
Convey("Feedbacks", t, WithService(func(s *Service) {
|
||||
_, count, err := s.Feedbacks(c, mid, 10, 10, int64(2), "1", "2", "3", "pc", "")
|
||||
So(err, ShouldNotBeNil)
|
||||
So(count, ShouldBeZeroValue)
|
||||
}))
|
||||
}
|
Reference in New Issue
Block a user