diff --git a/admin/admin/admin.pb.go b/admin/admin/admin.pb.go index 672addb..58cdf4a 100644 --- a/admin/admin/admin.pb.go +++ b/admin/admin/admin.pb.go @@ -458,7 +458,7 @@ func (x *AdminItemsRequest) GetStatus() int32 { return 0 } -type AdminLoginRequest struct { +type LoginRequest struct { state protoimpl.MessageState `protogen:"open.v1"` Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"` Password string `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"` @@ -466,20 +466,20 @@ type AdminLoginRequest struct { sizeCache protoimpl.SizeCache } -func (x *AdminLoginRequest) Reset() { - *x = AdminLoginRequest{} +func (x *LoginRequest) Reset() { + *x = LoginRequest{} mi := &file_proto_admin_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } -func (x *AdminLoginRequest) String() string { +func (x *LoginRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AdminLoginRequest) ProtoMessage() {} +func (*LoginRequest) ProtoMessage() {} -func (x *AdminLoginRequest) ProtoReflect() protoreflect.Message { +func (x *LoginRequest) ProtoReflect() protoreflect.Message { mi := &file_proto_admin_proto_msgTypes[7] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -491,19 +491,19 @@ func (x *AdminLoginRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AdminLoginRequest.ProtoReflect.Descriptor instead. -func (*AdminLoginRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use LoginRequest.ProtoReflect.Descriptor instead. +func (*LoginRequest) Descriptor() ([]byte, []int) { return file_proto_admin_proto_rawDescGZIP(), []int{7} } -func (x *AdminLoginRequest) GetUsername() string { +func (x *LoginRequest) GetUsername() string { if x != nil { return x.Username } return "" } -func (x *AdminLoginRequest) GetPassword() string { +func (x *LoginRequest) GetPassword() string { if x != nil { return x.Password } @@ -590,27 +590,27 @@ func (x *InfoRequest) GetId() int64 { return 0 } -type RoutesRequest struct { +type LoginKickedOutRequest struct { state protoimpl.MessageState `protogen:"open.v1"` - ServiceId int64 `protobuf:"varint,1,opt,name=service_id,json=serviceId,proto3" json:"service_id,omitempty"` + Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } -func (x *RoutesRequest) Reset() { - *x = RoutesRequest{} +func (x *LoginKickedOutRequest) Reset() { + *x = LoginKickedOutRequest{} mi := &file_proto_admin_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } -func (x *RoutesRequest) String() string { +func (x *LoginKickedOutRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RoutesRequest) ProtoMessage() {} +func (*LoginKickedOutRequest) ProtoMessage() {} -func (x *RoutesRequest) ProtoReflect() protoreflect.Message { +func (x *LoginKickedOutRequest) ProtoReflect() protoreflect.Message { mi := &file_proto_admin_proto_msgTypes[10] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -622,14 +622,14 @@ func (x *RoutesRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RoutesRequest.ProtoReflect.Descriptor instead. -func (*RoutesRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use LoginKickedOutRequest.ProtoReflect.Descriptor instead. +func (*LoginKickedOutRequest) Descriptor() ([]byte, []int) { return file_proto_admin_proto_rawDescGZIP(), []int{10} } -func (x *RoutesRequest) GetServiceId() int64 { +func (x *LoginKickedOutRequest) GetId() int64 { if x != nil { - return x.ServiceId + return x.Id } return 0 } @@ -938,6 +938,50 @@ func (x *AuthorityItemsRequest) GetServiceId() int64 { return 0 } +type RoutesRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + ServiceId int64 `protobuf:"varint,1,opt,name=service_id,json=serviceId,proto3" json:"service_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *RoutesRequest) Reset() { + *x = RoutesRequest{} + mi := &file_proto_admin_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *RoutesRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RoutesRequest) ProtoMessage() {} + +func (x *RoutesRequest) ProtoReflect() protoreflect.Message { + mi := &file_proto_admin_proto_msgTypes[17] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use RoutesRequest.ProtoReflect.Descriptor instead. +func (*RoutesRequest) Descriptor() ([]byte, []int) { + return file_proto_admin_proto_rawDescGZIP(), []int{17} +} + +func (x *RoutesRequest) GetServiceId() int64 { + if x != nil { + return x.ServiceId + } + return 0 +} + type AuthorityEditRequest struct { state protoimpl.MessageState `protogen:"open.v1"` Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` @@ -965,7 +1009,7 @@ type AuthorityEditRequest struct { func (x *AuthorityEditRequest) Reset() { *x = AuthorityEditRequest{} - mi := &file_proto_admin_proto_msgTypes[17] + mi := &file_proto_admin_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -977,7 +1021,7 @@ func (x *AuthorityEditRequest) String() string { func (*AuthorityEditRequest) ProtoMessage() {} func (x *AuthorityEditRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_admin_proto_msgTypes[17] + mi := &file_proto_admin_proto_msgTypes[18] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -990,7 +1034,7 @@ func (x *AuthorityEditRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use AuthorityEditRequest.ProtoReflect.Descriptor instead. func (*AuthorityEditRequest) Descriptor() ([]byte, []int) { - return file_proto_admin_proto_rawDescGZIP(), []int{17} + return file_proto_admin_proto_rawDescGZIP(), []int{18} } func (x *AuthorityEditRequest) GetId() int64 { @@ -1136,7 +1180,7 @@ type RoleRuleRequest struct { func (x *RoleRuleRequest) Reset() { *x = RoleRuleRequest{} - mi := &file_proto_admin_proto_msgTypes[18] + mi := &file_proto_admin_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1148,7 +1192,7 @@ func (x *RoleRuleRequest) String() string { func (*RoleRuleRequest) ProtoMessage() {} func (x *RoleRuleRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_admin_proto_msgTypes[18] + mi := &file_proto_admin_proto_msgTypes[19] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1161,7 +1205,7 @@ func (x *RoleRuleRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use RoleRuleRequest.ProtoReflect.Descriptor instead. func (*RoleRuleRequest) Descriptor() ([]byte, []int) { - return file_proto_admin_proto_rawDescGZIP(), []int{18} + return file_proto_admin_proto_rawDescGZIP(), []int{19} } func (x *RoleRuleRequest) GetId() int64 { @@ -1188,7 +1232,7 @@ type RoleNameRequest struct { func (x *RoleNameRequest) Reset() { *x = RoleNameRequest{} - mi := &file_proto_admin_proto_msgTypes[19] + mi := &file_proto_admin_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1200,7 +1244,7 @@ func (x *RoleNameRequest) String() string { func (*RoleNameRequest) ProtoMessage() {} func (x *RoleNameRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_admin_proto_msgTypes[19] + mi := &file_proto_admin_proto_msgTypes[20] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1213,7 +1257,7 @@ func (x *RoleNameRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use RoleNameRequest.ProtoReflect.Descriptor instead. func (*RoleNameRequest) Descriptor() ([]byte, []int) { - return file_proto_admin_proto_rawDescGZIP(), []int{19} + return file_proto_admin_proto_rawDescGZIP(), []int{20} } func (x *RoleNameRequest) GetName() string { @@ -1242,7 +1286,7 @@ type RoleEditRequest struct { func (x *RoleEditRequest) Reset() { *x = RoleEditRequest{} - mi := &file_proto_admin_proto_msgTypes[20] + mi := &file_proto_admin_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1254,7 +1298,7 @@ func (x *RoleEditRequest) String() string { func (*RoleEditRequest) ProtoMessage() {} func (x *RoleEditRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_admin_proto_msgTypes[20] + mi := &file_proto_admin_proto_msgTypes[21] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1267,7 +1311,7 @@ func (x *RoleEditRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use RoleEditRequest.ProtoReflect.Descriptor instead. func (*RoleEditRequest) Descriptor() ([]byte, []int) { - return file_proto_admin_proto_rawDescGZIP(), []int{20} + return file_proto_admin_proto_rawDescGZIP(), []int{21} } func (x *RoleEditRequest) GetId() int64 { @@ -1311,7 +1355,7 @@ type RoleItemsRequest struct { func (x *RoleItemsRequest) Reset() { *x = RoleItemsRequest{} - mi := &file_proto_admin_proto_msgTypes[21] + mi := &file_proto_admin_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1323,7 +1367,7 @@ func (x *RoleItemsRequest) String() string { func (*RoleItemsRequest) ProtoMessage() {} func (x *RoleItemsRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_admin_proto_msgTypes[21] + mi := &file_proto_admin_proto_msgTypes[22] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1336,7 +1380,7 @@ func (x *RoleItemsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use RoleItemsRequest.ProtoReflect.Descriptor instead. func (*RoleItemsRequest) Descriptor() ([]byte, []int) { - return file_proto_admin_proto_rawDescGZIP(), []int{21} + return file_proto_admin_proto_rawDescGZIP(), []int{22} } func (x *RoleItemsRequest) GetPage() int32 { @@ -1408,16 +1452,15 @@ const file_proto_admin_proto_rawDesc = "" + "\x05phone\x18\x03 \x01(\tR\x05phone\x12\x12\n" + "\x04name\x18\x04 \x01(\tR\x04name\x12\x14\n" + "\x05email\x18\x05 \x01(\tR\x05email\x12\x16\n" + - "\x06status\x18\x06 \x01(\x05R\x06status\"K\n" + - "\x11AdminLoginRequest\x12\x1a\n" + + "\x06status\x18\x06 \x01(\x05R\x06status\"F\n" + + "\fLoginRequest\x12\x1a\n" + "\busername\x18\x01 \x01(\tR\busername\x12\x1a\n" + "\bpassword\x18\x02 \x01(\tR\bpassword\"\x13\n" + "\x11AdminEmptyRequest\"\x1d\n" + "\vInfoRequest\x12\x0e\n" + - "\x02id\x18\x01 \x01(\x03R\x02id\".\n" + - "\rRoutesRequest\x12\x1d\n" + - "\n" + - "service_id\x18\x01 \x01(\x03R\tserviceId\"Z\n" + + "\x02id\x18\x01 \x01(\x03R\x02id\"'\n" + + "\x15LoginKickedOutRequest\x12\x0e\n" + + "\x02id\x18\x01 \x01(\x03R\x02id\"Z\n" + "\x12ServiceEditRequest\x12\x0e\n" + "\x02id\x18\x01 \x01(\x03R\x02id\x12\x12\n" + "\x04name\x18\x02 \x01(\tR\x04name\x12 \n" + @@ -1436,6 +1479,9 @@ const file_proto_admin_proto_rawDesc = "" + "\x04type\x18\x02 \x01(\x05R\x04type\"6\n" + "\x15AuthorityItemsRequest\x12\x1d\n" + "\n" + + "service_id\x18\x01 \x01(\x03R\tserviceId\".\n" + + "\rRoutesRequest\x12\x1d\n" + + "\n" + "service_id\x18\x01 \x01(\x03R\tserviceId\"\xd1\x04\n" + "\x14AuthorityEditRequest\x12\x0e\n" + "\x02id\x18\x01 \x01(\x03R\x02id\x12\x12\n" + @@ -1478,7 +1524,7 @@ const file_proto_admin_proto_rawDesc = "" + "\n" + "service_id\x18\x03 \x01(\x03R\tserviceId\x12\x12\n" + "\x04name\x18\x04 \x01(\tR\x04name\x12\x16\n" + - "\x06status\x18\x05 \x01(\x05R\x06status2\xa2\x13\n" + + "\x06status\x18\x05 \x01(\x05R\x06status2\xa7\x15\n" + "\x05Admin\x12V\n" + "\tAdminEdit\x12\x17.admin.AdminEditRequest\x1a\x0f.admin.Response\"\x1f\x82\xd3\xe4\x93\x02\x19:\x01*\"\x14/admin/v3/admin/edit\x12W\n" + "\vAdminStatus\x12\x14.admin.StatusRequest\x1a\x0f.admin.Response\"!\x82\xd3\xe4\x93\x02\x1b:\x01*\"\x16/admin/v3/admin/status\x12X\n" + @@ -1486,11 +1532,14 @@ const file_proto_admin_proto_rawDesc = "" + "\vOwnPassword\x12\x19.admin.OwnPasswordRequest\x1a\x0f.admin.Response\"'\x82\xd3\xe4\x93\x02!:\x01*\"\x1c/admin/v3/admin/own-password\x12V\n" + "\tAdminInfo\x12\x17.admin.AdminInfoRequest\x1a\x0f.admin.Response\"\x1f\x82\xd3\xe4\x93\x02\x19:\x01*\x12\x14/admin/v3/admin/info\x12Y\n" + "\n" + - "AdminItems\x12\x18.admin.AdminItemsRequest\x1a\x0f.admin.Response\" \x82\xd3\xe4\x93\x02\x1a:\x01*\x12\x15/admin/v3/admin/items\x12S\n" + + "AdminItems\x12\x18.admin.AdminItemsRequest\x1a\x0f.admin.Response\" \x82\xd3\xe4\x93\x02\x1a:\x01*\x12\x15/admin/v3/admin/items\x12W\n" + + "\fLoginRefresh\x12\x18.admin.AdminEmptyRequest\x1a\x0f.admin.Response\"\x1c\x82\xd3\xe4\x93\x02\x16:\x01*\"\x11/admin/v3/refresh\x12I\n" + + "\x05Login\x12\x13.admin.LoginRequest\x1a\x0f.admin.Response\"\x1a\x82\xd3\xe4\x93\x02\x14:\x01*\"\x0f/admin/v3/login\x12Q\n" + + "\tLoginInfo\x12\x18.admin.AdminEmptyRequest\x1a\x0f.admin.Response\"\x19\x82\xd3\xe4\x93\x02\x13:\x01*\"\x0e/admin/v3/info\x12Y\n" + "\n" + - "AdminLogin\x12\x18.admin.AdminLoginRequest\x1a\x0f.admin.Response\"\x1a\x82\xd3\xe4\x93\x02\x14:\x01*\"\x0f/admin/v3/login\x12W\n" + - "\fAdminRefresh\x12\x18.admin.AdminEmptyRequest\x1a\x0f.admin.Response\"\x1c\x82\xd3\xe4\x93\x02\x16:\x01*\"\x11/admin/v3/refresh\x12Q\n" + - "\tLoginInfo\x12\x18.admin.AdminEmptyRequest\x1a\x0f.admin.Response\"\x19\x82\xd3\xe4\x93\x02\x13:\x01*\"\x0e/admin/v3/info\x12Q\n" + + "LoginItems\x12\x18.admin.AdminEmptyRequest\x1a\x0f.admin.Response\" \x82\xd3\xe4\x93\x02\x1a:\x01*\"\x15/admin/v3/login/items\x12`\n" + + "\x0eLoginKickedOut\x12\x1c.admin.LoginKickedOutRequest\x1a\x0f.admin.Response\"\x1f\x82\xd3\xe4\x93\x02\x19:\x01*\"\x14/admin/v3/kicked-out\x12P\n" + + "\x06LogOut\x12\x18.admin.AdminEmptyRequest\x1a\x0f.admin.Response\"\x1b\x82\xd3\xe4\x93\x02\x15:\x01*\"\x10/admin/v3/logout\x12Q\n" + "\vLoginRoutes\x12\x14.admin.RoutesRequest\x1a\x0f.admin.Response\"\x1b\x82\xd3\xe4\x93\x02\x15:\x01*\x12\x10/admin/v3/routes\x12U\n" + "\vServiceInfo\x12\x12.admin.InfoRequest\x1a\x0f.admin.Response\"!\x82\xd3\xe4\x93\x02\x1b:\x01*\x12\x16/admin/v3/service/info\x12\\\n" + "\vServiceEdit\x12\x19.admin.ServiceEditRequest\x1a\x0f.admin.Response\"!\x82\xd3\xe4\x93\x02\x1b:\x01*\"\x16/admin/v3/service/edit\x12_\n" + @@ -1523,7 +1572,7 @@ func file_proto_admin_proto_rawDescGZIP() []byte { return file_proto_admin_proto_rawDescData } -var file_proto_admin_proto_msgTypes = make([]protoimpl.MessageInfo, 22) +var file_proto_admin_proto_msgTypes = make([]protoimpl.MessageInfo, 23) var file_proto_admin_proto_goTypes = []any{ (*AdminEditRequest)(nil), // 0: admin.AdminEditRequest (*StatusRequest)(nil), // 1: admin.StatusRequest @@ -1532,21 +1581,22 @@ var file_proto_admin_proto_goTypes = []any{ (*OwnPasswordRequest)(nil), // 4: admin.OwnPasswordRequest (*AdminInfoRequest)(nil), // 5: admin.AdminInfoRequest (*AdminItemsRequest)(nil), // 6: admin.AdminItemsRequest - (*AdminLoginRequest)(nil), // 7: admin.AdminLoginRequest + (*LoginRequest)(nil), // 7: admin.LoginRequest (*AdminEmptyRequest)(nil), // 8: admin.AdminEmptyRequest (*InfoRequest)(nil), // 9: admin.InfoRequest - (*RoutesRequest)(nil), // 10: admin.RoutesRequest + (*LoginKickedOutRequest)(nil), // 10: admin.LoginKickedOutRequest (*ServiceEditRequest)(nil), // 11: admin.ServiceEditRequest (*ServiceItemsRequest)(nil), // 12: admin.ServiceItemsRequest (*ServiceNameRequest)(nil), // 13: admin.ServiceNameRequest (*AuthoritySortRequest)(nil), // 14: admin.AuthoritySortRequest (*AuthorityNameRequest)(nil), // 15: admin.AuthorityNameRequest (*AuthorityItemsRequest)(nil), // 16: admin.AuthorityItemsRequest - (*AuthorityEditRequest)(nil), // 17: admin.AuthorityEditRequest - (*RoleRuleRequest)(nil), // 18: admin.RoleRuleRequest - (*RoleNameRequest)(nil), // 19: admin.RoleNameRequest - (*RoleEditRequest)(nil), // 20: admin.RoleEditRequest - (*RoleItemsRequest)(nil), // 21: admin.RoleItemsRequest + (*RoutesRequest)(nil), // 17: admin.RoutesRequest + (*AuthorityEditRequest)(nil), // 18: admin.AuthorityEditRequest + (*RoleRuleRequest)(nil), // 19: admin.RoleRuleRequest + (*RoleNameRequest)(nil), // 20: admin.RoleNameRequest + (*RoleEditRequest)(nil), // 21: admin.RoleEditRequest + (*RoleItemsRequest)(nil), // 22: admin.RoleItemsRequest } var file_proto_admin_proto_depIdxs = []int32{ 0, // 0: admin.Admin.AdminEdit:input_type -> admin.AdminEditRequest @@ -1555,56 +1605,62 @@ var file_proto_admin_proto_depIdxs = []int32{ 4, // 3: admin.Admin.OwnPassword:input_type -> admin.OwnPasswordRequest 5, // 4: admin.Admin.AdminInfo:input_type -> admin.AdminInfoRequest 6, // 5: admin.Admin.AdminItems:input_type -> admin.AdminItemsRequest - 7, // 6: admin.Admin.AdminLogin:input_type -> admin.AdminLoginRequest - 8, // 7: admin.Admin.AdminRefresh:input_type -> admin.AdminEmptyRequest + 8, // 6: admin.Admin.LoginRefresh:input_type -> admin.AdminEmptyRequest + 7, // 7: admin.Admin.Login:input_type -> admin.LoginRequest 8, // 8: admin.Admin.LoginInfo:input_type -> admin.AdminEmptyRequest - 10, // 9: admin.Admin.LoginRoutes:input_type -> admin.RoutesRequest - 9, // 10: admin.Admin.ServiceInfo:input_type -> admin.InfoRequest - 11, // 11: admin.Admin.ServiceEdit:input_type -> admin.ServiceEditRequest - 12, // 12: admin.Admin.ServiceItems:input_type -> admin.ServiceItemsRequest - 1, // 13: admin.Admin.ServiceStatus:input_type -> admin.StatusRequest - 13, // 14: admin.Admin.ServiceNames:input_type -> admin.ServiceNameRequest - 9, // 15: admin.Admin.AuthorityInfo:input_type -> admin.InfoRequest - 17, // 16: admin.Admin.AuthorityEdit:input_type -> admin.AuthorityEditRequest - 16, // 17: admin.Admin.AuthorityItems:input_type -> admin.AuthorityItemsRequest - 1, // 18: admin.Admin.AuthorityStatus:input_type -> admin.StatusRequest - 15, // 19: admin.Admin.AuthorityNames:input_type -> admin.AuthorityNameRequest - 14, // 20: admin.Admin.AuthoritySort:input_type -> admin.AuthoritySortRequest - 19, // 21: admin.Admin.RoleNames:input_type -> admin.RoleNameRequest - 9, // 22: admin.Admin.RoleInfo:input_type -> admin.InfoRequest - 20, // 23: admin.Admin.RoleEdit:input_type -> admin.RoleEditRequest - 21, // 24: admin.Admin.RoleItems:input_type -> admin.RoleItemsRequest - 1, // 25: admin.Admin.RoleStatus:input_type -> admin.StatusRequest - 18, // 26: admin.Admin.RoleRule:input_type -> admin.RoleRuleRequest - 2, // 27: admin.Admin.AdminEdit:output_type -> admin.Response - 2, // 28: admin.Admin.AdminStatus:output_type -> admin.Response - 2, // 29: admin.Admin.Password:output_type -> admin.Response - 2, // 30: admin.Admin.OwnPassword:output_type -> admin.Response - 2, // 31: admin.Admin.AdminInfo:output_type -> admin.Response - 2, // 32: admin.Admin.AdminItems:output_type -> admin.Response - 2, // 33: admin.Admin.AdminLogin:output_type -> admin.Response - 2, // 34: admin.Admin.AdminRefresh:output_type -> admin.Response - 2, // 35: admin.Admin.LoginInfo:output_type -> admin.Response - 2, // 36: admin.Admin.LoginRoutes:output_type -> admin.Response - 2, // 37: admin.Admin.ServiceInfo:output_type -> admin.Response - 2, // 38: admin.Admin.ServiceEdit:output_type -> admin.Response - 2, // 39: admin.Admin.ServiceItems:output_type -> admin.Response - 2, // 40: admin.Admin.ServiceStatus:output_type -> admin.Response - 2, // 41: admin.Admin.ServiceNames:output_type -> admin.Response - 2, // 42: admin.Admin.AuthorityInfo:output_type -> admin.Response - 2, // 43: admin.Admin.AuthorityEdit:output_type -> admin.Response - 2, // 44: admin.Admin.AuthorityItems:output_type -> admin.Response - 2, // 45: admin.Admin.AuthorityStatus:output_type -> admin.Response - 2, // 46: admin.Admin.AuthorityNames:output_type -> admin.Response - 2, // 47: admin.Admin.AuthoritySort:output_type -> admin.Response - 2, // 48: admin.Admin.RoleNames:output_type -> admin.Response - 2, // 49: admin.Admin.RoleInfo:output_type -> admin.Response - 2, // 50: admin.Admin.RoleEdit:output_type -> admin.Response - 2, // 51: admin.Admin.RoleItems:output_type -> admin.Response - 2, // 52: admin.Admin.RoleStatus:output_type -> admin.Response - 2, // 53: admin.Admin.RoleRule:output_type -> admin.Response - 27, // [27:54] is the sub-list for method output_type - 0, // [0:27] is the sub-list for method input_type + 8, // 9: admin.Admin.LoginItems:input_type -> admin.AdminEmptyRequest + 10, // 10: admin.Admin.LoginKickedOut:input_type -> admin.LoginKickedOutRequest + 8, // 11: admin.Admin.LogOut:input_type -> admin.AdminEmptyRequest + 17, // 12: admin.Admin.LoginRoutes:input_type -> admin.RoutesRequest + 9, // 13: admin.Admin.ServiceInfo:input_type -> admin.InfoRequest + 11, // 14: admin.Admin.ServiceEdit:input_type -> admin.ServiceEditRequest + 12, // 15: admin.Admin.ServiceItems:input_type -> admin.ServiceItemsRequest + 1, // 16: admin.Admin.ServiceStatus:input_type -> admin.StatusRequest + 13, // 17: admin.Admin.ServiceNames:input_type -> admin.ServiceNameRequest + 9, // 18: admin.Admin.AuthorityInfo:input_type -> admin.InfoRequest + 18, // 19: admin.Admin.AuthorityEdit:input_type -> admin.AuthorityEditRequest + 16, // 20: admin.Admin.AuthorityItems:input_type -> admin.AuthorityItemsRequest + 1, // 21: admin.Admin.AuthorityStatus:input_type -> admin.StatusRequest + 15, // 22: admin.Admin.AuthorityNames:input_type -> admin.AuthorityNameRequest + 14, // 23: admin.Admin.AuthoritySort:input_type -> admin.AuthoritySortRequest + 20, // 24: admin.Admin.RoleNames:input_type -> admin.RoleNameRequest + 9, // 25: admin.Admin.RoleInfo:input_type -> admin.InfoRequest + 21, // 26: admin.Admin.RoleEdit:input_type -> admin.RoleEditRequest + 22, // 27: admin.Admin.RoleItems:input_type -> admin.RoleItemsRequest + 1, // 28: admin.Admin.RoleStatus:input_type -> admin.StatusRequest + 19, // 29: admin.Admin.RoleRule:input_type -> admin.RoleRuleRequest + 2, // 30: admin.Admin.AdminEdit:output_type -> admin.Response + 2, // 31: admin.Admin.AdminStatus:output_type -> admin.Response + 2, // 32: admin.Admin.Password:output_type -> admin.Response + 2, // 33: admin.Admin.OwnPassword:output_type -> admin.Response + 2, // 34: admin.Admin.AdminInfo:output_type -> admin.Response + 2, // 35: admin.Admin.AdminItems:output_type -> admin.Response + 2, // 36: admin.Admin.LoginRefresh:output_type -> admin.Response + 2, // 37: admin.Admin.Login:output_type -> admin.Response + 2, // 38: admin.Admin.LoginInfo:output_type -> admin.Response + 2, // 39: admin.Admin.LoginItems:output_type -> admin.Response + 2, // 40: admin.Admin.LoginKickedOut:output_type -> admin.Response + 2, // 41: admin.Admin.LogOut:output_type -> admin.Response + 2, // 42: admin.Admin.LoginRoutes:output_type -> admin.Response + 2, // 43: admin.Admin.ServiceInfo:output_type -> admin.Response + 2, // 44: admin.Admin.ServiceEdit:output_type -> admin.Response + 2, // 45: admin.Admin.ServiceItems:output_type -> admin.Response + 2, // 46: admin.Admin.ServiceStatus:output_type -> admin.Response + 2, // 47: admin.Admin.ServiceNames:output_type -> admin.Response + 2, // 48: admin.Admin.AuthorityInfo:output_type -> admin.Response + 2, // 49: admin.Admin.AuthorityEdit:output_type -> admin.Response + 2, // 50: admin.Admin.AuthorityItems:output_type -> admin.Response + 2, // 51: admin.Admin.AuthorityStatus:output_type -> admin.Response + 2, // 52: admin.Admin.AuthorityNames:output_type -> admin.Response + 2, // 53: admin.Admin.AuthoritySort:output_type -> admin.Response + 2, // 54: admin.Admin.RoleNames:output_type -> admin.Response + 2, // 55: admin.Admin.RoleInfo:output_type -> admin.Response + 2, // 56: admin.Admin.RoleEdit:output_type -> admin.Response + 2, // 57: admin.Admin.RoleItems:output_type -> admin.Response + 2, // 58: admin.Admin.RoleStatus:output_type -> admin.Response + 2, // 59: admin.Admin.RoleRule:output_type -> admin.Response + 30, // [30:60] is the sub-list for method output_type + 0, // [0:30] is the sub-list for method input_type 0, // [0:0] is the sub-list for extension type_name 0, // [0:0] is the sub-list for extension extendee 0, // [0:0] is the sub-list for field type_name @@ -1621,7 +1677,7 @@ func file_proto_admin_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: unsafe.Slice(unsafe.StringData(file_proto_admin_proto_rawDesc), len(file_proto_admin_proto_rawDesc)), NumEnums: 0, - NumMessages: 22, + NumMessages: 23, NumExtensions: 0, NumServices: 1, }, diff --git a/admin/admin/admin_grpc.pb.go b/admin/admin/admin_grpc.pb.go index d931996..3b3317c 100644 --- a/admin/admin/admin_grpc.pb.go +++ b/admin/admin/admin_grpc.pb.go @@ -25,9 +25,12 @@ const ( Admin_OwnPassword_FullMethodName = "/admin.Admin/OwnPassword" Admin_AdminInfo_FullMethodName = "/admin.Admin/AdminInfo" Admin_AdminItems_FullMethodName = "/admin.Admin/AdminItems" - Admin_AdminLogin_FullMethodName = "/admin.Admin/AdminLogin" - Admin_AdminRefresh_FullMethodName = "/admin.Admin/AdminRefresh" + Admin_LoginRefresh_FullMethodName = "/admin.Admin/LoginRefresh" + Admin_Login_FullMethodName = "/admin.Admin/Login" Admin_LoginInfo_FullMethodName = "/admin.Admin/LoginInfo" + Admin_LoginItems_FullMethodName = "/admin.Admin/LoginItems" + Admin_LoginKickedOut_FullMethodName = "/admin.Admin/LoginKickedOut" + Admin_LogOut_FullMethodName = "/admin.Admin/LogOut" Admin_LoginRoutes_FullMethodName = "/admin.Admin/LoginRoutes" Admin_ServiceInfo_FullMethodName = "/admin.Admin/ServiceInfo" Admin_ServiceEdit_FullMethodName = "/admin.Admin/ServiceEdit" @@ -58,9 +61,12 @@ type AdminClient interface { OwnPassword(ctx context.Context, in *OwnPasswordRequest, opts ...grpc.CallOption) (*Response, error) AdminInfo(ctx context.Context, in *AdminInfoRequest, opts ...grpc.CallOption) (*Response, error) AdminItems(ctx context.Context, in *AdminItemsRequest, opts ...grpc.CallOption) (*Response, error) - AdminLogin(ctx context.Context, in *AdminLoginRequest, opts ...grpc.CallOption) (*Response, error) - AdminRefresh(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) + LoginRefresh(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) + Login(ctx context.Context, in *LoginRequest, opts ...grpc.CallOption) (*Response, error) LoginInfo(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) + LoginItems(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) + LoginKickedOut(ctx context.Context, in *LoginKickedOutRequest, opts ...grpc.CallOption) (*Response, error) + LogOut(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) LoginRoutes(ctx context.Context, in *RoutesRequest, opts ...grpc.CallOption) (*Response, error) ServiceInfo(ctx context.Context, in *InfoRequest, opts ...grpc.CallOption) (*Response, error) ServiceEdit(ctx context.Context, in *ServiceEditRequest, opts ...grpc.CallOption) (*Response, error) @@ -149,20 +155,20 @@ func (c *adminClient) AdminItems(ctx context.Context, in *AdminItemsRequest, opt return out, nil } -func (c *adminClient) AdminLogin(ctx context.Context, in *AdminLoginRequest, opts ...grpc.CallOption) (*Response, error) { +func (c *adminClient) LoginRefresh(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) { cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(Response) - err := c.cc.Invoke(ctx, Admin_AdminLogin_FullMethodName, in, out, cOpts...) + err := c.cc.Invoke(ctx, Admin_LoginRefresh_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } return out, nil } -func (c *adminClient) AdminRefresh(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) { +func (c *adminClient) Login(ctx context.Context, in *LoginRequest, opts ...grpc.CallOption) (*Response, error) { cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(Response) - err := c.cc.Invoke(ctx, Admin_AdminRefresh_FullMethodName, in, out, cOpts...) + err := c.cc.Invoke(ctx, Admin_Login_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -179,6 +185,36 @@ func (c *adminClient) LoginInfo(ctx context.Context, in *AdminEmptyRequest, opts return out, nil } +func (c *adminClient) LoginItems(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(Response) + err := c.cc.Invoke(ctx, Admin_LoginItems_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *adminClient) LoginKickedOut(ctx context.Context, in *LoginKickedOutRequest, opts ...grpc.CallOption) (*Response, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(Response) + err := c.cc.Invoke(ctx, Admin_LoginKickedOut_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *adminClient) LogOut(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(Response) + err := c.cc.Invoke(ctx, Admin_LogOut_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *adminClient) LoginRoutes(ctx context.Context, in *RoutesRequest, opts ...grpc.CallOption) (*Response, error) { cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(Response) @@ -369,9 +405,12 @@ type AdminServer interface { OwnPassword(context.Context, *OwnPasswordRequest) (*Response, error) AdminInfo(context.Context, *AdminInfoRequest) (*Response, error) AdminItems(context.Context, *AdminItemsRequest) (*Response, error) - AdminLogin(context.Context, *AdminLoginRequest) (*Response, error) - AdminRefresh(context.Context, *AdminEmptyRequest) (*Response, error) + LoginRefresh(context.Context, *AdminEmptyRequest) (*Response, error) + Login(context.Context, *LoginRequest) (*Response, error) LoginInfo(context.Context, *AdminEmptyRequest) (*Response, error) + LoginItems(context.Context, *AdminEmptyRequest) (*Response, error) + LoginKickedOut(context.Context, *LoginKickedOutRequest) (*Response, error) + LogOut(context.Context, *AdminEmptyRequest) (*Response, error) LoginRoutes(context.Context, *RoutesRequest) (*Response, error) ServiceInfo(context.Context, *InfoRequest) (*Response, error) ServiceEdit(context.Context, *ServiceEditRequest) (*Response, error) @@ -418,15 +457,24 @@ func (UnimplementedAdminServer) AdminInfo(context.Context, *AdminInfoRequest) (* func (UnimplementedAdminServer) AdminItems(context.Context, *AdminItemsRequest) (*Response, error) { return nil, status.Error(codes.Unimplemented, "method AdminItems not implemented") } -func (UnimplementedAdminServer) AdminLogin(context.Context, *AdminLoginRequest) (*Response, error) { - return nil, status.Error(codes.Unimplemented, "method AdminLogin not implemented") +func (UnimplementedAdminServer) LoginRefresh(context.Context, *AdminEmptyRequest) (*Response, error) { + return nil, status.Error(codes.Unimplemented, "method LoginRefresh not implemented") } -func (UnimplementedAdminServer) AdminRefresh(context.Context, *AdminEmptyRequest) (*Response, error) { - return nil, status.Error(codes.Unimplemented, "method AdminRefresh not implemented") +func (UnimplementedAdminServer) Login(context.Context, *LoginRequest) (*Response, error) { + return nil, status.Error(codes.Unimplemented, "method Login not implemented") } func (UnimplementedAdminServer) LoginInfo(context.Context, *AdminEmptyRequest) (*Response, error) { return nil, status.Error(codes.Unimplemented, "method LoginInfo not implemented") } +func (UnimplementedAdminServer) LoginItems(context.Context, *AdminEmptyRequest) (*Response, error) { + return nil, status.Error(codes.Unimplemented, "method LoginItems not implemented") +} +func (UnimplementedAdminServer) LoginKickedOut(context.Context, *LoginKickedOutRequest) (*Response, error) { + return nil, status.Error(codes.Unimplemented, "method LoginKickedOut not implemented") +} +func (UnimplementedAdminServer) LogOut(context.Context, *AdminEmptyRequest) (*Response, error) { + return nil, status.Error(codes.Unimplemented, "method LogOut not implemented") +} func (UnimplementedAdminServer) LoginRoutes(context.Context, *RoutesRequest) (*Response, error) { return nil, status.Error(codes.Unimplemented, "method LoginRoutes not implemented") } @@ -610,38 +658,38 @@ func _Admin_AdminItems_Handler(srv interface{}, ctx context.Context, dec func(in return interceptor(ctx, in, info, handler) } -func _Admin_AdminLogin_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AdminLoginRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AdminServer).AdminLogin(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: Admin_AdminLogin_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AdminServer).AdminLogin(ctx, req.(*AdminLoginRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _Admin_AdminRefresh_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { +func _Admin_LoginRefresh_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(AdminEmptyRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(AdminServer).AdminRefresh(ctx, in) + return srv.(AdminServer).LoginRefresh(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: Admin_AdminRefresh_FullMethodName, + FullMethod: Admin_LoginRefresh_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AdminServer).AdminRefresh(ctx, req.(*AdminEmptyRequest)) + return srv.(AdminServer).LoginRefresh(ctx, req.(*AdminEmptyRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _Admin_Login_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(LoginRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(AdminServer).Login(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Admin_Login_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(AdminServer).Login(ctx, req.(*LoginRequest)) } return interceptor(ctx, in, info, handler) } @@ -664,6 +712,60 @@ func _Admin_LoginInfo_Handler(srv interface{}, ctx context.Context, dec func(int return interceptor(ctx, in, info, handler) } +func _Admin_LoginItems_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(AdminEmptyRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(AdminServer).LoginItems(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Admin_LoginItems_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(AdminServer).LoginItems(ctx, req.(*AdminEmptyRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _Admin_LoginKickedOut_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(LoginKickedOutRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(AdminServer).LoginKickedOut(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Admin_LoginKickedOut_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(AdminServer).LoginKickedOut(ctx, req.(*LoginKickedOutRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _Admin_LogOut_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(AdminEmptyRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(AdminServer).LogOut(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Admin_LogOut_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(AdminServer).LogOut(ctx, req.(*AdminEmptyRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _Admin_LoginRoutes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(RoutesRequest) if err := dec(in); err != nil { @@ -1020,17 +1122,29 @@ var Admin_ServiceDesc = grpc.ServiceDesc{ Handler: _Admin_AdminItems_Handler, }, { - MethodName: "AdminLogin", - Handler: _Admin_AdminLogin_Handler, + MethodName: "LoginRefresh", + Handler: _Admin_LoginRefresh_Handler, }, { - MethodName: "AdminRefresh", - Handler: _Admin_AdminRefresh_Handler, + MethodName: "Login", + Handler: _Admin_Login_Handler, }, { MethodName: "LoginInfo", Handler: _Admin_LoginInfo_Handler, }, + { + MethodName: "LoginItems", + Handler: _Admin_LoginItems_Handler, + }, + { + MethodName: "LoginKickedOut", + Handler: _Admin_LoginKickedOut_Handler, + }, + { + MethodName: "LogOut", + Handler: _Admin_LogOut_Handler, + }, { MethodName: "LoginRoutes", Handler: _Admin_LoginRoutes_Handler, diff --git a/admin/adminclient/admin.go b/admin/adminclient/admin.go index e63bbda..f0e19ec 100644 --- a/admin/adminclient/admin.go +++ b/admin/adminclient/admin.go @@ -18,12 +18,13 @@ type ( AdminEmptyRequest = admin.AdminEmptyRequest AdminInfoRequest = admin.AdminInfoRequest AdminItemsRequest = admin.AdminItemsRequest - AdminLoginRequest = admin.AdminLoginRequest AuthorityEditRequest = admin.AuthorityEditRequest AuthorityItemsRequest = admin.AuthorityItemsRequest AuthorityNameRequest = admin.AuthorityNameRequest AuthoritySortRequest = admin.AuthoritySortRequest InfoRequest = admin.InfoRequest + LoginKickedOutRequest = admin.LoginKickedOutRequest + LoginRequest = admin.LoginRequest OwnPasswordRequest = admin.OwnPasswordRequest PasswordRequest = admin.PasswordRequest Response = admin.Response @@ -44,9 +45,12 @@ type ( OwnPassword(ctx context.Context, in *OwnPasswordRequest, opts ...grpc.CallOption) (*Response, error) AdminInfo(ctx context.Context, in *AdminInfoRequest, opts ...grpc.CallOption) (*Response, error) AdminItems(ctx context.Context, in *AdminItemsRequest, opts ...grpc.CallOption) (*Response, error) - AdminLogin(ctx context.Context, in *AdminLoginRequest, opts ...grpc.CallOption) (*Response, error) - AdminRefresh(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) + LoginRefresh(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) + Login(ctx context.Context, in *LoginRequest, opts ...grpc.CallOption) (*Response, error) LoginInfo(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) + LoginItems(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) + LoginKickedOut(ctx context.Context, in *LoginKickedOutRequest, opts ...grpc.CallOption) (*Response, error) + LogOut(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) LoginRoutes(ctx context.Context, in *RoutesRequest, opts ...grpc.CallOption) (*Response, error) ServiceInfo(ctx context.Context, in *InfoRequest, opts ...grpc.CallOption) (*Response, error) ServiceEdit(ctx context.Context, in *ServiceEditRequest, opts ...grpc.CallOption) (*Response, error) @@ -108,14 +112,14 @@ func (m *defaultAdmin) AdminItems(ctx context.Context, in *AdminItemsRequest, op return client.AdminItems(ctx, in, opts...) } -func (m *defaultAdmin) AdminLogin(ctx context.Context, in *AdminLoginRequest, opts ...grpc.CallOption) (*Response, error) { +func (m *defaultAdmin) LoginRefresh(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) { client := admin.NewAdminClient(m.cli.Conn()) - return client.AdminLogin(ctx, in, opts...) + return client.LoginRefresh(ctx, in, opts...) } -func (m *defaultAdmin) AdminRefresh(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) { +func (m *defaultAdmin) Login(ctx context.Context, in *LoginRequest, opts ...grpc.CallOption) (*Response, error) { client := admin.NewAdminClient(m.cli.Conn()) - return client.AdminRefresh(ctx, in, opts...) + return client.Login(ctx, in, opts...) } func (m *defaultAdmin) LoginInfo(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) { @@ -123,6 +127,21 @@ func (m *defaultAdmin) LoginInfo(ctx context.Context, in *AdminEmptyRequest, opt return client.LoginInfo(ctx, in, opts...) } +func (m *defaultAdmin) LoginItems(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) { + client := admin.NewAdminClient(m.cli.Conn()) + return client.LoginItems(ctx, in, opts...) +} + +func (m *defaultAdmin) LoginKickedOut(ctx context.Context, in *LoginKickedOutRequest, opts ...grpc.CallOption) (*Response, error) { + client := admin.NewAdminClient(m.cli.Conn()) + return client.LoginKickedOut(ctx, in, opts...) +} + +func (m *defaultAdmin) LogOut(ctx context.Context, in *AdminEmptyRequest, opts ...grpc.CallOption) (*Response, error) { + client := admin.NewAdminClient(m.cli.Conn()) + return client.LogOut(ctx, in, opts...) +} + func (m *defaultAdmin) LoginRoutes(ctx context.Context, in *RoutesRequest, opts ...grpc.CallOption) (*Response, error) { client := admin.NewAdminClient(m.cli.Conn()) return client.LoginRoutes(ctx, in, opts...) diff --git a/admin/internal/dao/login.go b/admin/internal/dao/login.go index 8f92cf8..2231472 100644 --- a/admin/internal/dao/login.go +++ b/admin/internal/dao/login.go @@ -13,12 +13,19 @@ type JwtInfo struct { LastTime utils.CustomTime `gorm:"column:last_time;type:datetime;comment:最后一次登录时间" json:"last_time"` Time int `json:"time"` Roles []JwtInfoServices `json:"roles"` + Refresh string `json:"refresh"` } +type JwtOutInfo struct { + Avatar string `json:"avatar"` + Name string `json:"name"` + Phone string `json:"phone"` + Email string `json:"email"` +} type Token struct { - Token string `json:"token"` - Refresh string `json:"refresh"` - Info JwtInfo `json:"info"` + Token string `json:"token"` + Refresh string `json:"refresh"` + Info JwtOutInfo `json:"info"` } type JwtInfoServices struct { diff --git a/admin/internal/logic/admineditlogic.go b/admin/internal/logic/admineditlogic.go index 2b06a64..002f783 100644 --- a/admin/internal/logic/admineditlogic.go +++ b/admin/internal/logic/admineditlogic.go @@ -38,17 +38,17 @@ func (l *AdminEditLogic) AdminEdit(in *admin.AdminEditRequest) (*admin.Response, } adminInfo := utils.GetUserFromCtx(l.ctx) if adminInfo.ID < utils.NumberOne { - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } encryPhone, cErr := utils.EncryptPhone(in.Phone) if cErr != nil { l.Logger.Error(cErr) - return l.fail(utils.ErrorEncryptAesError), nil + return l.fail(utils.ErrorEncryptAesError) } info, check := l.checkPhone(encryPhone) if !check { - return l.fail(utils.ErrorEncryptAesError), nil + return l.fail(utils.ErrorEncryptAesError) } modelObj := model.AdminModel{}.Init() if in.Id > utils.NumberZero && info.Id < utils.NumberOne { @@ -57,28 +57,28 @@ func (l *AdminEditLogic) AdminEdit(in *admin.AdminEditRequest) (*admin.Response, err := modelObj.GetOne(w, &info) if err != nil { l.Logger.Error(cErr) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } if info.Id < utils.NumberZero { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } } //编辑 if in.Id > utils.NumberZero { if info.Id < utils.NumberOne { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } if info.Id != in.Id { - return l.fail(utils.ErrorExistUser), nil + return l.fail(utils.ErrorExistUser) } } else { if len(in.Password) < utils.NumberOne { - return l.out(utils.ErrorParams, "密码不能为空"), nil + return l.out(utils.ErrorParams, "密码不能为空") } if info.Id > utils.NumberZero { - return l.fail(utils.ErrorExistUser), nil + return l.fail(utils.ErrorExistUser) } } @@ -111,9 +111,9 @@ func (l *AdminEditLogic) AdminEdit(in *admin.AdminEditRequest) (*admin.Response, if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } - return l.ok(info.Id), nil + return l.ok(info.Id) } func (l *AdminEditLogic) checkPhone(phone string) (dao.Admin, bool) { diff --git a/admin/internal/logic/admininfologic.go b/admin/internal/logic/admininfologic.go index 2335617..7f4cc19 100644 --- a/admin/internal/logic/admininfologic.go +++ b/admin/internal/logic/admininfologic.go @@ -42,7 +42,7 @@ func (l *AdminInfoLogic) AdminInfo(in *admin.AdminInfoRequest) (*admin.Response, w := modelbase.Params{Eq: map[string]string{"id": strconv.Itoa(int(in.Id))}} err := modelObj.GetOne(w, &info) if err != nil { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } if info.Id > utils.NumberZero { mobile, dErr := utils.DecryptPhone(info.Phone) @@ -63,5 +63,5 @@ func (l *AdminInfoLogic) AdminInfo(in *admin.AdminInfoRequest) (*admin.Response, Roles: roles, } - return l.ok(retData), nil + return l.ok(retData) } diff --git a/admin/internal/logic/adminitemslogic.go b/admin/internal/logic/adminitemslogic.go index 02d2e24..6191bee 100644 --- a/admin/internal/logic/adminitemslogic.go +++ b/admin/internal/logic/adminitemslogic.go @@ -84,7 +84,7 @@ func (l *AdminItemsLogic) AdminItems(in *admin.AdminItemsRequest) (*admin.Respon } items.Items = list - return l.ok(items), nil + return l.ok(items) } func (l *AdminItemsLogic) getRoleInfos(data []dao.AdminInfo) map[string]dao.RoleNameItems { diff --git a/admin/internal/logic/adminstatuslogic.go b/admin/internal/logic/adminstatuslogic.go index deb5e21..e72daf9 100644 --- a/admin/internal/logic/adminstatuslogic.go +++ b/admin/internal/logic/adminstatuslogic.go @@ -37,7 +37,7 @@ func (l *AdminStatusLogic) AdminStatus(in *admin.StatusRequest) (*admin.Response } adminInfo := utils.GetUserFromCtx(l.ctx) if adminInfo.ID < utils.NumberOne { - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } var info dao.AdminStatus w := modelbase.Params{Eq: map[string]string{"id": strconv.Itoa(int(in.Id))}} @@ -45,11 +45,11 @@ func (l *AdminStatusLogic) AdminStatus(in *admin.StatusRequest) (*admin.Response err := modelObj.GetOne(w, &info) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } if info.Id < utils.NumberOne { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } info.Status = uint8(in.Status) @@ -59,7 +59,7 @@ func (l *AdminStatusLogic) AdminStatus(in *admin.StatusRequest) (*admin.Response _, editErr := modelObj.Edit(w, info) if editErr != nil { l.Logger.Error(editErr) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } - return l.ok(utils.NumberOne), nil + return l.ok(utils.NumberOne) } diff --git a/admin/internal/logic/authorityeditlogic.go b/admin/internal/logic/authorityeditlogic.go index a5903ca..31df6b0 100644 --- a/admin/internal/logic/authorityeditlogic.go +++ b/admin/internal/logic/authorityeditlogic.go @@ -39,17 +39,17 @@ func (l *AuthorityEditLogic) AuthorityEdit(in *admin.AuthorityEditRequest) (*adm } adminInfo := utils.GetUserFromCtx(l.ctx) if adminInfo.ID < utils.NumberOne { - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } edit, dErr := l.getData(adminInfo, in) if dErr != utils.Ok { - return l.fail(dErr), nil + return l.fail(dErr) } modelObj := model.AuthorityModel{}.Init() var err error jErr, jsonData := l.getJsonData(in) if jErr != utils.Ok { - return l.fail(jErr), nil + return l.fail(jErr) } id := in.Id if id > utils.NumberZero { @@ -58,10 +58,10 @@ func (l *AuthorityEditLogic) AuthorityEdit(in *admin.AuthorityEditRequest) (*adm err = modelObj.GetOne(w, &info) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } if info.Id < utils.NumberOne { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } edit.Id = info.Id @@ -116,10 +116,10 @@ func (l *AuthorityEditLogic) AuthorityEdit(in *admin.AuthorityEditRequest) (*adm if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } - return l.ok(id), nil + return l.ok(id) } func (l *AuthorityEditLogic) getData(adminInfo utils.UserInfo, in *admin.AuthorityEditRequest) (dao.Authority, utils.Status) { diff --git a/admin/internal/logic/authorityinfologic.go b/admin/internal/logic/authorityinfologic.go index 0d4aef7..51d06e4 100644 --- a/admin/internal/logic/authorityinfologic.go +++ b/admin/internal/logic/authorityinfologic.go @@ -40,7 +40,7 @@ func (l *AuthorityInfoLogic) AuthorityInfo(in *admin.InfoRequest) (*admin.Respon w := modelbase.Params{Eq: map[string]string{"id": strconv.FormatInt(in.Id, utils.NumberTen)}} err := modelObj.GetOne(w, &info) if err != nil { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } new := dao.AuthorityInfoNew{ AuthorityInfo: info, @@ -62,5 +62,5 @@ func (l *AuthorityInfoLogic) AuthorityInfo(in *admin.InfoRequest) (*admin.Respon } } - return l.ok(new), nil + return l.ok(new) } diff --git a/admin/internal/logic/authorityitemslogic.go b/admin/internal/logic/authorityitemslogic.go index 56d2eca..328ef7f 100644 --- a/admin/internal/logic/authorityitemslogic.go +++ b/admin/internal/logic/authorityitemslogic.go @@ -45,13 +45,13 @@ func (l *AuthorityItemsLogic) AuthorityItems(in *admin.AuthorityItemsRequest) (* err := modelObj.Items(w, &data) if err != nil { l.Logger.Error(err) - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } items := l.getList(data, utils.NumberZero) l.processTreeNodes(items, utils.NumberOne) - return l.ok(items), nil + return l.ok(items) } func (l *AuthorityItemsLogic) processTreeNodes(nodes []*dao.AuthorityItems, level int) { diff --git a/admin/internal/logic/authoritynameslogic.go b/admin/internal/logic/authoritynameslogic.go index c660644..aa49bf4 100644 --- a/admin/internal/logic/authoritynameslogic.go +++ b/admin/internal/logic/authoritynameslogic.go @@ -52,11 +52,11 @@ func (l *AuthorityNamesLogic) AuthorityNames(in *admin.AuthorityNameRequest) (*a err := modelObj.Items(w, &data) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } items := l.getNameList(data, utils.NumberZero) - return l.ok(items), nil + return l.ok(items) } // 获取层级的下接数据 列表使用 diff --git a/admin/internal/logic/authoritysortlogic.go b/admin/internal/logic/authoritysortlogic.go index caae1e7..ced76a1 100644 --- a/admin/internal/logic/authoritysortlogic.go +++ b/admin/internal/logic/authoritysortlogic.go @@ -37,7 +37,7 @@ func (l *AuthoritySortLogic) AuthoritySort(in *admin.AuthoritySortRequest) (*adm } adminInfo := utils.GetUserFromCtx(l.ctx) if adminInfo.ID < utils.NumberOne { - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } info := dao.AuthoritySort{} modelObj := model.AuthorityModel{}.Init() @@ -45,10 +45,10 @@ func (l *AuthoritySortLogic) AuthoritySort(in *admin.AuthoritySortRequest) (*adm err := modelObj.Items(w, &info) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } if info.Id < utils.NumberOne { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } w = modelbase.Params{ @@ -65,10 +65,10 @@ func (l *AuthoritySortLogic) AuthoritySort(in *admin.AuthoritySortRequest) (*adm err = modelObj.Items(w, &other) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } if info.Id < utils.NumberOne { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } w = modelbase.Params{Eq: map[string]string{"id": strconv.FormatInt(info.Id, utils.NumberTen)}} infoSort := info.Sort @@ -78,7 +78,7 @@ func (l *AuthoritySortLogic) AuthoritySort(in *admin.AuthoritySortRequest) (*adm num, err := modelObj.Edit(w, &info) if err != nil || num < utils.NumberOne { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } w = modelbase.Params{Eq: map[string]string{"id": strconv.FormatInt(other.Id, utils.NumberTen)}} other.Sort = infoSort @@ -87,8 +87,8 @@ func (l *AuthoritySortLogic) AuthoritySort(in *admin.AuthoritySortRequest) (*adm num, err = modelObj.Edit(w, &other) if err != nil || num < utils.NumberOne { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } - return l.ok(utils.NumberOne), nil + return l.ok(utils.NumberOne) } diff --git a/admin/internal/logic/authoritystatuslogic.go b/admin/internal/logic/authoritystatuslogic.go index e96d67c..c5c0f83 100644 --- a/admin/internal/logic/authoritystatuslogic.go +++ b/admin/internal/logic/authoritystatuslogic.go @@ -37,7 +37,7 @@ func (l *AuthorityStatusLogic) AuthorityStatus(in *admin.StatusRequest) (*admin. } adminInfo := utils.GetUserFromCtx(l.ctx) if adminInfo.ID < utils.NumberOne { - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } info := dao.AuthorityStatus{} w := modelbase.Params{Eq: map[string]string{"id": strconv.FormatInt(in.Id, utils.NumberTen)}} @@ -45,10 +45,10 @@ func (l *AuthorityStatusLogic) AuthorityStatus(in *admin.StatusRequest) (*admin. err := modelObj.GetOne(w, &info) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } if info.Id < utils.NumberOne { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } countW := modelbase.Params{Eq: map[string]string{ @@ -60,11 +60,11 @@ func (l *AuthorityStatusLogic) AuthorityStatus(in *admin.StatusRequest) (*admin. count, err := modelObj.Count(countW, &infos) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } if count > utils.NumberZero { - return l.fail(utils.ErrorAuthorityChange), nil + return l.fail(utils.ErrorAuthorityChange) } info.Status = uint8(in.Status) @@ -74,8 +74,8 @@ func (l *AuthorityStatusLogic) AuthorityStatus(in *admin.StatusRequest) (*admin. _, editErr := modelObj.Edit(w, info) if editErr != nil { l.Logger.Error(editErr) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } - return l.ok(utils.NumberOne), nil + return l.ok(utils.NumberOne) } diff --git a/admin/internal/logic/base.go b/admin/internal/logic/base.go index 7413964..5a26fe5 100644 --- a/admin/internal/logic/base.go +++ b/admin/internal/logic/base.go @@ -31,15 +31,14 @@ func (l *BaseLogic) checkParams(in interface{}, v validateService.IValidator) *a return nil } -func (l *BaseLogic) fail(status utils.Status) *admin.Response { - return &admin.Response{Code: status.Code, Msg: status.Msg} +func (l *BaseLogic) fail(status utils.Status) (*admin.Response, error) { + return l.out(status, status.Msg) +} +func (l *BaseLogic) out(status utils.Status, msg string) (*admin.Response, error) { + return &admin.Response{Code: status.Code, Msg: msg}, nil } -func (l *BaseLogic) out(status utils.Status, msg string) *admin.Response { - return &admin.Response{Code: status.Code, Msg: msg} -} - -func (l *BaseLogic) ok(data any) *admin.Response { +func (l *BaseLogic) ok(data any) (*admin.Response, error) { buf, _ := json.Marshal(data) - return &admin.Response{Code: utils.Ok.Code, Msg: utils.Ok.Msg, Data: string(buf)} + return &admin.Response{Code: utils.Ok.Code, Msg: utils.Ok.Msg, Data: string(buf)}, nil } diff --git a/admin/internal/logic/logininfologic.go b/admin/internal/logic/logininfologic.go index a4bcd42..82e7ab4 100644 --- a/admin/internal/logic/logininfologic.go +++ b/admin/internal/logic/logininfologic.go @@ -33,7 +33,7 @@ func NewLoginInfoLogic(ctx context.Context, svcCtx *svc.ServiceContext) *LoginIn func (l *LoginInfoLogic) LoginInfo(in *admin.AdminEmptyRequest) (*admin.Response, error) { adminInfo := utils.GetUserFromCtx(l.ctx) if adminInfo.ID < utils.NumberOne { - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } info := dao.AdminInfo{} modelObj := model.AdminModel{}.Init() @@ -61,5 +61,5 @@ func (l *LoginInfoLogic) LoginInfo(in *admin.AdminEmptyRequest) (*admin.Response Roles: roles, } - return l.ok(retData), nil + return l.ok(retData) } diff --git a/admin/internal/logic/loginitemslogic.go b/admin/internal/logic/loginitemslogic.go new file mode 100644 index 0000000..7e93425 --- /dev/null +++ b/admin/internal/logic/loginitemslogic.go @@ -0,0 +1,70 @@ +package logic + +import ( + "admin/internal/dao" + "context" + + "admin/admin" + "admin/internal/svc" + + jsoniter "github.com/json-iterator/go" + "github.com/zeromicro/go-zero/core/logx" + "pkg.local/redis" + "pkg.local/utils" +) + +type LoginItemsLogic struct { + ctx context.Context + svcCtx *svc.ServiceContext + logx.Logger + BaseLogic +} + +func NewLoginItemsLogic(ctx context.Context, svcCtx *svc.ServiceContext) *LoginItemsLogic { + return &LoginItemsLogic{ + ctx: ctx, + svcCtx: svcCtx, + Logger: logx.WithContext(ctx), + } +} + +func (l *LoginItemsLogic) LoginItems(in *admin.AdminEmptyRequest) (*admin.Response, error) { + var items utils.LoginRedis + var info dao.JwtInfo + var infos []dao.JwtInfo + cursor := uint64(0) + match := utils.GetLoginKeysKey(utils.LoginTypeAdmin, "*") + count := int64(100000) + scanKeys, _, err := redis.Client.Scan(l.ctx, cursor, match, count).Result() + if err != nil { + l.Logger.Error(err) + return l.out(utils.Fail, "获取登录信息失败") + } + for _, scanKey := range scanKeys { + json, err := redis.Client.Get(l.ctx, scanKey).Result() + if err != nil { + l.Logger.Error(err) + return l.out(utils.Fail, "获取登录信息失败") + } + err = jsoniter.Unmarshal([]byte(json), &items) + if err != nil { + l.Logger.Error(err) + return l.out(utils.Fail, "解析登录信息失败") + } + err = jsoniter.Unmarshal(items.Info, &info) + if err != nil { + l.Logger.Error(err) + return l.out(utils.Fail, "解析登录信息失败") + } + infos = append(infos, dao.JwtInfo{ + Id: info.Id, + Phone: info.Phone, + Name: info.Name, + Avatar: info.Avatar, + Email: info.Email, + LastTime: info.LastTime, + }) + } + + return l.ok(infos) +} diff --git a/admin/internal/logic/loginkickedoutlogic.go b/admin/internal/logic/loginkickedoutlogic.go new file mode 100644 index 0000000..ba303f3 --- /dev/null +++ b/admin/internal/logic/loginkickedoutlogic.go @@ -0,0 +1,31 @@ +package logic + +import ( + "context" + + "admin/admin" + "admin/internal/svc" + + "github.com/zeromicro/go-zero/core/logx" +) + +type LoginKickedOutLogic struct { + ctx context.Context + svcCtx *svc.ServiceContext + logx.Logger + BaseLogic +} + +func NewLoginKickedOutLogic(ctx context.Context, svcCtx *svc.ServiceContext) *LoginKickedOutLogic { + return &LoginKickedOutLogic{ + ctx: ctx, + svcCtx: svcCtx, + Logger: logx.WithContext(ctx), + } +} + +func (l *LoginKickedOutLogic) LoginKickedOut(in *admin.LoginKickedOutRequest) (*admin.Response, error) { + // todo: add your logic here and delete this line + + return &admin.Response{}, nil +} diff --git a/admin/internal/logic/adminloginlogic.go b/admin/internal/logic/loginlogic.go similarity index 84% rename from admin/internal/logic/adminloginlogic.go rename to admin/internal/logic/loginlogic.go index c3b5bd3..83e18b9 100644 --- a/admin/internal/logic/adminloginlogic.go +++ b/admin/internal/logic/loginlogic.go @@ -1,15 +1,16 @@ package logic import ( - "admin/admin" "admin/internal/dao" "admin/internal/model" - "admin/internal/svc" "admin/validator" "context" "strconv" "time" + "admin/admin" + "admin/internal/svc" + jsoniter "github.com/json-iterator/go" "github.com/zeromicro/go-zero/core/logx" "pkg.local/modelbase" @@ -17,22 +18,22 @@ import ( "pkg.local/utils" ) -type AdminLoginLogic struct { +type LoginLogic struct { ctx context.Context svcCtx *svc.ServiceContext logx.Logger BaseLogic } -func NewAdminLoginLogic(ctx context.Context, svcCtx *svc.ServiceContext) *AdminLoginLogic { - return &AdminLoginLogic{ +func NewLoginLogic(ctx context.Context, svcCtx *svc.ServiceContext) *LoginLogic { + return &LoginLogic{ ctx: ctx, svcCtx: svcCtx, Logger: logx.WithContext(ctx), } } -func (l *AdminLoginLogic) AdminLogin(in *admin.AdminLoginRequest) (*admin.Response, error) { +func (l *LoginLogic) Login(in *admin.LoginRequest) (*admin.Response, error) { l.Logger.Error("u:", in.Username, "p:", in.Password, "|") var v validator.LoginValidator if fail := l.checkParams(in, &v); fail != nil { @@ -42,7 +43,7 @@ func (l *AdminLoginLogic) AdminLogin(in *admin.AdminLoginRequest) (*admin.Respon phone, dErr := utils.EncryptPhone(in.Username) if dErr != nil { l.Logger.Error(dErr) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } var info dao.Admin @@ -51,16 +52,16 @@ func (l *AdminLoginLogic) AdminLogin(in *admin.AdminLoginRequest) (*admin.Respon err := modelObj.GetOne(w, &info) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } if info.Id < utils.NumberOne { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } pwd := utils.GetSaltPassword(info.Salt, in.Password) eq := utils.EqualsPassword(pwd, info.Password) if !eq { - return l.fail(utils.ErrorPwdError), nil + return l.fail(utils.ErrorPwdError) } data := dao.JwtInfo{ @@ -75,15 +76,21 @@ func (l *AdminLoginLogic) AdminLogin(in *admin.AdminLoginRequest) (*admin.Respon retData := dao.Token{ Token: utils.MD5Encrypt(data.Phone + utils.Now().String()), - Info: data, + Info: dao.JwtOutInfo{ + Avatar: data.Avatar, + Name: data.Name, + Phone: data.Phone, + Email: data.Email, + }, } retData.Refresh = utils.MD5Encrypt(data.Phone + retData.Token) l.setLogin(retData.Token, retData.Refresh, data) - return l.ok(retData), nil + return l.ok(retData) } -func (l *AdminLoginLogic) setLogin(token, refresh string, data dao.JwtInfo) { +func (l *LoginLogic) setLogin(token, refresh string, data dao.JwtInfo) { + data.Refresh = refresh //获取登录过期时间 expireMin := utils.GetConfigInt("base.login_out_time") expire := time.Duration(expireMin) * time.Minute diff --git a/admin/internal/logic/adminrefreshlogic.go b/admin/internal/logic/loginrefreshlogic.go similarity index 60% rename from admin/internal/logic/adminrefreshlogic.go rename to admin/internal/logic/loginrefreshlogic.go index 88bdf82..2b8cc83 100644 --- a/admin/internal/logic/adminrefreshlogic.go +++ b/admin/internal/logic/loginrefreshlogic.go @@ -14,26 +14,26 @@ import ( "pkg.local/utils" ) -type AdminRefreshLogic struct { +type LoginRefreshLogic struct { ctx context.Context svcCtx *svc.ServiceContext logx.Logger BaseLogic } -func NewAdminRefreshLogic(ctx context.Context, svcCtx *svc.ServiceContext) *AdminRefreshLogic { - return &AdminRefreshLogic{ +func NewLoginRefreshLogic(ctx context.Context, svcCtx *svc.ServiceContext) *LoginRefreshLogic { + return &LoginRefreshLogic{ ctx: ctx, svcCtx: svcCtx, Logger: logx.WithContext(ctx), } } -func (l *AdminRefreshLogic) AdminRefresh(in *admin.AdminEmptyRequest) (*admin.Response, error) { +func (l *LoginRefreshLogic) LoginRefresh(in *admin.AdminEmptyRequest) (*admin.Response, error) { adminInfo := utils.GetUserFromCtx(l.ctx) l.Logger.Error(adminInfo) if len(adminInfo.Refresh) < utils.NumberOne { - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } //获取登录过期时间 @@ -44,45 +44,50 @@ func (l *AdminRefreshLogic) AdminRefresh(in *admin.AdminEmptyRequest) (*admin.Re refreshExpire := time.Duration(refreshMin) * time.Minute //登录信息写入redis refreshKey := utils.GetLoginRefreshKey(utils.LoginTypeAdmin, adminInfo.Refresh) - ctx := context.Background() - id, err := redis.Client.Get(ctx, refreshKey).Result() + id, err := redis.Client.Get(l.ctx, refreshKey).Result() if err != nil { - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } //获取原来的token与refresh redisKeysKey := utils.GetLoginKeysKey(utils.LoginTypeAdmin, id) var LoginInfo utils.LoginRedis - oldAuth, oldErr := redis.Client.Get(ctx, redisKeysKey).Result() + oldAuth, oldErr := redis.Client.Get(l.ctx, redisKeysKey).Result() if oldErr != nil { - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } _ = jsoniter.Unmarshal([]byte(oldAuth), &LoginInfo) if len(LoginInfo.Token) > utils.NumberOne { - redis.Client.Del(ctx, utils.GetLoginKey(utils.LoginTypeAdmin, LoginInfo.Token)).Result() + redis.Client.Del(l.ctx, utils.GetLoginKey(utils.LoginTypeAdmin, LoginInfo.Token)).Result() } if len(LoginInfo.Refresh) > utils.NumberOne { - redis.Client.Del(ctx, utils.GetLoginRefreshKey(utils.LoginTypeAdmin, LoginInfo.Refresh)).Result() + redis.Client.Del(l.ctx, utils.GetLoginRefreshKey(utils.LoginTypeAdmin, LoginInfo.Refresh)).Result() } retData := dao.Token{ Token: utils.MD5Encrypt(id + utils.Now().String()), } retData.Refresh = utils.MD5Encrypt(id + retData.Token) - //var info dao.JwtInfo - //_ = jsoniter.Unmarshal(LoginInfo.Info, &info) redisKey := utils.GetLoginKey(utils.LoginTypeAdmin, retData.Token) - redis.Client.Set(ctx, redisKey, LoginInfo.Info, expire).Result() + redis.Client.Set(l.ctx, redisKey, LoginInfo.Info, expire).Result() //更新新的数据 LoginInfo.Token = retData.Token LoginInfo.Refresh = retData.Refresh newStr, _ := jsoniter.Marshal(LoginInfo) - redis.Client.Set(ctx, redisKeysKey, newStr, refreshExpire).Result() + redis.Client.Set(l.ctx, redisKeysKey, newStr, refreshExpire).Result() //登录刷新信息写入redis newRefreshKey := utils.GetLoginRefreshKey(utils.LoginTypeAdmin, retData.Refresh) - redis.Client.Set(ctx, newRefreshKey, id, refreshExpire).Result() + redis.Client.Set(l.ctx, newRefreshKey, id, refreshExpire).Result() + var info dao.JwtInfo + err = jsoniter.Unmarshal(LoginInfo.Info, &info) + if err == nil { + retData.Info.Phone = info.Phone + retData.Info.Name = info.Name + retData.Info.Avatar = info.Avatar + retData.Info.Email = info.Email + } - return l.ok(retData), nil + return l.ok(retData) } diff --git a/admin/internal/logic/loginrouteslogic.go b/admin/internal/logic/loginrouteslogic.go index bc3a005..0371d00 100644 --- a/admin/internal/logic/loginrouteslogic.go +++ b/admin/internal/logic/loginrouteslogic.go @@ -38,7 +38,7 @@ func (l *LoginRoutesLogic) LoginRoutes(in *admin.RoutesRequest) (*admin.Response } adminInfo := utils.GetUserFromCtx(l.ctx) if adminInfo.ID < utils.NumberOne { - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } var items = dao.Routes{} @@ -46,18 +46,18 @@ func (l *LoginRoutesLogic) LoginRoutes(in *admin.RoutesRequest) (*admin.Response var rErr utils.Status rules, rErr = l.getIds(adminInfo.ID, in.ServiceId) if rErr != utils.Ok { - return l.fail(rErr), nil + return l.fail(rErr) } if len(rules) == utils.NumberZero { - return l.ok(items), nil + return l.ok(items) } items, rErr = l.userAuthority(rules, in.ServiceId) if rErr != utils.Ok { - return l.fail(rErr), nil + return l.fail(rErr) } - return l.ok(items), nil + return l.ok(items) } func (l *LoginRoutesLogic) getIds(adminId, serviceId int64) ([]string, utils.Status) { diff --git a/admin/internal/logic/logoutlogic.go b/admin/internal/logic/logoutlogic.go new file mode 100644 index 0000000..1ee650a --- /dev/null +++ b/admin/internal/logic/logoutlogic.go @@ -0,0 +1,51 @@ +package logic + +import ( + "admin/admin" + "admin/internal/svc" + "context" + "strconv" + + jsoniter "github.com/json-iterator/go" + "github.com/zeromicro/go-zero/core/logx" + "pkg.local/redis" + "pkg.local/utils" +) + +type LogOutLogic struct { + ctx context.Context + svcCtx *svc.ServiceContext + logx.Logger + BaseLogic +} + +func NewLogOutLogic(ctx context.Context, svcCtx *svc.ServiceContext) *LogOutLogic { + return &LogOutLogic{ + ctx: ctx, + svcCtx: svcCtx, + Logger: logx.WithContext(ctx), + } +} + +func (l *LogOutLogic) LogOut(in *admin.AdminEmptyRequest) (*admin.Response, error) { + adminInfo := utils.GetUserFromCtx(l.ctx) + if adminInfo.ID < utils.NumberOne { + return l.fail(utils.ErrorNoLoginInfo) + } + redisKeysKey := utils.GetLoginKeysKey(utils.LoginTypeAdmin, strconv.FormatInt(adminInfo.ID, utils.NumberTen)) + var LoginInfo utils.LoginRedis + oldAuth, oldErr := redis.Client.Get(l.ctx, redisKeysKey).Result() + if oldErr != nil { + return l.fail(utils.ErrorNoLoginInfo) + } + err := jsoniter.Unmarshal([]byte(oldAuth), &LoginInfo) + if err != nil { + return l.fail(utils.ErrorNoLoginInfo) + } + redisTokenKey := utils.GetLoginKey(utils.LoginTypeAdmin, LoginInfo.Token) + redisRefreshKey := utils.GetLoginRefreshKey(utils.LoginTypeAdmin, LoginInfo.Refresh) + redis.Client.Del(l.ctx, redisTokenKey).Result() + redis.Client.Del(l.ctx, redisRefreshKey).Result() + redis.Client.Del(l.ctx, redisKeysKey).Result() + return l.ok(utils.NumberOne) +} diff --git a/admin/internal/logic/ownpasswordlogic.go b/admin/internal/logic/ownpasswordlogic.go index 24953b0..6e14c43 100644 --- a/admin/internal/logic/ownpasswordlogic.go +++ b/admin/internal/logic/ownpasswordlogic.go @@ -38,17 +38,17 @@ func (l *OwnPasswordLogic) OwnPassword(in *admin.OwnPasswordRequest) (*admin.Res var info dao.AdminPassword adminInfo := utils.GetUserFromCtx(l.ctx) if adminInfo.ID < utils.NumberOne { - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } w := modelbase.Params{Eq: map[string]string{"id": strconv.Itoa(int(adminInfo.ID))}} modelObj := model.AdminModel{}.Init() err := modelObj.GetOne(w, &info) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } if info.Id < utils.NumberOne { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } pwd := utils.GetSaltPassword(info.Salt, in.Password) @@ -57,7 +57,7 @@ func (l *OwnPasswordLogic) OwnPassword(in *admin.OwnPasswordRequest) (*admin.Res _, editErr := modelObj.Edit(w, info) if editErr != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } - return l.ok(utils.NumberOne), nil + return l.ok(utils.NumberOne) } diff --git a/admin/internal/logic/passwordlogic.go b/admin/internal/logic/passwordlogic.go index cce2468..369e94f 100644 --- a/admin/internal/logic/passwordlogic.go +++ b/admin/internal/logic/passwordlogic.go @@ -37,7 +37,7 @@ func (l *PasswordLogic) Password(in *admin.PasswordRequest) (*admin.Response, er } adminInfo := utils.GetUserFromCtx(l.ctx) if adminInfo.ID < utils.NumberOne { - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } var info dao.AdminPassword w := modelbase.Params{Eq: map[string]string{"id": strconv.Itoa(int(in.Id))}} @@ -45,10 +45,10 @@ func (l *PasswordLogic) Password(in *admin.PasswordRequest) (*admin.Response, er err := modelObj.GetOne(w, &info) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } if info.Id < utils.NumberOne { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } pwd := utils.GetSaltPassword(info.Salt, in.Password) @@ -59,7 +59,7 @@ func (l *PasswordLogic) Password(in *admin.PasswordRequest) (*admin.Response, er _, editErr := modelObj.Edit(w, info) if editErr != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } - return l.ok(utils.NumberOne), nil + return l.ok(utils.NumberOne) } diff --git a/admin/internal/logic/roleeditlogic.go b/admin/internal/logic/roleeditlogic.go index 6bbd0f9..611b633 100644 --- a/admin/internal/logic/roleeditlogic.go +++ b/admin/internal/logic/roleeditlogic.go @@ -38,12 +38,12 @@ func (l *RoleEditLogic) RoleEdit(in *admin.RoleEditRequest) (*admin.Response, er } adminInfo := utils.GetUserFromCtx(l.ctx) if adminInfo.ID < utils.NumberOne { - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } check, err := l.check(in.Name, in.ServiceId) if err != utils.Ok { - return l.fail(err), nil + return l.fail(err) } edit := dao.Role{ @@ -59,7 +59,7 @@ func (l *RoleEditLogic) RoleEdit(in *admin.RoleEditRequest) (*admin.Response, er var editErr error if id > utils.NumberZero { if check.Id > utils.NumberZero && check.Id != id { - return l.fail(utils.ErrorExist), nil + return l.fail(utils.ErrorExist) } w := modelbase.Params{Eq: map[string]string{"id": strconv.FormatInt(in.Id, utils.NumberTen)}} @@ -67,10 +67,10 @@ func (l *RoleEditLogic) RoleEdit(in *admin.RoleEditRequest) (*admin.Response, er InfoErr := modelObj.GetOne(w, &info) if InfoErr != nil { l.Logger.Error(InfoErr) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } if info.Id < utils.NumberOne { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } edit.Id = info.Id @@ -80,7 +80,7 @@ func (l *RoleEditLogic) RoleEdit(in *admin.RoleEditRequest) (*admin.Response, er _, editErr = modelObj.Edit(w, edit) } else { if check.Id > utils.NumberZero { - return l.fail(utils.ErrorExist), nil + return l.fail(utils.ErrorExist) } editErr = modelObj.Create(&edit) id = edit.Id @@ -88,10 +88,10 @@ func (l *RoleEditLogic) RoleEdit(in *admin.RoleEditRequest) (*admin.Response, er if editErr != nil { l.Logger.Error(editErr) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } - return l.ok(id), nil + return l.ok(id) } func (l *RoleEditLogic) check(name string, id int64) (dao.Role, utils.Status) { diff --git a/admin/internal/logic/roleinfologic.go b/admin/internal/logic/roleinfologic.go index b1156ba..8b6c3cc 100644 --- a/admin/internal/logic/roleinfologic.go +++ b/admin/internal/logic/roleinfologic.go @@ -42,7 +42,7 @@ func (l *RoleInfoLogic) RoleInfo(in *admin.InfoRequest) (*admin.Response, error) w := modelbase.Params{Eq: map[string]string{"id": strconv.FormatInt(in.Id, utils.NumberTen)}} err := modelObj.GetOne(w, &role) if err != nil { - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } var rules []int @@ -61,5 +61,5 @@ func (l *RoleInfoLogic) RoleInfo(in *admin.InfoRequest) (*admin.Response, error) Rules: rules, } - return l.ok(info), nil + return l.ok(info) } diff --git a/admin/internal/logic/roleitemslogic.go b/admin/internal/logic/roleitemslogic.go index fc0e7c8..e931fdd 100644 --- a/admin/internal/logic/roleitemslogic.go +++ b/admin/internal/logic/roleitemslogic.go @@ -74,7 +74,7 @@ func (l *RoleItemsLogic) RoleItems(in *admin.RoleItemsRequest) (*admin.Response, }) } - return l.ok(items), nil + return l.ok(items) } func (l *RoleItemsLogic) getRulesInfo(data []dao.Role) map[string]string { diff --git a/admin/internal/logic/rolenameslogic.go b/admin/internal/logic/rolenameslogic.go index a1e65a3..5eaef34 100644 --- a/admin/internal/logic/rolenameslogic.go +++ b/admin/internal/logic/rolenameslogic.go @@ -35,7 +35,7 @@ func (l *RoleNamesLogic) RoleNames(in *admin.RoleNameRequest) (*admin.Response, err := model.ServicesModel{}.Init().Items(w, &services) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } var items []dao.RoleServiceNameItems @@ -51,7 +51,7 @@ func (l *RoleNamesLogic) RoleNames(in *admin.RoleNameRequest) (*admin.Response, err = modelObj.Items(w, &roles) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } tmp := map[int64][]dao.RoleNameItems{} for _, item := range roles { @@ -70,5 +70,5 @@ func (l *RoleNamesLogic) RoleNames(in *admin.RoleNameRequest) (*admin.Response, } } - return l.ok(items), nil + return l.ok(items) } diff --git a/admin/internal/logic/rolerulelogic.go b/admin/internal/logic/rolerulelogic.go index c72e5c2..bf8be90 100644 --- a/admin/internal/logic/rolerulelogic.go +++ b/admin/internal/logic/rolerulelogic.go @@ -37,7 +37,7 @@ func (l *RoleRuleLogic) RoleRule(in *admin.RoleRuleRequest) (*admin.Response, er } adminInfo := utils.GetUserFromCtx(l.ctx) if adminInfo.ID < utils.NumberOne { - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } info := dao.RoleRule{} w := modelbase.Params{Eq: map[string]string{"id": strconv.FormatInt(in.Id, utils.NumberTen)}} @@ -45,10 +45,10 @@ func (l *RoleRuleLogic) RoleRule(in *admin.RoleRuleRequest) (*admin.Response, er err := modelObj.GetOne(w, &info) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } if info.Id < utils.NumberOne { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } info.Rules = in.Rule info.AdminId = adminInfo.ID @@ -56,8 +56,8 @@ func (l *RoleRuleLogic) RoleRule(in *admin.RoleRuleRequest) (*admin.Response, er _, editErr := modelObj.Edit(w, info) if editErr != nil { l.Logger.Error(editErr) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } - return l.ok(utils.NumberOne), nil + return l.ok(utils.NumberOne) } diff --git a/admin/internal/logic/rolestatuslogic.go b/admin/internal/logic/rolestatuslogic.go index bc1d3ad..5223eba 100644 --- a/admin/internal/logic/rolestatuslogic.go +++ b/admin/internal/logic/rolestatuslogic.go @@ -37,7 +37,7 @@ func (l *RoleStatusLogic) RoleStatus(in *admin.StatusRequest) (*admin.Response, } adminInfo := utils.GetUserFromCtx(l.ctx) if adminInfo.ID < utils.NumberOne { - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } info := dao.RoleStatus{} @@ -46,10 +46,10 @@ func (l *RoleStatusLogic) RoleStatus(in *admin.StatusRequest) (*admin.Response, err := modelObj.GetOne(w, &info) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } if info.Id < utils.NumberOne { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } info.Status = uint8(in.Status) info.Reason = in.Reason @@ -58,8 +58,8 @@ func (l *RoleStatusLogic) RoleStatus(in *admin.StatusRequest) (*admin.Response, _, editErr := modelObj.Edit(w, info) if editErr != nil { l.Logger.Error(editErr) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } - return l.ok(utils.NumberOne), nil + return l.ok(utils.NumberOne) } diff --git a/admin/internal/logic/serviceeditlogic.go b/admin/internal/logic/serviceeditlogic.go index 00a3738..1fdc507 100644 --- a/admin/internal/logic/serviceeditlogic.go +++ b/admin/internal/logic/serviceeditlogic.go @@ -37,7 +37,7 @@ func (l *ServiceEditLogic) ServiceEdit(in *admin.ServiceEditRequest) (*admin.Res } adminInfo := utils.GetUserFromCtx(l.ctx) if adminInfo.ID < utils.NumberOne { - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } edit := dao.Services{ Name: in.Name, @@ -54,10 +54,10 @@ func (l *ServiceEditLogic) ServiceEdit(in *admin.ServiceEditRequest) (*admin.Res err = modelObj.GetOne(w, &info) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } if info.Id < utils.NumberOne { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } edit.Id = info.Id _, err = modelObj.Edit(w, &edit) @@ -67,8 +67,8 @@ func (l *ServiceEditLogic) ServiceEdit(in *admin.ServiceEditRequest) (*admin.Res if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } - return l.ok(edit.Id), nil + return l.ok(edit.Id) } diff --git a/admin/internal/logic/serviceinfologic.go b/admin/internal/logic/serviceinfologic.go index d24a4ef..98af10b 100644 --- a/admin/internal/logic/serviceinfologic.go +++ b/admin/internal/logic/serviceinfologic.go @@ -41,7 +41,7 @@ func (l *ServiceInfoLogic) ServiceInfo(in *admin.InfoRequest) (*admin.Response, w := modelbase.Params{Eq: map[string]string{"id": strconv.Itoa(int(in.Id))}} err := model.ServicesModel{}.Init().GetOne(w, &info) if err != nil { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } - return l.ok(info), nil + return l.ok(info) } diff --git a/admin/internal/logic/serviceitemslogic.go b/admin/internal/logic/serviceitemslogic.go index 4a51510..efebf2f 100644 --- a/admin/internal/logic/serviceitemslogic.go +++ b/admin/internal/logic/serviceitemslogic.go @@ -45,7 +45,7 @@ func (l *ServiceItemsLogic) ServiceItems(in *admin.ServiceItemsRequest) (*admin. err := modelObj.Items(w, &data) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } - return l.ok(data), nil + return l.ok(data) } diff --git a/admin/internal/logic/servicenameslogic.go b/admin/internal/logic/servicenameslogic.go index 7dc1058..77e06d8 100644 --- a/admin/internal/logic/servicenameslogic.go +++ b/admin/internal/logic/servicenameslogic.go @@ -40,7 +40,7 @@ func (l *ServiceNamesLogic) ServiceNames(in *admin.ServiceNameRequest) (*admin.R err := modelObj.Items(w, &items) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } - return l.ok(items), nil + return l.ok(items) } diff --git a/admin/internal/logic/servicestatuslogic.go b/admin/internal/logic/servicestatuslogic.go index bf043a1..55edcf1 100644 --- a/admin/internal/logic/servicestatuslogic.go +++ b/admin/internal/logic/servicestatuslogic.go @@ -37,7 +37,7 @@ func (l *ServiceStatusLogic) ServiceStatus(in *admin.StatusRequest) (*admin.Resp } adminInfo := utils.GetUserFromCtx(l.ctx) if adminInfo.ID < utils.NumberOne { - return l.fail(utils.ErrorNoLoginInfo), nil + return l.fail(utils.ErrorNoLoginInfo) } info := dao.ServicesStatus{} w := modelbase.Params{Eq: map[string]string{"id": strconv.Itoa(int(in.Id))}} @@ -45,10 +45,10 @@ func (l *ServiceStatusLogic) ServiceStatus(in *admin.StatusRequest) (*admin.Resp err := modelObj.GetOne(w, &info) if err != nil { l.Logger.Error(err) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } if info.Id < utils.NumberOne { - return l.fail(utils.ErrorNotFund), nil + return l.fail(utils.ErrorNotFund) } info.Status = uint8(in.Status) @@ -58,8 +58,8 @@ func (l *ServiceStatusLogic) ServiceStatus(in *admin.StatusRequest) (*admin.Resp _, editErr := modelObj.Edit(w, info) if editErr != nil { l.Logger.Error(editErr) - return l.fail(utils.Fail), nil + return l.fail(utils.Fail) } - return l.ok(utils.NumberOne), nil + return l.ok(utils.NumberOne) } diff --git a/admin/internal/server/adminserver.go b/admin/internal/server/adminserver.go index 6bf487b..8219728 100644 --- a/admin/internal/server/adminserver.go +++ b/admin/internal/server/adminserver.go @@ -53,14 +53,14 @@ func (s *AdminServer) AdminItems(ctx context.Context, in *admin.AdminItemsReques return l.AdminItems(in) } -func (s *AdminServer) AdminLogin(ctx context.Context, in *admin.AdminLoginRequest) (*admin.Response, error) { - l := logic.NewAdminLoginLogic(ctx, s.svcCtx) - return l.AdminLogin(in) +func (s *AdminServer) LoginRefresh(ctx context.Context, in *admin.AdminEmptyRequest) (*admin.Response, error) { + l := logic.NewLoginRefreshLogic(ctx, s.svcCtx) + return l.LoginRefresh(in) } -func (s *AdminServer) AdminRefresh(ctx context.Context, in *admin.AdminEmptyRequest) (*admin.Response, error) { - l := logic.NewAdminRefreshLogic(ctx, s.svcCtx) - return l.AdminRefresh(in) +func (s *AdminServer) Login(ctx context.Context, in *admin.LoginRequest) (*admin.Response, error) { + l := logic.NewLoginLogic(ctx, s.svcCtx) + return l.Login(in) } func (s *AdminServer) LoginInfo(ctx context.Context, in *admin.AdminEmptyRequest) (*admin.Response, error) { @@ -68,6 +68,21 @@ func (s *AdminServer) LoginInfo(ctx context.Context, in *admin.AdminEmptyRequest return l.LoginInfo(in) } +func (s *AdminServer) LoginItems(ctx context.Context, in *admin.AdminEmptyRequest) (*admin.Response, error) { + l := logic.NewLoginItemsLogic(ctx, s.svcCtx) + return l.LoginItems(in) +} + +func (s *AdminServer) LoginKickedOut(ctx context.Context, in *admin.LoginKickedOutRequest) (*admin.Response, error) { + l := logic.NewLoginKickedOutLogic(ctx, s.svcCtx) + return l.LoginKickedOut(in) +} + +func (s *AdminServer) LogOut(ctx context.Context, in *admin.AdminEmptyRequest) (*admin.Response, error) { + l := logic.NewLogOutLogic(ctx, s.svcCtx) + return l.LogOut(in) +} + func (s *AdminServer) LoginRoutes(ctx context.Context, in *admin.RoutesRequest) (*admin.Response, error) { l := logic.NewLoginRoutesLogic(ctx, s.svcCtx) return l.LoginRoutes(in) diff --git a/admin/proto/admin.proto b/admin/proto/admin.proto index 0cb0975..b43ec39 100644 --- a/admin/proto/admin.proto +++ b/admin/proto/admin.proto @@ -50,7 +50,7 @@ message AdminItemsRequest { int32 status = 6; } -message AdminLoginRequest { +message LoginRequest { string username = 1; string password = 2; } @@ -62,6 +62,10 @@ message InfoRequest { int64 id = 1; } +message LoginKickedOutRequest { + int64 id = 1; +} + message ServiceEditRequest { int64 id = 1; string name = 2; @@ -178,15 +182,15 @@ service Admin { body: "*" }; }; - rpc AdminLogin(AdminLoginRequest) returns(Response){ + rpc LoginRefresh(AdminEmptyRequest) returns(Response){ option (google.api.http) = { - post: "/admin/v3/login" + post: "/admin/v3/refresh" body: "*" }; }; - rpc AdminRefresh(AdminEmptyRequest) returns(Response){ + rpc Login(LoginRequest) returns(Response){ option (google.api.http) = { - post: "/admin/v3/refresh" + post: "/admin/v3/login" body: "*" }; }; @@ -196,6 +200,24 @@ service Admin { body: "*" }; }; + rpc LoginItems(AdminEmptyRequest) returns(Response){ + option (google.api.http) = { + post: "/admin/v3/login/items" + body: "*" + }; + }; + rpc LoginKickedOut(LoginKickedOutRequest) returns(Response){ + option (google.api.http) = { + post: "/admin/v3/kicked-out" + body: "*" + }; + }; + rpc LogOut(AdminEmptyRequest) returns(Response){ + option (google.api.http) = { + post: "/admin/v3/logout" + body: "*" + }; + }; rpc LoginRoutes(RoutesRequest) returns(Response){ option (google.api.http) = { get: "/admin/v3/routes" diff --git a/bff/etc/admin.pb b/bff/etc/admin.pb index 0db6b46..6e85332 100644 Binary files a/bff/etc/admin.pb and b/bff/etc/admin.pb differ diff --git a/deploy/apisix/lua/auth.lua b/deploy/apisix/lua/auth.lua index 513c8a5..3b4865b 100644 --- a/deploy/apisix/lua/auth.lua +++ b/deploy/apisix/lua/auth.lua @@ -40,7 +40,7 @@ function _M.access(conf, ctx) local redis_password = redis_config.password or "" local redis_db = redis_config.db or 0 - local redis_key = "login:service:" .. service_code .. ":" .. user_key + local redis_key = "login:service:" .. service_code .. ":token:" .. user_key local red = redis:new() red:set_timeouts(1000, 1000, 1000) local ok, err = red:connect(redis_host, redis_port) diff --git a/pkg/utils/status.go b/pkg/utils/status.go index 5a51676..0f3ae49 100644 --- a/pkg/utils/status.go +++ b/pkg/utils/status.go @@ -52,8 +52,8 @@ const ( const ( // LoginUser 所有的登录 加上服务名:id // %s 为,admin,user ,... - Login = "login:service:%s:" - LoginKey = "login:service:%s:token:" + Login = "login:service:%s:token:" + LoginKey = "login:service:%s:info:" LoginRefreshKey = "login:service:%s:refresh:" LoginTypeAdmin = "admin" LoginTypeUser = "user"