2024-04-26 13:51:21 +00:00
|
|
|
|
include "proto/base.thrift"
|
|
|
|
|
include "proto/domain.thrift"
|
|
|
|
|
|
2024-04-26 14:03:52 +00:00
|
|
|
|
namespace java dev.vality.dominator
|
2024-04-26 13:51:21 +00:00
|
|
|
|
namespace erlang dominator.dominator
|
|
|
|
|
|
|
|
|
|
typedef string ContinuationToken
|
|
|
|
|
|
|
|
|
|
exception BadContinuationToken { 1: string reason }
|
|
|
|
|
exception LimitExceeded {}
|
|
|
|
|
|
|
|
|
|
struct CommonSearchQueryParams {
|
|
|
|
|
1: optional list<string> currencies
|
|
|
|
|
2: optional ContinuationToken continuation_token
|
|
|
|
|
3: optional i32 limit
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Набор параметров для поиска условий магазинов */
|
|
|
|
|
struct ShopSearchQuery {
|
|
|
|
|
1: required CommonSearchQueryParams common_search_query_params
|
|
|
|
|
2: optional domain.PartyID party_id
|
|
|
|
|
3: optional list<domain.ShopID> shop_ids
|
|
|
|
|
4: optional list<string> term_sets_names
|
|
|
|
|
5: optional list<domain.TermSetHierarchyRef> term_sets_ids
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Набор параметров для поиска условий кошельков */
|
|
|
|
|
struct WalletSearchQuery {
|
|
|
|
|
1: required CommonSearchQueryParams common_search_query_params
|
|
|
|
|
2: optional domain.PartyID party_id
|
|
|
|
|
3: optional list<domain.IdentityProviderRef> identity_ids
|
|
|
|
|
4: optional list<domain.WalletID> wallet_ids
|
|
|
|
|
5: optional list<string> term_sets_names
|
|
|
|
|
6: optional list<domain.TermSetHierarchyRef> term_sets_ids
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Набор параметров для поиска условий терминалов */
|
|
|
|
|
struct TerminalSearchQuery {
|
|
|
|
|
1: required CommonSearchQueryParams common_search_query_params
|
|
|
|
|
2: optional list<domain.ProviderRef> provider_ids
|
|
|
|
|
3: optional list<domain.TerminalRef> terminal_ids
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Набор условий для магазина */
|
|
|
|
|
struct ShopTermSet {
|
|
|
|
|
1: required domain.PartyID owner_id
|
|
|
|
|
2: optional domain.ShopID shop_id
|
|
|
|
|
3: required domain.ContractID contract_id
|
|
|
|
|
4: required string shop_name
|
|
|
|
|
5: required string term_set_name
|
|
|
|
|
6: required string currency
|
|
|
|
|
7: required domain.TermSetHierarchyObject current_term_set
|
2024-05-27 17:01:30 +00:00
|
|
|
|
8: optional list<TermSetHistory> term_set_history
|
2024-04-26 13:51:21 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Набор условий для кошелька */
|
|
|
|
|
struct WalletTermSet {
|
|
|
|
|
1: required domain.PartyID owner_id
|
|
|
|
|
2: optional domain.IdentityProviderRef identity_id
|
|
|
|
|
3: required domain.ContractID contract_id
|
|
|
|
|
4: required domain.WalletID wallet_id
|
|
|
|
|
5: required string wallet_name
|
|
|
|
|
6: required string term_set_name
|
|
|
|
|
7: required string currency
|
|
|
|
|
8: required domain.TermSetHierarchyObject current_term_set
|
2024-05-27 17:01:30 +00:00
|
|
|
|
9: optional list<TermSetHistory> term_set_history
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
struct TermSetHistory {
|
|
|
|
|
1: required domain.TermSetHierarchyObject term_set
|
|
|
|
|
2: optional string applied_at
|
2024-04-26 13:51:21 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Набор условий для терминала */
|
|
|
|
|
struct TerminalTermSet {
|
|
|
|
|
1: required domain.TerminalRef terminal_id
|
|
|
|
|
2: required string terminal_name
|
|
|
|
|
3: required domain.ProviderRef provider_id
|
|
|
|
|
4: required string provider_name
|
2024-06-19 15:28:12 +00:00
|
|
|
|
5: required list<string> currencies
|
2024-04-26 13:51:21 +00:00
|
|
|
|
6: required domain.ProvisionTermSet current_term_set
|
2024-05-27 17:01:30 +00:00
|
|
|
|
7: optional list<ProvisionTermSetHistory> term_set_history
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
struct ProvisionTermSetHistory {
|
|
|
|
|
1: required domain.ProvisionTermSet term_set
|
|
|
|
|
2: optional string applied_at
|
2024-04-26 13:51:21 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
struct ShopTermSetsResponse {
|
|
|
|
|
1: required list<ShopTermSet> terms
|
|
|
|
|
2: optional string continuation_token
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
struct WalletTermSetsResponse {
|
|
|
|
|
1: required list<WalletTermSet> terms
|
|
|
|
|
2: optional string continuation_token
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
struct TerminalTermSetsResponse {
|
|
|
|
|
1: required list<TerminalTermSet> terms
|
|
|
|
|
2: optional string continuation_token
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
service DominatorService {
|
|
|
|
|
|
|
|
|
|
/* Поиск условий для магаизнов */
|
|
|
|
|
ShopTermSetsResponse SearchShopTermSets (1: ShopSearchQuery shop_search_query)
|
|
|
|
|
throws (1: BadContinuationToken ex1, 2: LimitExceeded ex2, 3: base.InvalidRequest ex3)
|
|
|
|
|
|
|
|
|
|
/* Поиск условий для кошельков */
|
|
|
|
|
WalletTermSetsResponse SearchWalletTermSets (1: WalletSearchQuery wallet_search_query)
|
|
|
|
|
throws (1: BadContinuationToken ex1, 2: LimitExceeded ex2, 3: base.InvalidRequest ex3)
|
|
|
|
|
|
|
|
|
|
/* Поиск условий для терминалов */
|
|
|
|
|
TerminalTermSetsResponse SearchTerminalTermSets (1: TerminalSearchQuery terminal_search_query)
|
|
|
|
|
throws (1: BadContinuationToken ex1, 2: LimitExceeded ex2, 3: base.InvalidRequest ex3)
|
|
|
|
|
}
|