feat: add IsActive field to UserClubFeatures for admin management
This commit is contained in:
@@ -50,6 +50,19 @@ service ClubMembershipContract
|
||||
get: "/ClubMembership/GetStatistics"
|
||||
};
|
||||
};
|
||||
|
||||
// New: Admin Club Feature Management
|
||||
rpc GetUserClubFeatures(GetUserClubFeaturesRequest) returns (GetUserClubFeaturesResponse){
|
||||
option (google.api.http) = {
|
||||
get: "/ClubFeature/GetUserFeatures"
|
||||
};
|
||||
};
|
||||
rpc ToggleUserClubFeature(ToggleUserClubFeatureRequest) returns (ToggleUserClubFeatureResponse){
|
||||
option (google.api.http) = {
|
||||
post: "/ClubFeature/ToggleFeature"
|
||||
body: "*"
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
// Activate Command
|
||||
@@ -205,3 +218,43 @@ message MonthlyMembershipTrend
|
||||
int32 expirations = 3;
|
||||
int32 net_change = 4;
|
||||
}
|
||||
|
||||
// GetUserClubFeatures Query
|
||||
message GetUserClubFeaturesRequest
|
||||
{
|
||||
int64 user_id = 1;
|
||||
}
|
||||
|
||||
message GetUserClubFeaturesResponse
|
||||
{
|
||||
repeated UserClubFeatureModel features = 1;
|
||||
}
|
||||
|
||||
message UserClubFeatureModel
|
||||
{
|
||||
int64 id = 1;
|
||||
int64 user_id = 2;
|
||||
int64 club_membership_id = 3;
|
||||
int64 club_feature_id = 4;
|
||||
string feature_title = 5;
|
||||
string feature_description = 6;
|
||||
bool is_active = 7;
|
||||
google.protobuf.Timestamp granted_at = 8;
|
||||
string notes = 9;
|
||||
}
|
||||
|
||||
// ToggleUserClubFeature Command
|
||||
message ToggleUserClubFeatureRequest
|
||||
{
|
||||
int64 user_id = 1;
|
||||
int64 club_feature_id = 2;
|
||||
bool is_active = 3;
|
||||
}
|
||||
|
||||
message ToggleUserClubFeatureResponse
|
||||
{
|
||||
bool success = 1;
|
||||
string message = 2;
|
||||
google.protobuf.Int64Value user_club_feature_id = 3;
|
||||
google.protobuf.BoolValue is_active = 4;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user