diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..4001eae
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,38 @@
+.gitignore
+.idea
+.scannerwork
+.vscode
+# local env files
+.env.local
+.env.*.local
+
+# Log files
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+
+# Editor directories and files
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.sw?
+
+*.iml
+# Binaries for programs and plugins
+*.exe
+*.exe~
+*.dll
+*.so
+*.dylib
+
+# Test binary, built with `go test -c`
+*.test
+
+# Output of the go coverage tool, specifically when used with LiteIDE
+*.out
+
+
+/cmd/logs/*.log
+/cmd/runtime/log/*.log
+/build/*
\ No newline at end of file
diff --git a/.idea/.gitignore b/.idea/.gitignore
deleted file mode 100644
index 35410ca..0000000
--- a/.idea/.gitignore
+++ /dev/null
@@ -1,8 +0,0 @@
-# 默认忽略的文件
-/shelf/
-/workspace.xml
-# 基于编辑器的 HTTP 客户端请求
-/httpRequests/
-# Datasource local storage ignored files
-/dataSources/
-/dataSources.local.xml
diff --git a/.idea/AugmentWebviewStateStore.xml b/.idea/AugmentWebviewStateStore.xml
deleted file mode 100644
index 5b1d7f4..0000000
--- a/.idea/AugmentWebviewStateStore.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/fonchain-fiee.iml b/.idea/fonchain-fiee.iml
deleted file mode 100644
index 5e764c4..0000000
--- a/.idea/fonchain-fiee.iml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/git_toolbox_blame.xml b/.idea/git_toolbox_blame.xml
deleted file mode 100644
index 7dc1249..0000000
--- a/.idea/git_toolbox_blame.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
deleted file mode 100644
index 014788e..0000000
--- a/.idea/modules.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
deleted file mode 100644
index 35eb1dd..0000000
--- a/.idea/vcs.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/api/cast/cast.pb.go b/api/cast/cast.pb.go
new file mode 100644
index 0000000..fc83a5a
--- /dev/null
+++ b/api/cast/cast.pb.go
@@ -0,0 +1,1469 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.35.2
+// protoc v3.21.1
+// source: pb/fiee/cast.proto
+
+package cast
+
+import (
+ _ "github.com/envoyproxy/protoc-gen-validate/validate"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ _ "google.golang.org/protobuf/types/descriptorpb"
+ emptypb "google.golang.org/protobuf/types/known/emptypb"
+ _ "google.golang.org/protobuf/types/known/wrapperspb"
+ reflect "reflect"
+ sync "sync"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+type PlatformIDENUM int32
+
+const (
+ PlatformIDENUM_UNKNOWN PlatformIDENUM = 0
+ PlatformIDENUM_TIKTOK PlatformIDENUM = 1
+ PlatformIDENUM_YOUTUBE PlatformIDENUM = 2
+ PlatformIDENUM_INS PlatformIDENUM = 3
+)
+
+// Enum value maps for PlatformIDENUM.
+var (
+ PlatformIDENUM_name = map[int32]string{
+ 0: "UNKNOWN",
+ 1: "TIKTOK",
+ 2: "YOUTUBE",
+ 3: "INS",
+ }
+ PlatformIDENUM_value = map[string]int32{
+ "UNKNOWN": 0,
+ "TIKTOK": 1,
+ "YOUTUBE": 2,
+ "INS": 3,
+ }
+)
+
+func (x PlatformIDENUM) Enum() *PlatformIDENUM {
+ p := new(PlatformIDENUM)
+ *p = x
+ return p
+}
+
+func (x PlatformIDENUM) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (PlatformIDENUM) Descriptor() protoreflect.EnumDescriptor {
+ return file_pb_fiee_cast_proto_enumTypes[0].Descriptor()
+}
+
+func (PlatformIDENUM) Type() protoreflect.EnumType {
+ return &file_pb_fiee_cast_proto_enumTypes[0]
+}
+
+func (x PlatformIDENUM) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use PlatformIDENUM.Descriptor instead.
+func (PlatformIDENUM) EnumDescriptor() ([]byte, []int) {
+ return file_pb_fiee_cast_proto_rawDescGZIP(), []int{0}
+}
+
+type MediaUserListReq struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"`
+ ManagerVal string `protobuf:"bytes,2,opt,name=managerVal,proto3" json:"managerVal"`
+ PlatformUserName string `protobuf:"bytes,3,opt,name=platformUserName,proto3" json:"platformUserName"`
+ PlatformID PlatformIDENUM `protobuf:"varint,4,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"`
+ Page int32 `protobuf:"varint,5,opt,name=page,proto3" json:"page"`
+ PageSize int32 `protobuf:"varint,6,opt,name=pageSize,proto3" json:"pageSize"`
+}
+
+func (x *MediaUserListReq) Reset() {
+ *x = MediaUserListReq{}
+ mi := &file_pb_fiee_cast_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *MediaUserListReq) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MediaUserListReq) ProtoMessage() {}
+
+func (x *MediaUserListReq) ProtoReflect() protoreflect.Message {
+ mi := &file_pb_fiee_cast_proto_msgTypes[0]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use MediaUserListReq.ProtoReflect.Descriptor instead.
+func (*MediaUserListReq) Descriptor() ([]byte, []int) {
+ return file_pb_fiee_cast_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *MediaUserListReq) GetArtistVal() string {
+ if x != nil {
+ return x.ArtistVal
+ }
+ return ""
+}
+
+func (x *MediaUserListReq) GetManagerVal() string {
+ if x != nil {
+ return x.ManagerVal
+ }
+ return ""
+}
+
+func (x *MediaUserListReq) GetPlatformUserName() string {
+ if x != nil {
+ return x.PlatformUserName
+ }
+ return ""
+}
+
+func (x *MediaUserListReq) GetPlatformID() PlatformIDENUM {
+ if x != nil {
+ return x.PlatformID
+ }
+ return PlatformIDENUM_UNKNOWN
+}
+
+func (x *MediaUserListReq) GetPage() int32 {
+ if x != nil {
+ return x.Page
+ }
+ return 0
+}
+
+func (x *MediaUserListReq) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+type MediaUserListResp struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Data []*MediaUserListResp_Info `protobuf:"bytes,1,rep,name=data,proto3" json:"data"`
+ Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"`
+}
+
+func (x *MediaUserListResp) Reset() {
+ *x = MediaUserListResp{}
+ mi := &file_pb_fiee_cast_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *MediaUserListResp) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MediaUserListResp) ProtoMessage() {}
+
+func (x *MediaUserListResp) ProtoReflect() protoreflect.Message {
+ mi := &file_pb_fiee_cast_proto_msgTypes[1]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use MediaUserListResp.ProtoReflect.Descriptor instead.
+func (*MediaUserListResp) Descriptor() ([]byte, []int) {
+ return file_pb_fiee_cast_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *MediaUserListResp) GetData() []*MediaUserListResp_Info {
+ if x != nil {
+ return x.Data
+ }
+ return nil
+}
+
+func (x *MediaUserListResp) GetCount() int64 {
+ if x != nil {
+ return x.Count
+ }
+ return 0
+}
+
+type UpdateMediaAccountReq struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ PlatformID PlatformIDENUM `protobuf:"varint,1,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"`
+ PlatformUserName string `protobuf:"bytes,2,opt,name=platformUserName,proto3" json:"platformUserName"`
+ PlatformUserID string `protobuf:"bytes,3,opt,name=platformUserID,proto3" json:"platformUserID"`
+ ArtistUuid string `protobuf:"bytes,4,opt,name=artistUuid,proto3" json:"artistUuid"`
+ ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"`
+ ArtistPhone string `protobuf:"bytes,6,opt,name=artistPhone,proto3" json:"artistPhone"`
+ MediaAccountUuid string `protobuf:"bytes,7,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"`
+ ManagerUuid string `protobuf:"bytes,8,opt,name=managerUuid,proto3" json:"managerUuid"`
+ ManagerUserName string `protobuf:"bytes,9,opt,name=managerUserName,proto3" json:"managerUserName"`
+}
+
+func (x *UpdateMediaAccountReq) Reset() {
+ *x = UpdateMediaAccountReq{}
+ mi := &file_pb_fiee_cast_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *UpdateMediaAccountReq) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateMediaAccountReq) ProtoMessage() {}
+
+func (x *UpdateMediaAccountReq) ProtoReflect() protoreflect.Message {
+ mi := &file_pb_fiee_cast_proto_msgTypes[2]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateMediaAccountReq.ProtoReflect.Descriptor instead.
+func (*UpdateMediaAccountReq) Descriptor() ([]byte, []int) {
+ return file_pb_fiee_cast_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *UpdateMediaAccountReq) GetPlatformID() PlatformIDENUM {
+ if x != nil {
+ return x.PlatformID
+ }
+ return PlatformIDENUM_UNKNOWN
+}
+
+func (x *UpdateMediaAccountReq) GetPlatformUserName() string {
+ if x != nil {
+ return x.PlatformUserName
+ }
+ return ""
+}
+
+func (x *UpdateMediaAccountReq) GetPlatformUserID() string {
+ if x != nil {
+ return x.PlatformUserID
+ }
+ return ""
+}
+
+func (x *UpdateMediaAccountReq) GetArtistUuid() string {
+ if x != nil {
+ return x.ArtistUuid
+ }
+ return ""
+}
+
+func (x *UpdateMediaAccountReq) GetArtistName() string {
+ if x != nil {
+ return x.ArtistName
+ }
+ return ""
+}
+
+func (x *UpdateMediaAccountReq) GetArtistPhone() string {
+ if x != nil {
+ return x.ArtistPhone
+ }
+ return ""
+}
+
+func (x *UpdateMediaAccountReq) GetMediaAccountUuid() string {
+ if x != nil {
+ return x.MediaAccountUuid
+ }
+ return ""
+}
+
+func (x *UpdateMediaAccountReq) GetManagerUuid() string {
+ if x != nil {
+ return x.ManagerUuid
+ }
+ return ""
+}
+
+func (x *UpdateMediaAccountReq) GetManagerUserName() string {
+ if x != nil {
+ return x.ManagerUserName
+ }
+ return ""
+}
+
+type UpdateMediaAccountResp struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"`
+}
+
+func (x *UpdateMediaAccountResp) Reset() {
+ *x = UpdateMediaAccountResp{}
+ mi := &file_pb_fiee_cast_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *UpdateMediaAccountResp) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateMediaAccountResp) ProtoMessage() {}
+
+func (x *UpdateMediaAccountResp) ProtoReflect() protoreflect.Message {
+ mi := &file_pb_fiee_cast_proto_msgTypes[3]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateMediaAccountResp.ProtoReflect.Descriptor instead.
+func (*UpdateMediaAccountResp) Descriptor() ([]byte, []int) {
+ return file_pb_fiee_cast_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *UpdateMediaAccountResp) GetMediaAccountUuid() string {
+ if x != nil {
+ return x.MediaAccountUuid
+ }
+ return ""
+}
+
+// UnbindManager
+type UnbindManagerReq struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"`
+}
+
+func (x *UnbindManagerReq) Reset() {
+ *x = UnbindManagerReq{}
+ mi := &file_pb_fiee_cast_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *UnbindManagerReq) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UnbindManagerReq) ProtoMessage() {}
+
+func (x *UnbindManagerReq) ProtoReflect() protoreflect.Message {
+ mi := &file_pb_fiee_cast_proto_msgTypes[4]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UnbindManagerReq.ProtoReflect.Descriptor instead.
+func (*UnbindManagerReq) Descriptor() ([]byte, []int) {
+ return file_pb_fiee_cast_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *UnbindManagerReq) GetMediaAccountUuid() string {
+ if x != nil {
+ return x.MediaAccountUuid
+ }
+ return ""
+}
+
+type BindManagerReq struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"`
+ ManagerUuid string `protobuf:"bytes,2,opt,name=managerUuid,proto3" json:"managerUuid"`
+ ManagerUserName string `protobuf:"bytes,3,opt,name=managerUserName,proto3" json:"managerUserName"`
+}
+
+func (x *BindManagerReq) Reset() {
+ *x = BindManagerReq{}
+ mi := &file_pb_fiee_cast_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *BindManagerReq) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BindManagerReq) ProtoMessage() {}
+
+func (x *BindManagerReq) ProtoReflect() protoreflect.Message {
+ mi := &file_pb_fiee_cast_proto_msgTypes[5]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BindManagerReq.ProtoReflect.Descriptor instead.
+func (*BindManagerReq) Descriptor() ([]byte, []int) {
+ return file_pb_fiee_cast_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *BindManagerReq) GetMediaAccountUuid() string {
+ if x != nil {
+ return x.MediaAccountUuid
+ }
+ return ""
+}
+
+func (x *BindManagerReq) GetManagerUuid() string {
+ if x != nil {
+ return x.ManagerUuid
+ }
+ return ""
+}
+
+func (x *BindManagerReq) GetManagerUserName() string {
+ if x != nil {
+ return x.ManagerUserName
+ }
+ return ""
+}
+
+// UpdateWorkImage
+type UpdateWorkImageReq struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"`
+ Content string `protobuf:"bytes,2,opt,name=content,proto3" json:"content"`
+ Images []string `protobuf:"bytes,3,rep,name=images,proto3" json:"images"`
+ MediaAccountUuids []string `protobuf:"bytes,4,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"`
+ MediaAccountNames []string `protobuf:"bytes,5,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"`
+ PlatformIDs []uint32 `protobuf:"varint,6,rep,packed,name=platformIDs,proto3" json:"platformIDs"`
+ ForbidComment uint32 `protobuf:"varint,7,opt,name=forbidComment,proto3" json:"forbidComment"`
+ Action string `protobuf:"bytes,8,opt,name=action,proto3" json:"action"`
+ WorkUuid string `protobuf:"bytes,9,opt,name=workUuid,proto3" json:"workUuid"`
+ ArtistUuid string `protobuf:"bytes,10,opt,name=artistUuid,proto3" json:"artistUuid"`
+ ArtistPhone string `protobuf:"bytes,11,opt,name=artistPhone,proto3" json:"artistPhone"`
+}
+
+func (x *UpdateWorkImageReq) Reset() {
+ *x = UpdateWorkImageReq{}
+ mi := &file_pb_fiee_cast_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *UpdateWorkImageReq) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateWorkImageReq) ProtoMessage() {}
+
+func (x *UpdateWorkImageReq) ProtoReflect() protoreflect.Message {
+ mi := &file_pb_fiee_cast_proto_msgTypes[6]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateWorkImageReq.ProtoReflect.Descriptor instead.
+func (*UpdateWorkImageReq) Descriptor() ([]byte, []int) {
+ return file_pb_fiee_cast_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *UpdateWorkImageReq) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *UpdateWorkImageReq) GetContent() string {
+ if x != nil {
+ return x.Content
+ }
+ return ""
+}
+
+func (x *UpdateWorkImageReq) GetImages() []string {
+ if x != nil {
+ return x.Images
+ }
+ return nil
+}
+
+func (x *UpdateWorkImageReq) GetMediaAccountUuids() []string {
+ if x != nil {
+ return x.MediaAccountUuids
+ }
+ return nil
+}
+
+func (x *UpdateWorkImageReq) GetMediaAccountNames() []string {
+ if x != nil {
+ return x.MediaAccountNames
+ }
+ return nil
+}
+
+func (x *UpdateWorkImageReq) GetPlatformIDs() []uint32 {
+ if x != nil {
+ return x.PlatformIDs
+ }
+ return nil
+}
+
+func (x *UpdateWorkImageReq) GetForbidComment() uint32 {
+ if x != nil {
+ return x.ForbidComment
+ }
+ return 0
+}
+
+func (x *UpdateWorkImageReq) GetAction() string {
+ if x != nil {
+ return x.Action
+ }
+ return ""
+}
+
+func (x *UpdateWorkImageReq) GetWorkUuid() string {
+ if x != nil {
+ return x.WorkUuid
+ }
+ return ""
+}
+
+func (x *UpdateWorkImageReq) GetArtistUuid() string {
+ if x != nil {
+ return x.ArtistUuid
+ }
+ return ""
+}
+
+func (x *UpdateWorkImageReq) GetArtistPhone() string {
+ if x != nil {
+ return x.ArtistPhone
+ }
+ return ""
+}
+
+type UpdateWorkImageResp struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"`
+}
+
+func (x *UpdateWorkImageResp) Reset() {
+ *x = UpdateWorkImageResp{}
+ mi := &file_pb_fiee_cast_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *UpdateWorkImageResp) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateWorkImageResp) ProtoMessage() {}
+
+func (x *UpdateWorkImageResp) ProtoReflect() protoreflect.Message {
+ mi := &file_pb_fiee_cast_proto_msgTypes[7]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateWorkImageResp.ProtoReflect.Descriptor instead.
+func (*UpdateWorkImageResp) Descriptor() ([]byte, []int) {
+ return file_pb_fiee_cast_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *UpdateWorkImageResp) GetWorkUuid() string {
+ if x != nil {
+ return x.WorkUuid
+ }
+ return ""
+}
+
+// UpdateWorkVideo
+type UpdateWorkVideoReq struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"`
+ Content string `protobuf:"bytes,2,opt,name=content,proto3" json:"content"`
+ VideoUrl string `protobuf:"bytes,3,opt,name=videoUrl,proto3" json:"videoUrl"`
+ CoverUrl string `protobuf:"bytes,4,opt,name=coverUrl,proto3" json:"coverUrl"`
+ MediaAccountUuids []string `protobuf:"bytes,5,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"`
+ MediaAccountNames []string `protobuf:"bytes,6,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"`
+ PlatformIDs []uint32 `protobuf:"varint,7,rep,packed,name=platformIDs,proto3" json:"platformIDs"`
+ PublicConfig uint32 `protobuf:"varint,8,opt,name=publicConfig,proto3" json:"publicConfig"`
+ Action string `protobuf:"bytes,9,opt,name=action,proto3" json:"action"`
+ WorkUuid string `protobuf:"bytes,10,opt,name=workUuid,proto3" json:"workUuid"`
+ ArtistUuid string `protobuf:"bytes,11,opt,name=artistUuid,proto3" json:"artistUuid"`
+ ArtistPhone string `protobuf:"bytes,12,opt,name=artistPhone,proto3" json:"artistPhone"`
+}
+
+func (x *UpdateWorkVideoReq) Reset() {
+ *x = UpdateWorkVideoReq{}
+ mi := &file_pb_fiee_cast_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *UpdateWorkVideoReq) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateWorkVideoReq) ProtoMessage() {}
+
+func (x *UpdateWorkVideoReq) ProtoReflect() protoreflect.Message {
+ mi := &file_pb_fiee_cast_proto_msgTypes[8]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateWorkVideoReq.ProtoReflect.Descriptor instead.
+func (*UpdateWorkVideoReq) Descriptor() ([]byte, []int) {
+ return file_pb_fiee_cast_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *UpdateWorkVideoReq) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *UpdateWorkVideoReq) GetContent() string {
+ if x != nil {
+ return x.Content
+ }
+ return ""
+}
+
+func (x *UpdateWorkVideoReq) GetVideoUrl() string {
+ if x != nil {
+ return x.VideoUrl
+ }
+ return ""
+}
+
+func (x *UpdateWorkVideoReq) GetCoverUrl() string {
+ if x != nil {
+ return x.CoverUrl
+ }
+ return ""
+}
+
+func (x *UpdateWorkVideoReq) GetMediaAccountUuids() []string {
+ if x != nil {
+ return x.MediaAccountUuids
+ }
+ return nil
+}
+
+func (x *UpdateWorkVideoReq) GetMediaAccountNames() []string {
+ if x != nil {
+ return x.MediaAccountNames
+ }
+ return nil
+}
+
+func (x *UpdateWorkVideoReq) GetPlatformIDs() []uint32 {
+ if x != nil {
+ return x.PlatformIDs
+ }
+ return nil
+}
+
+func (x *UpdateWorkVideoReq) GetPublicConfig() uint32 {
+ if x != nil {
+ return x.PublicConfig
+ }
+ return 0
+}
+
+func (x *UpdateWorkVideoReq) GetAction() string {
+ if x != nil {
+ return x.Action
+ }
+ return ""
+}
+
+func (x *UpdateWorkVideoReq) GetWorkUuid() string {
+ if x != nil {
+ return x.WorkUuid
+ }
+ return ""
+}
+
+func (x *UpdateWorkVideoReq) GetArtistUuid() string {
+ if x != nil {
+ return x.ArtistUuid
+ }
+ return ""
+}
+
+func (x *UpdateWorkVideoReq) GetArtistPhone() string {
+ if x != nil {
+ return x.ArtistPhone
+ }
+ return ""
+}
+
+type UpdateWorkVideoResp struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"`
+}
+
+func (x *UpdateWorkVideoResp) Reset() {
+ *x = UpdateWorkVideoResp{}
+ mi := &file_pb_fiee_cast_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *UpdateWorkVideoResp) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateWorkVideoResp) ProtoMessage() {}
+
+func (x *UpdateWorkVideoResp) ProtoReflect() protoreflect.Message {
+ mi := &file_pb_fiee_cast_proto_msgTypes[9]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateWorkVideoResp.ProtoReflect.Descriptor instead.
+func (*UpdateWorkVideoResp) Descriptor() ([]byte, []int) {
+ return file_pb_fiee_cast_proto_rawDescGZIP(), []int{9}
+}
+
+func (x *UpdateWorkVideoResp) GetWorkUuid() string {
+ if x != nil {
+ return x.WorkUuid
+ }
+ return ""
+}
+
+type WorkListReq struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"`
+ PlatformID uint32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"`
+ Page int32 `protobuf:"varint,4,opt,name=page,proto3" json:"page"`
+ PageSize int32 `protobuf:"varint,5,opt,name=pageSize,proto3" json:"pageSize"`
+}
+
+func (x *WorkListReq) Reset() {
+ *x = WorkListReq{}
+ mi := &file_pb_fiee_cast_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *WorkListReq) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*WorkListReq) ProtoMessage() {}
+
+func (x *WorkListReq) ProtoReflect() protoreflect.Message {
+ mi := &file_pb_fiee_cast_proto_msgTypes[10]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use WorkListReq.ProtoReflect.Descriptor instead.
+func (*WorkListReq) Descriptor() ([]byte, []int) {
+ return file_pb_fiee_cast_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *WorkListReq) GetArtistVal() string {
+ if x != nil {
+ return x.ArtistVal
+ }
+ return ""
+}
+
+func (x *WorkListReq) GetPlatformID() uint32 {
+ if x != nil {
+ return x.PlatformID
+ }
+ return 0
+}
+
+func (x *WorkListReq) GetPage() int32 {
+ if x != nil {
+ return x.Page
+ }
+ return 0
+}
+
+func (x *WorkListReq) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+type WorkListResp struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Data []*WorkListResp_Info `protobuf:"bytes,1,rep,name=data,proto3" json:"data"`
+ Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"`
+}
+
+func (x *WorkListResp) Reset() {
+ *x = WorkListResp{}
+ mi := &file_pb_fiee_cast_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *WorkListResp) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*WorkListResp) ProtoMessage() {}
+
+func (x *WorkListResp) ProtoReflect() protoreflect.Message {
+ mi := &file_pb_fiee_cast_proto_msgTypes[11]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use WorkListResp.ProtoReflect.Descriptor instead.
+func (*WorkListResp) Descriptor() ([]byte, []int) {
+ return file_pb_fiee_cast_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *WorkListResp) GetData() []*WorkListResp_Info {
+ if x != nil {
+ return x.Data
+ }
+ return nil
+}
+
+func (x *WorkListResp) GetCount() int64 {
+ if x != nil {
+ return x.Count
+ }
+ return 0
+}
+
+type MediaUserListResp_Info struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ PlatformUserName string `protobuf:"bytes,1,opt,name=platformUserName,proto3" json:"platformUserName"`
+ PlatformID uint32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"`
+ ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"`
+ ArtistPhone string `protobuf:"bytes,4,opt,name=artistPhone,proto3" json:"artistPhone"`
+ ManagerUserName string `protobuf:"bytes,5,opt,name=managerUserName,proto3" json:"managerUserName"`
+ ManagerUuid string `protobuf:"bytes,6,opt,name=managerUuid,proto3" json:"managerUuid"`
+ MediaAccountUuid string `protobuf:"bytes,7,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"`
+}
+
+func (x *MediaUserListResp_Info) Reset() {
+ *x = MediaUserListResp_Info{}
+ mi := &file_pb_fiee_cast_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *MediaUserListResp_Info) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MediaUserListResp_Info) ProtoMessage() {}
+
+func (x *MediaUserListResp_Info) ProtoReflect() protoreflect.Message {
+ mi := &file_pb_fiee_cast_proto_msgTypes[12]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use MediaUserListResp_Info.ProtoReflect.Descriptor instead.
+func (*MediaUserListResp_Info) Descriptor() ([]byte, []int) {
+ return file_pb_fiee_cast_proto_rawDescGZIP(), []int{1, 0}
+}
+
+func (x *MediaUserListResp_Info) GetPlatformUserName() string {
+ if x != nil {
+ return x.PlatformUserName
+ }
+ return ""
+}
+
+func (x *MediaUserListResp_Info) GetPlatformID() uint32 {
+ if x != nil {
+ return x.PlatformID
+ }
+ return 0
+}
+
+func (x *MediaUserListResp_Info) GetArtistName() string {
+ if x != nil {
+ return x.ArtistName
+ }
+ return ""
+}
+
+func (x *MediaUserListResp_Info) GetArtistPhone() string {
+ if x != nil {
+ return x.ArtistPhone
+ }
+ return ""
+}
+
+func (x *MediaUserListResp_Info) GetManagerUserName() string {
+ if x != nil {
+ return x.ManagerUserName
+ }
+ return ""
+}
+
+func (x *MediaUserListResp_Info) GetManagerUuid() string {
+ if x != nil {
+ return x.ManagerUuid
+ }
+ return ""
+}
+
+func (x *MediaUserListResp_Info) GetMediaAccountUuid() string {
+ if x != nil {
+ return x.MediaAccountUuid
+ }
+ return ""
+}
+
+type WorkListResp_Info struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"`
+ Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"`
+ Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"`
+ WorkCategory string `protobuf:"bytes,4,opt,name=workCategory,proto3" json:"workCategory"`
+ WorkUrl string `protobuf:"bytes,5,opt,name=workUrl,proto3" json:"workUrl"`
+ WorkCover string `protobuf:"bytes,6,opt,name=workCover,proto3" json:"workCover"`
+ WorkStatus string `protobuf:"bytes,7,opt,name=workStatus,proto3" json:"workStatus"`
+ SubmitTime string `protobuf:"bytes,8,opt,name=submitTime,proto3" json:"submitTime"`
+ StatusUpdateTime string `protobuf:"bytes,9,opt,name=statusUpdateTime,proto3" json:"statusUpdateTime"`
+ ArtistName string `protobuf:"bytes,10,opt,name=artistName,proto3" json:"artistName"`
+ ArtistPhone string `protobuf:"bytes,11,opt,name=artistPhone,proto3" json:"artistPhone"`
+}
+
+func (x *WorkListResp_Info) Reset() {
+ *x = WorkListResp_Info{}
+ mi := &file_pb_fiee_cast_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *WorkListResp_Info) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*WorkListResp_Info) ProtoMessage() {}
+
+func (x *WorkListResp_Info) ProtoReflect() protoreflect.Message {
+ mi := &file_pb_fiee_cast_proto_msgTypes[13]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use WorkListResp_Info.ProtoReflect.Descriptor instead.
+func (*WorkListResp_Info) Descriptor() ([]byte, []int) {
+ return file_pb_fiee_cast_proto_rawDescGZIP(), []int{11, 0}
+}
+
+func (x *WorkListResp_Info) GetWorkUuid() string {
+ if x != nil {
+ return x.WorkUuid
+ }
+ return ""
+}
+
+func (x *WorkListResp_Info) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *WorkListResp_Info) GetContent() string {
+ if x != nil {
+ return x.Content
+ }
+ return ""
+}
+
+func (x *WorkListResp_Info) GetWorkCategory() string {
+ if x != nil {
+ return x.WorkCategory
+ }
+ return ""
+}
+
+func (x *WorkListResp_Info) GetWorkUrl() string {
+ if x != nil {
+ return x.WorkUrl
+ }
+ return ""
+}
+
+func (x *WorkListResp_Info) GetWorkCover() string {
+ if x != nil {
+ return x.WorkCover
+ }
+ return ""
+}
+
+func (x *WorkListResp_Info) GetWorkStatus() string {
+ if x != nil {
+ return x.WorkStatus
+ }
+ return ""
+}
+
+func (x *WorkListResp_Info) GetSubmitTime() string {
+ if x != nil {
+ return x.SubmitTime
+ }
+ return ""
+}
+
+func (x *WorkListResp_Info) GetStatusUpdateTime() string {
+ if x != nil {
+ return x.StatusUpdateTime
+ }
+ return ""
+}
+
+func (x *WorkListResp_Info) GetArtistName() string {
+ if x != nil {
+ return x.ArtistName
+ }
+ return ""
+}
+
+func (x *WorkListResp_Info) GetArtistPhone() string {
+ if x != nil {
+ return x.ArtistPhone
+ }
+ return ""
+}
+
+var File_pb_fiee_cast_proto protoreflect.FileDescriptor
+
+var file_pb_fiee_cast_proto_rawDesc = []byte{
+ 0x0a, 0x12, 0x70, 0x62, 0x2f, 0x66, 0x69, 0x65, 0x65, 0x2f, 0x63, 0x61, 0x73, 0x74, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x43, 0x61, 0x73, 0x74, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70,
+ 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x65, 0x73, 0x63,
+ 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d,
+ 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f,
+ 0x6e, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x22, 0xe2, 0x01, 0x0a, 0x10, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69,
+ 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56,
+ 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74,
+ 0x56, 0x61, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x56, 0x61,
+ 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72,
+ 0x56, 0x61, 0x6c, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55,
+ 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70,
+ 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12,
+ 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x04, 0x20,
+ 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66,
+ 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66,
+ 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20,
+ 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67,
+ 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67,
+ 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0xea, 0x02, 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55,
+ 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x04, 0x64,
+ 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74,
+ 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65,
+ 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a,
+ 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f,
+ 0x75, 0x6e, 0x74, 0x1a, 0x8c, 0x02, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2a, 0x0a, 0x10,
+ 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
+ 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74,
+ 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c,
+ 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69,
+ 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72,
+ 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69,
+ 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61,
+ 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x61,
+ 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72,
+ 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55,
+ 0x75, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67,
+ 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41,
+ 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75,
+ 0x69, 0x64, 0x22, 0xfb, 0x02, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x64,
+ 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x12, 0x34, 0x0a, 0x0a,
+ 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
+ 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
+ 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
+ 0x49, 0x44, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73,
+ 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c,
+ 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26,
+ 0x0a, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
+ 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74,
+ 0x55, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69,
+ 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74,
+ 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69,
+ 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74,
+ 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74,
+ 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69,
+ 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
+ 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55,
+ 0x75, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67,
+ 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65,
+ 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65,
+ 0x22, 0x44, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41,
+ 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65,
+ 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75,
+ 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x3e, 0x0a, 0x10, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64,
+ 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65,
+ 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75,
+ 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x88, 0x01, 0x0a, 0x0e, 0x42, 0x69, 0x6e, 0x64, 0x4d,
+ 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64,
+ 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e,
+ 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72,
+ 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x6e, 0x61,
+ 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67,
+ 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d,
+ 0x65, 0x22, 0xf6, 0x02, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b,
+ 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c,
+ 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18,
+ 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6d, 0x61, 0x67,
+ 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73,
+ 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
+ 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64,
+ 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x2c,
+ 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61,
+ 0x6d, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61,
+ 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b,
+ 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28,
+ 0x0d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, 0x24,
+ 0x0a, 0x0d, 0x66, 0x6f, 0x72, 0x62, 0x69, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18,
+ 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x6f, 0x72, 0x62, 0x69, 0x64, 0x43, 0x6f, 0x6d,
+ 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08,
+ 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
+ 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69,
+ 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72,
+ 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69,
+ 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61,
+ 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x22, 0x31, 0x0a, 0x13, 0x55, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73,
+ 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x22, 0x94, 0x03,
+ 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65,
+ 0x6f, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e,
+ 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c,
+ 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x2c, 0x0a, 0x11,
+ 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64,
+ 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63,
+ 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65,
+ 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18,
+ 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f,
+ 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74,
+ 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x70,
+ 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x75,
+ 0x62, 0x6c, 0x69, 0x63, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d,
+ 0x52, 0x0c, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x16,
+ 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
+ 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75,
+ 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75,
+ 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64,
+ 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75,
+ 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e,
+ 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50,
+ 0x68, 0x6f, 0x6e, 0x65, 0x22, 0x31, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f,
+ 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x77,
+ 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77,
+ 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x22, 0x7b, 0x0a, 0x0b, 0x57, 0x6f, 0x72, 0x6b, 0x4c,
+ 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74,
+ 0x56, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73,
+ 0x74, 0x56, 0x61, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
+ 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
+ 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65,
+ 0x53, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65,
+ 0x53, 0x69, 0x7a, 0x65, 0x22, 0xb0, 0x03, 0x0a, 0x0c, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73,
+ 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x4c,
+ 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61,
+ 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0xdc, 0x02, 0x0a, 0x04, 0x49, 0x6e, 0x66,
+ 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a,
+ 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69,
+ 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x0a,
+ 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x04, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72,
+ 0x79, 0x12, 0x18, 0x0a, 0x07, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x07, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x72, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x77,
+ 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x76, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
+ 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x76, 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72,
+ 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x77,
+ 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62,
+ 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73,
+ 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e,
+ 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73,
+ 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50,
+ 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69,
+ 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x2a, 0x3f, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x74, 0x66,
+ 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b,
+ 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x54, 0x49, 0x4b, 0x54, 0x4f, 0x4b,
+ 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x59, 0x4f, 0x55, 0x54, 0x55, 0x42, 0x45, 0x10, 0x02, 0x12,
+ 0x07, 0x0a, 0x03, 0x49, 0x4e, 0x53, 0x10, 0x03, 0x32, 0xe8, 0x03, 0x0a, 0x04, 0x43, 0x61, 0x73,
+ 0x74, 0x12, 0x42, 0x0a, 0x0d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69,
+ 0x73, 0x74, 0x12, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55,
+ 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x43, 0x61, 0x73,
+ 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52,
+ 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d,
+ 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x2e, 0x43, 0x61,
+ 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63,
+ 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e,
+ 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75,
+ 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x41, 0x0a, 0x0d, 0x55, 0x6e, 0x62, 0x69,
+ 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x12, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74,
+ 0x2e, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65,
+ 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x3d, 0x0a, 0x0b, 0x42,
+ 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x12, 0x14, 0x2e, 0x43, 0x61, 0x73,
+ 0x74, 0x2e, 0x42, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71,
+ 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
+ 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0f, 0x55, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x18, 0x2e,
+ 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49,
+ 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65,
+ 0x73, 0x70, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f,
+ 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x12, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65,
+ 0x71, 0x1a, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57,
+ 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x33,
+ 0x0a, 0x08, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x11, 0x2e, 0x43, 0x61, 0x73,
+ 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e,
+ 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73,
+ 0x70, 0x22, 0x00, 0x42, 0x0d, 0x5a, 0x0b, 0x2e, 0x2f, 0x63, 0x61, 0x73, 0x74, 0x3b, 0x63, 0x61,
+ 0x73, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_pb_fiee_cast_proto_rawDescOnce sync.Once
+ file_pb_fiee_cast_proto_rawDescData = file_pb_fiee_cast_proto_rawDesc
+)
+
+func file_pb_fiee_cast_proto_rawDescGZIP() []byte {
+ file_pb_fiee_cast_proto_rawDescOnce.Do(func() {
+ file_pb_fiee_cast_proto_rawDescData = protoimpl.X.CompressGZIP(file_pb_fiee_cast_proto_rawDescData)
+ })
+ return file_pb_fiee_cast_proto_rawDescData
+}
+
+var file_pb_fiee_cast_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
+var file_pb_fiee_cast_proto_msgTypes = make([]protoimpl.MessageInfo, 14)
+var file_pb_fiee_cast_proto_goTypes = []any{
+ (PlatformIDENUM)(0), // 0: Cast.PlatformIDENUM
+ (*MediaUserListReq)(nil), // 1: Cast.MediaUserListReq
+ (*MediaUserListResp)(nil), // 2: Cast.MediaUserListResp
+ (*UpdateMediaAccountReq)(nil), // 3: Cast.UpdateMediaAccountReq
+ (*UpdateMediaAccountResp)(nil), // 4: Cast.UpdateMediaAccountResp
+ (*UnbindManagerReq)(nil), // 5: Cast.UnbindManagerReq
+ (*BindManagerReq)(nil), // 6: Cast.BindManagerReq
+ (*UpdateWorkImageReq)(nil), // 7: Cast.UpdateWorkImageReq
+ (*UpdateWorkImageResp)(nil), // 8: Cast.UpdateWorkImageResp
+ (*UpdateWorkVideoReq)(nil), // 9: Cast.UpdateWorkVideoReq
+ (*UpdateWorkVideoResp)(nil), // 10: Cast.UpdateWorkVideoResp
+ (*WorkListReq)(nil), // 11: Cast.WorkListReq
+ (*WorkListResp)(nil), // 12: Cast.WorkListResp
+ (*MediaUserListResp_Info)(nil), // 13: Cast.MediaUserListResp.Info
+ (*WorkListResp_Info)(nil), // 14: Cast.WorkListResp.Info
+ (*emptypb.Empty)(nil), // 15: google.protobuf.Empty
+}
+var file_pb_fiee_cast_proto_depIdxs = []int32{
+ 0, // 0: Cast.MediaUserListReq.platformID:type_name -> Cast.PlatformIDENUM
+ 13, // 1: Cast.MediaUserListResp.data:type_name -> Cast.MediaUserListResp.Info
+ 0, // 2: Cast.UpdateMediaAccountReq.platformID:type_name -> Cast.PlatformIDENUM
+ 14, // 3: Cast.WorkListResp.data:type_name -> Cast.WorkListResp.Info
+ 1, // 4: Cast.Cast.MediaUserList:input_type -> Cast.MediaUserListReq
+ 3, // 5: Cast.Cast.UpdateMediaAccount:input_type -> Cast.UpdateMediaAccountReq
+ 5, // 6: Cast.Cast.UnbindManager:input_type -> Cast.UnbindManagerReq
+ 6, // 7: Cast.Cast.BindManager:input_type -> Cast.BindManagerReq
+ 7, // 8: Cast.Cast.UpdateWorkImage:input_type -> Cast.UpdateWorkImageReq
+ 9, // 9: Cast.Cast.UpdateWorkVideo:input_type -> Cast.UpdateWorkVideoReq
+ 11, // 10: Cast.Cast.WorkList:input_type -> Cast.WorkListReq
+ 2, // 11: Cast.Cast.MediaUserList:output_type -> Cast.MediaUserListResp
+ 4, // 12: Cast.Cast.UpdateMediaAccount:output_type -> Cast.UpdateMediaAccountResp
+ 15, // 13: Cast.Cast.UnbindManager:output_type -> google.protobuf.Empty
+ 15, // 14: Cast.Cast.BindManager:output_type -> google.protobuf.Empty
+ 8, // 15: Cast.Cast.UpdateWorkImage:output_type -> Cast.UpdateWorkImageResp
+ 10, // 16: Cast.Cast.UpdateWorkVideo:output_type -> Cast.UpdateWorkVideoResp
+ 12, // 17: Cast.Cast.WorkList:output_type -> Cast.WorkListResp
+ 11, // [11:18] is the sub-list for method output_type
+ 4, // [4:11] is the sub-list for method input_type
+ 4, // [4:4] is the sub-list for extension type_name
+ 4, // [4:4] is the sub-list for extension extendee
+ 0, // [0:4] is the sub-list for field type_name
+}
+
+func init() { file_pb_fiee_cast_proto_init() }
+func file_pb_fiee_cast_proto_init() {
+ if File_pb_fiee_cast_proto != nil {
+ return
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_pb_fiee_cast_proto_rawDesc,
+ NumEnums: 1,
+ NumMessages: 14,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_pb_fiee_cast_proto_goTypes,
+ DependencyIndexes: file_pb_fiee_cast_proto_depIdxs,
+ EnumInfos: file_pb_fiee_cast_proto_enumTypes,
+ MessageInfos: file_pb_fiee_cast_proto_msgTypes,
+ }.Build()
+ File_pb_fiee_cast_proto = out.File
+ file_pb_fiee_cast_proto_rawDesc = nil
+ file_pb_fiee_cast_proto_goTypes = nil
+ file_pb_fiee_cast_proto_depIdxs = nil
+}
diff --git a/api/cast/cast.pb.validate.go b/api/cast/cast.pb.validate.go
new file mode 100644
index 0000000..ba31dd6
--- /dev/null
+++ b/api/cast/cast.pb.validate.go
@@ -0,0 +1,1644 @@
+// Code generated by protoc-gen-validate. DO NOT EDIT.
+// source: pb/fiee/cast.proto
+
+package cast
+
+import (
+ "bytes"
+ "errors"
+ "fmt"
+ "net"
+ "net/mail"
+ "net/url"
+ "regexp"
+ "sort"
+ "strings"
+ "time"
+ "unicode/utf8"
+
+ "google.golang.org/protobuf/types/known/anypb"
+)
+
+// ensure the imports are used
+var (
+ _ = bytes.MinRead
+ _ = errors.New("")
+ _ = fmt.Print
+ _ = utf8.UTFMax
+ _ = (*regexp.Regexp)(nil)
+ _ = (*strings.Reader)(nil)
+ _ = net.IPv4len
+ _ = time.Duration(0)
+ _ = (*url.URL)(nil)
+ _ = (*mail.Address)(nil)
+ _ = anypb.Any{}
+ _ = sort.Sort
+)
+
+// Validate checks the field values on MediaUserListReq with the rules defined
+// in the proto definition for this message. If any rules are violated, the
+// first error encountered is returned, or nil if there are no violations.
+func (m *MediaUserListReq) Validate() error {
+ return m.validate(false)
+}
+
+// ValidateAll checks the field values on MediaUserListReq with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the result is a list of violation errors wrapped in
+// MediaUserListReqMultiError, or nil if none found.
+func (m *MediaUserListReq) ValidateAll() error {
+ return m.validate(true)
+}
+
+func (m *MediaUserListReq) validate(all bool) error {
+ if m == nil {
+ return nil
+ }
+
+ var errors []error
+
+ // no validation rules for ArtistVal
+
+ // no validation rules for ManagerVal
+
+ // no validation rules for PlatformUserName
+
+ // no validation rules for PlatformID
+
+ // no validation rules for Page
+
+ // no validation rules for PageSize
+
+ if len(errors) > 0 {
+ return MediaUserListReqMultiError(errors)
+ }
+
+ return nil
+}
+
+// MediaUserListReqMultiError is an error wrapping multiple validation errors
+// returned by MediaUserListReq.ValidateAll() if the designated constraints
+// aren't met.
+type MediaUserListReqMultiError []error
+
+// Error returns a concatenation of all the error messages it wraps.
+func (m MediaUserListReqMultiError) Error() string {
+ var msgs []string
+ for _, err := range m {
+ msgs = append(msgs, err.Error())
+ }
+ return strings.Join(msgs, "; ")
+}
+
+// AllErrors returns a list of validation violation errors.
+func (m MediaUserListReqMultiError) AllErrors() []error { return m }
+
+// MediaUserListReqValidationError is the validation error returned by
+// MediaUserListReq.Validate if the designated constraints aren't met.
+type MediaUserListReqValidationError struct {
+ field string
+ reason string
+ cause error
+ key bool
+}
+
+// Field function returns field value.
+func (e MediaUserListReqValidationError) Field() string { return e.field }
+
+// Reason function returns reason value.
+func (e MediaUserListReqValidationError) Reason() string { return e.reason }
+
+// Cause function returns cause value.
+func (e MediaUserListReqValidationError) Cause() error { return e.cause }
+
+// Key function returns key value.
+func (e MediaUserListReqValidationError) Key() bool { return e.key }
+
+// ErrorName returns error name.
+func (e MediaUserListReqValidationError) ErrorName() string { return "MediaUserListReqValidationError" }
+
+// Error satisfies the builtin error interface
+func (e MediaUserListReqValidationError) Error() string {
+ cause := ""
+ if e.cause != nil {
+ cause = fmt.Sprintf(" | caused by: %v", e.cause)
+ }
+
+ key := ""
+ if e.key {
+ key = "key for "
+ }
+
+ return fmt.Sprintf(
+ "invalid %sMediaUserListReq.%s: %s%s",
+ key,
+ e.field,
+ e.reason,
+ cause)
+}
+
+var _ error = MediaUserListReqValidationError{}
+
+var _ interface {
+ Field() string
+ Reason() string
+ Key() bool
+ Cause() error
+ ErrorName() string
+} = MediaUserListReqValidationError{}
+
+// Validate checks the field values on MediaUserListResp with the rules defined
+// in the proto definition for this message. If any rules are violated, the
+// first error encountered is returned, or nil if there are no violations.
+func (m *MediaUserListResp) Validate() error {
+ return m.validate(false)
+}
+
+// ValidateAll checks the field values on MediaUserListResp with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the result is a list of violation errors wrapped in
+// MediaUserListRespMultiError, or nil if none found.
+func (m *MediaUserListResp) ValidateAll() error {
+ return m.validate(true)
+}
+
+func (m *MediaUserListResp) validate(all bool) error {
+ if m == nil {
+ return nil
+ }
+
+ var errors []error
+
+ for idx, item := range m.GetData() {
+ _, _ = idx, item
+
+ if all {
+ switch v := interface{}(item).(type) {
+ case interface{ ValidateAll() error }:
+ if err := v.ValidateAll(); err != nil {
+ errors = append(errors, MediaUserListRespValidationError{
+ field: fmt.Sprintf("Data[%v]", idx),
+ reason: "embedded message failed validation",
+ cause: err,
+ })
+ }
+ case interface{ Validate() error }:
+ if err := v.Validate(); err != nil {
+ errors = append(errors, MediaUserListRespValidationError{
+ field: fmt.Sprintf("Data[%v]", idx),
+ reason: "embedded message failed validation",
+ cause: err,
+ })
+ }
+ }
+ } else if v, ok := interface{}(item).(interface{ Validate() error }); ok {
+ if err := v.Validate(); err != nil {
+ return MediaUserListRespValidationError{
+ field: fmt.Sprintf("Data[%v]", idx),
+ reason: "embedded message failed validation",
+ cause: err,
+ }
+ }
+ }
+
+ }
+
+ // no validation rules for Count
+
+ if len(errors) > 0 {
+ return MediaUserListRespMultiError(errors)
+ }
+
+ return nil
+}
+
+// MediaUserListRespMultiError is an error wrapping multiple validation errors
+// returned by MediaUserListResp.ValidateAll() if the designated constraints
+// aren't met.
+type MediaUserListRespMultiError []error
+
+// Error returns a concatenation of all the error messages it wraps.
+func (m MediaUserListRespMultiError) Error() string {
+ var msgs []string
+ for _, err := range m {
+ msgs = append(msgs, err.Error())
+ }
+ return strings.Join(msgs, "; ")
+}
+
+// AllErrors returns a list of validation violation errors.
+func (m MediaUserListRespMultiError) AllErrors() []error { return m }
+
+// MediaUserListRespValidationError is the validation error returned by
+// MediaUserListResp.Validate if the designated constraints aren't met.
+type MediaUserListRespValidationError struct {
+ field string
+ reason string
+ cause error
+ key bool
+}
+
+// Field function returns field value.
+func (e MediaUserListRespValidationError) Field() string { return e.field }
+
+// Reason function returns reason value.
+func (e MediaUserListRespValidationError) Reason() string { return e.reason }
+
+// Cause function returns cause value.
+func (e MediaUserListRespValidationError) Cause() error { return e.cause }
+
+// Key function returns key value.
+func (e MediaUserListRespValidationError) Key() bool { return e.key }
+
+// ErrorName returns error name.
+func (e MediaUserListRespValidationError) ErrorName() string {
+ return "MediaUserListRespValidationError"
+}
+
+// Error satisfies the builtin error interface
+func (e MediaUserListRespValidationError) Error() string {
+ cause := ""
+ if e.cause != nil {
+ cause = fmt.Sprintf(" | caused by: %v", e.cause)
+ }
+
+ key := ""
+ if e.key {
+ key = "key for "
+ }
+
+ return fmt.Sprintf(
+ "invalid %sMediaUserListResp.%s: %s%s",
+ key,
+ e.field,
+ e.reason,
+ cause)
+}
+
+var _ error = MediaUserListRespValidationError{}
+
+var _ interface {
+ Field() string
+ Reason() string
+ Key() bool
+ Cause() error
+ ErrorName() string
+} = MediaUserListRespValidationError{}
+
+// Validate checks the field values on UpdateMediaAccountReq with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the first error encountered is returned, or nil if there are no violations.
+func (m *UpdateMediaAccountReq) Validate() error {
+ return m.validate(false)
+}
+
+// ValidateAll checks the field values on UpdateMediaAccountReq with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the result is a list of violation errors wrapped in
+// UpdateMediaAccountReqMultiError, or nil if none found.
+func (m *UpdateMediaAccountReq) ValidateAll() error {
+ return m.validate(true)
+}
+
+func (m *UpdateMediaAccountReq) validate(all bool) error {
+ if m == nil {
+ return nil
+ }
+
+ var errors []error
+
+ // no validation rules for PlatformID
+
+ // no validation rules for PlatformUserName
+
+ // no validation rules for PlatformUserID
+
+ // no validation rules for ArtistUuid
+
+ // no validation rules for ArtistName
+
+ // no validation rules for ArtistPhone
+
+ // no validation rules for MediaAccountUuid
+
+ // no validation rules for ManagerUuid
+
+ // no validation rules for ManagerUserName
+
+ if len(errors) > 0 {
+ return UpdateMediaAccountReqMultiError(errors)
+ }
+
+ return nil
+}
+
+// UpdateMediaAccountReqMultiError is an error wrapping multiple validation
+// errors returned by UpdateMediaAccountReq.ValidateAll() if the designated
+// constraints aren't met.
+type UpdateMediaAccountReqMultiError []error
+
+// Error returns a concatenation of all the error messages it wraps.
+func (m UpdateMediaAccountReqMultiError) Error() string {
+ var msgs []string
+ for _, err := range m {
+ msgs = append(msgs, err.Error())
+ }
+ return strings.Join(msgs, "; ")
+}
+
+// AllErrors returns a list of validation violation errors.
+func (m UpdateMediaAccountReqMultiError) AllErrors() []error { return m }
+
+// UpdateMediaAccountReqValidationError is the validation error returned by
+// UpdateMediaAccountReq.Validate if the designated constraints aren't met.
+type UpdateMediaAccountReqValidationError struct {
+ field string
+ reason string
+ cause error
+ key bool
+}
+
+// Field function returns field value.
+func (e UpdateMediaAccountReqValidationError) Field() string { return e.field }
+
+// Reason function returns reason value.
+func (e UpdateMediaAccountReqValidationError) Reason() string { return e.reason }
+
+// Cause function returns cause value.
+func (e UpdateMediaAccountReqValidationError) Cause() error { return e.cause }
+
+// Key function returns key value.
+func (e UpdateMediaAccountReqValidationError) Key() bool { return e.key }
+
+// ErrorName returns error name.
+func (e UpdateMediaAccountReqValidationError) ErrorName() string {
+ return "UpdateMediaAccountReqValidationError"
+}
+
+// Error satisfies the builtin error interface
+func (e UpdateMediaAccountReqValidationError) Error() string {
+ cause := ""
+ if e.cause != nil {
+ cause = fmt.Sprintf(" | caused by: %v", e.cause)
+ }
+
+ key := ""
+ if e.key {
+ key = "key for "
+ }
+
+ return fmt.Sprintf(
+ "invalid %sUpdateMediaAccountReq.%s: %s%s",
+ key,
+ e.field,
+ e.reason,
+ cause)
+}
+
+var _ error = UpdateMediaAccountReqValidationError{}
+
+var _ interface {
+ Field() string
+ Reason() string
+ Key() bool
+ Cause() error
+ ErrorName() string
+} = UpdateMediaAccountReqValidationError{}
+
+// Validate checks the field values on UpdateMediaAccountResp with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the first error encountered is returned, or nil if there are no violations.
+func (m *UpdateMediaAccountResp) Validate() error {
+ return m.validate(false)
+}
+
+// ValidateAll checks the field values on UpdateMediaAccountResp with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the result is a list of violation errors wrapped in
+// UpdateMediaAccountRespMultiError, or nil if none found.
+func (m *UpdateMediaAccountResp) ValidateAll() error {
+ return m.validate(true)
+}
+
+func (m *UpdateMediaAccountResp) validate(all bool) error {
+ if m == nil {
+ return nil
+ }
+
+ var errors []error
+
+ // no validation rules for MediaAccountUuid
+
+ if len(errors) > 0 {
+ return UpdateMediaAccountRespMultiError(errors)
+ }
+
+ return nil
+}
+
+// UpdateMediaAccountRespMultiError is an error wrapping multiple validation
+// errors returned by UpdateMediaAccountResp.ValidateAll() if the designated
+// constraints aren't met.
+type UpdateMediaAccountRespMultiError []error
+
+// Error returns a concatenation of all the error messages it wraps.
+func (m UpdateMediaAccountRespMultiError) Error() string {
+ var msgs []string
+ for _, err := range m {
+ msgs = append(msgs, err.Error())
+ }
+ return strings.Join(msgs, "; ")
+}
+
+// AllErrors returns a list of validation violation errors.
+func (m UpdateMediaAccountRespMultiError) AllErrors() []error { return m }
+
+// UpdateMediaAccountRespValidationError is the validation error returned by
+// UpdateMediaAccountResp.Validate if the designated constraints aren't met.
+type UpdateMediaAccountRespValidationError struct {
+ field string
+ reason string
+ cause error
+ key bool
+}
+
+// Field function returns field value.
+func (e UpdateMediaAccountRespValidationError) Field() string { return e.field }
+
+// Reason function returns reason value.
+func (e UpdateMediaAccountRespValidationError) Reason() string { return e.reason }
+
+// Cause function returns cause value.
+func (e UpdateMediaAccountRespValidationError) Cause() error { return e.cause }
+
+// Key function returns key value.
+func (e UpdateMediaAccountRespValidationError) Key() bool { return e.key }
+
+// ErrorName returns error name.
+func (e UpdateMediaAccountRespValidationError) ErrorName() string {
+ return "UpdateMediaAccountRespValidationError"
+}
+
+// Error satisfies the builtin error interface
+func (e UpdateMediaAccountRespValidationError) Error() string {
+ cause := ""
+ if e.cause != nil {
+ cause = fmt.Sprintf(" | caused by: %v", e.cause)
+ }
+
+ key := ""
+ if e.key {
+ key = "key for "
+ }
+
+ return fmt.Sprintf(
+ "invalid %sUpdateMediaAccountResp.%s: %s%s",
+ key,
+ e.field,
+ e.reason,
+ cause)
+}
+
+var _ error = UpdateMediaAccountRespValidationError{}
+
+var _ interface {
+ Field() string
+ Reason() string
+ Key() bool
+ Cause() error
+ ErrorName() string
+} = UpdateMediaAccountRespValidationError{}
+
+// Validate checks the field values on UnbindManagerReq with the rules defined
+// in the proto definition for this message. If any rules are violated, the
+// first error encountered is returned, or nil if there are no violations.
+func (m *UnbindManagerReq) Validate() error {
+ return m.validate(false)
+}
+
+// ValidateAll checks the field values on UnbindManagerReq with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the result is a list of violation errors wrapped in
+// UnbindManagerReqMultiError, or nil if none found.
+func (m *UnbindManagerReq) ValidateAll() error {
+ return m.validate(true)
+}
+
+func (m *UnbindManagerReq) validate(all bool) error {
+ if m == nil {
+ return nil
+ }
+
+ var errors []error
+
+ // no validation rules for MediaAccountUuid
+
+ if len(errors) > 0 {
+ return UnbindManagerReqMultiError(errors)
+ }
+
+ return nil
+}
+
+// UnbindManagerReqMultiError is an error wrapping multiple validation errors
+// returned by UnbindManagerReq.ValidateAll() if the designated constraints
+// aren't met.
+type UnbindManagerReqMultiError []error
+
+// Error returns a concatenation of all the error messages it wraps.
+func (m UnbindManagerReqMultiError) Error() string {
+ var msgs []string
+ for _, err := range m {
+ msgs = append(msgs, err.Error())
+ }
+ return strings.Join(msgs, "; ")
+}
+
+// AllErrors returns a list of validation violation errors.
+func (m UnbindManagerReqMultiError) AllErrors() []error { return m }
+
+// UnbindManagerReqValidationError is the validation error returned by
+// UnbindManagerReq.Validate if the designated constraints aren't met.
+type UnbindManagerReqValidationError struct {
+ field string
+ reason string
+ cause error
+ key bool
+}
+
+// Field function returns field value.
+func (e UnbindManagerReqValidationError) Field() string { return e.field }
+
+// Reason function returns reason value.
+func (e UnbindManagerReqValidationError) Reason() string { return e.reason }
+
+// Cause function returns cause value.
+func (e UnbindManagerReqValidationError) Cause() error { return e.cause }
+
+// Key function returns key value.
+func (e UnbindManagerReqValidationError) Key() bool { return e.key }
+
+// ErrorName returns error name.
+func (e UnbindManagerReqValidationError) ErrorName() string { return "UnbindManagerReqValidationError" }
+
+// Error satisfies the builtin error interface
+func (e UnbindManagerReqValidationError) Error() string {
+ cause := ""
+ if e.cause != nil {
+ cause = fmt.Sprintf(" | caused by: %v", e.cause)
+ }
+
+ key := ""
+ if e.key {
+ key = "key for "
+ }
+
+ return fmt.Sprintf(
+ "invalid %sUnbindManagerReq.%s: %s%s",
+ key,
+ e.field,
+ e.reason,
+ cause)
+}
+
+var _ error = UnbindManagerReqValidationError{}
+
+var _ interface {
+ Field() string
+ Reason() string
+ Key() bool
+ Cause() error
+ ErrorName() string
+} = UnbindManagerReqValidationError{}
+
+// Validate checks the field values on BindManagerReq with the rules defined in
+// the proto definition for this message. If any rules are violated, the first
+// error encountered is returned, or nil if there are no violations.
+func (m *BindManagerReq) Validate() error {
+ return m.validate(false)
+}
+
+// ValidateAll checks the field values on BindManagerReq with the rules defined
+// in the proto definition for this message. If any rules are violated, the
+// result is a list of violation errors wrapped in BindManagerReqMultiError,
+// or nil if none found.
+func (m *BindManagerReq) ValidateAll() error {
+ return m.validate(true)
+}
+
+func (m *BindManagerReq) validate(all bool) error {
+ if m == nil {
+ return nil
+ }
+
+ var errors []error
+
+ // no validation rules for MediaAccountUuid
+
+ // no validation rules for ManagerUuid
+
+ // no validation rules for ManagerUserName
+
+ if len(errors) > 0 {
+ return BindManagerReqMultiError(errors)
+ }
+
+ return nil
+}
+
+// BindManagerReqMultiError is an error wrapping multiple validation errors
+// returned by BindManagerReq.ValidateAll() if the designated constraints
+// aren't met.
+type BindManagerReqMultiError []error
+
+// Error returns a concatenation of all the error messages it wraps.
+func (m BindManagerReqMultiError) Error() string {
+ var msgs []string
+ for _, err := range m {
+ msgs = append(msgs, err.Error())
+ }
+ return strings.Join(msgs, "; ")
+}
+
+// AllErrors returns a list of validation violation errors.
+func (m BindManagerReqMultiError) AllErrors() []error { return m }
+
+// BindManagerReqValidationError is the validation error returned by
+// BindManagerReq.Validate if the designated constraints aren't met.
+type BindManagerReqValidationError struct {
+ field string
+ reason string
+ cause error
+ key bool
+}
+
+// Field function returns field value.
+func (e BindManagerReqValidationError) Field() string { return e.field }
+
+// Reason function returns reason value.
+func (e BindManagerReqValidationError) Reason() string { return e.reason }
+
+// Cause function returns cause value.
+func (e BindManagerReqValidationError) Cause() error { return e.cause }
+
+// Key function returns key value.
+func (e BindManagerReqValidationError) Key() bool { return e.key }
+
+// ErrorName returns error name.
+func (e BindManagerReqValidationError) ErrorName() string { return "BindManagerReqValidationError" }
+
+// Error satisfies the builtin error interface
+func (e BindManagerReqValidationError) Error() string {
+ cause := ""
+ if e.cause != nil {
+ cause = fmt.Sprintf(" | caused by: %v", e.cause)
+ }
+
+ key := ""
+ if e.key {
+ key = "key for "
+ }
+
+ return fmt.Sprintf(
+ "invalid %sBindManagerReq.%s: %s%s",
+ key,
+ e.field,
+ e.reason,
+ cause)
+}
+
+var _ error = BindManagerReqValidationError{}
+
+var _ interface {
+ Field() string
+ Reason() string
+ Key() bool
+ Cause() error
+ ErrorName() string
+} = BindManagerReqValidationError{}
+
+// Validate checks the field values on UpdateWorkImageReq with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the first error encountered is returned, or nil if there are no violations.
+func (m *UpdateWorkImageReq) Validate() error {
+ return m.validate(false)
+}
+
+// ValidateAll checks the field values on UpdateWorkImageReq with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the result is a list of violation errors wrapped in
+// UpdateWorkImageReqMultiError, or nil if none found.
+func (m *UpdateWorkImageReq) ValidateAll() error {
+ return m.validate(true)
+}
+
+func (m *UpdateWorkImageReq) validate(all bool) error {
+ if m == nil {
+ return nil
+ }
+
+ var errors []error
+
+ // no validation rules for Title
+
+ // no validation rules for Content
+
+ // no validation rules for ForbidComment
+
+ // no validation rules for Action
+
+ // no validation rules for WorkUuid
+
+ // no validation rules for ArtistUuid
+
+ // no validation rules for ArtistPhone
+
+ if len(errors) > 0 {
+ return UpdateWorkImageReqMultiError(errors)
+ }
+
+ return nil
+}
+
+// UpdateWorkImageReqMultiError is an error wrapping multiple validation errors
+// returned by UpdateWorkImageReq.ValidateAll() if the designated constraints
+// aren't met.
+type UpdateWorkImageReqMultiError []error
+
+// Error returns a concatenation of all the error messages it wraps.
+func (m UpdateWorkImageReqMultiError) Error() string {
+ var msgs []string
+ for _, err := range m {
+ msgs = append(msgs, err.Error())
+ }
+ return strings.Join(msgs, "; ")
+}
+
+// AllErrors returns a list of validation violation errors.
+func (m UpdateWorkImageReqMultiError) AllErrors() []error { return m }
+
+// UpdateWorkImageReqValidationError is the validation error returned by
+// UpdateWorkImageReq.Validate if the designated constraints aren't met.
+type UpdateWorkImageReqValidationError struct {
+ field string
+ reason string
+ cause error
+ key bool
+}
+
+// Field function returns field value.
+func (e UpdateWorkImageReqValidationError) Field() string { return e.field }
+
+// Reason function returns reason value.
+func (e UpdateWorkImageReqValidationError) Reason() string { return e.reason }
+
+// Cause function returns cause value.
+func (e UpdateWorkImageReqValidationError) Cause() error { return e.cause }
+
+// Key function returns key value.
+func (e UpdateWorkImageReqValidationError) Key() bool { return e.key }
+
+// ErrorName returns error name.
+func (e UpdateWorkImageReqValidationError) ErrorName() string {
+ return "UpdateWorkImageReqValidationError"
+}
+
+// Error satisfies the builtin error interface
+func (e UpdateWorkImageReqValidationError) Error() string {
+ cause := ""
+ if e.cause != nil {
+ cause = fmt.Sprintf(" | caused by: %v", e.cause)
+ }
+
+ key := ""
+ if e.key {
+ key = "key for "
+ }
+
+ return fmt.Sprintf(
+ "invalid %sUpdateWorkImageReq.%s: %s%s",
+ key,
+ e.field,
+ e.reason,
+ cause)
+}
+
+var _ error = UpdateWorkImageReqValidationError{}
+
+var _ interface {
+ Field() string
+ Reason() string
+ Key() bool
+ Cause() error
+ ErrorName() string
+} = UpdateWorkImageReqValidationError{}
+
+// Validate checks the field values on UpdateWorkImageResp with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the first error encountered is returned, or nil if there are no violations.
+func (m *UpdateWorkImageResp) Validate() error {
+ return m.validate(false)
+}
+
+// ValidateAll checks the field values on UpdateWorkImageResp with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the result is a list of violation errors wrapped in
+// UpdateWorkImageRespMultiError, or nil if none found.
+func (m *UpdateWorkImageResp) ValidateAll() error {
+ return m.validate(true)
+}
+
+func (m *UpdateWorkImageResp) validate(all bool) error {
+ if m == nil {
+ return nil
+ }
+
+ var errors []error
+
+ // no validation rules for WorkUuid
+
+ if len(errors) > 0 {
+ return UpdateWorkImageRespMultiError(errors)
+ }
+
+ return nil
+}
+
+// UpdateWorkImageRespMultiError is an error wrapping multiple validation
+// errors returned by UpdateWorkImageResp.ValidateAll() if the designated
+// constraints aren't met.
+type UpdateWorkImageRespMultiError []error
+
+// Error returns a concatenation of all the error messages it wraps.
+func (m UpdateWorkImageRespMultiError) Error() string {
+ var msgs []string
+ for _, err := range m {
+ msgs = append(msgs, err.Error())
+ }
+ return strings.Join(msgs, "; ")
+}
+
+// AllErrors returns a list of validation violation errors.
+func (m UpdateWorkImageRespMultiError) AllErrors() []error { return m }
+
+// UpdateWorkImageRespValidationError is the validation error returned by
+// UpdateWorkImageResp.Validate if the designated constraints aren't met.
+type UpdateWorkImageRespValidationError struct {
+ field string
+ reason string
+ cause error
+ key bool
+}
+
+// Field function returns field value.
+func (e UpdateWorkImageRespValidationError) Field() string { return e.field }
+
+// Reason function returns reason value.
+func (e UpdateWorkImageRespValidationError) Reason() string { return e.reason }
+
+// Cause function returns cause value.
+func (e UpdateWorkImageRespValidationError) Cause() error { return e.cause }
+
+// Key function returns key value.
+func (e UpdateWorkImageRespValidationError) Key() bool { return e.key }
+
+// ErrorName returns error name.
+func (e UpdateWorkImageRespValidationError) ErrorName() string {
+ return "UpdateWorkImageRespValidationError"
+}
+
+// Error satisfies the builtin error interface
+func (e UpdateWorkImageRespValidationError) Error() string {
+ cause := ""
+ if e.cause != nil {
+ cause = fmt.Sprintf(" | caused by: %v", e.cause)
+ }
+
+ key := ""
+ if e.key {
+ key = "key for "
+ }
+
+ return fmt.Sprintf(
+ "invalid %sUpdateWorkImageResp.%s: %s%s",
+ key,
+ e.field,
+ e.reason,
+ cause)
+}
+
+var _ error = UpdateWorkImageRespValidationError{}
+
+var _ interface {
+ Field() string
+ Reason() string
+ Key() bool
+ Cause() error
+ ErrorName() string
+} = UpdateWorkImageRespValidationError{}
+
+// Validate checks the field values on UpdateWorkVideoReq with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the first error encountered is returned, or nil if there are no violations.
+func (m *UpdateWorkVideoReq) Validate() error {
+ return m.validate(false)
+}
+
+// ValidateAll checks the field values on UpdateWorkVideoReq with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the result is a list of violation errors wrapped in
+// UpdateWorkVideoReqMultiError, or nil if none found.
+func (m *UpdateWorkVideoReq) ValidateAll() error {
+ return m.validate(true)
+}
+
+func (m *UpdateWorkVideoReq) validate(all bool) error {
+ if m == nil {
+ return nil
+ }
+
+ var errors []error
+
+ // no validation rules for Title
+
+ // no validation rules for Content
+
+ // no validation rules for VideoUrl
+
+ // no validation rules for CoverUrl
+
+ // no validation rules for PublicConfig
+
+ // no validation rules for Action
+
+ // no validation rules for WorkUuid
+
+ // no validation rules for ArtistUuid
+
+ // no validation rules for ArtistPhone
+
+ if len(errors) > 0 {
+ return UpdateWorkVideoReqMultiError(errors)
+ }
+
+ return nil
+}
+
+// UpdateWorkVideoReqMultiError is an error wrapping multiple validation errors
+// returned by UpdateWorkVideoReq.ValidateAll() if the designated constraints
+// aren't met.
+type UpdateWorkVideoReqMultiError []error
+
+// Error returns a concatenation of all the error messages it wraps.
+func (m UpdateWorkVideoReqMultiError) Error() string {
+ var msgs []string
+ for _, err := range m {
+ msgs = append(msgs, err.Error())
+ }
+ return strings.Join(msgs, "; ")
+}
+
+// AllErrors returns a list of validation violation errors.
+func (m UpdateWorkVideoReqMultiError) AllErrors() []error { return m }
+
+// UpdateWorkVideoReqValidationError is the validation error returned by
+// UpdateWorkVideoReq.Validate if the designated constraints aren't met.
+type UpdateWorkVideoReqValidationError struct {
+ field string
+ reason string
+ cause error
+ key bool
+}
+
+// Field function returns field value.
+func (e UpdateWorkVideoReqValidationError) Field() string { return e.field }
+
+// Reason function returns reason value.
+func (e UpdateWorkVideoReqValidationError) Reason() string { return e.reason }
+
+// Cause function returns cause value.
+func (e UpdateWorkVideoReqValidationError) Cause() error { return e.cause }
+
+// Key function returns key value.
+func (e UpdateWorkVideoReqValidationError) Key() bool { return e.key }
+
+// ErrorName returns error name.
+func (e UpdateWorkVideoReqValidationError) ErrorName() string {
+ return "UpdateWorkVideoReqValidationError"
+}
+
+// Error satisfies the builtin error interface
+func (e UpdateWorkVideoReqValidationError) Error() string {
+ cause := ""
+ if e.cause != nil {
+ cause = fmt.Sprintf(" | caused by: %v", e.cause)
+ }
+
+ key := ""
+ if e.key {
+ key = "key for "
+ }
+
+ return fmt.Sprintf(
+ "invalid %sUpdateWorkVideoReq.%s: %s%s",
+ key,
+ e.field,
+ e.reason,
+ cause)
+}
+
+var _ error = UpdateWorkVideoReqValidationError{}
+
+var _ interface {
+ Field() string
+ Reason() string
+ Key() bool
+ Cause() error
+ ErrorName() string
+} = UpdateWorkVideoReqValidationError{}
+
+// Validate checks the field values on UpdateWorkVideoResp with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the first error encountered is returned, or nil if there are no violations.
+func (m *UpdateWorkVideoResp) Validate() error {
+ return m.validate(false)
+}
+
+// ValidateAll checks the field values on UpdateWorkVideoResp with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the result is a list of violation errors wrapped in
+// UpdateWorkVideoRespMultiError, or nil if none found.
+func (m *UpdateWorkVideoResp) ValidateAll() error {
+ return m.validate(true)
+}
+
+func (m *UpdateWorkVideoResp) validate(all bool) error {
+ if m == nil {
+ return nil
+ }
+
+ var errors []error
+
+ // no validation rules for WorkUuid
+
+ if len(errors) > 0 {
+ return UpdateWorkVideoRespMultiError(errors)
+ }
+
+ return nil
+}
+
+// UpdateWorkVideoRespMultiError is an error wrapping multiple validation
+// errors returned by UpdateWorkVideoResp.ValidateAll() if the designated
+// constraints aren't met.
+type UpdateWorkVideoRespMultiError []error
+
+// Error returns a concatenation of all the error messages it wraps.
+func (m UpdateWorkVideoRespMultiError) Error() string {
+ var msgs []string
+ for _, err := range m {
+ msgs = append(msgs, err.Error())
+ }
+ return strings.Join(msgs, "; ")
+}
+
+// AllErrors returns a list of validation violation errors.
+func (m UpdateWorkVideoRespMultiError) AllErrors() []error { return m }
+
+// UpdateWorkVideoRespValidationError is the validation error returned by
+// UpdateWorkVideoResp.Validate if the designated constraints aren't met.
+type UpdateWorkVideoRespValidationError struct {
+ field string
+ reason string
+ cause error
+ key bool
+}
+
+// Field function returns field value.
+func (e UpdateWorkVideoRespValidationError) Field() string { return e.field }
+
+// Reason function returns reason value.
+func (e UpdateWorkVideoRespValidationError) Reason() string { return e.reason }
+
+// Cause function returns cause value.
+func (e UpdateWorkVideoRespValidationError) Cause() error { return e.cause }
+
+// Key function returns key value.
+func (e UpdateWorkVideoRespValidationError) Key() bool { return e.key }
+
+// ErrorName returns error name.
+func (e UpdateWorkVideoRespValidationError) ErrorName() string {
+ return "UpdateWorkVideoRespValidationError"
+}
+
+// Error satisfies the builtin error interface
+func (e UpdateWorkVideoRespValidationError) Error() string {
+ cause := ""
+ if e.cause != nil {
+ cause = fmt.Sprintf(" | caused by: %v", e.cause)
+ }
+
+ key := ""
+ if e.key {
+ key = "key for "
+ }
+
+ return fmt.Sprintf(
+ "invalid %sUpdateWorkVideoResp.%s: %s%s",
+ key,
+ e.field,
+ e.reason,
+ cause)
+}
+
+var _ error = UpdateWorkVideoRespValidationError{}
+
+var _ interface {
+ Field() string
+ Reason() string
+ Key() bool
+ Cause() error
+ ErrorName() string
+} = UpdateWorkVideoRespValidationError{}
+
+// Validate checks the field values on WorkListReq with the rules defined in
+// the proto definition for this message. If any rules are violated, the first
+// error encountered is returned, or nil if there are no violations.
+func (m *WorkListReq) Validate() error {
+ return m.validate(false)
+}
+
+// ValidateAll checks the field values on WorkListReq with the rules defined in
+// the proto definition for this message. If any rules are violated, the
+// result is a list of violation errors wrapped in WorkListReqMultiError, or
+// nil if none found.
+func (m *WorkListReq) ValidateAll() error {
+ return m.validate(true)
+}
+
+func (m *WorkListReq) validate(all bool) error {
+ if m == nil {
+ return nil
+ }
+
+ var errors []error
+
+ // no validation rules for ArtistVal
+
+ // no validation rules for PlatformID
+
+ // no validation rules for Page
+
+ // no validation rules for PageSize
+
+ if len(errors) > 0 {
+ return WorkListReqMultiError(errors)
+ }
+
+ return nil
+}
+
+// WorkListReqMultiError is an error wrapping multiple validation errors
+// returned by WorkListReq.ValidateAll() if the designated constraints aren't met.
+type WorkListReqMultiError []error
+
+// Error returns a concatenation of all the error messages it wraps.
+func (m WorkListReqMultiError) Error() string {
+ var msgs []string
+ for _, err := range m {
+ msgs = append(msgs, err.Error())
+ }
+ return strings.Join(msgs, "; ")
+}
+
+// AllErrors returns a list of validation violation errors.
+func (m WorkListReqMultiError) AllErrors() []error { return m }
+
+// WorkListReqValidationError is the validation error returned by
+// WorkListReq.Validate if the designated constraints aren't met.
+type WorkListReqValidationError struct {
+ field string
+ reason string
+ cause error
+ key bool
+}
+
+// Field function returns field value.
+func (e WorkListReqValidationError) Field() string { return e.field }
+
+// Reason function returns reason value.
+func (e WorkListReqValidationError) Reason() string { return e.reason }
+
+// Cause function returns cause value.
+func (e WorkListReqValidationError) Cause() error { return e.cause }
+
+// Key function returns key value.
+func (e WorkListReqValidationError) Key() bool { return e.key }
+
+// ErrorName returns error name.
+func (e WorkListReqValidationError) ErrorName() string { return "WorkListReqValidationError" }
+
+// Error satisfies the builtin error interface
+func (e WorkListReqValidationError) Error() string {
+ cause := ""
+ if e.cause != nil {
+ cause = fmt.Sprintf(" | caused by: %v", e.cause)
+ }
+
+ key := ""
+ if e.key {
+ key = "key for "
+ }
+
+ return fmt.Sprintf(
+ "invalid %sWorkListReq.%s: %s%s",
+ key,
+ e.field,
+ e.reason,
+ cause)
+}
+
+var _ error = WorkListReqValidationError{}
+
+var _ interface {
+ Field() string
+ Reason() string
+ Key() bool
+ Cause() error
+ ErrorName() string
+} = WorkListReqValidationError{}
+
+// Validate checks the field values on WorkListResp with the rules defined in
+// the proto definition for this message. If any rules are violated, the first
+// error encountered is returned, or nil if there are no violations.
+func (m *WorkListResp) Validate() error {
+ return m.validate(false)
+}
+
+// ValidateAll checks the field values on WorkListResp with the rules defined
+// in the proto definition for this message. If any rules are violated, the
+// result is a list of violation errors wrapped in WorkListRespMultiError, or
+// nil if none found.
+func (m *WorkListResp) ValidateAll() error {
+ return m.validate(true)
+}
+
+func (m *WorkListResp) validate(all bool) error {
+ if m == nil {
+ return nil
+ }
+
+ var errors []error
+
+ for idx, item := range m.GetData() {
+ _, _ = idx, item
+
+ if all {
+ switch v := interface{}(item).(type) {
+ case interface{ ValidateAll() error }:
+ if err := v.ValidateAll(); err != nil {
+ errors = append(errors, WorkListRespValidationError{
+ field: fmt.Sprintf("Data[%v]", idx),
+ reason: "embedded message failed validation",
+ cause: err,
+ })
+ }
+ case interface{ Validate() error }:
+ if err := v.Validate(); err != nil {
+ errors = append(errors, WorkListRespValidationError{
+ field: fmt.Sprintf("Data[%v]", idx),
+ reason: "embedded message failed validation",
+ cause: err,
+ })
+ }
+ }
+ } else if v, ok := interface{}(item).(interface{ Validate() error }); ok {
+ if err := v.Validate(); err != nil {
+ return WorkListRespValidationError{
+ field: fmt.Sprintf("Data[%v]", idx),
+ reason: "embedded message failed validation",
+ cause: err,
+ }
+ }
+ }
+
+ }
+
+ // no validation rules for Count
+
+ if len(errors) > 0 {
+ return WorkListRespMultiError(errors)
+ }
+
+ return nil
+}
+
+// WorkListRespMultiError is an error wrapping multiple validation errors
+// returned by WorkListResp.ValidateAll() if the designated constraints aren't met.
+type WorkListRespMultiError []error
+
+// Error returns a concatenation of all the error messages it wraps.
+func (m WorkListRespMultiError) Error() string {
+ var msgs []string
+ for _, err := range m {
+ msgs = append(msgs, err.Error())
+ }
+ return strings.Join(msgs, "; ")
+}
+
+// AllErrors returns a list of validation violation errors.
+func (m WorkListRespMultiError) AllErrors() []error { return m }
+
+// WorkListRespValidationError is the validation error returned by
+// WorkListResp.Validate if the designated constraints aren't met.
+type WorkListRespValidationError struct {
+ field string
+ reason string
+ cause error
+ key bool
+}
+
+// Field function returns field value.
+func (e WorkListRespValidationError) Field() string { return e.field }
+
+// Reason function returns reason value.
+func (e WorkListRespValidationError) Reason() string { return e.reason }
+
+// Cause function returns cause value.
+func (e WorkListRespValidationError) Cause() error { return e.cause }
+
+// Key function returns key value.
+func (e WorkListRespValidationError) Key() bool { return e.key }
+
+// ErrorName returns error name.
+func (e WorkListRespValidationError) ErrorName() string { return "WorkListRespValidationError" }
+
+// Error satisfies the builtin error interface
+func (e WorkListRespValidationError) Error() string {
+ cause := ""
+ if e.cause != nil {
+ cause = fmt.Sprintf(" | caused by: %v", e.cause)
+ }
+
+ key := ""
+ if e.key {
+ key = "key for "
+ }
+
+ return fmt.Sprintf(
+ "invalid %sWorkListResp.%s: %s%s",
+ key,
+ e.field,
+ e.reason,
+ cause)
+}
+
+var _ error = WorkListRespValidationError{}
+
+var _ interface {
+ Field() string
+ Reason() string
+ Key() bool
+ Cause() error
+ ErrorName() string
+} = WorkListRespValidationError{}
+
+// Validate checks the field values on MediaUserListResp_Info with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the first error encountered is returned, or nil if there are no violations.
+func (m *MediaUserListResp_Info) Validate() error {
+ return m.validate(false)
+}
+
+// ValidateAll checks the field values on MediaUserListResp_Info with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the result is a list of violation errors wrapped in
+// MediaUserListResp_InfoMultiError, or nil if none found.
+func (m *MediaUserListResp_Info) ValidateAll() error {
+ return m.validate(true)
+}
+
+func (m *MediaUserListResp_Info) validate(all bool) error {
+ if m == nil {
+ return nil
+ }
+
+ var errors []error
+
+ // no validation rules for PlatformUserName
+
+ // no validation rules for PlatformID
+
+ // no validation rules for ArtistName
+
+ // no validation rules for ArtistPhone
+
+ // no validation rules for ManagerUserName
+
+ // no validation rules for ManagerUuid
+
+ // no validation rules for MediaAccountUuid
+
+ if len(errors) > 0 {
+ return MediaUserListResp_InfoMultiError(errors)
+ }
+
+ return nil
+}
+
+// MediaUserListResp_InfoMultiError is an error wrapping multiple validation
+// errors returned by MediaUserListResp_Info.ValidateAll() if the designated
+// constraints aren't met.
+type MediaUserListResp_InfoMultiError []error
+
+// Error returns a concatenation of all the error messages it wraps.
+func (m MediaUserListResp_InfoMultiError) Error() string {
+ var msgs []string
+ for _, err := range m {
+ msgs = append(msgs, err.Error())
+ }
+ return strings.Join(msgs, "; ")
+}
+
+// AllErrors returns a list of validation violation errors.
+func (m MediaUserListResp_InfoMultiError) AllErrors() []error { return m }
+
+// MediaUserListResp_InfoValidationError is the validation error returned by
+// MediaUserListResp_Info.Validate if the designated constraints aren't met.
+type MediaUserListResp_InfoValidationError struct {
+ field string
+ reason string
+ cause error
+ key bool
+}
+
+// Field function returns field value.
+func (e MediaUserListResp_InfoValidationError) Field() string { return e.field }
+
+// Reason function returns reason value.
+func (e MediaUserListResp_InfoValidationError) Reason() string { return e.reason }
+
+// Cause function returns cause value.
+func (e MediaUserListResp_InfoValidationError) Cause() error { return e.cause }
+
+// Key function returns key value.
+func (e MediaUserListResp_InfoValidationError) Key() bool { return e.key }
+
+// ErrorName returns error name.
+func (e MediaUserListResp_InfoValidationError) ErrorName() string {
+ return "MediaUserListResp_InfoValidationError"
+}
+
+// Error satisfies the builtin error interface
+func (e MediaUserListResp_InfoValidationError) Error() string {
+ cause := ""
+ if e.cause != nil {
+ cause = fmt.Sprintf(" | caused by: %v", e.cause)
+ }
+
+ key := ""
+ if e.key {
+ key = "key for "
+ }
+
+ return fmt.Sprintf(
+ "invalid %sMediaUserListResp_Info.%s: %s%s",
+ key,
+ e.field,
+ e.reason,
+ cause)
+}
+
+var _ error = MediaUserListResp_InfoValidationError{}
+
+var _ interface {
+ Field() string
+ Reason() string
+ Key() bool
+ Cause() error
+ ErrorName() string
+} = MediaUserListResp_InfoValidationError{}
+
+// Validate checks the field values on WorkListResp_Info with the rules defined
+// in the proto definition for this message. If any rules are violated, the
+// first error encountered is returned, or nil if there are no violations.
+func (m *WorkListResp_Info) Validate() error {
+ return m.validate(false)
+}
+
+// ValidateAll checks the field values on WorkListResp_Info with the rules
+// defined in the proto definition for this message. If any rules are
+// violated, the result is a list of violation errors wrapped in
+// WorkListResp_InfoMultiError, or nil if none found.
+func (m *WorkListResp_Info) ValidateAll() error {
+ return m.validate(true)
+}
+
+func (m *WorkListResp_Info) validate(all bool) error {
+ if m == nil {
+ return nil
+ }
+
+ var errors []error
+
+ // no validation rules for WorkUuid
+
+ // no validation rules for Title
+
+ // no validation rules for Content
+
+ // no validation rules for WorkCategory
+
+ // no validation rules for WorkUrl
+
+ // no validation rules for WorkCover
+
+ // no validation rules for WorkStatus
+
+ // no validation rules for SubmitTime
+
+ // no validation rules for StatusUpdateTime
+
+ // no validation rules for ArtistName
+
+ // no validation rules for ArtistPhone
+
+ if len(errors) > 0 {
+ return WorkListResp_InfoMultiError(errors)
+ }
+
+ return nil
+}
+
+// WorkListResp_InfoMultiError is an error wrapping multiple validation errors
+// returned by WorkListResp_Info.ValidateAll() if the designated constraints
+// aren't met.
+type WorkListResp_InfoMultiError []error
+
+// Error returns a concatenation of all the error messages it wraps.
+func (m WorkListResp_InfoMultiError) Error() string {
+ var msgs []string
+ for _, err := range m {
+ msgs = append(msgs, err.Error())
+ }
+ return strings.Join(msgs, "; ")
+}
+
+// AllErrors returns a list of validation violation errors.
+func (m WorkListResp_InfoMultiError) AllErrors() []error { return m }
+
+// WorkListResp_InfoValidationError is the validation error returned by
+// WorkListResp_Info.Validate if the designated constraints aren't met.
+type WorkListResp_InfoValidationError struct {
+ field string
+ reason string
+ cause error
+ key bool
+}
+
+// Field function returns field value.
+func (e WorkListResp_InfoValidationError) Field() string { return e.field }
+
+// Reason function returns reason value.
+func (e WorkListResp_InfoValidationError) Reason() string { return e.reason }
+
+// Cause function returns cause value.
+func (e WorkListResp_InfoValidationError) Cause() error { return e.cause }
+
+// Key function returns key value.
+func (e WorkListResp_InfoValidationError) Key() bool { return e.key }
+
+// ErrorName returns error name.
+func (e WorkListResp_InfoValidationError) ErrorName() string {
+ return "WorkListResp_InfoValidationError"
+}
+
+// Error satisfies the builtin error interface
+func (e WorkListResp_InfoValidationError) Error() string {
+ cause := ""
+ if e.cause != nil {
+ cause = fmt.Sprintf(" | caused by: %v", e.cause)
+ }
+
+ key := ""
+ if e.key {
+ key = "key for "
+ }
+
+ return fmt.Sprintf(
+ "invalid %sWorkListResp_Info.%s: %s%s",
+ key,
+ e.field,
+ e.reason,
+ cause)
+}
+
+var _ error = WorkListResp_InfoValidationError{}
+
+var _ interface {
+ Field() string
+ Reason() string
+ Key() bool
+ Cause() error
+ ErrorName() string
+} = WorkListResp_InfoValidationError{}
diff --git a/api/cast/cast_triple.pb.go b/api/cast/cast_triple.pb.go
new file mode 100644
index 0000000..b1fecb4
--- /dev/null
+++ b/api/cast/cast_triple.pb.go
@@ -0,0 +1,418 @@
+// Code generated by protoc-gen-go-triple. DO NOT EDIT.
+// versions:
+// - protoc-gen-go-triple v1.0.8
+// - protoc v3.21.1
+// source: pb/fiee/cast.proto
+
+package cast
+
+import (
+ context "context"
+ protocol "dubbo.apache.org/dubbo-go/v3/protocol"
+ dubbo3 "dubbo.apache.org/dubbo-go/v3/protocol/dubbo3"
+ invocation "dubbo.apache.org/dubbo-go/v3/protocol/invocation"
+ grpc_go "github.com/dubbogo/grpc-go"
+ codes "github.com/dubbogo/grpc-go/codes"
+ metadata "github.com/dubbogo/grpc-go/metadata"
+ status "github.com/dubbogo/grpc-go/status"
+ common "github.com/dubbogo/triple/pkg/common"
+ constant "github.com/dubbogo/triple/pkg/common/constant"
+ triple "github.com/dubbogo/triple/pkg/triple"
+ emptypb "google.golang.org/protobuf/types/known/emptypb"
+)
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc_go.SupportPackageIsVersion7
+
+// CastClient is the client API for Cast service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type CastClient interface {
+ MediaUserList(ctx context.Context, in *MediaUserListReq, opts ...grpc_go.CallOption) (*MediaUserListResp, common.ErrorWithAttachment)
+ UpdateMediaAccount(ctx context.Context, in *UpdateMediaAccountReq, opts ...grpc_go.CallOption) (*UpdateMediaAccountResp, common.ErrorWithAttachment)
+ UnbindManager(ctx context.Context, in *UnbindManagerReq, opts ...grpc_go.CallOption) (*emptypb.Empty, common.ErrorWithAttachment)
+ BindManager(ctx context.Context, in *BindManagerReq, opts ...grpc_go.CallOption) (*emptypb.Empty, common.ErrorWithAttachment)
+ UpdateWorkImage(ctx context.Context, in *UpdateWorkImageReq, opts ...grpc_go.CallOption) (*UpdateWorkImageResp, common.ErrorWithAttachment)
+ UpdateWorkVideo(ctx context.Context, in *UpdateWorkVideoReq, opts ...grpc_go.CallOption) (*UpdateWorkVideoResp, common.ErrorWithAttachment)
+ WorkList(ctx context.Context, in *WorkListReq, opts ...grpc_go.CallOption) (*WorkListResp, common.ErrorWithAttachment)
+}
+
+type castClient struct {
+ cc *triple.TripleConn
+}
+
+type CastClientImpl struct {
+ MediaUserList func(ctx context.Context, in *MediaUserListReq) (*MediaUserListResp, error)
+ UpdateMediaAccount func(ctx context.Context, in *UpdateMediaAccountReq) (*UpdateMediaAccountResp, error)
+ UnbindManager func(ctx context.Context, in *UnbindManagerReq) (*emptypb.Empty, error)
+ BindManager func(ctx context.Context, in *BindManagerReq) (*emptypb.Empty, error)
+ UpdateWorkImage func(ctx context.Context, in *UpdateWorkImageReq) (*UpdateWorkImageResp, error)
+ UpdateWorkVideo func(ctx context.Context, in *UpdateWorkVideoReq) (*UpdateWorkVideoResp, error)
+ WorkList func(ctx context.Context, in *WorkListReq) (*WorkListResp, error)
+}
+
+func (c *CastClientImpl) GetDubboStub(cc *triple.TripleConn) CastClient {
+ return NewCastClient(cc)
+}
+
+func (c *CastClientImpl) XXX_InterfaceName() string {
+ return "Cast.Cast"
+}
+
+func NewCastClient(cc *triple.TripleConn) CastClient {
+ return &castClient{cc}
+}
+
+func (c *castClient) MediaUserList(ctx context.Context, in *MediaUserListReq, opts ...grpc_go.CallOption) (*MediaUserListResp, common.ErrorWithAttachment) {
+ out := new(MediaUserListResp)
+ interfaceKey := ctx.Value(constant.InterfaceKey).(string)
+ return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/MediaUserList", in, out)
+}
+
+func (c *castClient) UpdateMediaAccount(ctx context.Context, in *UpdateMediaAccountReq, opts ...grpc_go.CallOption) (*UpdateMediaAccountResp, common.ErrorWithAttachment) {
+ out := new(UpdateMediaAccountResp)
+ interfaceKey := ctx.Value(constant.InterfaceKey).(string)
+ return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/UpdateMediaAccount", in, out)
+}
+
+func (c *castClient) UnbindManager(ctx context.Context, in *UnbindManagerReq, opts ...grpc_go.CallOption) (*emptypb.Empty, common.ErrorWithAttachment) {
+ out := new(emptypb.Empty)
+ interfaceKey := ctx.Value(constant.InterfaceKey).(string)
+ return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/UnbindManager", in, out)
+}
+
+func (c *castClient) BindManager(ctx context.Context, in *BindManagerReq, opts ...grpc_go.CallOption) (*emptypb.Empty, common.ErrorWithAttachment) {
+ out := new(emptypb.Empty)
+ interfaceKey := ctx.Value(constant.InterfaceKey).(string)
+ return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/BindManager", in, out)
+}
+
+func (c *castClient) UpdateWorkImage(ctx context.Context, in *UpdateWorkImageReq, opts ...grpc_go.CallOption) (*UpdateWorkImageResp, common.ErrorWithAttachment) {
+ out := new(UpdateWorkImageResp)
+ interfaceKey := ctx.Value(constant.InterfaceKey).(string)
+ return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/UpdateWorkImage", in, out)
+}
+
+func (c *castClient) UpdateWorkVideo(ctx context.Context, in *UpdateWorkVideoReq, opts ...grpc_go.CallOption) (*UpdateWorkVideoResp, common.ErrorWithAttachment) {
+ out := new(UpdateWorkVideoResp)
+ interfaceKey := ctx.Value(constant.InterfaceKey).(string)
+ return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/UpdateWorkVideo", in, out)
+}
+
+func (c *castClient) WorkList(ctx context.Context, in *WorkListReq, opts ...grpc_go.CallOption) (*WorkListResp, common.ErrorWithAttachment) {
+ out := new(WorkListResp)
+ interfaceKey := ctx.Value(constant.InterfaceKey).(string)
+ return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/WorkList", in, out)
+}
+
+// CastServer is the server API for Cast service.
+// All implementations must embed UnimplementedCastServer
+// for forward compatibility
+type CastServer interface {
+ MediaUserList(context.Context, *MediaUserListReq) (*MediaUserListResp, error)
+ UpdateMediaAccount(context.Context, *UpdateMediaAccountReq) (*UpdateMediaAccountResp, error)
+ UnbindManager(context.Context, *UnbindManagerReq) (*emptypb.Empty, error)
+ BindManager(context.Context, *BindManagerReq) (*emptypb.Empty, error)
+ UpdateWorkImage(context.Context, *UpdateWorkImageReq) (*UpdateWorkImageResp, error)
+ UpdateWorkVideo(context.Context, *UpdateWorkVideoReq) (*UpdateWorkVideoResp, error)
+ WorkList(context.Context, *WorkListReq) (*WorkListResp, error)
+ mustEmbedUnimplementedCastServer()
+}
+
+// UnimplementedCastServer must be embedded to have forward compatible implementations.
+type UnimplementedCastServer struct {
+ proxyImpl protocol.Invoker
+}
+
+func (UnimplementedCastServer) MediaUserList(context.Context, *MediaUserListReq) (*MediaUserListResp, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MediaUserList not implemented")
+}
+func (UnimplementedCastServer) UpdateMediaAccount(context.Context, *UpdateMediaAccountReq) (*UpdateMediaAccountResp, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateMediaAccount not implemented")
+}
+func (UnimplementedCastServer) UnbindManager(context.Context, *UnbindManagerReq) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UnbindManager not implemented")
+}
+func (UnimplementedCastServer) BindManager(context.Context, *BindManagerReq) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method BindManager not implemented")
+}
+func (UnimplementedCastServer) UpdateWorkImage(context.Context, *UpdateWorkImageReq) (*UpdateWorkImageResp, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateWorkImage not implemented")
+}
+func (UnimplementedCastServer) UpdateWorkVideo(context.Context, *UpdateWorkVideoReq) (*UpdateWorkVideoResp, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateWorkVideo not implemented")
+}
+func (UnimplementedCastServer) WorkList(context.Context, *WorkListReq) (*WorkListResp, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method WorkList not implemented")
+}
+func (s *UnimplementedCastServer) XXX_SetProxyImpl(impl protocol.Invoker) {
+ s.proxyImpl = impl
+}
+
+func (s *UnimplementedCastServer) XXX_GetProxyImpl() protocol.Invoker {
+ return s.proxyImpl
+}
+
+func (s *UnimplementedCastServer) XXX_ServiceDesc() *grpc_go.ServiceDesc {
+ return &Cast_ServiceDesc
+}
+func (s *UnimplementedCastServer) XXX_InterfaceName() string {
+ return "Cast.Cast"
+}
+
+func (UnimplementedCastServer) mustEmbedUnimplementedCastServer() {}
+
+// UnsafeCastServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to CastServer will
+// result in compilation errors.
+type UnsafeCastServer interface {
+ mustEmbedUnimplementedCastServer()
+}
+
+func RegisterCastServer(s grpc_go.ServiceRegistrar, srv CastServer) {
+ s.RegisterService(&Cast_ServiceDesc, srv)
+}
+
+func _Cast_MediaUserList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
+ in := new(MediaUserListReq)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ base := srv.(dubbo3.Dubbo3GrpcService)
+ args := []interface{}{}
+ args = append(args, in)
+ md, _ := metadata.FromIncomingContext(ctx)
+ invAttachment := make(map[string]interface{}, len(md))
+ for k, v := range md {
+ invAttachment[k] = v
+ }
+ invo := invocation.NewRPCInvocation("MediaUserList", args, invAttachment)
+ if interceptor == nil {
+ result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
+ return result, result.Error()
+ }
+ info := &grpc_go.UnaryServerInfo{
+ Server: srv,
+ FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
+ return result, result.Error()
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Cast_UpdateMediaAccount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateMediaAccountReq)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ base := srv.(dubbo3.Dubbo3GrpcService)
+ args := []interface{}{}
+ args = append(args, in)
+ md, _ := metadata.FromIncomingContext(ctx)
+ invAttachment := make(map[string]interface{}, len(md))
+ for k, v := range md {
+ invAttachment[k] = v
+ }
+ invo := invocation.NewRPCInvocation("UpdateMediaAccount", args, invAttachment)
+ if interceptor == nil {
+ result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
+ return result, result.Error()
+ }
+ info := &grpc_go.UnaryServerInfo{
+ Server: srv,
+ FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
+ return result, result.Error()
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Cast_UnbindManager_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UnbindManagerReq)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ base := srv.(dubbo3.Dubbo3GrpcService)
+ args := []interface{}{}
+ args = append(args, in)
+ md, _ := metadata.FromIncomingContext(ctx)
+ invAttachment := make(map[string]interface{}, len(md))
+ for k, v := range md {
+ invAttachment[k] = v
+ }
+ invo := invocation.NewRPCInvocation("UnbindManager", args, invAttachment)
+ if interceptor == nil {
+ result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
+ return result, result.Error()
+ }
+ info := &grpc_go.UnaryServerInfo{
+ Server: srv,
+ FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
+ return result, result.Error()
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Cast_BindManager_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
+ in := new(BindManagerReq)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ base := srv.(dubbo3.Dubbo3GrpcService)
+ args := []interface{}{}
+ args = append(args, in)
+ md, _ := metadata.FromIncomingContext(ctx)
+ invAttachment := make(map[string]interface{}, len(md))
+ for k, v := range md {
+ invAttachment[k] = v
+ }
+ invo := invocation.NewRPCInvocation("BindManager", args, invAttachment)
+ if interceptor == nil {
+ result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
+ return result, result.Error()
+ }
+ info := &grpc_go.UnaryServerInfo{
+ Server: srv,
+ FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
+ return result, result.Error()
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Cast_UpdateWorkImage_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateWorkImageReq)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ base := srv.(dubbo3.Dubbo3GrpcService)
+ args := []interface{}{}
+ args = append(args, in)
+ md, _ := metadata.FromIncomingContext(ctx)
+ invAttachment := make(map[string]interface{}, len(md))
+ for k, v := range md {
+ invAttachment[k] = v
+ }
+ invo := invocation.NewRPCInvocation("UpdateWorkImage", args, invAttachment)
+ if interceptor == nil {
+ result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
+ return result, result.Error()
+ }
+ info := &grpc_go.UnaryServerInfo{
+ Server: srv,
+ FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
+ return result, result.Error()
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Cast_UpdateWorkVideo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateWorkVideoReq)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ base := srv.(dubbo3.Dubbo3GrpcService)
+ args := []interface{}{}
+ args = append(args, in)
+ md, _ := metadata.FromIncomingContext(ctx)
+ invAttachment := make(map[string]interface{}, len(md))
+ for k, v := range md {
+ invAttachment[k] = v
+ }
+ invo := invocation.NewRPCInvocation("UpdateWorkVideo", args, invAttachment)
+ if interceptor == nil {
+ result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
+ return result, result.Error()
+ }
+ info := &grpc_go.UnaryServerInfo{
+ Server: srv,
+ FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
+ return result, result.Error()
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Cast_WorkList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
+ in := new(WorkListReq)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ base := srv.(dubbo3.Dubbo3GrpcService)
+ args := []interface{}{}
+ args = append(args, in)
+ md, _ := metadata.FromIncomingContext(ctx)
+ invAttachment := make(map[string]interface{}, len(md))
+ for k, v := range md {
+ invAttachment[k] = v
+ }
+ invo := invocation.NewRPCInvocation("WorkList", args, invAttachment)
+ if interceptor == nil {
+ result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
+ return result, result.Error()
+ }
+ info := &grpc_go.UnaryServerInfo{
+ Server: srv,
+ FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
+ return result, result.Error()
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// Cast_ServiceDesc is the grpc_go.ServiceDesc for Cast service.
+// It's only intended for direct use with grpc_go.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var Cast_ServiceDesc = grpc_go.ServiceDesc{
+ ServiceName: "Cast.Cast",
+ HandlerType: (*CastServer)(nil),
+ Methods: []grpc_go.MethodDesc{
+ {
+ MethodName: "MediaUserList",
+ Handler: _Cast_MediaUserList_Handler,
+ },
+ {
+ MethodName: "UpdateMediaAccount",
+ Handler: _Cast_UpdateMediaAccount_Handler,
+ },
+ {
+ MethodName: "UnbindManager",
+ Handler: _Cast_UnbindManager_Handler,
+ },
+ {
+ MethodName: "BindManager",
+ Handler: _Cast_BindManager_Handler,
+ },
+ {
+ MethodName: "UpdateWorkImage",
+ Handler: _Cast_UpdateWorkImage_Handler,
+ },
+ {
+ MethodName: "UpdateWorkVideo",
+ Handler: _Cast_UpdateWorkVideo_Handler,
+ },
+ {
+ MethodName: "WorkList",
+ Handler: _Cast_WorkList_Handler,
+ },
+ },
+ Streams: []grpc_go.StreamDesc{},
+ Metadata: "pb/fiee/cast.proto",
+}
diff --git a/cmd/config/config.go b/cmd/config/config.go
index f02dec1..11d4629 100644
--- a/cmd/config/config.go
+++ b/cmd/config/config.go
@@ -109,6 +109,7 @@ type Redis struct {
type System struct {
Mode string
+ AppMode string
Version string
HttpPort string
Host string
diff --git a/conf/.gitignore b/conf/.gitignore
new file mode 100644
index 0000000..1dd36b4
--- /dev/null
+++ b/conf/.gitignore
@@ -0,0 +1,2 @@
+conf.ini
+dubbogo.yaml
\ No newline at end of file
diff --git a/conf/conf.ini b/conf/conf.ini
deleted file mode 100644
index 6992f1b..0000000
--- a/conf/conf.ini
+++ /dev/null
@@ -1,36 +0,0 @@
-[system]
-Domain = "fiee"
-AppMode = "debug"
-HttpPort = ":8085"
-Host = "http://127.0.0.1:8085"
-RedirectUri = "/api/redirect/url"
-
-[bos]
-Ak = "ALTAKxrqOQHnAN525Tb2GX4Bhe"
-Sk = "d2ecaa9d75114d3b9f42b99014198306"
-BucketName = "dci-file-new"
-BosUrl = ".bj.bcebos.com"
-BosBaseDir = "fonchain-main"
-BosHttp = "https://"
-BosDomain = "cdns.fontree.cn"
-[oss]
-AccessKeyId = "LTAI5tLz1fSK53FQAEC9uNSb"
-AccessKeySecret = "oGB9chrQzQzITXR2IGv37Ji5WxZh4j"
-Endpoint = "oss-cn-hangzhou.aliyuncs.com"
-BucketName = "fontree-test"
-BaseDir = "fonchain-main"
-CdnHost = "https://cdn-test.szjixun.cn"
-[redis]
-RedisDB = "2"
-RedisAddr = "127.0.0.1:6379"
-RedisPW = ""
-RedisDBNAme = "2"
-
-
-[ai]
-Host = "https://erpapi.fontree.cn"
-TelNum = "18021272627"
-Password = "Gy.123456"
-
-[service]
-IsHTTPS = false
\ No newline at end of file
diff --git a/conf/dubbogo.yaml b/conf/dubbogo.yaml
deleted file mode 100644
index 02a4946..0000000
--- a/conf/dubbogo.yaml
+++ /dev/null
@@ -1,29 +0,0 @@
-dubbo:
- registries:
- demoZK:
- protocol: zookeeper
- timeout: 5s
- address: 127.0.0.1:2181
- consumer:
- references:
- AccountClientImpl:
- protocol: tri
- retries: 0
- interface: com.fontree.microservices.common.Account
- filter: echo,metrics,token,accesslog,sign,tps,generic_service,execute
- params:
- .accessKeyId: "Accountksl"
- .secretAccessKey: "BSDY-FDF1-Fontree_account"
-
- AccountFieeClientImpl:
- protocol: tri
- retries: 0
- interface: com.fontree.microservices.common.micro.account.fiee
-# filter: cshutdown,sign,fonDomainFilter,fonValidateFilter
-# params:
-# .accessKeyId: "Accountksl"
-# .secretAccessKey: "BSDY-FDF1-Fontree_account"
- BundleClientImpl:
- protocol: tri
- retries: 0
- interface: com.fontree.microservices.fiee.bundle # must be compatible with grpc or dubbo-java
\ No newline at end of file
diff --git a/docs/dev/conf.ini b/docs/dev/conf.ini
index 90addfe..0761869 100644
--- a/docs/dev/conf.ini
+++ b/docs/dev/conf.ini
@@ -1,6 +1,6 @@
[system]
Domain = "artistinfo"
-AppMode = "debug"
+AppMode = "dev"
HttpPort = ":8085"
Host = "https://common.szjixun.cn"
RedirectUri = "/api/redirect/url"
diff --git a/docs/dev/dubbogo.yaml b/docs/dev/dubbogo.yaml
index 2c63f90..978d877 100644
--- a/docs/dev/dubbogo.yaml
+++ b/docs/dev/dubbogo.yaml
@@ -4,8 +4,8 @@ dubbo:
protocol: zookeeper
timeout: 3s
# address: 121.229.45.214:9004
- address: 172.16.100.93:2181
-# address: 127.0.0.1:2181
+# address: 172.16.100.93:2181
+ address: 127.0.0.1:2181
# address: 114.218.158.24:2181
consumer:
filter: tracing
@@ -42,3 +42,6 @@ dubbo:
params:
.accessKeyId: "Paymentksl"
.secretAccessKey: "BSDY-FDF1-Fontree_payment"
+ CastClientImpl:
+ protocol: tri
+ interface: com.fontree.microservices.fiee.multicast
diff --git a/docs/prod/conf.ini b/docs/prod/conf.ini
index 2c887ae..bd00c95 100644
--- a/docs/prod/conf.ini
+++ b/docs/prod/conf.ini
@@ -1,6 +1,6 @@
[system]
Domain = "artistinfo"
-AppMode = "debug"
+AppMode = "prod"
HttpPort = ":8085"
Host = "https://common.szjixun.cn"
RedirectUri = "/api/redirect/url"
diff --git a/docs/prod/dubbogo.yaml b/docs/prod/dubbogo.yaml
index d27078e..5441ec0 100644
--- a/docs/prod/dubbogo.yaml
+++ b/docs/prod/dubbogo.yaml
@@ -42,3 +42,6 @@ dubbo:
params:
.accessKeyId: "Paymentksl"
.secretAccessKey: "BSDY-FDF1-Fontree_payment"
+ CastClientImpl:
+ protocol: tri
+ interface: com.fontree.microservices.fiee.multicast
diff --git a/docs/test/conf.ini b/docs/test/conf.ini
index eff0c7d..7d85948 100644
--- a/docs/test/conf.ini
+++ b/docs/test/conf.ini
@@ -1,6 +1,6 @@
[system]
Domain = "artistinfo"
-AppMode = "debug"
+AppMode = "test"
HttpPort = ":8085"
Host = "https://common.szjixun.cn"
RedirectUri = "/api/redirect/url"
diff --git a/docs/test/dubbogo.yaml b/docs/test/dubbogo.yaml
index 8d599dc..c859a9e 100644
--- a/docs/test/dubbogo.yaml
+++ b/docs/test/dubbogo.yaml
@@ -4,5 +4,44 @@ dubbo:
protocol: zookeeper
timeout: 3s
# address: 121.229.45.214:9004
- address: 127.0.0.1:2181
- # address: 114.218.158.24:2181
\ No newline at end of file
+ address: 172.16.100.93:2181
+ # address: 127.0.0.1:2181
+ # address: 114.218.158.24:2181
+ consumer:
+ filter: tracing
+ request-timeout: 30s
+ references:
+ OrderClientImpl:
+ protocol: tri
+ retries: 0
+ interface: com.fontree.microservices.common.order # must be compatible with grpc or dubbo-java
+ # filter: cshutdown,sign,fonDomainFilter,fonValidateFilter
+ params:
+ .accessKeyId: "SYD8-order-04"
+ .secretAccessKey: "Al-order-FDF112"
+ BundleClientImpl:
+ protocol: tri
+ retries: 0
+ interface: com.fontree.microservices.fiee.bundle # must be compatible with grpc or dubbo-java
+ AccountClientImpl:
+ protocol: tri
+ retries: 0
+ interface: com.fontree.microservices.common.Account
+ filter: echo,metrics,token,accesslog,sign,tps,generic_service,execute
+ params:
+ .accessKeyId: "Accountksl"
+ .secretAccessKey: "BSDY-FDF1-Fontree_account"
+ AccountFieeClientImpl:
+ protocol: tri
+ retries: 3
+ interface: com.fontree.microservices.common.micro.account.fiee
+ # filter: echo,metrics,token,accesslog,sign,tps,generic_service,execute,pshutdown,auth,fonValidateFilter
+ PaymentCentClientImpl:
+ interface: com.fontree.microservices.common.payment # must be compatible with grpc or dubbo-java
+ filter: cshutdown,sign,auth
+ params:
+ .accessKeyId: "Paymentksl"
+ .secretAccessKey: "BSDY-FDF1-Fontree_payment"
+ CastClientImpl:
+ protocol: tri
+ interface: com.fontree.microservices.fiee.multicast
diff --git a/go.sum b/go.sum
index dd87352..d33406b 100644
--- a/go.sum
+++ b/go.sum
@@ -48,8 +48,8 @@ github.com/HdrHistogram/hdrhistogram-go v1.1.2 h1:5IcZpTvzydCQeHzK4Ef/D5rrSqwxob
github.com/HdrHistogram/hdrhistogram-go v1.1.2/go.mod h1:yDgFjdqOqDEKOvasDdhWNXYg9BVp4O+o5f6V/ehm6Oo=
github.com/Knetic/govaluate v3.0.1-0.20171022003610-9aa49832a739+incompatible/go.mod h1:r7JcOSlj0wfOMncg0iLm8Leh48TZaKVeNIfJntJ2wa0=
github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU=
-github.com/PuerkitoBio/goquery v1.8.1 h1:uQxhNlArOIdbrH1tr0UXwdVFgDcZDrZVdcpygAcwmWM=
-github.com/PuerkitoBio/goquery v1.8.1/go.mod h1:Q8ICL1kNUJ2sXGoAhPGUdYDJvgQgHzJsnnd3H7Ho5jQ=
+github.com/PuerkitoBio/goquery v1.10.3 h1:pFYcNSqHxBD06Fpj/KsbStFRsgRATgnf3LeXiUkhzPo=
+github.com/PuerkitoBio/goquery v1.10.3/go.mod h1:tMUX0zDMHXYlAQk6p35XxQMqMweEKB7iK7iLNd4RH4Y=
github.com/RoaringBitmap/roaring v1.1.0 h1:b10lZrZXaY6Q6EKIRrmOF519FIyQQ5anPgGr3niw2yY=
github.com/RoaringBitmap/roaring v1.1.0/go.mod h1:icnadbWcNyfEHlYdr+tDlOTih1Bf/h+rzPpv4sbomAA=
github.com/Shopify/sarama v1.19.0/go.mod h1:FVkBWblsNy7DGZRfXLU0O9RCGt5g3g3yEuWXgklEdEo=
@@ -76,8 +76,8 @@ github.com/aliyun/alibaba-cloud-sdk-go v1.61.18/go.mod h1:v8ESoHo4SyHmuB4b1tJqDH
github.com/aliyun/aliyun-oss-go-sdk v2.2.4+incompatible/go.mod h1:T/Aws4fEfogEE9v+HPhhw+CntffsBHJ8nXQCwKr0/g8=
github.com/aliyun/aliyun-oss-go-sdk v2.2.6+incompatible h1:KXeJoM1wo9I/6xPTyt6qCxoSZnmASiAjlrr0dyTUKt8=
github.com/aliyun/aliyun-oss-go-sdk v2.2.6+incompatible/go.mod h1:T/Aws4fEfogEE9v+HPhhw+CntffsBHJ8nXQCwKr0/g8=
-github.com/andybalholm/cascadia v1.3.1 h1:nhxRkql1kdYCc8Snf7D5/D3spOX+dBgjA6u8x004T2c=
-github.com/andybalholm/cascadia v1.3.1/go.mod h1:R4bJ1UQfqADjvDa4P6HZHLh/3OxWWEqc0Sk8XGwHqvA=
+github.com/andybalholm/cascadia v1.3.3 h1:AG2YHrzJIm4BZ19iwJ/DAua6Btl3IwJX+VI4kktS1LM=
+github.com/andybalholm/cascadia v1.3.3/go.mod h1:xNd9bqTn98Ln4DwST8/nG+H0yuB8Hmgu1YHNnWw0GeA=
github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY=
github.com/apache/dubbo-getty v1.4.8 h1:Q9WKXmVu4Dm16cMJHamegRbxpDiYaGIU+MnPGhJhNyk=
github.com/apache/dubbo-getty v1.4.8/go.mod h1:cPJlbcHUTNTpiboMQjMHhE9XBni11LiBiG8FdrDuVzk=
@@ -241,6 +241,8 @@ github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4
github.com/fsnotify/fsnotify v1.5.4/go.mod h1:OVB6XrOHzAwXMpEM7uPOzcehqUV2UqJxmVXmkdnm1bU=
github.com/fsnotify/fsnotify v1.6.0 h1:n+5WquG0fcWoWp6xPWfHdbskMCQaFnG6PfBrh1Ky4HY=
github.com/fsnotify/fsnotify v1.6.0/go.mod h1:sl3t1tCWJFWoRz9R8WJCbQihKKwmorjAbSClcnxKAGw=
+github.com/gabriel-vasile/mimetype v1.4.2 h1:w5qFW6JKBz9Y393Y4q372O9A7cUSequkh1Q7OhCmWKU=
+github.com/gabriel-vasile/mimetype v1.4.2/go.mod h1:zApsH/mKG4w07erKIaJPFiX0Tsq9BFQgN3qGY5GnNgA=
github.com/getsentry/raven-go v0.2.0/go.mod h1:KungGk8q33+aIAZUIVWZDr2OfAEBsO49PX4NzFV5kcQ=
github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk=
github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
@@ -252,8 +254,8 @@ github.com/gin-contrib/sse v0.1.0 h1:Y/yl/+YNO8GZSjAhjMsSuLt29uWRFHdHYUb5lYOV9qE
github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI=
github.com/gin-gonic/gin v1.7.4/go.mod h1:jD2toBW3GZUr5UMcdrwQA10I7RuaFOl/SGeDjXkfUtY=
github.com/gin-gonic/gin v1.8.1/go.mod h1:ji8BvRH1azfM+SYow9zQ6SZMvR8qOMZHmsCuWR9tTTk=
-github.com/gin-gonic/gin v1.9.0 h1:OjyFBKICoexlu99ctXNR2gg+c5pKrKMuyjgARg9qeY8=
-github.com/gin-gonic/gin v1.9.0/go.mod h1:W1Me9+hsUSyj3CePGrd1/QrKJMSJ1Tu/0hFEH89961k=
+github.com/gin-gonic/gin v1.9.1 h1:4idEAncQnU5cB7BeOkPtxjfCSye0AAm1R0RVIqJ+Jmg=
+github.com/gin-gonic/gin v1.9.1/go.mod h1:hPrL7YrpYKXt5YId3A/Tnip5kqbEAP+KLuI3SUcPTeU=
github.com/go-asn1-ber/asn1-ber v1.3.1/go.mod h1:hEBeB/ic+5LoWskz+yKT7vGhhPYkProFKoKdwZRWMe0=
github.com/go-co-op/gocron v1.9.0 h1:+V+DDenw3ryB7B+tK1bAIC5p0ruw4oX9IqAsdRnGIf0=
github.com/go-co-op/gocron v1.9.0/go.mod h1:DbJm9kdgr1sEvWpHCA7dFFs/PGHPMil9/97EXCRPr4k=
@@ -284,6 +286,7 @@ github.com/go-ole/go-ole v1.2.4 h1:nNBDSCOigTSiarFpYE9J/KtEA1IOW4CNeqT9TQDqCxI=
github.com/go-ole/go-ole v1.2.4/go.mod h1:XCwSNxSkXRo4vlyPy93sltvi/qJq0jqQhjqQNIwKuxM=
github.com/go-playground/assert/v2 v2.0.1/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4=
github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s=
+github.com/go-playground/assert/v2 v2.2.0/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4=
github.com/go-playground/locales v0.13.0/go.mod h1:taPMhCMXrRLJO55olJkUXHZBHCxTMfnGwq/HNwmWNS8=
github.com/go-playground/locales v0.14.0/go.mod h1:sawfccIbzZTqEDETgFXqTho0QybSa7l++s0DH+LDiLs=
github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/oXslEjJA=
@@ -295,8 +298,8 @@ github.com/go-playground/universal-translator v0.18.1/go.mod h1:xekY+UJKNuX9WP91
github.com/go-playground/validator/v10 v10.4.1/go.mod h1:nlOn6nFhuKACm19sB/8EGNn9GlaMV7XkbRSipzJ0Ii4=
github.com/go-playground/validator/v10 v10.10.0/go.mod h1:74x4gJWsvQexRdW8Pn3dXSGrTK4nAUsbPlLADvpJkos=
github.com/go-playground/validator/v10 v10.11.0/go.mod h1:i+3WkQ1FvaUjjxh1kSvIA4dMGDBiPU55YFDl0WbKdWU=
-github.com/go-playground/validator/v10 v10.11.2 h1:q3SHpufmypg+erIExEKUmsgmhDTyhcJ38oeKGACXohU=
-github.com/go-playground/validator/v10 v10.11.2/go.mod h1:NieE624vt4SCTJtD87arVLvdmjPAeV8BQlHtMnw9D7s=
+github.com/go-playground/validator/v10 v10.14.0 h1:vgvQWe3XCz3gIeFDm/HnTIbj6UGmg/+t63MyGU2n5js=
+github.com/go-playground/validator/v10 v10.14.0/go.mod h1:9iXMNT7sEkjXb0I+enO7QXmzG6QCsPWY4zveKFVRSyU=
github.com/go-redis/redis v6.15.9+incompatible h1:K0pv1D7EQUjfyoMql+r/jZqCLizCGKFlFgcHWWmHQjg=
github.com/go-redis/redis v6.15.9+incompatible/go.mod h1:NAIEuMOZ/fxfXJIrKDQDz8wamY7mA7PouImQ2Jvg6kA=
github.com/go-resty/resty/v2 v2.7.0 h1:me+K9p3uhSmXtrBZ4k9jcEAfJmuC8IivWHwaLZwPrFY=
@@ -385,8 +388,8 @@ github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/
github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.7/go.mod h1:n+brtR0CgQNWTVd5ZUFpTBC8YFBDLK/h/bpaJ8/DtOE=
github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
-github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
-github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
+github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
+github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs=
github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0=
@@ -578,8 +581,8 @@ github.com/mattn/go-isatty v0.0.10/go.mod h1:qgIWMr58cqv1PHHyhnkY9lrL7etaEgOFcME
github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU=
github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94=
github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=
-github.com/mattn/go-isatty v0.0.17 h1:BTarxUcIeDqL27Mc+vyvdWYSL28zpIhv3RoTdsLMPng=
-github.com/mattn/go-isatty v0.0.17/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=
+github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY=
+github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU=
github.com/matttproud/golang_protobuf_extensions v1.0.1 h1:4hp9jkHxhMHkqkrB3Ix0jegS5sx/RkqARlsWZ6pIwiU=
github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0=
@@ -954,8 +957,12 @@ golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0/go.mod h1:LzIPMQfyMNhhGPh
golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
-golang.org/x/crypto v0.19.0 h1:ENy+Az/9Y1vSrlrvBSyna3PITt4tiZLf7sgCjZBX7Wo=
+golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc=
golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU=
+golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8=
+golang.org/x/crypto v0.31.0/go.mod h1:kDsLvtWBEx7MV9tJOj9bnXsPbxwJQ6csT/x4KIN4Ssk=
+golang.org/x/crypto v0.37.0 h1:kJNSjF/Xp7kU0iB2Z+9viTPMW4EqqsrywMXLJOOsXSE=
+golang.org/x/crypto v0.37.0/go.mod h1:vg+k43peMZ0pUMhYmVAWysMK35e6ioLh3wB8ZCAfbVc=
golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20180807140117-3d87b88a115f/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
@@ -996,6 +1003,10 @@ golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
+golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
+golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
+golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
+golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
golang.org/x/net v0.0.0-20180530234432-1e491301e022/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
@@ -1041,15 +1052,19 @@ golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v
golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM=
golang.org/x/net v0.0.0-20210428140749-89ef3d95e781/go.mod h1:OJAsFXCWl8Ukc7SiCT/9KSuxbyM7479/AVlXFRxuMCk=
golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
-golang.org/x/net v0.0.0-20210916014120-12bc252f5db8/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20210917221730-978cfadd31cf/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20211029224645-99673261e6eb/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20211105192438-b53810dc28af/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
-golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
-golang.org/x/net v0.21.0 h1:AQyQV4dYCvJ7vGmJyKki9+PBdyvhkSd8EIx/qb0AYv4=
+golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
+golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
+golang.org/x/net v0.15.0/go.mod h1:idbUs1IY1+zTqbi8yxTbhexhEEk5ur9LInksu6HrEpk=
golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44=
+golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM=
+golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4=
+golang.org/x/net v0.39.0 h1:ZCu7HMWDxpXpaiKdhzIfaltL9Lp31x/3fCP11bc6/fY=
+golang.org/x/net v0.39.0/go.mod h1:X7NRbYVEA+ewNkCNyJ513WmMdQ3BineSwVtN2zD/d+E=
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
@@ -1070,8 +1085,13 @@ golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJ
golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o=
golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
+golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=
+golang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
+golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
+golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
+golang.org/x/sync v0.13.0 h1:AauUjRAJ9OSnvULf/ARrrVywoJDy0YS2AwQ98I37610=
+golang.org/x/sync v0.13.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA=
golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@@ -1150,11 +1170,23 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4=
-golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+golang.org/x/sys v0.32.0 h1:s77OFDvIQeibCmezSnk/q6iAfkdiQaJi4VzroCFrN20=
+golang.org/x/sys v0.32.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
+golang.org/x/telemetry v0.0.0-20240228155512-f48c80bd79b2/go.mod h1:TeRTkGYfJXctD9OcfyVLyj2J3IxLnKwHJR8f4D8a3YE=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
+golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo=
+golang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU=
+golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk=
+golang.org/x/term v0.20.0/go.mod h1:8UkIAJTvZgivsXaD6/pH6U9ecQzZ45awqEOzuCvwpFY=
+golang.org/x/term v0.27.0/go.mod h1:iMsnZpn0cago0GOrHO2+Y7u7JPn5AylBrcoWkElMTSM=
golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
@@ -1165,8 +1197,13 @@ golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
-golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=
+golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
+golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
+golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
+golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ=
+golang.org/x/text v0.24.0 h1:dd5Bzh4yt5KYA8f9CJHCP4FB4D51c2c6JvN37xJJkJ0=
+golang.org/x/text v0.24.0/go.mod h1:L8rBsPeo2pSS+xqN0d5u2ikmjtmoJbDBT1b7nHvFCdU=
golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
@@ -1233,6 +1270,9 @@ golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4f
golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
+golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
+golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58=
+golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
diff --git a/pkg/middleware/logging.go b/pkg/middleware/logging.go
index f58b6db..bfe95a3 100644
--- a/pkg/middleware/logging.go
+++ b/pkg/middleware/logging.go
@@ -2,7 +2,7 @@ package middleware
import (
"bytes"
- "io/ioutil"
+ "io"
"log"
"net"
"net/http"
@@ -24,11 +24,14 @@ func NewLogger() gin.HandlerFunc {
latencyTime := endTime.Sub(startTime) // 请求方式
path := c.Request.URL.Path
query := c.Request.URL.RawQuery
- data, _ := ioutil.ReadAll(c.Request.Body)
+ data, _ := io.ReadAll(c.Request.Body)
+ val := c.GetHeader("Accept-Language")
+ if val == "" {
+ c.Request.Header.Set("Accept-Language", "zh-CN")
+ }
log.Printf("[%s] %s %d %s %s %s %s %s %s", path, c.Request.Method, c.Writer.Status(), query,
string(data), c.ClientIP(), c.Request.UserAgent(), c.Errors.ByType(gin.ErrorTypePrivate).String(), latencyTime.String())
-
- c.Request.Body = ioutil.NopCloser(bytes.NewBuffer(data))
+ c.Request.Body = io.NopCloser(bytes.NewBuffer(data))
c.Next()
}
}
diff --git a/pkg/router/media.go b/pkg/router/media.go
new file mode 100644
index 0000000..3aa451a
--- /dev/null
+++ b/pkg/router/media.go
@@ -0,0 +1,27 @@
+package router
+
+import (
+ "fonchain-fiee/pkg/middleware"
+ "fonchain-fiee/pkg/service"
+ serviceCast "fonchain-fiee/pkg/service/cast"
+ "github.com/gin-gonic/gin"
+)
+
+func MediaRouter(r *gin.RouterGroup) {
+ //noAuth := r.Group("")
+ auth := r.Group("")
+ auth.Use(middleware.CheckWebLogin(service.AccountProvider))
+ media := auth.Group("media")
+ {
+ media.POST("user-list", serviceCast.MediaUserList)
+ media.POST("unbind-manager", serviceCast.UnbindManager)
+ media.POST("bind-manager", serviceCast.BindManager)
+ media.POST("update-account", serviceCast.UpdateMediaAccount)
+ }
+
+ work := auth.Group("work")
+ {
+ work.POST("update-work-image", serviceCast.UpdateWorkImage)
+ work.POST("update-work-video", serviceCast.UpdateWorkVideo)
+ }
+}
diff --git a/pkg/router/router.go b/pkg/router/router.go
index 0a34e19..d4535f6 100644
--- a/pkg/router/router.go
+++ b/pkg/router/router.go
@@ -41,6 +41,7 @@ func NewRouter() *gin.Engine {
BundleRouter(privateGroup)
BundleOrderRouter(privateGroup)
ValueAddBundleRouter(privateGroup)
+ MediaRouter(privateGroup)
{
v1.POST("version", version.Version) //版本号公共
diff --git a/pkg/service/cast/media.go b/pkg/service/cast/media.go
new file mode 100644
index 0000000..7ae9c55
--- /dev/null
+++ b/pkg/service/cast/media.go
@@ -0,0 +1,118 @@
+package cast
+
+import (
+ "context"
+ "errors"
+ "fonchain-fiee/api/accountFiee"
+ "fonchain-fiee/api/cast"
+ "fonchain-fiee/cmd/config"
+ "fonchain-fiee/pkg/e"
+ "fonchain-fiee/pkg/service"
+ "github.com/gin-gonic/gin"
+ "strconv"
+)
+
+func MediaUserList(ctx *gin.Context) {
+ var req *cast.MediaUserListReq
+ var err error
+ if err = ctx.ShouldBind(&req); err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ if err = req.Validate(); err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ resp, err := service.CastProvider.MediaUserList(ctx, req)
+ if err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ service.Success(ctx, resp)
+ return
+}
+
+func UnbindManager(ctx *gin.Context) {
+ var req *cast.UnbindManagerReq
+ var err error
+ if err = ctx.ShouldBind(&req); err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ if err = req.Validate(); err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ _, err = service.CastProvider.UnbindManager(ctx, req)
+ if err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ service.Success(ctx, nil)
+ return
+}
+
+func BindManager(ctx *gin.Context) {
+ var req *cast.BindManagerReq
+ var err error
+ if err = ctx.ShouldBind(&req); err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ if err = req.Validate(); err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ _, err = service.CastProvider.BindManager(ctx, req)
+ if err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ service.Success(ctx, nil)
+ return
+}
+
+func UpdateMediaAccount(ctx *gin.Context) {
+ var req *cast.UpdateMediaAccountReq
+ var infoResp *accountFiee.UserInfoResponse
+ var err error
+ if err = ctx.ShouldBind(&req); err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ if err = req.Validate(); err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ // 查询艺人的信息
+ // 字符串转整型
+ artistID, err := strconv.ParseUint(req.ArtistUuid, 10, 64)
+ if config.AppConfig.System.AppMode != "dev" {
+ infoResp, err = service.AccountFieeProvider.Info(context.Background(), &accountFiee.InfoRequest{
+ ID: artistID,
+ Domain: "app",
+ })
+ if err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ } else {
+ infoResp = &accountFiee.UserInfoResponse{
+ Name: "小波",
+ TelNum: "18288888888",
+ }
+ }
+ req.ArtistName = infoResp.Name
+ req.ArtistPhone = infoResp.TelNum
+ if _, ok := cast.PlatformType_name[int32(req.PlatformType)]; !ok {
+ service.Error(ctx, errors.New(e.GetMsg(e.InvalidParams)))
+ return
+ }
+ resp, err := service.CastProvider.UpdateMediaAccount(ctx, req)
+ if err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ service.Success(ctx, resp)
+ return
+}
diff --git a/pkg/service/cast/work.go b/pkg/service/cast/work.go
new file mode 100644
index 0000000..7f29e26
--- /dev/null
+++ b/pkg/service/cast/work.go
@@ -0,0 +1,79 @@
+package cast
+
+import (
+ "context"
+ "fonchain-fiee/api/accountFiee"
+ "fonchain-fiee/api/cast"
+ "fonchain-fiee/cmd/config"
+ "fonchain-fiee/pkg/service"
+ "github.com/gin-gonic/gin"
+ "strconv"
+)
+
+func UpdateWorkImage(ctx *gin.Context) {
+ var req *cast.UpdateWorkImageReq
+ var infoResp *accountFiee.UserInfoResponse
+ var err error
+ if err = ctx.ShouldBind(&req); err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ if config.AppConfig.System.AppMode != "dev" {
+ artistId, _ := strconv.ParseUint(req.ArtistUuid, 10, 64)
+ infoResp, err = service.AccountFieeProvider.Info(context.Background(), &accountFiee.InfoRequest{
+ ID: artistId,
+ Domain: "app",
+ })
+ if err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ } else {
+ infoResp = &accountFiee.UserInfoResponse{
+ Name: "小波",
+ TelNum: "18288888888",
+ }
+ }
+ req.ArtistPhone = infoResp.TelNum
+ resp, err := service.CastProvider.UpdateWorkImage(ctx, req)
+ if err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ service.Success(ctx, resp)
+ return
+}
+
+func UpdateWorkVideo(ctx *gin.Context) {
+ var req *cast.UpdateWorkVideoReq
+ var infoResp *accountFiee.UserInfoResponse
+ var err error
+ if err = ctx.ShouldBind(&req); err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ if config.AppConfig.System.AppMode != "dev" {
+ artistId, _ := strconv.ParseUint(req.ArtistUuid, 10, 64)
+ infoResp, err = service.AccountFieeProvider.Info(context.Background(), &accountFiee.InfoRequest{
+ ID: artistId,
+ Domain: "app",
+ })
+ if err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ } else {
+ infoResp = &accountFiee.UserInfoResponse{
+ Name: "小波",
+ TelNum: "18288888888",
+ }
+ }
+ req.ArtistPhone = infoResp.TelNum
+ resp, err := service.CastProvider.UpdateWorkVideo(ctx, req)
+ if err != nil {
+ service.Error(ctx, err)
+ return
+ }
+ service.Success(ctx, resp)
+ return
+}
diff --git a/pkg/service/init.go b/pkg/service/init.go
index d849aca..aa6c72a 100644
--- a/pkg/service/init.go
+++ b/pkg/service/init.go
@@ -8,6 +8,7 @@ import (
"fonchain-fiee/api/account"
"fonchain-fiee/api/accountFiee"
"fonchain-fiee/api/bundle"
+ "fonchain-fiee/api/cast"
"fonchain-fiee/api/order"
"fonchain-fiee/api/payment"
pkConfig "fonchain-fiee/pkg/config"
@@ -20,6 +21,7 @@ var AccountFieeProvider = new(accountFiee.AccountFieeClientImpl)
var BundleProvider = new(bundle.BundleClientImpl)
var OrderProvider = new(order.OrderClientImpl)
var PaymentProvider = new(payment.PaymentCentClientImpl)
+var CastProvider = new(cast.CastClientImpl)
func init() {
config.SetConsumerService(BundleProvider)
@@ -27,6 +29,7 @@ func init() {
config.SetConsumerService(AccountProvider)
config.SetConsumerService(PaymentProvider)
config.SetConsumerService(AccountFieeProvider)
+ config.SetConsumerService(CastProvider)
if err := config.Load(); err != nil {
panic(err)