Files
FrontOffice.BFF/src/Protobufs/FrontOffice.BFF.Configuration.Protobuf/Protos/configuration.proto
T

53 lines
1.7 KiB
Protocol Buffer

syntax = "proto3";
package configuration;
import "google/protobuf/empty.proto";
import "google/protobuf/wrappers.proto";
import "google/protobuf/timestamp.proto";
import "google/api/annotations.proto";
option csharp_namespace = "FrontOffice.BFF.Configuration.Protobuf.Protos.Configuration";
service ConfigurationContract
{
// دریافت تنظیمات باشگاه مشتریان
rpc GetClubConfiguration(google.protobuf.Empty) returns (GetClubConfigurationResponse){
option (google.api.http) = {
get: "/Configuration/Club"
};
};
// دریافت لیست فیچرهای باشگاه مشتریان
rpc GetClubFeatures(google.protobuf.Empty) returns (GetClubFeaturesResponse){
option (google.api.http) = {
get: "/Configuration/ClubFeatures"
};
};
}
// پاسخ تنظیمات باشگاه
message GetClubConfigurationResponse
{
int64 activation_fee = 1; // هزینه فعال‌سازی (ریال)
int64 membership_gift_value = 2; // مبلغ هدیه عضویت (ریال)
}
// پاسخ فیچرهای باشگاه
message GetClubFeaturesResponse
{
repeated ClubFeatureModel features = 1;
}
message ClubFeatureModel
{
int64 id = 1;
string title = 2;
string description = 3;
bool is_enabled = 4; // آیا فعال است (از UserClubFeature)
int32 display_order = 5; // ترتیب نمایش
google.protobuf.Timestamp granted_at = 6; // تاریخ فعال‌سازی
google.protobuf.Timestamp created_at = 7; // تاریخ ایجاد
string notes = 8; // یادداشت (برای نمایش در مدال جزئیات)
}