Create & Init Project...
This commit is contained in:
36
app/service/main/tv/internal/server/grpc/BUILD
Normal file
36
app/service/main/tv/internal/server/grpc/BUILD
Normal file
@ -0,0 +1,36 @@
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
load(
|
||||
"@io_bazel_rules_go//go:def.bzl",
|
||||
"go_library",
|
||||
)
|
||||
|
||||
go_library(
|
||||
name = "go_default_library",
|
||||
srcs = ["server.go"],
|
||||
importpath = "go-common/app/service/main/tv/internal/server/grpc",
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
"//app/service/main/tv/api:go_default_library",
|
||||
"//app/service/main/tv/internal/model:go_default_library",
|
||||
"//app/service/main/tv/internal/service:go_default_library",
|
||||
"//library/ecode:go_default_library",
|
||||
"//library/log:go_default_library",
|
||||
"//library/net/rpc/warden: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"],
|
||||
)
|
233
app/service/main/tv/internal/server/grpc/server.go
Normal file
233
app/service/main/tv/internal/server/grpc/server.go
Normal file
@ -0,0 +1,233 @@
|
||||
package grpc
|
||||
|
||||
import (
|
||||
"context"
|
||||
pb "go-common/app/service/main/tv/api"
|
||||
"go-common/app/service/main/tv/internal/model"
|
||||
"go-common/app/service/main/tv/internal/service"
|
||||
"go-common/library/ecode"
|
||||
"go-common/library/log"
|
||||
"go-common/library/net/rpc/warden"
|
||||
)
|
||||
|
||||
// New new warden rpc server
|
||||
func New(c *warden.ServerConfig, svc *service.Service) *warden.Server {
|
||||
ws := warden.NewServer(c)
|
||||
pb.RegisterTVServiceServer(ws.Server(), &server{svc})
|
||||
ws, err := ws.Start()
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
log.Info("start grpc server")
|
||||
return ws
|
||||
}
|
||||
|
||||
type server struct {
|
||||
svr *service.Service
|
||||
}
|
||||
|
||||
var _ pb.TVServiceServer = &server{}
|
||||
|
||||
// UserInfo implementation
|
||||
func (s *server) UserInfo(ctx context.Context, req *pb.UserInfoReq) (resp *pb.UserInfoReply, err error) {
|
||||
ui, err := s.svr.UserInfo(ctx, req.Mid)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
if ui == nil {
|
||||
return nil, ecode.NothingFound
|
||||
}
|
||||
resp = &pb.UserInfoReply{}
|
||||
resp.DeepCopyFromUserInfo(ui)
|
||||
return
|
||||
}
|
||||
|
||||
// ChangeHistory implementation
|
||||
func (s *server) ChangeHistory(ctx context.Context, req *pb.ChangeHistoryReq) (resp *pb.ChangeHistoryReply, err error) {
|
||||
ch, err := s.svr.ChangeHistory(ctx, req.Id)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
if ch == nil {
|
||||
return nil, ecode.NothingFound
|
||||
}
|
||||
resp = &pb.ChangeHistoryReply{}
|
||||
resp.DeepCopyFromUserChangeHistory(ch)
|
||||
return
|
||||
}
|
||||
|
||||
// ChangeHistorys implementation
|
||||
func (s *server) ChangeHistorys(ctx context.Context, req *pb.ChangeHistorysReq) (resp *pb.ChangeHistorysReply, err error) {
|
||||
chs, total, err := s.svr.ChangeHistorys(ctx, req.Mid, req.From, req.To, req.Pn, req.Ps)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
resp = &pb.ChangeHistorysReply{Total: int32(total)}
|
||||
resp.Historys = make([]*pb.ChangeHistoryReply, 0, len(chs))
|
||||
for _, ch := range chs {
|
||||
chr := &pb.ChangeHistoryReply{}
|
||||
chr.DeepCopyFromUserChangeHistory(ch)
|
||||
resp.Historys = append(resp.Historys, chr)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func suitType2String(st int8) string {
|
||||
switch st {
|
||||
case model.SuitTypeAll:
|
||||
return "ALL"
|
||||
case model.SuitTypeMvip:
|
||||
return "MVIP"
|
||||
default:
|
||||
return "ALL"
|
||||
}
|
||||
}
|
||||
|
||||
// PanelInfo implemention
|
||||
func (s *server) PanelInfo(ctx context.Context, req *pb.PanelInfoReq) (resp *pb.PanelInfoReply, err error) {
|
||||
pi, err := s.svr.PanelInfo(ctx, req.Mid)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
resp = &pb.PanelInfoReply{}
|
||||
resp.PriceConfigs = make(map[string]*pb.PanelPriceConfigs)
|
||||
for st, ps := range pi {
|
||||
ppcs := &pb.PanelPriceConfigs{}
|
||||
ppcs.PriceConfigs = make([]*pb.PanelPriceConfig, 0)
|
||||
for _, p := range ps {
|
||||
item := &pb.PanelPriceConfig{}
|
||||
item.DeepCopyFromPanelPriceConfig(p)
|
||||
ppcs.PriceConfigs = append(ppcs.PriceConfigs, item)
|
||||
}
|
||||
resp.PriceConfigs[suitType2String(st)] = ppcs
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// GuestPanelInfo implemention
|
||||
func (s *server) GuestPanelInfo(ctx context.Context, req *pb.GuestPanelInfoReq) (resp *pb.GuestPanelInfoReply, err error) {
|
||||
pi, err := s.svr.GuestPanelInfo(ctx)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
resp = &pb.GuestPanelInfoReply{}
|
||||
resp.PriceConfigs = make(map[string]*pb.PanelPriceConfigs)
|
||||
for st, ps := range pi {
|
||||
ppcs := &pb.PanelPriceConfigs{}
|
||||
ppcs.PriceConfigs = make([]*pb.PanelPriceConfig, 0, len(ps))
|
||||
for _, p := range ps {
|
||||
item := &pb.PanelPriceConfig{}
|
||||
item.DeepCopyFromPanelPriceConfig(p)
|
||||
ppcs.PriceConfigs = append(ppcs.PriceConfigs, item)
|
||||
}
|
||||
resp.PriceConfigs[suitType2String(st)] = ppcs
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// PayOrder implementation
|
||||
func (s *server) PayOrder(ctx context.Context, req *pb.PayOrderReq) (resp *pb.PayOrderReply, err error) {
|
||||
resp = &pb.PayOrderReply{}
|
||||
return
|
||||
}
|
||||
|
||||
// CreateQr implementation
|
||||
func (s *server) CreateQr(ctx context.Context, req *pb.CreateQrReq) (resp *pb.CreateQrReply, err error) {
|
||||
qr, err := s.svr.CreateQr(ctx, req.Mid, req.Pid, req.BuyNum, req.Guid, req.AppChannel)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
resp = &pb.CreateQrReply{}
|
||||
resp.DeepCopyFromQR(qr)
|
||||
return
|
||||
}
|
||||
|
||||
// CreateGuestQr implementation
|
||||
func (s *server) CreateGuestQr(ctx context.Context, req *pb.CreateGuestQrReq) (resp *pb.CreateGuestQrReply, err error) {
|
||||
qr, err := s.svr.CreateGuestQr(ctx, req.Pid, req.BuyNum, req.Guid, req.AppChannel)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
resp = &pb.CreateGuestQrReply{}
|
||||
resp.DeepCopyFromQR(qr)
|
||||
return
|
||||
}
|
||||
|
||||
// CreateOrder implementation
|
||||
func (s *server) CreateOrder(ctx context.Context, req *pb.CreateOrderReq) (resp *pb.CreateOrderReply, err error) {
|
||||
pi, err := s.svr.CreateOrder(ctx, req.Token, req.Platform, req.PaymentType, req.ClientIp)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
resp = &pb.CreateOrderReply{}
|
||||
resp.DeepCopyFromPayInfo(pi)
|
||||
return
|
||||
}
|
||||
|
||||
// CreateGuestOrder implementation
|
||||
func (s *server) CreateGuestOrder(ctx context.Context, req *pb.CreateGuestOrderReq) (resp *pb.CreateGuestOrderReply, err error) {
|
||||
pi, err := s.svr.CreateGuestOrder(ctx, req.Mid, req.Token, req.Platform, req.PaymentType, req.ClientIp)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
resp = &pb.CreateGuestOrderReply{}
|
||||
resp.DeepCopyFromPayInfo(pi)
|
||||
return
|
||||
}
|
||||
|
||||
// RenewVip implementation
|
||||
func (s *server) TokenInfo(ctx context.Context, req *pb.TokenInfoReq) (resp *pb.TokenInfoReply, err error) {
|
||||
ti, err := s.svr.TokenInfos(ctx, req.Token)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
resp = &pb.TokenInfoReply{}
|
||||
resp.Tokens = make([]*pb.TokenInfo, 0)
|
||||
for _, v := range ti {
|
||||
t := &pb.TokenInfo{}
|
||||
t.DeepCopyFromTokenInfo(v)
|
||||
resp.Tokens = append(resp.Tokens, t)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// RenewVip implementation
|
||||
func (s *server) RenewVip(ctx context.Context, req *pb.RenewVipReq) (resp *pb.RenewVipReply, err error) {
|
||||
err = s.svr.RenewVip(ctx, req.Mid)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
resp = &pb.RenewVipReply{}
|
||||
return
|
||||
}
|
||||
|
||||
// YstUserInfo implementation
|
||||
func (s *server) YstUserInfo(ctx context.Context, req *pb.YstUserInfoReq) (resp *pb.YstUserInfoReply, err error) {
|
||||
resp = &pb.YstUserInfoReply{}
|
||||
ui, err := s.svr.YstUserInfo(ctx, req.DeepCopyAsYstUserInfoReq())
|
||||
if err != nil {
|
||||
resp.Result = "998"
|
||||
resp.Msg = err.Error()
|
||||
return
|
||||
}
|
||||
resp.DeepCopyFromUserInfo(ui)
|
||||
resp.Result = "0"
|
||||
resp.Msg = "ok"
|
||||
return
|
||||
}
|
||||
|
||||
// PayCallback implementation
|
||||
func (s *server) PayCallback(ctx context.Context, req *pb.PayCallbackReq) (resp *pb.PayCallbackReply, err error) {
|
||||
ystReq := &model.YstPayCallbackReq{}
|
||||
req.DeepCopyAsIntoYstPayCallbackReq(ystReq)
|
||||
ystReply := s.svr.PayCallback(ctx, ystReq)
|
||||
resp = &pb.PayCallbackReply{}
|
||||
resp.DeepCopyFromYstPayCallbackReply(ystReply)
|
||||
return
|
||||
}
|
||||
|
||||
// WxContractCallback implementation.
|
||||
func (s *server) WxContractCallback(ctx context.Context, req *pb.WxContractCallbackReq) (resp *pb.WxContractCallbackReply, err error) {
|
||||
resp = &pb.WxContractCallbackReply{}
|
||||
return
|
||||
}
|
Reference in New Issue
Block a user