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,65 @@
load(
"@io_bazel_rules_go//proto:def.bzl",
"go_proto_library",
)
package(default_visibility = ["//visibility:public"])
load(
"@io_bazel_rules_go//go:def.bzl",
"go_library",
)
proto_library(
name = "api_proto",
srcs = ["api.proto"],
tags = ["automanaged"],
deps = [
"@com_google_protobuf//:empty_proto",
"@gogo_special_proto//github.com/gogo/protobuf/gogoproto",
],
)
go_proto_library(
name = "api_go_proto",
compilers = ["@io_bazel_rules_go//proto:gogofast_grpc"],
importpath = "go-common/app/service/bbq/user/api",
proto = ":api_proto",
tags = ["automanaged"],
deps = [
"//library/time:go_default_library",
"@com_github_gogo_protobuf//gogoproto:go_default_library",
"@io_bazel_rules_go//proto/wkt:empty_go_proto",
],
)
go_library(
name = "go_default_library",
srcs = ["user.go"],
embed = [":api_go_proto"],
importpath = "go-common/app/service/bbq/user/api",
tags = ["automanaged"],
visibility = ["//visibility:public"],
deps = [
"//library/time:go_default_library",
"@com_github_gogo_protobuf//gogoproto:go_default_library",
"@com_github_gogo_protobuf//proto:go_default_library",
"@io_bazel_rules_go//proto/wkt:empty_go_proto",
"@org_golang_google_grpc//:go_default_library",
"@org_golang_x_net//context: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"],
)

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,188 @@
syntax = "proto3";
import "github.com/gogo/protobuf/gogoproto/gogo.proto";
import "google/protobuf/empty.proto";
package bbq.service.user.v1;
option go_package = "api";
option (gogoproto.goproto_getters_all) = false;
////////////////////////////////Relation Service/////////////////////////////////
message ListRelationUserInfoReq {
int64 mid = 1 [(gogoproto.moretags)='form:"mid"'];
int64 up_mid = 2 [(gogoproto.moretags)='form:"up_mid" validate:"required"'];
string cursor_prev = 3 [(gogoproto.moretags)='form:"cursor_prev"'];
string cursor_next = 4 [(gogoproto.moretags)='form:"cursor_next"'];
}
message ListUserInfoReply {
bool has_more = 1 [(gogoproto.jsontag) = "has_more"];
repeated UserInfo list = 2 [(gogoproto.jsontag) = "list,omitempty"];
}
message ListRelationReq {
int64 mid = 1[(gogoproto.moretags)='form:"mid" validate:"required"'];
}
message ListRelationReply {
repeated int64 list = 1 [(gogoproto.jsontag) = "list,omitempty"];
}
message ModifyRelationReq {
int64 mid = 1 [(gogoproto.moretags)='form:"mid" validate:"required"'];
int64 up_mid = 2 [(gogoproto.moretags)='form:"up_mid" validate:"required"'];
int32 action = 3 [(gogoproto.moretags)='form:"action" validate:"required"'];
}
message ModifyRelationReply {
int32 follow_state = 1 [(gogoproto.jsontag) = "follow_state", (gogoproto.casttype) = "int8"];
}
////////////////////////////////User Service/////////////////////////////////
message ListUserInfoReq {
int64 mid = 1 [(gogoproto.moretags)='form:"mid"'];
repeated int64 up_mid = 2 [(gogoproto.moretags)='form:"up_mid,omitempty" validate:"required"'];
// 是否需要用户信息数组,如区域、性别的字符串化
bool need_desc = 3 [(gogoproto.moretags)='form:"need_desc"'];
// 用户统计信息UserStat
bool need_stat = 4 [(gogoproto.moretags)='form:"need_stat"'];
// 用户关注信息是否需要
bool need_follow_state = 5 [(gogoproto.moretags)='form:"need_follow_state"'];
}
// 获取UserInfo的配置默认是只有UserBase的
message ListUserInfoConf {
// 是否需要用户信息数组,如区域、性别的字符串化
bool need_desc = 1 [(gogoproto.moretags)='form:"need_desc"'];
// 用户统计信息UserStat
bool need_stat = 2 [(gogoproto.moretags)='form:"need_stat"'];
// 用户关注信息是否需要
bool need_follow_state = 3 [(gogoproto.moretags)='form:"need_follow_state"'];
}
message PhoneCheckReq {
int64 mid = 1 [(gogoproto.moretags)='form:"mid"'];
}
message PhoneCheckReply {
int32 tel_status = 2;// 0未绑定1已绑定有效手机号
}
////////////////////////////////Like Service/////////////////////////////////
message LikeReq {
int64 mid = 1 [(gogoproto.moretags)='form:"mid" validate:"required"'];
int64 up_mid = 2 [(gogoproto.moretags)='form:"up_mid" validate:"required"'];
int64 opid = 3 [(gogoproto.moretags)='form:"opid" validate:"required"'];
}
message LikeReply {
int64 affected_num = 1; // 返回是否操作了数据库
}
message ListUserLikeReq {
// int64 mid = 1 [(gogoproto.moretags)='form:"mid"'];
int64 up_mid = 2 [(gogoproto.moretags)='form:"up_mid" validate:"required"'];
string cursor_prev = 3 [(gogoproto.moretags)='form:"cursor_prev"'];
string cursor_next = 4 [(gogoproto.moretags)='form:"cursor_next"'];
}
message LikeSv {
int64 svid = 1 [(gogoproto.jsontag) = "svid"];
string cursor_value = 2 [(gogoproto.jsontag) = "cursor_value"];
}
message ListUserLikeReply {
bool has_more = 1 [(gogoproto.jsontag) = "has_more"];
repeated LikeSv list = 2 [(gogoproto.jsontag) = "list,omitempty"];
}
message IsLikeReq {
int64 mid = 1[(gogoproto.moretags)='form:"mid"'];
repeated int64 svids = 2[(gogoproto.moretags)='form:"svids"'];
}
message IsLikeReply {
repeated int64 list = 1[(gogoproto.jsontag) = "has_more,omitempty"];
}
////////////////////////////////User Service/////////////////////////////////
service User {
rpc Login (UserBase) returns (UserBase);
rpc PhoneCheck (PhoneCheckReq) returns (PhoneCheckReply);
rpc UserEdit (UserBase) returns (.google.protobuf.Empty);
rpc ListUserInfo (ListUserInfoReq) returns (ListUserInfoReply);
/////////////like/////////////
rpc AddLike (LikeReq) returns (LikeReply);
rpc CancelLike (LikeReq) returns (LikeReply);
rpc ListUserLike(ListUserLikeReq) returns (ListUserLikeReply);
rpc IsLike(IsLikeReq) returns (IsLikeReply);
////////////Relation///////////
rpc ModifyRelation (ModifyRelationReq) returns (ModifyRelationReply);
// 返回UserInfo的列表分页
rpc ListFollowUserInfo (ListRelationUserInfoReq) returns (ListUserInfoReply);
rpc ListFanUserInfo (ListRelationUserInfoReq) returns (ListUserInfoReply);
rpc ListBlackUserInfo (ListRelationUserInfoReq) returns (ListUserInfoReply);
// 仅仅返回全部mid列表不包含UserInfo
rpc ListFollow (ListRelationReq) returns (ListRelationReply);
rpc ListBlack (ListRelationReq) returns (ListRelationReply);
}
////////////////////////////////UserInfo/////////////////////////////////
message UserBase {
int64 mid = 1 [(gogoproto.jsontag) = "mid", (gogoproto.moretags)='form:"mid"'];
string uname = 2 [(gogoproto.jsontag) = "uname", (gogoproto.moretags)='form:"uname"'];
string face = 3 [(gogoproto.jsontag) = "face", (gogoproto.moretags)='form:"face"'];
string birthday = 4 [(gogoproto.jsontag) = "birthday", (gogoproto.moretags)='form:"birthday"'];
int64 exp = 5 [(gogoproto.moretags)='form:"exp"'];
int64 level = 6 [(gogoproto.moretags)='form:"level"'];
int64 ctime = 7 [(gogoproto.casttype) = "go-common/library/time.Time"];
int64 mtime = 8 [(gogoproto.casttype) = "go-common/library/time.Time"];
int32 sex = 9 [(gogoproto.jsontag) = "sex", (gogoproto.moretags)='form:"sex"', (gogoproto.casttype) = "int8"];
int64 region = 10[(gogoproto.jsontag) = "region", (gogoproto.moretags)='form:"region"'];
string signature = 11[(gogoproto.jsontag) = "signature", (gogoproto.moretags)='form:"signature"'];
int32 user_type = 12[(gogoproto.jsontag) = "user_type", (gogoproto.casttype) = "int8"];
int32 complete_degree = 13[(gogoproto.jsontag) = "complete_degree", (gogoproto.casttype) = "int8"];
int32 new_tag = 14[(gogoproto.jsontag) = "new_tag", (gogoproto.moretags)='form:"new_tag"', (gogoproto.casttype) = "int8"]; // 是否是新注册用户
string region_name = 21 [(gogoproto.jsontag) = "region_name"];
repeated string user_desc = 22 [(gogoproto.jsontag) = "user_desc,omitempty"];
string face_uptime = 23 [(gogoproto.jsontag) = "face_uptime", (gogoproto.moretags)='form:"uptime"'];
}
message UserStat {
int64 sv = 1 [(gogoproto.jsontag) = "sv"];
int64 like = 2 [(gogoproto.jsontag) = "like"];
int64 liked = 3 [(gogoproto.jsontag) = "liked"];
int64 follow = 4 [(gogoproto.jsontag) = "follow"];
int64 fan = 5 [(gogoproto.jsontag) = "fan"];
int64 black = 6 [(gogoproto.jsontag) = "black"];
int64 view = 7 [(gogoproto.jsontag) = "view"];
}
message UserInfo {
UserBase user_base = 1 [(gogoproto.jsontag) = "user_base,omitempty"];
UserStat user_stat = 2 [(gogoproto.jsontag) = "user_stat,omitempty"];
int32 follow_state = 3 [(gogoproto.jsontag) = "follow_state", (gogoproto.casttype) = "int8"];
string cursor_value = 4 [(gogoproto.jsontag) = "cursor_value"];
}
message LocationItem {
int32 id = 1[(gogoproto.jsontag) = "id"];
int32 pid = 2[(gogoproto.jsontag) = "pid"];
string name = 3[(gogoproto.jsontag) = "name"];
repeated LocationItem child = 4[(gogoproto.jsontag) = "child,omitempty"];
}
message UserVideoView {
int64 mid = 1 [(gogoproto.moretags)='form:"mid"'];
int64 views = 2 [(gogoproto.moretags)='form:"views"'];
}
//message LocationAllReq {
// int64 version = 1[(gogoproto.moretags)='form:"version"'];
//}
//
//message LocationAllReply {
// bool need_update = 1[(gogoproto.jsontag) = "need_update"];
// repeated LocationItem list = 2 [(gogoproto.jsontag) = "list,omitempty"];
//}
//
//service Location {
// rpc LocationAll(LocationAllReq) returns (LocationAllReply);
//}

View File

@@ -0,0 +1,33 @@
package api
// int的action
const (
FollowAdd int32 = 1
FollowCancel int32 = 2
BlackAdd int32 = 3
BlackCancel int32 = 4
)
// relation list type
const (
Follow int32 = 1
Fan int32 = 2
Black int32 = 4
)
//ForbidRequest ..
type ForbidRequest struct {
MID uint64 `json:"mid" form:"mid" validate:"required,gt=0"`
ExpireTime uint64 `json:"expire_time" form:"expire_time" validate:"required,gt=0"`
}
//ReleaseRequest ..
type ReleaseRequest struct {
MID uint64 `json:"mid" form:"mid" validate:"required,gt=0"`
}
// CmsTagRequest 修改cms_tag的请求
type CmsTagRequest struct {
Mid int64 `json:"mid" form:"mid" validate:"required"`
CmsTag int64 `json:"cms_tag" form:"cms_tag"`
}