Преглед на файлове

独立用户是否关注某人的接口

wfz преди 3 години
родител
ревизия
0b7b95f68f

+ 101 - 49
api/common/common.pb.go

@@ -2248,7 +2248,6 @@ type ChatRoomMsg struct {
 	Self        *ChatPersonMsg `protobuf:"bytes,2,opt,name=self,proto3" json:"self"`                // 自己的信息
 	Other       *ChatPersonMsg `protobuf:"bytes,3,opt,name=other,proto3" json:"other"`              // 对方的信息
 	Likeability int64          `protobuf:"varint,5,opt,name=likeability,proto3" json:"likeability"` // 对对方的好感度
-	IsSubscribe bool           `protobuf:"varint,6,opt,name=isSubscribe,proto3" json:"isSubscribe"` // 是否关注
 }
 
 func (x *ChatRoomMsg) Reset() {
@@ -2311,13 +2310,6 @@ func (x *ChatRoomMsg) GetLikeability() int64 {
 	return 0
 }
 
-func (x *ChatRoomMsg) GetIsSubscribe() bool {
-	if x != nil {
-		return x.IsSubscribe
-	}
-	return false
-}
-
 type ChatPersonMsg struct {
 	state         protoimpl.MessageState
 	sizeCache     protoimpl.SizeCache
@@ -2657,6 +2649,53 @@ func (x *FindChatRecordListRequest) GetRoomId() int64 {
 	return 0
 }
 
+type IsLike struct {
+	state         protoimpl.MessageState
+	sizeCache     protoimpl.SizeCache
+	unknownFields protoimpl.UnknownFields
+
+	IsLike bool `protobuf:"varint,1,opt,name=isLike,proto3" json:"isLike"` // 是否喜欢(关注)
+}
+
+func (x *IsLike) Reset() {
+	*x = IsLike{}
+	if protoimpl.UnsafeEnabled {
+		mi := &file_common_proto_msgTypes[37]
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		ms.StoreMessageInfo(mi)
+	}
+}
+
+func (x *IsLike) String() string {
+	return protoimpl.X.MessageStringOf(x)
+}
+
+func (*IsLike) ProtoMessage() {}
+
+func (x *IsLike) ProtoReflect() protoreflect.Message {
+	mi := &file_common_proto_msgTypes[37]
+	if protoimpl.UnsafeEnabled && x != nil {
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		if ms.LoadMessageInfo() == nil {
+			ms.StoreMessageInfo(mi)
+		}
+		return ms
+	}
+	return mi.MessageOf(x)
+}
+
+// Deprecated: Use IsLike.ProtoReflect.Descriptor instead.
+func (*IsLike) Descriptor() ([]byte, []int) {
+	return file_common_proto_rawDescGZIP(), []int{37}
+}
+
+func (x *IsLike) GetIsLike() bool {
+	if x != nil {
+		return x.IsLike
+	}
+	return false
+}
+
 var File_common_proto protoreflect.FileDescriptor
 
 var file_common_proto_rawDesc = []byte{
@@ -2915,7 +2954,7 @@ var file_common_proto_rawDesc = []byte{
 	0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65,
 	0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x16,
 	0x0a, 0x06, 0x6e, 0x65, 0x78, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06,
-	0x6e, 0x65, 0x78, 0x74, 0x49, 0x64, 0x22, 0xc9, 0x01, 0x0a, 0x0b, 0x43, 0x68, 0x61, 0x74, 0x52,
+	0x6e, 0x65, 0x78, 0x74, 0x49, 0x64, 0x22, 0xa7, 0x01, 0x0a, 0x0b, 0x43, 0x68, 0x61, 0x74, 0x52,
 	0x6f, 0x6f, 0x6d, 0x4d, 0x73, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64,
 	0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x2d,
 	0x0a, 0x04, 0x73, 0x65, 0x6c, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x61,
@@ -2926,44 +2965,44 @@ var file_common_proto_rawDesc = []byte{
 	0x72, 0x73, 0x6f, 0x6e, 0x4d, 0x73, 0x67, 0x52, 0x05, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x12, 0x20,
 	0x0a, 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20,
 	0x01, 0x28, 0x03, 0x52, 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79,
-	0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x18,
-	0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69,
-	0x62, 0x65, 0x22, 0x67, 0x0a, 0x0d, 0x43, 0x68, 0x61, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e,
-	0x4d, 0x73, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
-	0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
-	0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e,
-	0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e,
-	0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x04, 0x20,
-	0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x22, 0xdb, 0x01, 0x0a, 0x0e,
-	0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1c,
-	0x0a, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
-	0x03, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07,
-	0x6d, 0x73, 0x67, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d,
-	0x73, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2d, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
-	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f,
-	0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x07, 0x6d, 0x65,
-	0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18,
-	0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x16, 0x0a,
-	0x06, 0x69, 0x73, 0x53, 0x65, 0x6c, 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69,
-	0x73, 0x53, 0x65, 0x6c, 0x66, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d,
-	0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d,
-	0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28,
-	0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x5d, 0x0a, 0x07, 0x4d, 0x65, 0x73,
-	0x73, 0x61, 0x67, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18,
-	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x20,
-	0x0a, 0x0b, 0x6d, 0x61, 0x74, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x55, 0x72, 0x6c, 0x18, 0x02, 0x20,
-	0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x74, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x55, 0x72, 0x6c,
-	0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03,
-	0x52, 0x06, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x22, 0x30, 0x0a, 0x16, 0x46, 0x69, 0x6e, 0x64,
-	0x43, 0x68, 0x61, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65,
-	0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01,
-	0x28, 0x03, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x22, 0x63, 0x0a, 0x19, 0x46, 0x69,
-	0x6e, 0x64, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x4c, 0x69, 0x73, 0x74,
-	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x65, 0x78, 0x74, 0x49,
-	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x65, 0x78, 0x74, 0x49, 0x64, 0x12,
-	0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52,
-	0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49,
-	0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x42,
+	0x22, 0x67, 0x0a, 0x0d, 0x43, 0x68, 0x61, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x4d, 0x73,
+	0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69,
+	0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+	0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d,
+	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d,
+	0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28,
+	0x09, 0x52, 0x06, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x22, 0xdb, 0x01, 0x0a, 0x0e, 0x43, 0x68,
+	0x61, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1c, 0x0a, 0x09,
+	0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52,
+	0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x73,
+	0x67, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x73, 0x67,
+	0x54, 0x79, 0x70, 0x65, 0x12, 0x2d, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18,
+	0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d,
+	0x6f, 0x6e, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73,
+	0x61, 0x67, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x04, 0x20,
+	0x01, 0x28, 0x03, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x69,
+	0x73, 0x53, 0x65, 0x6c, 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x53,
+	0x65, 0x6c, 0x66, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18,
+	0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12,
+	0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52,
+	0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x5d, 0x0a, 0x07, 0x4d, 0x65, 0x73, 0x73, 0x61,
+	0x67, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20,
+	0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b,
+	0x6d, 0x61, 0x74, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x55, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28,
+	0x09, 0x52, 0x0b, 0x6d, 0x61, 0x74, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x55, 0x72, 0x6c, 0x12, 0x16,
+	0x0a, 0x06, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06,
+	0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x22, 0x30, 0x0a, 0x16, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x68,
+	0x61, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+	0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
+	0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x22, 0x63, 0x0a, 0x19, 0x46, 0x69, 0x6e, 0x64,
+	0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65,
+	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x65, 0x78, 0x74, 0x49, 0x64, 0x18,
+	0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x65, 0x78, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a,
+	0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f,
+	0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18,
+	0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x22, 0x20, 0x0a,
+	0x06, 0x49, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x4c, 0x69, 0x6b,
+	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x42,
 	0x43, 0x0a, 0x0a, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x50, 0x01, 0x5a,
 	0x33, 0x67, 0x69, 0x74, 0x2e, 0x69, 0x6b, 0x75, 0x62, 0x61, 0x6e, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
 	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x77, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
@@ -2983,7 +3022,7 @@ func file_common_proto_rawDescGZIP() []byte {
 	return file_common_proto_rawDescData
 }
 
-var file_common_proto_msgTypes = make([]protoimpl.MessageInfo, 37)
+var file_common_proto_msgTypes = make([]protoimpl.MessageInfo, 38)
 var file_common_proto_goTypes = []interface{}{
 	(*UserAndPartnerIdentifyIdParam)(nil), // 0: api.common.UserAndPartnerIdentifyIdParam
 	(*UserAndPartnerParam)(nil),           // 1: api.common.UserAndPartnerParam
@@ -3022,6 +3061,7 @@ var file_common_proto_goTypes = []interface{}{
 	(*Message)(nil),                       // 34: api.common.Message
 	(*FindChatRoomMsgRequest)(nil),        // 35: api.common.FindChatRoomMsgRequest
 	(*FindChatRecordListRequest)(nil),     // 36: api.common.FindChatRecordListRequest
+	(*IsLike)(nil),                        // 37: api.common.IsLike
 }
 var file_common_proto_depIdxs = []int32{
 	24, // 0: api.common.HomeInfo.tagList:type_name -> api.common.TagList
@@ -3489,6 +3529,18 @@ func file_common_proto_init() {
 				return nil
 			}
 		}
+		file_common_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
+			switch v := v.(*IsLike); i {
+			case 0:
+				return &v.state
+			case 1:
+				return &v.sizeCache
+			case 2:
+				return &v.unknownFields
+			default:
+				return nil
+			}
+		}
 	}
 	type x struct{}
 	out := protoimpl.TypeBuilder{
@@ -3496,7 +3548,7 @@ func file_common_proto_init() {
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
 			RawDescriptor: file_common_proto_rawDesc,
 			NumEnums:      0,
-			NumMessages:   37,
+			NumMessages:   38,
 			NumExtensions: 0,
 			NumServices:   0,
 		},

+ 4 - 1
api/common/common.proto

@@ -236,7 +236,6 @@ message ChatRoomMsg{
   ChatPersonMsg self = 2; // 自己的信息
   ChatPersonMsg other = 3; // 对方的信息
   int64 likeability = 5; // 对对方的好感度
-  bool isSubscribe = 6; // 是否关注
 }
 
 message ChatPersonMsg{
@@ -272,4 +271,8 @@ message FindChatRecordListRequest{
   int64 nextId = 1;
   int64 offset = 2;
   int64 roomId = 3;
+}
+
+message IsLike{
+  bool isLike = 1;// 是否喜欢(关注)
 }

+ 267 - 329
api/statistics/statistics.pb.go

@@ -22,53 +22,6 @@ const (
 	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
 )
 
-type IsLike struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	IsLike bool `protobuf:"varint,1,opt,name=isLike,proto3" json:"isLike"` // 是否喜欢(关注)该用户
-}
-
-func (x *IsLike) Reset() {
-	*x = IsLike{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_statistics_proto_msgTypes[0]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *IsLike) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*IsLike) ProtoMessage() {}
-
-func (x *IsLike) ProtoReflect() protoreflect.Message {
-	mi := &file_statistics_proto_msgTypes[0]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use IsLike.ProtoReflect.Descriptor instead.
-func (*IsLike) Descriptor() ([]byte, []int) {
-	return file_statistics_proto_rawDescGZIP(), []int{0}
-}
-
-func (x *IsLike) GetIsLike() bool {
-	if x != nil {
-		return x.IsLike
-	}
-	return false
-}
-
 type AddTodayProfitRequest struct {
 	state         protoimpl.MessageState
 	sizeCache     protoimpl.SizeCache
@@ -81,7 +34,7 @@ type AddTodayProfitRequest struct {
 func (x *AddTodayProfitRequest) Reset() {
 	*x = AddTodayProfitRequest{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_statistics_proto_msgTypes[1]
+		mi := &file_statistics_proto_msgTypes[0]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -94,7 +47,7 @@ func (x *AddTodayProfitRequest) String() string {
 func (*AddTodayProfitRequest) ProtoMessage() {}
 
 func (x *AddTodayProfitRequest) ProtoReflect() protoreflect.Message {
-	mi := &file_statistics_proto_msgTypes[1]
+	mi := &file_statistics_proto_msgTypes[0]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -107,7 +60,7 @@ func (x *AddTodayProfitRequest) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use AddTodayProfitRequest.ProtoReflect.Descriptor instead.
 func (*AddTodayProfitRequest) Descriptor() ([]byte, []int) {
-	return file_statistics_proto_rawDescGZIP(), []int{1}
+	return file_statistics_proto_rawDescGZIP(), []int{0}
 }
 
 func (x *AddTodayProfitRequest) GetPersonID() string {
@@ -137,7 +90,7 @@ type GetLookAndLikeStatisticsMessageRequest struct {
 func (x *GetLookAndLikeStatisticsMessageRequest) Reset() {
 	*x = GetLookAndLikeStatisticsMessageRequest{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_statistics_proto_msgTypes[2]
+		mi := &file_statistics_proto_msgTypes[1]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -150,7 +103,7 @@ func (x *GetLookAndLikeStatisticsMessageRequest) String() string {
 func (*GetLookAndLikeStatisticsMessageRequest) ProtoMessage() {}
 
 func (x *GetLookAndLikeStatisticsMessageRequest) ProtoReflect() protoreflect.Message {
-	mi := &file_statistics_proto_msgTypes[2]
+	mi := &file_statistics_proto_msgTypes[1]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -163,7 +116,7 @@ func (x *GetLookAndLikeStatisticsMessageRequest) ProtoReflect() protoreflect.Mes
 
 // Deprecated: Use GetLookAndLikeStatisticsMessageRequest.ProtoReflect.Descriptor instead.
 func (*GetLookAndLikeStatisticsMessageRequest) Descriptor() ([]byte, []int) {
-	return file_statistics_proto_rawDescGZIP(), []int{2}
+	return file_statistics_proto_rawDescGZIP(), []int{1}
 }
 
 func (x *GetLookAndLikeStatisticsMessageRequest) GetPersonID() string {
@@ -198,7 +151,7 @@ type ReceptionMsg struct {
 func (x *ReceptionMsg) Reset() {
 	*x = ReceptionMsg{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_statistics_proto_msgTypes[3]
+		mi := &file_statistics_proto_msgTypes[2]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -211,7 +164,7 @@ func (x *ReceptionMsg) String() string {
 func (*ReceptionMsg) ProtoMessage() {}
 
 func (x *ReceptionMsg) ProtoReflect() protoreflect.Message {
-	mi := &file_statistics_proto_msgTypes[3]
+	mi := &file_statistics_proto_msgTypes[2]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -224,7 +177,7 @@ func (x *ReceptionMsg) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use ReceptionMsg.ProtoReflect.Descriptor instead.
 func (*ReceptionMsg) Descriptor() ([]byte, []int) {
-	return file_statistics_proto_rawDescGZIP(), []int{3}
+	return file_statistics_proto_rawDescGZIP(), []int{2}
 }
 
 func (x *ReceptionMsg) GetTodayReceptionNum() int64 {
@@ -245,7 +198,7 @@ type TodayProfitMsg struct {
 func (x *TodayProfitMsg) Reset() {
 	*x = TodayProfitMsg{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_statistics_proto_msgTypes[4]
+		mi := &file_statistics_proto_msgTypes[3]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -258,7 +211,7 @@ func (x *TodayProfitMsg) String() string {
 func (*TodayProfitMsg) ProtoMessage() {}
 
 func (x *TodayProfitMsg) ProtoReflect() protoreflect.Message {
-	mi := &file_statistics_proto_msgTypes[4]
+	mi := &file_statistics_proto_msgTypes[3]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -271,7 +224,7 @@ func (x *TodayProfitMsg) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use TodayProfitMsg.ProtoReflect.Descriptor instead.
 func (*TodayProfitMsg) Descriptor() ([]byte, []int) {
-	return file_statistics_proto_rawDescGZIP(), []int{4}
+	return file_statistics_proto_rawDescGZIP(), []int{3}
 }
 
 func (x *TodayProfitMsg) GetTodayProfit() int64 {
@@ -293,7 +246,7 @@ type LookAndLikeListReply struct {
 func (x *LookAndLikeListReply) Reset() {
 	*x = LookAndLikeListReply{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_statistics_proto_msgTypes[5]
+		mi := &file_statistics_proto_msgTypes[4]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -306,7 +259,7 @@ func (x *LookAndLikeListReply) String() string {
 func (*LookAndLikeListReply) ProtoMessage() {}
 
 func (x *LookAndLikeListReply) ProtoReflect() protoreflect.Message {
-	mi := &file_statistics_proto_msgTypes[5]
+	mi := &file_statistics_proto_msgTypes[4]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -319,7 +272,7 @@ func (x *LookAndLikeListReply) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use LookAndLikeListReply.ProtoReflect.Descriptor instead.
 func (*LookAndLikeListReply) Descriptor() ([]byte, []int) {
-	return file_statistics_proto_rawDescGZIP(), []int{5}
+	return file_statistics_proto_rawDescGZIP(), []int{4}
 }
 
 func (x *LookAndLikeListReply) GetList() []*LookAndLikeListInfo {
@@ -358,7 +311,7 @@ type LookAndLikeListInfo struct {
 func (x *LookAndLikeListInfo) Reset() {
 	*x = LookAndLikeListInfo{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_statistics_proto_msgTypes[6]
+		mi := &file_statistics_proto_msgTypes[5]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -371,7 +324,7 @@ func (x *LookAndLikeListInfo) String() string {
 func (*LookAndLikeListInfo) ProtoMessage() {}
 
 func (x *LookAndLikeListInfo) ProtoReflect() protoreflect.Message {
-	mi := &file_statistics_proto_msgTypes[6]
+	mi := &file_statistics_proto_msgTypes[5]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -384,7 +337,7 @@ func (x *LookAndLikeListInfo) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use LookAndLikeListInfo.ProtoReflect.Descriptor instead.
 func (*LookAndLikeListInfo) Descriptor() ([]byte, []int) {
-	return file_statistics_proto_rawDescGZIP(), []int{6}
+	return file_statistics_proto_rawDescGZIP(), []int{5}
 }
 
 func (x *LookAndLikeListInfo) GetId() string {
@@ -485,7 +438,7 @@ type GetLookAndLikeListRequest struct {
 func (x *GetLookAndLikeListRequest) Reset() {
 	*x = GetLookAndLikeListRequest{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_statistics_proto_msgTypes[7]
+		mi := &file_statistics_proto_msgTypes[6]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -498,7 +451,7 @@ func (x *GetLookAndLikeListRequest) String() string {
 func (*GetLookAndLikeListRequest) ProtoMessage() {}
 
 func (x *GetLookAndLikeListRequest) ProtoReflect() protoreflect.Message {
-	mi := &file_statistics_proto_msgTypes[7]
+	mi := &file_statistics_proto_msgTypes[6]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -511,7 +464,7 @@ func (x *GetLookAndLikeListRequest) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use GetLookAndLikeListRequest.ProtoReflect.Descriptor instead.
 func (*GetLookAndLikeListRequest) Descriptor() ([]byte, []int) {
-	return file_statistics_proto_rawDescGZIP(), []int{7}
+	return file_statistics_proto_rawDescGZIP(), []int{6}
 }
 
 func (x *GetLookAndLikeListRequest) GetPersonID() string {
@@ -558,7 +511,7 @@ type LookAndLikeMessageReply struct {
 func (x *LookAndLikeMessageReply) Reset() {
 	*x = LookAndLikeMessageReply{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_statistics_proto_msgTypes[8]
+		mi := &file_statistics_proto_msgTypes[7]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -571,7 +524,7 @@ func (x *LookAndLikeMessageReply) String() string {
 func (*LookAndLikeMessageReply) ProtoMessage() {}
 
 func (x *LookAndLikeMessageReply) ProtoReflect() protoreflect.Message {
-	mi := &file_statistics_proto_msgTypes[8]
+	mi := &file_statistics_proto_msgTypes[7]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -584,7 +537,7 @@ func (x *LookAndLikeMessageReply) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use LookAndLikeMessageReply.ProtoReflect.Descriptor instead.
 func (*LookAndLikeMessageReply) Descriptor() ([]byte, []int) {
-	return file_statistics_proto_rawDescGZIP(), []int{8}
+	return file_statistics_proto_rawDescGZIP(), []int{7}
 }
 
 func (x *LookAndLikeMessageReply) GetLikeNum() int64 {
@@ -642,7 +595,7 @@ type LookMessageReply struct {
 func (x *LookMessageReply) Reset() {
 	*x = LookMessageReply{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_statistics_proto_msgTypes[9]
+		mi := &file_statistics_proto_msgTypes[8]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -655,7 +608,7 @@ func (x *LookMessageReply) String() string {
 func (*LookMessageReply) ProtoMessage() {}
 
 func (x *LookMessageReply) ProtoReflect() protoreflect.Message {
-	mi := &file_statistics_proto_msgTypes[9]
+	mi := &file_statistics_proto_msgTypes[8]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -668,7 +621,7 @@ func (x *LookMessageReply) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use LookMessageReply.ProtoReflect.Descriptor instead.
 func (*LookMessageReply) Descriptor() ([]byte, []int) {
-	return file_statistics_proto_rawDescGZIP(), []int{9}
+	return file_statistics_proto_rawDescGZIP(), []int{8}
 }
 
 func (x *LookMessageReply) GetLookNum() int64 {
@@ -706,7 +659,7 @@ type PersonMessage struct {
 func (x *PersonMessage) Reset() {
 	*x = PersonMessage{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_statistics_proto_msgTypes[10]
+		mi := &file_statistics_proto_msgTypes[9]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -719,7 +672,7 @@ func (x *PersonMessage) String() string {
 func (*PersonMessage) ProtoMessage() {}
 
 func (x *PersonMessage) ProtoReflect() protoreflect.Message {
-	mi := &file_statistics_proto_msgTypes[10]
+	mi := &file_statistics_proto_msgTypes[9]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -732,7 +685,7 @@ func (x *PersonMessage) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use PersonMessage.ProtoReflect.Descriptor instead.
 func (*PersonMessage) Descriptor() ([]byte, []int) {
-	return file_statistics_proto_rawDescGZIP(), []int{10}
+	return file_statistics_proto_rawDescGZIP(), []int{9}
 }
 
 func (x *PersonMessage) GetPersonID() string {
@@ -776,7 +729,7 @@ type ReceptionMessage struct {
 func (x *ReceptionMessage) Reset() {
 	*x = ReceptionMessage{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_statistics_proto_msgTypes[11]
+		mi := &file_statistics_proto_msgTypes[10]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -789,7 +742,7 @@ func (x *ReceptionMessage) String() string {
 func (*ReceptionMessage) ProtoMessage() {}
 
 func (x *ReceptionMessage) ProtoReflect() protoreflect.Message {
-	mi := &file_statistics_proto_msgTypes[11]
+	mi := &file_statistics_proto_msgTypes[10]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -802,7 +755,7 @@ func (x *ReceptionMessage) ProtoReflect() protoreflect.Message {
 
 // Deprecated: Use ReceptionMessage.ProtoReflect.Descriptor instead.
 func (*ReceptionMessage) Descriptor() ([]byte, []int) {
-	return file_statistics_proto_rawDescGZIP(), []int{11}
+	return file_statistics_proto_rawDescGZIP(), []int{10}
 }
 
 func (x *ReceptionMessage) GetPersonID() string {
@@ -834,193 +787,190 @@ var file_statistics_proto_rawDesc = []byte{
 	0x63, 0x73, 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,
 	0x17, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x63, 0x6f, 0x6d, 0x6d,
-	0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x20, 0x0a, 0x06, 0x49, 0x73, 0x4c, 0x69,
-	0x6b, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x18, 0x01, 0x20, 0x01,
-	0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x22, 0x4b, 0x0a, 0x15, 0x41, 0x64,
-	0x64, 0x54, 0x6f, 0x64, 0x61, 0x79, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75,
-	0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x18,
-	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x12,
-	0x16, 0x0a, 0x06, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52,
-	0x06, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x22, 0x7c, 0x0a, 0x26, 0x47, 0x65, 0x74, 0x4c, 0x6f,
-	0x6f, 0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74,
-	0x69, 0x63, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+	0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x4b, 0x0a, 0x15, 0x41, 0x64, 0x64, 0x54,
+	0x6f, 0x64, 0x61, 0x79, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
 	0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20,
-	0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x1e, 0x0a,
-	0x0a, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
-	0x09, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a,
-	0x06, 0x69, 0x73, 0x53, 0x65, 0x6c, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69,
-	0x73, 0x53, 0x65, 0x6c, 0x66, 0x22, 0x3c, 0x0a, 0x0c, 0x52, 0x65, 0x63, 0x65, 0x70, 0x74, 0x69,
-	0x6f, 0x6e, 0x4d, 0x73, 0x67, 0x12, 0x2c, 0x0a, 0x11, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x52, 0x65,
-	0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
-	0x52, 0x11, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x52, 0x65, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e,
-	0x4e, 0x75, 0x6d, 0x22, 0x32, 0x0a, 0x0e, 0x54, 0x6f, 0x64, 0x61, 0x79, 0x50, 0x72, 0x6f, 0x66,
-	0x69, 0x74, 0x4d, 0x73, 0x67, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x50, 0x72,
-	0x6f, 0x66, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x74, 0x6f, 0x64, 0x61,
-	0x79, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x22, 0x67, 0x0a, 0x14, 0x4c, 0x6f, 0x6f, 0x6b, 0x41,
-	0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12,
-	0x37, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e,
-	0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x4c,
-	0x6f, 0x6f, 0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e,
-	0x66, 0x6f, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x65, 0x78, 0x74,
-	0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x65, 0x78, 0x74, 0x49, 0x64,
-	0x22, 0xd5, 0x02, 0x0a, 0x13, 0x4c, 0x6f, 0x6f, 0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65,
-	0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
-	0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65,
-	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08,
-	0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
-	0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x76, 0x61, 0x74,
-	0x61, 0x72, 0x55, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61,
-	0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x78, 0x18, 0x05, 0x20,
-	0x01, 0x28, 0x03, 0x52, 0x03, 0x73, 0x65, 0x78, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x67, 0x65, 0x18,
-	0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x61, 0x67, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f,
-	0x6e, 0x73, 0x74, 0x65, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28,
-	0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x65, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e,
-	0x12, 0x22, 0x0a, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x4c, 0x6f, 0x6f, 0x6b, 0x54, 0x69, 0x6d, 0x65,
-	0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x4c, 0x6f, 0x6f, 0x6b,
-	0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x73, 0x48, 0x61, 0x76, 0x65, 0x50, 0x69,
-	0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x48,
-	0x61, 0x76, 0x65, 0x50, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73,
-	0x48, 0x61, 0x76, 0x65, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52,
-	0x0b, 0x69, 0x73, 0x48, 0x61, 0x76, 0x65, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06,
-	0x69, 0x73, 0x4c, 0x6f, 0x63, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73,
-	0x4c, 0x6f, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x69, 0x74, 0x79, 0x18, 0x0d, 0x20, 0x01,
-	0x28, 0x09, 0x52, 0x04, 0x63, 0x69, 0x74, 0x79, 0x22, 0x87, 0x01, 0x0a, 0x19, 0x47, 0x65, 0x74,
-	0x4c, 0x6f, 0x6f, 0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52,
-	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e,
-	0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e,
-	0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65,
-	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x54, 0x79,
-	0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x65, 0x78, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01,
-	0x28, 0x03, 0x52, 0x06, 0x6e, 0x65, 0x78, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66,
-	0x66, 0x73, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73,
-	0x65, 0x74, 0x22, 0xdd, 0x01, 0x0a, 0x17, 0x4c, 0x6f, 0x6f, 0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69,
-	0x6b, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x18,
-	0x0a, 0x07, 0x6c, 0x69, 0x6b, 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52,
-	0x07, 0x6c, 0x69, 0x6b, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x69, 0x6b, 0x65,
-	0x64, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6c, 0x69, 0x6b, 0x65,
-	0x64, 0x4e, 0x75, 0x6d, 0x12, 0x26, 0x0a, 0x0e, 0x6c, 0x69, 0x6b, 0x65, 0x64, 0x55, 0x6e, 0x72,
-	0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x6c, 0x69,
-	0x6b, 0x65, 0x64, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07,
-	0x6c, 0x6f, 0x6f, 0x6b, 0x4e, 0x75, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x6c,
-	0x6f, 0x6f, 0x6b, 0x4e, 0x75, 0x6d, 0x12, 0x24, 0x0a, 0x0d, 0x6c, 0x6f, 0x6f, 0x6b, 0x55, 0x6e,
-	0x72, 0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6c,
-	0x6f, 0x6f, 0x6b, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x12, 0x24, 0x0a, 0x0d,
-	0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x06, 0x20,
-	0x03, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x4c, 0x69,
-	0x73, 0x74, 0x22, 0x76, 0x0a, 0x10, 0x4c, 0x6f, 0x6f, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
-	0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x6f, 0x6f, 0x6b, 0x4e, 0x75,
-	0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x6c, 0x6f, 0x6f, 0x6b, 0x4e, 0x75, 0x6d,
-	0x12, 0x24, 0x0a, 0x0d, 0x6c, 0x6f, 0x6f, 0x6b, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x4e, 0x75,
-	0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6c, 0x6f, 0x6f, 0x6b, 0x55, 0x6e, 0x72,
-	0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x12, 0x22, 0x0a, 0x0c, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x4c,
-	0x6f, 0x6f, 0x6b, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x74, 0x6f,
-	0x64, 0x61, 0x79, 0x4c, 0x6f, 0x6f, 0x6b, 0x4e, 0x75, 0x6d, 0x22, 0x8f, 0x01, 0x0a, 0x0d, 0x50,
-	0x65, 0x72, 0x73, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08,
-	0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
-	0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x73,
-	0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x65,
-	0x72, 0x73, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x65, 0x50, 0x65,
-	0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x65,
-	0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x65, 0x50, 0x65,
-	0x72, 0x73, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c,
-	0x62, 0x65, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x22, 0x66, 0x0a, 0x10,
-	0x52, 0x65, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
-	0x12, 0x1a, 0x0a, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01,
-	0x28, 0x09, 0x52, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a,
-	0x62, 0x65, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
-	0x52, 0x0a, 0x62, 0x65, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06,
-	0x70, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x70, 0x72,
-	0x6f, 0x66, 0x69, 0x74, 0x32, 0xc1, 0x0a, 0x0a, 0x0a, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74,
-	0x69, 0x63, 0x73, 0x12, 0x43, 0x0a, 0x0a, 0x4c, 0x6f, 0x6f, 0x6b, 0x50, 0x65, 0x72, 0x73, 0x6f,
-	0x6e, 0x12, 0x1d, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69,
-	0x63, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
-	0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
-	0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x43, 0x0a, 0x0a, 0x4c, 0x69, 0x6b, 0x65,
-	0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x12, 0x1d, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61,
-	0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x4d, 0x65,
-	0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
-	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x45, 0x0a,
-	0x0c, 0x55, 0x6e, 0x4c, 0x69, 0x6b, 0x65, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x12, 0x1d, 0x2e,
-	0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x50,
-	0x65, 0x72, 0x73, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x16, 0x2e, 0x67,
-	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45,
-	0x6d, 0x70, 0x74, 0x79, 0x12, 0x82, 0x01, 0x0a, 0x1f, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x6f, 0x6b,
+	0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x16, 0x0a,
+	0x06, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x70,
+	0x72, 0x6f, 0x66, 0x69, 0x74, 0x22, 0x7c, 0x0a, 0x26, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x6f, 0x6b,
 	0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63,
-	0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x36, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73,
-	0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x6f,
-	0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69,
-	0x63, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
-	0x1a, 0x27, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63,
-	0x73, 0x2e, 0x4c, 0x6f, 0x6f, 0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x4d, 0x65, 0x73,
-	0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x55, 0x0a, 0x18, 0x47, 0x65, 0x74,
-	0x4c, 0x6f, 0x6f, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x4d, 0x65,
-	0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x17, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d,
-	0x6f, 0x6e, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x1a, 0x20,
+	0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+	0x1a, 0x0a, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28,
+	0x09, 0x52, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x70,
+	0x65, 0x72, 0x73, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+	0x0a, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x69,
+	0x73, 0x53, 0x65, 0x6c, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x53,
+	0x65, 0x6c, 0x66, 0x22, 0x3c, 0x0a, 0x0c, 0x52, 0x65, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e,
+	0x4d, 0x73, 0x67, 0x12, 0x2c, 0x0a, 0x11, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x52, 0x65, 0x63, 0x65,
+	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11,
+	0x74, 0x6f, 0x64, 0x61, 0x79, 0x52, 0x65, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x75,
+	0x6d, 0x22, 0x32, 0x0a, 0x0e, 0x54, 0x6f, 0x64, 0x61, 0x79, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74,
+	0x4d, 0x73, 0x67, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x50, 0x72, 0x6f, 0x66,
+	0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x50,
+	0x72, 0x6f, 0x66, 0x69, 0x74, 0x22, 0x67, 0x0a, 0x14, 0x4c, 0x6f, 0x6f, 0x6b, 0x41, 0x6e, 0x64,
+	0x4c, 0x69, 0x6b, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x37, 0x0a,
+	0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x61, 0x70,
+	0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x4c, 0x6f, 0x6f,
+	0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f,
+	0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x65, 0x78, 0x74, 0x49, 0x64,
+	0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x65, 0x78, 0x74, 0x49, 0x64, 0x22, 0xd5,
+	0x02, 0x0a, 0x13, 0x4c, 0x6f, 0x6f, 0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x4c, 0x69,
+	0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
+	0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02,
+	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x69,
+	0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69,
+	0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72,
+	0x55, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61,
+	0x72, 0x55, 0x72, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28,
+	0x03, 0x52, 0x03, 0x73, 0x65, 0x78, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20,
+	0x01, 0x28, 0x03, 0x52, 0x03, 0x61, 0x67, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x73,
+	0x74, 0x65, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52,
+	0x0d, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x65, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22,
+	0x0a, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x4c, 0x6f, 0x6f, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x08,
+	0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x4c, 0x6f, 0x6f, 0x6b, 0x54, 0x69,
+	0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x73, 0x48, 0x61, 0x76, 0x65, 0x50, 0x69, 0x63, 0x74,
+	0x75, 0x72, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x48, 0x61, 0x76,
+	0x65, 0x50, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x48, 0x61,
+	0x76, 0x65, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69,
+	0x73, 0x48, 0x61, 0x76, 0x65, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73,
+	0x4c, 0x6f, 0x63, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x4c, 0x6f,
+	0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x69, 0x74, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09,
+	0x52, 0x04, 0x63, 0x69, 0x74, 0x79, 0x22, 0x87, 0x01, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x4c, 0x6f,
+	0x6f, 0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71,
+	0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44,
+	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44,
+	0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02,
+	0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65,
+	0x12, 0x16, 0x0a, 0x06, 0x6e, 0x65, 0x78, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03,
+	0x52, 0x06, 0x6e, 0x65, 0x78, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73,
+	0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74,
+	0x22, 0xdd, 0x01, 0x0a, 0x17, 0x4c, 0x6f, 0x6f, 0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65,
+	0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x18, 0x0a, 0x07,
+	0x6c, 0x69, 0x6b, 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x6c,
+	0x69, 0x6b, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x69, 0x6b, 0x65, 0x64, 0x4e,
+	0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6c, 0x69, 0x6b, 0x65, 0x64, 0x4e,
+	0x75, 0x6d, 0x12, 0x26, 0x0a, 0x0e, 0x6c, 0x69, 0x6b, 0x65, 0x64, 0x55, 0x6e, 0x72, 0x65, 0x61,
+	0x64, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x6c, 0x69, 0x6b, 0x65,
+	0x64, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x6f,
+	0x6f, 0x6b, 0x4e, 0x75, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x6c, 0x6f, 0x6f,
+	0x6b, 0x4e, 0x75, 0x6d, 0x12, 0x24, 0x0a, 0x0d, 0x6c, 0x6f, 0x6f, 0x6b, 0x55, 0x6e, 0x72, 0x65,
+	0x61, 0x64, 0x4e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6c, 0x6f, 0x6f,
+	0x6b, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x76,
+	0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28,
+	0x09, 0x52, 0x0d, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x4c, 0x69, 0x73, 0x74,
+	0x22, 0x76, 0x0a, 0x10, 0x4c, 0x6f, 0x6f, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
+	0x65, 0x70, 0x6c, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x6f, 0x6f, 0x6b, 0x4e, 0x75, 0x6d, 0x18,
+	0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x6c, 0x6f, 0x6f, 0x6b, 0x4e, 0x75, 0x6d, 0x12, 0x24,
+	0x0a, 0x0d, 0x6c, 0x6f, 0x6f, 0x6b, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x18,
+	0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6c, 0x6f, 0x6f, 0x6b, 0x55, 0x6e, 0x72, 0x65, 0x61,
+	0x64, 0x4e, 0x75, 0x6d, 0x12, 0x22, 0x0a, 0x0c, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x4c, 0x6f, 0x6f,
+	0x6b, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x74, 0x6f, 0x64, 0x61,
+	0x79, 0x4c, 0x6f, 0x6f, 0x6b, 0x4e, 0x75, 0x6d, 0x22, 0x8f, 0x01, 0x0a, 0x0d, 0x50, 0x65, 0x72,
+	0x73, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x65,
+	0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x65,
+	0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e,
+	0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x73,
+	0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x65, 0x50, 0x65, 0x72, 0x73,
+	0x6f, 0x6e, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x65, 0x50, 0x65,
+	0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x65, 0x50, 0x65, 0x72, 0x73,
+	0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x62, 0x65,
+	0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x22, 0x66, 0x0a, 0x10, 0x52, 0x65,
+	0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1a,
+	0x0a, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+	0x52, 0x08, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x65,
+	0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
+	0x62, 0x65, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72,
+	0x6f, 0x66, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x70, 0x72, 0x6f, 0x66,
+	0x69, 0x74, 0x32, 0xbd, 0x0a, 0x0a, 0x0a, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63,
+	0x73, 0x12, 0x43, 0x0a, 0x0a, 0x4c, 0x6f, 0x6f, 0x6b, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x12,
+	0x1d, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73,
+	0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x16,
+	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
+	0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x43, 0x0a, 0x0a, 0x4c, 0x69, 0x6b, 0x65, 0x50, 0x65,
+	0x72, 0x73, 0x6f, 0x6e, 0x12, 0x1d, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69,
+	0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73,
+	0x61, 0x67, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x45, 0x0a, 0x0c, 0x55,
+	0x6e, 0x4c, 0x69, 0x6b, 0x65, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x12, 0x1d, 0x2e, 0x61, 0x70,
+	0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x50, 0x65, 0x72,
+	0x73, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f,
+	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70,
+	0x74, 0x79, 0x12, 0x82, 0x01, 0x0a, 0x1f, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x6f, 0x6b, 0x41, 0x6e,
+	0x64, 0x4c, 0x69, 0x6b, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x4d,
+	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x36, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61,
+	0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x6f, 0x6b, 0x41,
+	0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73,
+	0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27,
 	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e,
-	0x4c, 0x6f, 0x6f, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79,
-	0x12, 0x4c, 0x0a, 0x13, 0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x4c, 0x6f, 0x6f, 0x6b, 0x55, 0x6e,
-	0x72, 0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x12, 0x1d, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74,
-	0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x4d,
-	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
-	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x4c,
-	0x0a, 0x13, 0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x55, 0x6e, 0x72, 0x65,
+	0x4c, 0x6f, 0x6f, 0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61,
+	0x67, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x55, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x4c, 0x6f,
+	0x6f, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x4d, 0x65, 0x73, 0x73,
+	0x61, 0x67, 0x65, 0x12, 0x17, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
+	0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x1a, 0x20, 0x2e, 0x61,
+	0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x4c, 0x6f,
+	0x6f, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x4c,
+	0x0a, 0x13, 0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x4c, 0x6f, 0x6f, 0x6b, 0x55, 0x6e, 0x72, 0x65,
 	0x61, 0x64, 0x4e, 0x75, 0x6d, 0x12, 0x1d, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74,
 	0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x4d, 0x65, 0x73,
 	0x73, 0x61, 0x67, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
-	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x49, 0x0a, 0x10,
-	0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x4c, 0x6f, 0x6f, 0x6b, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
-	0x12, 0x1d, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63,
-	0x73, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a,
-	0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
-	0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x5f, 0x0a, 0x0c, 0x46, 0x69, 0x6e, 0x64, 0x4c,
-	0x6f, 0x6f, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x29, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74,
-	0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x6f, 0x6b,
-	0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
-	0x73, 0x74, 0x1a, 0x24, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74,
-	0x69, 0x63, 0x73, 0x2e, 0x4c, 0x6f, 0x6f, 0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x4c,
-	0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x5f, 0x0a, 0x0c, 0x46, 0x69, 0x6e, 0x64,
-	0x4c, 0x69, 0x6b, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x29, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73,
+	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x4c, 0x0a, 0x13,
+	0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64,
+	0x4e, 0x75, 0x6d, 0x12, 0x1d, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73,
+	0x74, 0x69, 0x63, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61,
+	0x67, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x49, 0x0a, 0x10, 0x55, 0x6e,
+	0x6c, 0x6f, 0x63, 0x6b, 0x4c, 0x6f, 0x6f, 0x6b, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x1d,
+	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e,
+	0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x16, 0x2e,
+	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
+	0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x5f, 0x0a, 0x0c, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x6f, 0x6f,
+	0x6b, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x29, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74,
+	0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x6f, 0x6b, 0x41, 0x6e,
+	0x64, 0x4c, 0x69, 0x6b, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+	0x1a, 0x24, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63,
+	0x73, 0x2e, 0x4c, 0x6f, 0x6f, 0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x4c, 0x69, 0x73,
+	0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x5f, 0x0a, 0x0c, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x69,
+	0x6b, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x29, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61,
+	0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x6f, 0x6b, 0x41,
+	0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+	0x74, 0x1a, 0x24, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69,
+	0x63, 0x73, 0x2e, 0x4c, 0x6f, 0x6f, 0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x4c, 0x69,
+	0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x60, 0x0a, 0x0d, 0x46, 0x69, 0x6e, 0x64, 0x4c,
+	0x69, 0x6b, 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x29, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73,
 	0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x6f,
 	0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75,
 	0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73,
 	0x74, 0x69, 0x63, 0x73, 0x2e, 0x4c, 0x6f, 0x6f, 0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65,
-	0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x60, 0x0a, 0x0d, 0x46, 0x69, 0x6e,
-	0x64, 0x4c, 0x69, 0x6b, 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x29, 0x2e, 0x61, 0x70, 0x69,
-	0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x4c,
-	0x6f, 0x6f, 0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65,
-	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74,
-	0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x4c, 0x6f, 0x6f, 0x6b, 0x41, 0x6e, 0x64, 0x4c, 0x69,
-	0x6b, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x4b, 0x0a, 0x0f, 0x52,
-	0x65, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x12, 0x20,
-	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e,
-	0x52, 0x65, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
-	0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
-	0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x4f, 0x0a, 0x0e, 0x41, 0x64, 0x64, 0x54,
-	0x6f, 0x64, 0x61, 0x79, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x12, 0x25, 0x2e, 0x61, 0x70, 0x69,
-	0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x54,
-	0x6f, 0x64, 0x61, 0x79, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
-	0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
-	0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x4b, 0x0a, 0x0f, 0x47, 0x65, 0x74,
-	0x52, 0x65, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x67, 0x12, 0x1a, 0x2e, 0x61,
-	0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65,
-	0x72, 0x49, 0x44, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x1a, 0x1c, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73,
-	0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x52, 0x65, 0x63, 0x65, 0x70, 0x74,
-	0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x67, 0x12, 0x4c, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x54, 0x6f, 0x64,
-	0x61, 0x79, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x12, 0x1a, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63,
-	0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x49, 0x44, 0x50,
-	0x61, 0x72, 0x61, 0x6d, 0x1a, 0x1e, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69,
-	0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x54, 0x6f, 0x64, 0x61, 0x79, 0x50, 0x72, 0x6f, 0x66, 0x69,
-	0x74, 0x4d, 0x73, 0x67, 0x12, 0x42, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x49, 0x73, 0x4c, 0x69, 0x6b,
-	0x65, 0x12, 0x1d, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69,
-	0x63, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
-	0x1a, 0x16, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63,
-	0x73, 0x2e, 0x49, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x42, 0x4f, 0x0a, 0x0e, 0x61, 0x70, 0x69, 0x2e,
-	0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x50, 0x01, 0x5a, 0x3b, 0x67, 0x69,
-	0x74, 0x2e, 0x69, 0x6b, 0x75, 0x62, 0x61, 0x6e, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73, 0x65, 0x72,
-	0x76, 0x65, 0x72, 0x2f, 0x70, 0x77, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f,
-	0x61, 0x70, 0x69, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x3b, 0x73,
-	0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
-	0x33,
+	0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x4b, 0x0a, 0x0f, 0x52, 0x65, 0x63,
+	0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x12, 0x20, 0x2e, 0x61,
+	0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x52, 0x65,
+	0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x16,
+	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
+	0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x4f, 0x0a, 0x0e, 0x41, 0x64, 0x64, 0x54, 0x6f, 0x64,
+	0x61, 0x79, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x12, 0x25, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73,
+	0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x54, 0x6f, 0x64,
+	0x61, 0x79, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+	0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
+	0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x4b, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x52, 0x65,
+	0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x67, 0x12, 0x1a, 0x2e, 0x61, 0x70, 0x69,
+	0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x49,
+	0x44, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x1a, 0x1c, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61,
+	0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x52, 0x65, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f,
+	0x6e, 0x4d, 0x73, 0x67, 0x12, 0x4c, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x54, 0x6f, 0x64, 0x61, 0x79,
+	0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x12, 0x1a, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d,
+	0x6d, 0x6f, 0x6e, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x49, 0x44, 0x50, 0x61, 0x72,
+	0x61, 0x6d, 0x1a, 0x1e, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74,
+	0x69, 0x63, 0x73, 0x2e, 0x54, 0x6f, 0x64, 0x61, 0x79, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x74, 0x4d,
+	0x73, 0x67, 0x12, 0x3e, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x49, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x12,
+	0x1d, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73,
+	0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x12,
+	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x49, 0x73, 0x4c, 0x69,
+	0x6b, 0x65, 0x42, 0x4f, 0x0a, 0x0e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73,
+	0x74, 0x69, 0x63, 0x73, 0x50, 0x01, 0x5a, 0x3b, 0x67, 0x69, 0x74, 0x2e, 0x69, 0x6b, 0x75, 0x62,
+	0x61, 0x6e, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x77,
+	0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x74,
+	0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x3b, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74,
+	0x69, 0x63, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
 }
 
 var (
@@ -1035,58 +985,58 @@ func file_statistics_proto_rawDescGZIP() []byte {
 	return file_statistics_proto_rawDescData
 }
 
-var file_statistics_proto_msgTypes = make([]protoimpl.MessageInfo, 12)
+var file_statistics_proto_msgTypes = make([]protoimpl.MessageInfo, 11)
 var file_statistics_proto_goTypes = []interface{}{
-	(*IsLike)(nil),                                 // 0: api.statistics.IsLike
-	(*AddTodayProfitRequest)(nil),                  // 1: api.statistics.AddTodayProfitRequest
-	(*GetLookAndLikeStatisticsMessageRequest)(nil), // 2: api.statistics.GetLookAndLikeStatisticsMessageRequest
-	(*ReceptionMsg)(nil),                           // 3: api.statistics.ReceptionMsg
-	(*TodayProfitMsg)(nil),                         // 4: api.statistics.TodayProfitMsg
-	(*LookAndLikeListReply)(nil),                   // 5: api.statistics.LookAndLikeListReply
-	(*LookAndLikeListInfo)(nil),                    // 6: api.statistics.LookAndLikeListInfo
-	(*GetLookAndLikeListRequest)(nil),              // 7: api.statistics.GetLookAndLikeListRequest
-	(*LookAndLikeMessageReply)(nil),                // 8: api.statistics.LookAndLikeMessageReply
-	(*LookMessageReply)(nil),                       // 9: api.statistics.LookMessageReply
-	(*PersonMessage)(nil),                          // 10: api.statistics.PersonMessage
-	(*ReceptionMessage)(nil),                       // 11: api.statistics.ReceptionMessage
-	(*common.PersonParam)(nil),                     // 12: api.common.PersonParam
-	(*common.PartnerIDParam)(nil),                  // 13: api.common.PartnerIDParam
-	(*emptypb.Empty)(nil),                          // 14: google.protobuf.Empty
+	(*AddTodayProfitRequest)(nil),                  // 0: api.statistics.AddTodayProfitRequest
+	(*GetLookAndLikeStatisticsMessageRequest)(nil), // 1: api.statistics.GetLookAndLikeStatisticsMessageRequest
+	(*ReceptionMsg)(nil),                           // 2: api.statistics.ReceptionMsg
+	(*TodayProfitMsg)(nil),                         // 3: api.statistics.TodayProfitMsg
+	(*LookAndLikeListReply)(nil),                   // 4: api.statistics.LookAndLikeListReply
+	(*LookAndLikeListInfo)(nil),                    // 5: api.statistics.LookAndLikeListInfo
+	(*GetLookAndLikeListRequest)(nil),              // 6: api.statistics.GetLookAndLikeListRequest
+	(*LookAndLikeMessageReply)(nil),                // 7: api.statistics.LookAndLikeMessageReply
+	(*LookMessageReply)(nil),                       // 8: api.statistics.LookMessageReply
+	(*PersonMessage)(nil),                          // 9: api.statistics.PersonMessage
+	(*ReceptionMessage)(nil),                       // 10: api.statistics.ReceptionMessage
+	(*common.PersonParam)(nil),                     // 11: api.common.PersonParam
+	(*common.PartnerIDParam)(nil),                  // 12: api.common.PartnerIDParam
+	(*emptypb.Empty)(nil),                          // 13: google.protobuf.Empty
+	(*common.IsLike)(nil),                          // 14: api.common.IsLike
 }
 var file_statistics_proto_depIdxs = []int32{
-	6,  // 0: api.statistics.LookAndLikeListReply.list:type_name -> api.statistics.LookAndLikeListInfo
-	10, // 1: api.statistics.Statistics.LookPerson:input_type -> api.statistics.PersonMessage
-	10, // 2: api.statistics.Statistics.LikePerson:input_type -> api.statistics.PersonMessage
-	10, // 3: api.statistics.Statistics.UnLikePerson:input_type -> api.statistics.PersonMessage
-	2,  // 4: api.statistics.Statistics.GetLookAndLikeStatisticsMessage:input_type -> api.statistics.GetLookAndLikeStatisticsMessageRequest
-	12, // 5: api.statistics.Statistics.GetLookStatisticsMessage:input_type -> api.common.PersonParam
-	10, // 6: api.statistics.Statistics.ReduceLookUnreadNum:input_type -> api.statistics.PersonMessage
-	10, // 7: api.statistics.Statistics.ReduceLikeUnreadNum:input_type -> api.statistics.PersonMessage
-	10, // 8: api.statistics.Statistics.UnlockLookRecord:input_type -> api.statistics.PersonMessage
-	7,  // 9: api.statistics.Statistics.FindLookList:input_type -> api.statistics.GetLookAndLikeListRequest
-	7,  // 10: api.statistics.Statistics.FindLikeList:input_type -> api.statistics.GetLookAndLikeListRequest
-	7,  // 11: api.statistics.Statistics.FindLikedList:input_type -> api.statistics.GetLookAndLikeListRequest
-	11, // 12: api.statistics.Statistics.ReceptionPerson:input_type -> api.statistics.ReceptionMessage
-	1,  // 13: api.statistics.Statistics.AddTodayProfit:input_type -> api.statistics.AddTodayProfitRequest
-	13, // 14: api.statistics.Statistics.GetReceptionMsg:input_type -> api.common.PartnerIDParam
-	13, // 15: api.statistics.Statistics.GetTodayProfit:input_type -> api.common.PartnerIDParam
-	10, // 16: api.statistics.Statistics.GetIsLike:input_type -> api.statistics.PersonMessage
-	14, // 17: api.statistics.Statistics.LookPerson:output_type -> google.protobuf.Empty
-	14, // 18: api.statistics.Statistics.LikePerson:output_type -> google.protobuf.Empty
-	14, // 19: api.statistics.Statistics.UnLikePerson:output_type -> google.protobuf.Empty
-	8,  // 20: api.statistics.Statistics.GetLookAndLikeStatisticsMessage:output_type -> api.statistics.LookAndLikeMessageReply
-	9,  // 21: api.statistics.Statistics.GetLookStatisticsMessage:output_type -> api.statistics.LookMessageReply
-	14, // 22: api.statistics.Statistics.ReduceLookUnreadNum:output_type -> google.protobuf.Empty
-	14, // 23: api.statistics.Statistics.ReduceLikeUnreadNum:output_type -> google.protobuf.Empty
-	14, // 24: api.statistics.Statistics.UnlockLookRecord:output_type -> google.protobuf.Empty
-	5,  // 25: api.statistics.Statistics.FindLookList:output_type -> api.statistics.LookAndLikeListReply
-	5,  // 26: api.statistics.Statistics.FindLikeList:output_type -> api.statistics.LookAndLikeListReply
-	5,  // 27: api.statistics.Statistics.FindLikedList:output_type -> api.statistics.LookAndLikeListReply
-	14, // 28: api.statistics.Statistics.ReceptionPerson:output_type -> google.protobuf.Empty
-	14, // 29: api.statistics.Statistics.AddTodayProfit:output_type -> google.protobuf.Empty
-	3,  // 30: api.statistics.Statistics.GetReceptionMsg:output_type -> api.statistics.ReceptionMsg
-	4,  // 31: api.statistics.Statistics.GetTodayProfit:output_type -> api.statistics.TodayProfitMsg
-	0,  // 32: api.statistics.Statistics.GetIsLike:output_type -> api.statistics.IsLike
+	5,  // 0: api.statistics.LookAndLikeListReply.list:type_name -> api.statistics.LookAndLikeListInfo
+	9,  // 1: api.statistics.Statistics.LookPerson:input_type -> api.statistics.PersonMessage
+	9,  // 2: api.statistics.Statistics.LikePerson:input_type -> api.statistics.PersonMessage
+	9,  // 3: api.statistics.Statistics.UnLikePerson:input_type -> api.statistics.PersonMessage
+	1,  // 4: api.statistics.Statistics.GetLookAndLikeStatisticsMessage:input_type -> api.statistics.GetLookAndLikeStatisticsMessageRequest
+	11, // 5: api.statistics.Statistics.GetLookStatisticsMessage:input_type -> api.common.PersonParam
+	9,  // 6: api.statistics.Statistics.ReduceLookUnreadNum:input_type -> api.statistics.PersonMessage
+	9,  // 7: api.statistics.Statistics.ReduceLikeUnreadNum:input_type -> api.statistics.PersonMessage
+	9,  // 8: api.statistics.Statistics.UnlockLookRecord:input_type -> api.statistics.PersonMessage
+	6,  // 9: api.statistics.Statistics.FindLookList:input_type -> api.statistics.GetLookAndLikeListRequest
+	6,  // 10: api.statistics.Statistics.FindLikeList:input_type -> api.statistics.GetLookAndLikeListRequest
+	6,  // 11: api.statistics.Statistics.FindLikedList:input_type -> api.statistics.GetLookAndLikeListRequest
+	10, // 12: api.statistics.Statistics.ReceptionPerson:input_type -> api.statistics.ReceptionMessage
+	0,  // 13: api.statistics.Statistics.AddTodayProfit:input_type -> api.statistics.AddTodayProfitRequest
+	12, // 14: api.statistics.Statistics.GetReceptionMsg:input_type -> api.common.PartnerIDParam
+	12, // 15: api.statistics.Statistics.GetTodayProfit:input_type -> api.common.PartnerIDParam
+	9,  // 16: api.statistics.Statistics.GetIsLike:input_type -> api.statistics.PersonMessage
+	13, // 17: api.statistics.Statistics.LookPerson:output_type -> google.protobuf.Empty
+	13, // 18: api.statistics.Statistics.LikePerson:output_type -> google.protobuf.Empty
+	13, // 19: api.statistics.Statistics.UnLikePerson:output_type -> google.protobuf.Empty
+	7,  // 20: api.statistics.Statistics.GetLookAndLikeStatisticsMessage:output_type -> api.statistics.LookAndLikeMessageReply
+	8,  // 21: api.statistics.Statistics.GetLookStatisticsMessage:output_type -> api.statistics.LookMessageReply
+	13, // 22: api.statistics.Statistics.ReduceLookUnreadNum:output_type -> google.protobuf.Empty
+	13, // 23: api.statistics.Statistics.ReduceLikeUnreadNum:output_type -> google.protobuf.Empty
+	13, // 24: api.statistics.Statistics.UnlockLookRecord:output_type -> google.protobuf.Empty
+	4,  // 25: api.statistics.Statistics.FindLookList:output_type -> api.statistics.LookAndLikeListReply
+	4,  // 26: api.statistics.Statistics.FindLikeList:output_type -> api.statistics.LookAndLikeListReply
+	4,  // 27: api.statistics.Statistics.FindLikedList:output_type -> api.statistics.LookAndLikeListReply
+	13, // 28: api.statistics.Statistics.ReceptionPerson:output_type -> google.protobuf.Empty
+	13, // 29: api.statistics.Statistics.AddTodayProfit:output_type -> google.protobuf.Empty
+	2,  // 30: api.statistics.Statistics.GetReceptionMsg:output_type -> api.statistics.ReceptionMsg
+	3,  // 31: api.statistics.Statistics.GetTodayProfit:output_type -> api.statistics.TodayProfitMsg
+	14, // 32: api.statistics.Statistics.GetIsLike:output_type -> api.common.IsLike
 	17, // [17:33] is the sub-list for method output_type
 	1,  // [1:17] is the sub-list for method input_type
 	1,  // [1:1] is the sub-list for extension type_name
@@ -1101,18 +1051,6 @@ func file_statistics_proto_init() {
 	}
 	if !protoimpl.UnsafeEnabled {
 		file_statistics_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*IsLike); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_statistics_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*AddTodayProfitRequest); i {
 			case 0:
 				return &v.state
@@ -1124,7 +1062,7 @@ func file_statistics_proto_init() {
 				return nil
 			}
 		}
-		file_statistics_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+		file_statistics_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*GetLookAndLikeStatisticsMessageRequest); i {
 			case 0:
 				return &v.state
@@ -1136,7 +1074,7 @@ func file_statistics_proto_init() {
 				return nil
 			}
 		}
-		file_statistics_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+		file_statistics_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*ReceptionMsg); i {
 			case 0:
 				return &v.state
@@ -1148,7 +1086,7 @@ func file_statistics_proto_init() {
 				return nil
 			}
 		}
-		file_statistics_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+		file_statistics_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*TodayProfitMsg); i {
 			case 0:
 				return &v.state
@@ -1160,7 +1098,7 @@ func file_statistics_proto_init() {
 				return nil
 			}
 		}
-		file_statistics_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+		file_statistics_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*LookAndLikeListReply); i {
 			case 0:
 				return &v.state
@@ -1172,7 +1110,7 @@ func file_statistics_proto_init() {
 				return nil
 			}
 		}
-		file_statistics_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+		file_statistics_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*LookAndLikeListInfo); i {
 			case 0:
 				return &v.state
@@ -1184,7 +1122,7 @@ func file_statistics_proto_init() {
 				return nil
 			}
 		}
-		file_statistics_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+		file_statistics_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*GetLookAndLikeListRequest); i {
 			case 0:
 				return &v.state
@@ -1196,7 +1134,7 @@ func file_statistics_proto_init() {
 				return nil
 			}
 		}
-		file_statistics_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+		file_statistics_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*LookAndLikeMessageReply); i {
 			case 0:
 				return &v.state
@@ -1208,7 +1146,7 @@ func file_statistics_proto_init() {
 				return nil
 			}
 		}
-		file_statistics_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+		file_statistics_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*LookMessageReply); i {
 			case 0:
 				return &v.state
@@ -1220,7 +1158,7 @@ func file_statistics_proto_init() {
 				return nil
 			}
 		}
-		file_statistics_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+		file_statistics_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*PersonMessage); i {
 			case 0:
 				return &v.state
@@ -1232,7 +1170,7 @@ func file_statistics_proto_init() {
 				return nil
 			}
 		}
-		file_statistics_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+		file_statistics_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*ReceptionMessage); i {
 			case 0:
 				return &v.state
@@ -1251,7 +1189,7 @@ func file_statistics_proto_init() {
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
 			RawDescriptor: file_statistics_proto_rawDesc,
 			NumEnums:      0,
-			NumMessages:   12,
+			NumMessages:   11,
 			NumExtensions: 0,
 			NumServices:   1,
 		},

+ 1 - 5
api/statistics/statistics.proto

@@ -43,11 +43,7 @@ service Statistics {
   // 获取消息
   rpc GetTodayProfit (common.PartnerIDParam) returns (TodayProfitMsg);
   // 获取我是否喜欢(关注)该用户
-  rpc GetIsLike (PersonMessage) returns (IsLike);
-}
-
-message IsLike{
-  bool isLike = 1;// 是否喜欢(关注)该用户
+  rpc GetIsLike (PersonMessage) returns (common.IsLike);
 }
 
 message AddTodayProfitRequest{

+ 5 - 5
api/statistics/statistics_grpc.pb.go

@@ -51,7 +51,7 @@ type StatisticsClient interface {
 	// 获取消息
 	GetTodayProfit(ctx context.Context, in *common.PartnerIDParam, opts ...grpc.CallOption) (*TodayProfitMsg, error)
 	// 获取我是否喜欢(关注)该用户
-	GetIsLike(ctx context.Context, in *PersonMessage, opts ...grpc.CallOption) (*IsLike, error)
+	GetIsLike(ctx context.Context, in *PersonMessage, opts ...grpc.CallOption) (*common.IsLike, error)
 }
 
 type statisticsClient struct {
@@ -197,8 +197,8 @@ func (c *statisticsClient) GetTodayProfit(ctx context.Context, in *common.Partne
 	return out, nil
 }
 
-func (c *statisticsClient) GetIsLike(ctx context.Context, in *PersonMessage, opts ...grpc.CallOption) (*IsLike, error) {
-	out := new(IsLike)
+func (c *statisticsClient) GetIsLike(ctx context.Context, in *PersonMessage, opts ...grpc.CallOption) (*common.IsLike, error) {
+	out := new(common.IsLike)
 	err := c.cc.Invoke(ctx, "/api.statistics.Statistics/GetIsLike", in, out, opts...)
 	if err != nil {
 		return nil, err
@@ -241,7 +241,7 @@ type StatisticsServer interface {
 	// 获取消息
 	GetTodayProfit(context.Context, *common.PartnerIDParam) (*TodayProfitMsg, error)
 	// 获取我是否喜欢(关注)该用户
-	GetIsLike(context.Context, *PersonMessage) (*IsLike, error)
+	GetIsLike(context.Context, *PersonMessage) (*common.IsLike, error)
 	mustEmbedUnimplementedStatisticsServer()
 }
 
@@ -294,7 +294,7 @@ func (UnimplementedStatisticsServer) GetReceptionMsg(context.Context, *common.Pa
 func (UnimplementedStatisticsServer) GetTodayProfit(context.Context, *common.PartnerIDParam) (*TodayProfitMsg, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method GetTodayProfit not implemented")
 }
-func (UnimplementedStatisticsServer) GetIsLike(context.Context, *PersonMessage) (*IsLike, error) {
+func (UnimplementedStatisticsServer) GetIsLike(context.Context, *PersonMessage) (*common.IsLike, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method GetIsLike not implemented")
 }
 func (UnimplementedStatisticsServer) mustEmbedUnimplementedStatisticsServer() {}

+ 93 - 84
api/user/user.pb.go

@@ -715,8 +715,8 @@ var file_user_proto_rawDesc = []byte{
 	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72,
 	0x65, 0x61, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x72, 0x65, 0x61, 0x22, 0x1e,
 	0x0a, 0x0a, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03,
-	0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x32, 0xca,
-	0x19, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x7e, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74,
+	0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x32, 0xac,
+	0x1a, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x7e, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74,
 	0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e,
 	0x12, 0x24, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x55, 0x70,
 	0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
@@ -881,51 +881,57 @@ var file_user_proto_rawDesc = []byte{
 	0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x74, 0x52, 0x6f, 0x6f, 0x6d,
 	0x4d, 0x73, 0x67, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x22, 0x17, 0x2f, 0x61, 0x70,
 	0x69, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x2f, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x72, 0x6f, 0x6f, 0x6d,
-	0x2f, 0x6d, 0x73, 0x67, 0x3a, 0x01, 0x2a, 0x12, 0x70, 0x0a, 0x15, 0x55, 0x73, 0x65, 0x72, 0x46,
-	0x69, 0x6e, 0x69, 0x73, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e,
-	0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
-	0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+	0x2f, 0x6d, 0x73, 0x67, 0x3a, 0x01, 0x2a, 0x12, 0x60, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x55, 0x73,
+	0x65, 0x72, 0x49, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x12, 0x17, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63,
+	0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61,
+	0x6d, 0x1a, 0x12, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x49,
+	0x73, 0x4c, 0x69, 0x6b, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x22, 0x17, 0x2f,
+	0x61, 0x70, 0x69, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x2f, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x72, 0x6f,
+	0x6f, 0x6d, 0x2f, 0x6d, 0x73, 0x67, 0x3a, 0x01, 0x2a, 0x12, 0x70, 0x0a, 0x15, 0x55, 0x73, 0x65,
+	0x72, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69,
+	0x6f, 0x6e, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 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, 0x27, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x21, 0x22, 0x1c, 0x2f, 0x61, 0x70, 0x69,
+	0x2f, 0x75, 0x73, 0x65, 0x72, 0x2f, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f,
+	0x6e, 0x2f, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x3a, 0x01, 0x2a, 0x12, 0x75, 0x0a, 0x15, 0x55,
+	0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74,
+	0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
+	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1b, 0x2e, 0x61,
+	0x70, 0x69, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74,
+	0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x27, 0x82, 0xd3, 0xe4, 0x93, 0x02,
+	0x21, 0x22, 0x1c, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x2f, 0x69, 0x6e, 0x66,
+	0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x3a,
+	0x01, 0x2a, 0x12, 0x71, 0x0a, 0x17, 0x55, 0x73, 0x65, 0x72, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66,
+	0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x77, 0x61, 0x72, 0x64, 0x12, 0x16, 0x2e,
+	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
+	0x45, 0x6d, 0x70, 0x74, 0x79, 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, 0x26, 0x82,
+	0xd3, 0xe4, 0x93, 0x02, 0x20, 0x22, 0x1b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x75, 0x73, 0x65, 0x72,
+	0x2f, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x61, 0x77, 0x61,
+	0x72, 0x64, 0x3a, 0x01, 0x2a, 0x12, 0x62, 0x0a, 0x0f, 0x55, 0x73, 0x65, 0x72, 0x47, 0x65, 0x74,
+	0x43, 0x68, 0x61, 0x74, 0x43, 0x61, 0x72, 0x64, 0x12, 0x17, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63,
+	0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61,
+	0x6d, 0x1a, 0x16, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, 0x68, 0x61,
+	0x74, 0x43, 0x61, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x1e, 0x82, 0xd3, 0xe4, 0x93, 0x02,
+	0x18, 0x22, 0x13, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x2f, 0x63, 0x68, 0x61,
+	0x74, 0x2f, 0x63, 0x61, 0x72, 0x64, 0x3a, 0x01, 0x2a, 0x12, 0x56, 0x0a, 0x08, 0x55, 0x73, 0x65,
+	0x72, 0x4c, 0x69, 0x6b, 0x65, 0x12, 0x17, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d,
+	0x6f, 0x6e, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 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, 0x19, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x13, 0x22, 0x0e,
+	0x2f, 0x61, 0x70, 0x69, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x2f, 0x6c, 0x69, 0x6b, 0x65, 0x3a, 0x01,
+	0x2a, 0x12, 0x5a, 0x0a, 0x0a, 0x55, 0x73, 0x65, 0x72, 0x55, 0x6e, 0x4c, 0x69, 0x6b, 0x65, 0x12,
+	0x17, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x50, 0x65, 0x72,
+	0x73, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 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, 0x27, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x21, 0x22, 0x1c, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x75,
-	0x73, 0x65, 0x72, 0x2f, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f,
-	0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x3a, 0x01, 0x2a, 0x12, 0x75, 0x0a, 0x15, 0x55, 0x73, 0x65,
-	0x72, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74,
-	0x75, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
-	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1b, 0x2e, 0x61, 0x70, 0x69,
-	0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f,
-	0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x27, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x21, 0x22,
-	0x1c, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x2f, 0x69, 0x6e, 0x66, 0x6f, 0x72,
-	0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x3a, 0x01, 0x2a,
-	0x12, 0x71, 0x0a, 0x17, 0x55, 0x73, 0x65, 0x72, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x72,
-	0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x77, 0x61, 0x72, 0x64, 0x12, 0x16, 0x2e, 0x67, 0x6f,
-	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d,
-	0x70, 0x74, 0x79, 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, 0x26, 0x82, 0xd3, 0xe4,
-	0x93, 0x02, 0x20, 0x22, 0x1b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x2f, 0x69,
-	0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x61, 0x77, 0x61, 0x72, 0x64,
-	0x3a, 0x01, 0x2a, 0x12, 0x62, 0x0a, 0x0f, 0x55, 0x73, 0x65, 0x72, 0x47, 0x65, 0x74, 0x43, 0x68,
-	0x61, 0x74, 0x43, 0x61, 0x72, 0x64, 0x12, 0x17, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d,
-	0x6d, 0x6f, 0x6e, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x1a,
-	0x16, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, 0x68, 0x61, 0x74, 0x43,
-	0x61, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x1e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x18, 0x22,
-	0x13, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x2f, 0x63, 0x68, 0x61, 0x74, 0x2f,
-	0x63, 0x61, 0x72, 0x64, 0x3a, 0x01, 0x2a, 0x12, 0x56, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, 0x4c,
-	0x69, 0x6b, 0x65, 0x12, 0x17, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
-	0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 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, 0x19, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x13, 0x22, 0x0e, 0x2f, 0x61,
-	0x70, 0x69, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x2f, 0x6c, 0x69, 0x6b, 0x65, 0x3a, 0x01, 0x2a, 0x12,
-	0x5a, 0x0a, 0x0a, 0x55, 0x73, 0x65, 0x72, 0x55, 0x6e, 0x4c, 0x69, 0x6b, 0x65, 0x12, 0x17, 0x2e,
-	0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x50, 0x65, 0x72, 0x73, 0x6f,
-	0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 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, 0x1b,
-	0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x22, 0x10, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x75, 0x73, 0x65,
-	0x72, 0x2f, 0x75, 0x6e, 0x6c, 0x69, 0x6b, 0x65, 0x3a, 0x01, 0x2a, 0x42, 0x3d, 0x0a, 0x08, 0x61,
-	0x70, 0x69, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x50, 0x01, 0x5a, 0x2f, 0x67, 0x69, 0x74, 0x2e, 0x69,
-	0x6b, 0x75, 0x62, 0x61, 0x6e, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
-	0x2f, 0x70, 0x77, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x70, 0x69,
-	0x2f, 0x75, 0x73, 0x65, 0x72, 0x3b, 0x75, 0x73, 0x65, 0x72, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
-	0x6f, 0x33,
+	0x22, 0x1b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x22, 0x10, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x75,
+	0x73, 0x65, 0x72, 0x2f, 0x75, 0x6e, 0x6c, 0x69, 0x6b, 0x65, 0x3a, 0x01, 0x2a, 0x42, 0x3d, 0x0a,
+	0x08, 0x61, 0x70, 0x69, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x50, 0x01, 0x5a, 0x2f, 0x67, 0x69, 0x74,
+	0x2e, 0x69, 0x6b, 0x75, 0x62, 0x61, 0x6e, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73, 0x65, 0x72, 0x76,
+	0x65, 0x72, 0x2f, 0x70, 0x77, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61,
+	0x70, 0x69, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x3b, 0x75, 0x73, 0x65, 0x72, 0x62, 0x06, 0x70, 0x72,
+	0x6f, 0x74, 0x6f, 0x33,
 }
 
 var (
@@ -978,6 +984,7 @@ var file_user_proto_goTypes = []interface{}{
 	(*statistics.LookMessageReply)(nil),              // 33: api.statistics.LookMessageReply
 	(*common.ChatRecordListReply)(nil),               // 34: api.common.ChatRecordListReply
 	(*common.ChatRoomMsg)(nil),                       // 35: api.common.ChatRoomMsg
+	(*common.IsLike)(nil),                            // 36: api.common.IsLike
 }
 var file_user_proto_depIdxs = []int32{
 	4,  // 0: api.user.UserFindChatListReply.list:type_name -> api.user.UserChatInfo
@@ -1005,44 +1012,46 @@ var file_user_proto_depIdxs = []int32{
 	8,  // 22: api.user.User.GetUserLookNum:input_type -> google.protobuf.Empty
 	19, // 23: api.user.User.FindChatRecordList:input_type -> api.common.FindChatRecordListRequest
 	20, // 24: api.user.User.FindChatRoomMsg:input_type -> api.common.FindChatRoomMsgRequest
-	8,  // 25: api.user.User.UserFinishInformation:input_type -> google.protobuf.Empty
-	8,  // 26: api.user.User.UserInformationStatus:input_type -> google.protobuf.Empty
-	8,  // 27: api.user.User.UserGetInformationAward:input_type -> google.protobuf.Empty
-	13, // 28: api.user.User.UserGetChatCard:input_type -> api.common.PersonParam
-	13, // 29: api.user.User.UserLike:input_type -> api.common.PersonParam
-	13, // 30: api.user.User.UserUnLike:input_type -> api.common.PersonParam
-	8,  // 31: api.user.User.UpdateUserInformation:output_type -> google.protobuf.Empty
-	5,  // 32: api.user.User.GetUserInfo:output_type -> api.user.UserInfo
-	21, // 33: api.user.User.GetUserDBMsg:output_type -> api.common.PersonMsg
-	8,  // 34: api.user.User.SendPhoneCode:output_type -> google.protobuf.Empty
-	8,  // 35: api.user.User.CheckPhoneCode:output_type -> google.protobuf.Empty
-	22, // 36: api.user.User.CheckUserPartnerIsRelationship:output_type -> api.chat.CheckUserPartnerIsRelationshipReply
-	23, // 37: api.user.User.CreateUserPersonRoom:output_type -> api.chat.RoomReply
-	24, // 38: api.user.User.GetPartnerCircleInfo:output_type -> api.common.AddFriendMessageInfo
-	25, // 39: api.user.User.UserGetHomeInfo:output_type -> api.common.HomeInfo
-	26, // 40: api.user.User.FindUserDBList:output_type -> api.common.PersonDBReply
-	27, // 41: api.user.User.FindLookList:output_type -> api.statistics.LookAndLikeListReply
-	27, // 42: api.user.User.FindLikeList:output_type -> api.statistics.LookAndLikeListReply
-	27, // 43: api.user.User.FindLikedList:output_type -> api.statistics.LookAndLikeListReply
-	28, // 44: api.user.User.GetLookAndLikeStatisticsMessage:output_type -> api.statistics.LookAndLikeMessageReply
-	29, // 45: api.user.User.WxConf:output_type -> api.common.WxConfResponse
-	30, // 46: api.user.User.FindTagListBySex:output_type -> api.common.TagListReply
-	31, // 47: api.user.User.FindOnlineList:output_type -> api.common.OnlinePersonListReply
-	3,  // 48: api.user.User.FindWithinSevenDayRoomList:output_type -> api.user.UserFindChatListReply
-	3,  // 49: api.user.User.FindOverSevenDayRoomList:output_type -> api.user.UserFindChatListReply
-	32, // 50: api.user.User.UserGetPersonLikedAndLooked:output_type -> api.common.LookedAndLikedNum
-	2,  // 51: api.user.User.GetUserBalance:output_type -> api.user.UserBalance
-	33, // 52: api.user.User.GetUserLookNum:output_type -> api.statistics.LookMessageReply
-	34, // 53: api.user.User.FindChatRecordList:output_type -> api.common.ChatRecordListReply
-	35, // 54: api.user.User.FindChatRoomMsg:output_type -> api.common.ChatRoomMsg
-	8,  // 55: api.user.User.UserFinishInformation:output_type -> google.protobuf.Empty
-	1,  // 56: api.user.User.UserInformationStatus:output_type -> api.user.InformationStatus
-	8,  // 57: api.user.User.UserGetInformationAward:output_type -> google.protobuf.Empty
-	0,  // 58: api.user.User.UserGetChatCard:output_type -> api.user.ChatCardInfo
-	8,  // 59: api.user.User.UserLike:output_type -> google.protobuf.Empty
-	8,  // 60: api.user.User.UserUnLike:output_type -> google.protobuf.Empty
-	31, // [31:61] is the sub-list for method output_type
-	1,  // [1:31] is the sub-list for method input_type
+	13, // 25: api.user.User.GetUserIsLike:input_type -> api.common.PersonParam
+	8,  // 26: api.user.User.UserFinishInformation:input_type -> google.protobuf.Empty
+	8,  // 27: api.user.User.UserInformationStatus:input_type -> google.protobuf.Empty
+	8,  // 28: api.user.User.UserGetInformationAward:input_type -> google.protobuf.Empty
+	13, // 29: api.user.User.UserGetChatCard:input_type -> api.common.PersonParam
+	13, // 30: api.user.User.UserLike:input_type -> api.common.PersonParam
+	13, // 31: api.user.User.UserUnLike:input_type -> api.common.PersonParam
+	8,  // 32: api.user.User.UpdateUserInformation:output_type -> google.protobuf.Empty
+	5,  // 33: api.user.User.GetUserInfo:output_type -> api.user.UserInfo
+	21, // 34: api.user.User.GetUserDBMsg:output_type -> api.common.PersonMsg
+	8,  // 35: api.user.User.SendPhoneCode:output_type -> google.protobuf.Empty
+	8,  // 36: api.user.User.CheckPhoneCode:output_type -> google.protobuf.Empty
+	22, // 37: api.user.User.CheckUserPartnerIsRelationship:output_type -> api.chat.CheckUserPartnerIsRelationshipReply
+	23, // 38: api.user.User.CreateUserPersonRoom:output_type -> api.chat.RoomReply
+	24, // 39: api.user.User.GetPartnerCircleInfo:output_type -> api.common.AddFriendMessageInfo
+	25, // 40: api.user.User.UserGetHomeInfo:output_type -> api.common.HomeInfo
+	26, // 41: api.user.User.FindUserDBList:output_type -> api.common.PersonDBReply
+	27, // 42: api.user.User.FindLookList:output_type -> api.statistics.LookAndLikeListReply
+	27, // 43: api.user.User.FindLikeList:output_type -> api.statistics.LookAndLikeListReply
+	27, // 44: api.user.User.FindLikedList:output_type -> api.statistics.LookAndLikeListReply
+	28, // 45: api.user.User.GetLookAndLikeStatisticsMessage:output_type -> api.statistics.LookAndLikeMessageReply
+	29, // 46: api.user.User.WxConf:output_type -> api.common.WxConfResponse
+	30, // 47: api.user.User.FindTagListBySex:output_type -> api.common.TagListReply
+	31, // 48: api.user.User.FindOnlineList:output_type -> api.common.OnlinePersonListReply
+	3,  // 49: api.user.User.FindWithinSevenDayRoomList:output_type -> api.user.UserFindChatListReply
+	3,  // 50: api.user.User.FindOverSevenDayRoomList:output_type -> api.user.UserFindChatListReply
+	32, // 51: api.user.User.UserGetPersonLikedAndLooked:output_type -> api.common.LookedAndLikedNum
+	2,  // 52: api.user.User.GetUserBalance:output_type -> api.user.UserBalance
+	33, // 53: api.user.User.GetUserLookNum:output_type -> api.statistics.LookMessageReply
+	34, // 54: api.user.User.FindChatRecordList:output_type -> api.common.ChatRecordListReply
+	35, // 55: api.user.User.FindChatRoomMsg:output_type -> api.common.ChatRoomMsg
+	36, // 56: api.user.User.GetUserIsLike:output_type -> api.common.IsLike
+	8,  // 57: api.user.User.UserFinishInformation:output_type -> google.protobuf.Empty
+	1,  // 58: api.user.User.UserInformationStatus:output_type -> api.user.InformationStatus
+	8,  // 59: api.user.User.UserGetInformationAward:output_type -> google.protobuf.Empty
+	0,  // 60: api.user.User.UserGetChatCard:output_type -> api.user.ChatCardInfo
+	8,  // 61: api.user.User.UserLike:output_type -> google.protobuf.Empty
+	8,  // 62: api.user.User.UserUnLike:output_type -> google.protobuf.Empty
+	32, // [32:63] is the sub-list for method output_type
+	1,  // [1:32] is the sub-list for method input_type
 	1,  // [1:1] is the sub-list for extension type_name
 	1,  // [1:1] is the sub-list for extension extendee
 	0,  // [0:1] is the sub-list for field type_name

+ 7 - 0
api/user/user.proto

@@ -172,6 +172,13 @@ service User {
       body:"*"
     };
   };
+  // 用户查询是否关注某人
+  rpc GetUserIsLike (common.PersonParam) returns (common.IsLike){
+    option (google.api.http) = {
+      post: "/api/user/chat/room/msg",
+      body:"*"
+    };
+  };
   // 用户完善资料
   rpc UserFinishInformation (google.protobuf.Empty) returns (google.protobuf.Empty){
     option (google.api.http) = {

+ 38 - 0
api/user/user_grpc.pb.go

@@ -70,6 +70,8 @@ type UserClient interface {
 	FindChatRecordList(ctx context.Context, in *common.FindChatRecordListRequest, opts ...grpc.CallOption) (*common.ChatRecordListReply, error)
 	// 用户查询房间信息
 	FindChatRoomMsg(ctx context.Context, in *common.FindChatRoomMsgRequest, opts ...grpc.CallOption) (*common.ChatRoomMsg, error)
+	// 用户查询是否关注某人
+	GetUserIsLike(ctx context.Context, in *common.PersonParam, opts ...grpc.CallOption) (*common.IsLike, error)
 	// 用户完善资料
 	UserFinishInformation(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*emptypb.Empty, error)
 	// 用户完善情况
@@ -308,6 +310,15 @@ func (c *userClient) FindChatRoomMsg(ctx context.Context, in *common.FindChatRoo
 	return out, nil
 }
 
+func (c *userClient) GetUserIsLike(ctx context.Context, in *common.PersonParam, opts ...grpc.CallOption) (*common.IsLike, error) {
+	out := new(common.IsLike)
+	err := c.cc.Invoke(ctx, "/api.user.User/GetUserIsLike", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
 func (c *userClient) UserFinishInformation(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*emptypb.Empty, error) {
 	out := new(emptypb.Empty)
 	err := c.cc.Invoke(ctx, "/api.user.User/UserFinishInformation", in, out, opts...)
@@ -414,6 +425,8 @@ type UserServer interface {
 	FindChatRecordList(context.Context, *common.FindChatRecordListRequest) (*common.ChatRecordListReply, error)
 	// 用户查询房间信息
 	FindChatRoomMsg(context.Context, *common.FindChatRoomMsgRequest) (*common.ChatRoomMsg, error)
+	// 用户查询是否关注某人
+	GetUserIsLike(context.Context, *common.PersonParam) (*common.IsLike, error)
 	// 用户完善资料
 	UserFinishInformation(context.Context, *emptypb.Empty) (*emptypb.Empty, error)
 	// 用户完善情况
@@ -505,6 +518,9 @@ func (UnimplementedUserServer) FindChatRecordList(context.Context, *common.FindC
 func (UnimplementedUserServer) FindChatRoomMsg(context.Context, *common.FindChatRoomMsgRequest) (*common.ChatRoomMsg, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method FindChatRoomMsg not implemented")
 }
+func (UnimplementedUserServer) GetUserIsLike(context.Context, *common.PersonParam) (*common.IsLike, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method GetUserIsLike not implemented")
+}
 func (UnimplementedUserServer) UserFinishInformation(context.Context, *emptypb.Empty) (*emptypb.Empty, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method UserFinishInformation not implemented")
 }
@@ -968,6 +984,24 @@ func _User_FindChatRoomMsg_Handler(srv interface{}, ctx context.Context, dec fun
 	return interceptor(ctx, in, info, handler)
 }
 
+func _User_GetUserIsLike_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(common.PersonParam)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(UserServer).GetUserIsLike(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/api.user.User/GetUserIsLike",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(UserServer).GetUserIsLike(ctx, req.(*common.PersonParam))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
 func _User_UserFinishInformation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 	in := new(emptypb.Empty)
 	if err := dec(in); err != nil {
@@ -1179,6 +1213,10 @@ var User_ServiceDesc = grpc.ServiceDesc{
 			MethodName: "FindChatRoomMsg",
 			Handler:    _User_FindChatRoomMsg_Handler,
 		},
+		{
+			MethodName: "GetUserIsLike",
+			Handler:    _User_GetUserIsLike_Handler,
+		},
 		{
 			MethodName: "UserFinishInformation",
 			Handler:    _User_UserFinishInformation_Handler,

+ 43 - 0
api/user/user_http.pb.go

@@ -46,6 +46,7 @@ type UserHTTPServer interface {
 	GetPartnerCircleInfo(context.Context, *KeyRequest) (*common.AddFriendMessageInfo, error)
 	GetUserBalance(context.Context, *emptypb.Empty) (*UserBalance, error)
 	GetUserInfo(context.Context, *emptypb.Empty) (*UserInfo, error)
+	GetUserIsLike(context.Context, *common.PersonParam) (*common.IsLike, error)
 	GetUserLookNum(context.Context, *emptypb.Empty) (*statistics.LookMessageReply, error)
 	SendPhoneCode(context.Context, *common.SendPhoneCodeRequest) (*emptypb.Empty, error)
 	UpdateUserInformation(context.Context, *common.UpdateInformationRequest) (*emptypb.Empty, error)
@@ -84,6 +85,7 @@ func RegisterUserHTTPServer(s *http.Server, srv UserHTTPServer) {
 	r.POST("/api/user/look/num", _User_GetUserLookNum0_HTTP_Handler(srv))
 	r.POST("/api/user/chat/record", _User_FindChatRecordList0_HTTP_Handler(srv))
 	r.POST("/api/user/chat/room/msg", _User_FindChatRoomMsg0_HTTP_Handler(srv))
+	r.POST("/api/user/chat/room/msg", _User_GetUserIsLike0_HTTP_Handler(srv))
 	r.POST("/api/user/information/finish", _User_UserFinishInformation0_HTTP_Handler(srv))
 	r.POST("/api/user/information/status", _User_UserInformationStatus0_HTTP_Handler(srv))
 	r.POST("/api/user/information/award", _User_UserGetInformationAward0_HTTP_Handler(srv))
@@ -686,6 +688,33 @@ func _User_FindChatRoomMsg0_HTTP_Handler(srv UserHTTPServer) func(ctx http.Conte
 	}
 }
 
+func _User_GetUserIsLike0_HTTP_Handler(srv UserHTTPServer) func(ctx http.Context) error {
+	return func(ctx http.Context) error {
+		var in common.PersonParam
+		if err := ctx.Bind(&in); err != nil {
+			return err
+		}
+		if err := ctx.BindQuery(&in); err != nil {
+			return err
+		}
+		http.SetOperation(ctx, "/api.user.User/GetUserIsLike")
+		h := ctx.Middleware(func(ctx context.Context, req interface{}) (interface{}, error) {
+			return srv.GetUserIsLike(ctx, req.(*common.PersonParam))
+		})
+		out, err := h(ctx, &in)
+		if err != nil {
+			return err
+		}
+		success := &reply.SuccessReply{
+			Code: 0,
+		}
+		if out != nil {
+			success.Data = out
+		}
+		return ctx.Result(200, success)
+	}
+}
+
 func _User_UserFinishInformation0_HTTP_Handler(srv UserHTTPServer) func(ctx http.Context) error {
 	return func(ctx http.Context) error {
 		var in emptypb.Empty
@@ -865,6 +894,7 @@ type UserHTTPClient interface {
 	GetPartnerCircleInfo(ctx context.Context, req *KeyRequest, opts ...http.CallOption) (rsp *common.AddFriendMessageInfo, err error)
 	GetUserBalance(ctx context.Context, req *emptypb.Empty, opts ...http.CallOption) (rsp *UserBalance, err error)
 	GetUserInfo(ctx context.Context, req *emptypb.Empty, opts ...http.CallOption) (rsp *UserInfo, err error)
+	GetUserIsLike(ctx context.Context, req *common.PersonParam, opts ...http.CallOption) (rsp *common.IsLike, err error)
 	GetUserLookNum(ctx context.Context, req *emptypb.Empty, opts ...http.CallOption) (rsp *statistics.LookMessageReply, err error)
 	SendPhoneCode(ctx context.Context, req *common.SendPhoneCodeRequest, opts ...http.CallOption) (rsp *emptypb.Empty, err error)
 	UpdateUserInformation(ctx context.Context, req *common.UpdateInformationRequest, opts ...http.CallOption) (rsp *emptypb.Empty, err error)
@@ -1095,6 +1125,19 @@ func (c *UserHTTPClientImpl) GetUserInfo(ctx context.Context, in *emptypb.Empty,
 	return &out, err
 }
 
+func (c *UserHTTPClientImpl) GetUserIsLike(ctx context.Context, in *common.PersonParam, opts ...http.CallOption) (*common.IsLike, error) {
+	var out common.IsLike
+	pattern := "/api/user/chat/room/msg"
+	path := binding.EncodeURL(pattern, in, false)
+	opts = append(opts, http.Operation("/api.user.User/GetUserIsLike"))
+	opts = append(opts, http.PathTemplate(pattern))
+	err := c.cc.Invoke(ctx, "POST", path, in, &out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return &out, err
+}
+
 func (c *UserHTTPClientImpl) GetUserLookNum(ctx context.Context, in *emptypb.Empty, opts ...http.CallOption) (*statistics.LookMessageReply, error) {
 	var out statistics.LookMessageReply
 	pattern := "/api/user/look/num"

+ 4 - 2
js/api/common/common_pb.ts

@@ -293,8 +293,6 @@ export interface ChatRoomMsg{
     other?:ChatPersonMsg;
     /**  对对方的好感度 */
     likeability?:number;
-    /**  是否关注 */
-    isSubscribe?:boolean;
 }
 export interface ChatPersonMsg{
     /**  id */
@@ -338,4 +336,8 @@ export interface FindChatRecordListRequest{
     offset?:number;
     roomId?:number;
 }
+export interface IsLike{
+    /**  是否喜欢(关注) */
+    isLike?:boolean;
+}
 

+ 0 - 4
js/api/statistics/statistics_pb.ts

@@ -1,7 +1,3 @@
-export interface IsLike{
-    /**  是否喜欢(关注)该用户 */
-    isLike?:boolean;
-}
 export interface AddTodayProfitRequest{
     /**  接待者的ID */
     personID?:string;

+ 6 - 1
js/api/user/user_http_pb.ts

@@ -1,6 +1,6 @@
 // @ts-ignore
 import request from '@/libs/request';
-import {UpdateInformationRequest,PersonIDParam,PersonMsg,SendPhoneCodeRequest,CheckPhoneCodeRequest,PartnerIDParam,PersonParam,AddFriendMessageInfo,HomeInfo,PersonIDList,PersonDBReply,ListPageRequest,WxConfReq,WxConfResponse,SexReq,TagListReply,ListPage2Request,OnlinePersonListReply,LookedAndLikedNum,FindChatRecordListRequest,ChatRecordListReply,FindChatRoomMsgRequest,ChatRoomMsg} from "../common/common_pb";
+import {UpdateInformationRequest,PersonIDParam,PersonMsg,SendPhoneCodeRequest,CheckPhoneCodeRequest,PartnerIDParam,PersonParam,AddFriendMessageInfo,HomeInfo,PersonIDList,PersonDBReply,ListPageRequest,WxConfReq,WxConfResponse,SexReq,TagListReply,ListPage2Request,OnlinePersonListReply,LookedAndLikedNum,FindChatRecordListRequest,ChatRecordListReply,FindChatRoomMsgRequest,ChatRoomMsg,IsLike} from "../common/common_pb";
 import {UserInfo,KeyRequest,UserFindChatListReply,UserBalance,InformationStatus,ChatCardInfo} from "./user_pb";
 import {CheckUserPartnerIsRelationshipReply,RoomReply} from "../chat/chat_pb";
 import {LookAndLikeListReply,LookAndLikeMessageReply,LookMessageReply} from "../statistics/statistics_pb";
@@ -116,6 +116,11 @@ const UserService = {
 	const res = await request.post<{ data: ChatRoomMsg, code: string, message: string }>('/api/user/chat/room/msg', req);
     return res.data.data;
   },
+  /**  用户查询是否关注某人 */
+  GetUserIsLike: async (req?: PersonParam) => {
+	const res = await request.post<{ data: IsLike, code: string, message: string }>('/api/user/chat/room/msg', req);
+    return res.data.data;
+  },
   /**  用户完善资料 */
   UserFinishInformation: async (req?: undefined) => {
 	const res = await request.post('/api/user/information/finish', req);