53 lines
1.7 KiB
Protocol Buffer
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; // یادداشت (برای نمایش در مدال جزئیات)
|
|
}
|