@arbiwallet/contracts 1.0.280 → 1.0.281

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/gen/referral.ts CHANGED
@@ -102,6 +102,37 @@ export interface GetReferralSummaryResponse {
102
102
  availableUsdtBalance: string;
103
103
  }
104
104
 
105
+ export interface AdminGetReferralProfileByUserIdRequest {
106
+ userId: number;
107
+ }
108
+
109
+ export interface AdminReferralProfileByUserIdResponse {
110
+ profileId: string;
111
+ userId: number;
112
+ refCode: string;
113
+ referrerUserId?: number | undefined;
114
+ bonusType: ReferralBonusType;
115
+ refPercent: string;
116
+ status: ReferralProfileStatus;
117
+ createdAt: string;
118
+ updatedAt: string;
119
+ /** true, если в рамках AdminUpdateReferralProfileByUserId был установлен referrer_user_id. */
120
+ referrerChanged: boolean;
121
+ }
122
+
123
+ export interface AdminUpdateReferralProfileByUserIdRequest {
124
+ userId: number;
125
+ /**
126
+ * Разрешено только если у профиля еще нет реферера.
127
+ * Если текущий реферер уже задан, сервис возвращает ошибку REFERRER_ALREADY_SET.
128
+ */
129
+ referrerUserId?: number | undefined;
130
+ bonusType?: ReferralBonusType | undefined;
131
+ refPercent?: string | undefined;
132
+ refCode?: string | undefined;
133
+ changedBy?: string | undefined;
134
+ }
135
+
105
136
  export interface GetUserReferralMetricsRequest {
106
137
  walletUserId: string;
107
138
  dateFrom?: string | undefined;
@@ -293,6 +324,18 @@ export interface ReferralServiceClient {
293
324
 
294
325
  getReferralSummary(request: GetReferralSummaryRequest): Observable<GetReferralSummaryResponse>;
295
326
 
327
+ /** CRM admin: получить реферальный профиль для формы редактирования пользователя. */
328
+
329
+ adminGetReferralProfileByUserId(
330
+ request: AdminGetReferralProfileByUserIdRequest,
331
+ ): Observable<AdminReferralProfileByUserIdResponse>;
332
+
333
+ /** CRM admin: обновить реферальный профиль (реферер, тип начисления, процент, ref code). */
334
+
335
+ adminUpdateReferralProfileByUserId(
336
+ request: AdminUpdateReferralProfileByUserIdRequest,
337
+ ): Observable<AdminReferralProfileByUserIdResponse>;
338
+
296
339
  getUserReferralMetrics(request: GetUserReferralMetricsRequest): Observable<GetUserReferralMetricsResponse>;
297
340
 
298
341
  listReferrals(request: ListReferralsRequest): Observable<ListReferralsResponse>;
@@ -344,6 +387,24 @@ export interface ReferralServiceController {
344
387
  request: GetReferralSummaryRequest,
345
388
  ): Promise<GetReferralSummaryResponse> | Observable<GetReferralSummaryResponse> | GetReferralSummaryResponse;
346
389
 
390
+ /** CRM admin: получить реферальный профиль для формы редактирования пользователя. */
391
+
392
+ adminGetReferralProfileByUserId(
393
+ request: AdminGetReferralProfileByUserIdRequest,
394
+ ):
395
+ | Promise<AdminReferralProfileByUserIdResponse>
396
+ | Observable<AdminReferralProfileByUserIdResponse>
397
+ | AdminReferralProfileByUserIdResponse;
398
+
399
+ /** CRM admin: обновить реферальный профиль (реферер, тип начисления, процент, ref code). */
400
+
401
+ adminUpdateReferralProfileByUserId(
402
+ request: AdminUpdateReferralProfileByUserIdRequest,
403
+ ):
404
+ | Promise<AdminReferralProfileByUserIdResponse>
405
+ | Observable<AdminReferralProfileByUserIdResponse>
406
+ | AdminReferralProfileByUserIdResponse;
407
+
347
408
  getUserReferralMetrics(
348
409
  request: GetUserReferralMetricsRequest,
349
410
  ):
@@ -418,6 +479,8 @@ export function ReferralServiceControllerMethods() {
418
479
  "getReferralLink",
419
480
  "bindReferralByCode",
420
481
  "getReferralSummary",
482
+ "adminGetReferralProfileByUserId",
483
+ "adminUpdateReferralProfileByUserId",
421
484
  "getUserReferralMetrics",
422
485
  "listReferrals",
423
486
  "getReferredUserIds",
package/gen/user.ts CHANGED
@@ -95,6 +95,53 @@ export interface UserResponse {
95
95
  advChannelName?: string | undefined;
96
96
  }
97
97
 
98
+ export interface AdminGetUserForUpdateRequest {
99
+ userId: number;
100
+ }
101
+
102
+ export interface AdminUserForUpdateResponse {
103
+ id: number;
104
+ uid: number;
105
+ firstName?: string | undefined;
106
+ lastName?: string | undefined;
107
+ email?: string | undefined;
108
+ phone?: string | undefined;
109
+ telegramUsername?: string | undefined;
110
+ telegramId?: string | undefined;
111
+ whatsapp?: string | undefined;
112
+ advChannel?: string | undefined;
113
+ refCode?: string | undefined;
114
+ referrerUserId?: number | undefined;
115
+ bonusType?: UserSearchBonusType | undefined;
116
+ refPercent?:
117
+ | number
118
+ | undefined;
119
+ /** true, если в рамках AdminUpdateUserProfile был установлен referrer_user_id. */
120
+ referrerChanged: boolean;
121
+ }
122
+
123
+ export interface AdminUpdateUserProfileRequest {
124
+ userId: number;
125
+ firstName?: string | undefined;
126
+ lastName?: string | undefined;
127
+ email?: string | undefined;
128
+ phone?: string | undefined;
129
+ telegramUsername?: string | undefined;
130
+ telegramId?: string | undefined;
131
+ whatsapp?: string | undefined;
132
+ advChannel?: string | undefined;
133
+ refCode?:
134
+ | string
135
+ | undefined;
136
+ /**
137
+ * Разрешено только если у пользователя еще нет реферера.
138
+ * Если текущий реферер уже задан, сервис возвращает ошибку REFERRER_ALREADY_SET.
139
+ */
140
+ referrerUserId?: number | undefined;
141
+ bonusType?: UserSearchBonusType | undefined;
142
+ refPercent?: number | undefined;
143
+ }
144
+
98
145
  export interface UpdateUserRequest {
99
146
  userId: number;
100
147
  firstName?: string | undefined;
@@ -582,8 +629,16 @@ export const USER_PACKAGE_NAME = "user";
582
629
  export interface UserServiceClient {
583
630
  getUser(request: GetUserRequest): Observable<UserResponse>;
584
631
 
632
+ /** CRM admin: получить поля пользователя для формы редактирования. */
633
+
634
+ adminGetUserForUpdate(request: AdminGetUserForUpdateRequest): Observable<AdminUserForUpdateResponse>;
635
+
585
636
  updateUser(request: UpdateUserRequest): Observable<UserResponse>;
586
637
 
638
+ /** CRM admin: обновить редактируемые поля пользователя. */
639
+
640
+ adminUpdateUserProfile(request: AdminUpdateUserProfileRequest): Observable<AdminUserForUpdateResponse>;
641
+
587
642
  updateUserStatus(request: UpdateUserStatusRequest): Observable<UserResponse>;
588
643
 
589
644
  listUsers(request: ListUsersRequest): Observable<ListUsersResponse>;
@@ -718,8 +773,20 @@ export interface UserServiceClient {
718
773
  export interface UserServiceController {
719
774
  getUser(request: GetUserRequest): Promise<UserResponse> | Observable<UserResponse> | UserResponse;
720
775
 
776
+ /** CRM admin: получить поля пользователя для формы редактирования. */
777
+
778
+ adminGetUserForUpdate(
779
+ request: AdminGetUserForUpdateRequest,
780
+ ): Promise<AdminUserForUpdateResponse> | Observable<AdminUserForUpdateResponse> | AdminUserForUpdateResponse;
781
+
721
782
  updateUser(request: UpdateUserRequest): Promise<UserResponse> | Observable<UserResponse> | UserResponse;
722
783
 
784
+ /** CRM admin: обновить редактируемые поля пользователя. */
785
+
786
+ adminUpdateUserProfile(
787
+ request: AdminUpdateUserProfileRequest,
788
+ ): Promise<AdminUserForUpdateResponse> | Observable<AdminUserForUpdateResponse> | AdminUserForUpdateResponse;
789
+
723
790
  updateUserStatus(request: UpdateUserStatusRequest): Promise<UserResponse> | Observable<UserResponse> | UserResponse;
724
791
 
725
792
  listUsers(request: ListUsersRequest): Promise<ListUsersResponse> | Observable<ListUsersResponse> | ListUsersResponse;
@@ -959,7 +1026,9 @@ export function UserServiceControllerMethods() {
959
1026
  return function (constructor: Function) {
960
1027
  const grpcMethods: string[] = [
961
1028
  "getUser",
1029
+ "adminGetUserForUpdate",
962
1030
  "updateUser",
1031
+ "adminUpdateUserProfile",
963
1032
  "updateUserStatus",
964
1033
  "listUsers",
965
1034
  "updateUserSearchStats",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@arbiwallet/contracts",
3
3
  "descriptions": "Generate and manage smart contracts for ArbiWallet",
4
- "version": "1.0.280",
4
+ "version": "1.0.281",
5
5
  "scripts": {
6
6
  "generate": "protoc -I ./proto ./proto/*.proto --ts_proto_out=./gen --ts_proto_opt=nestJs=true,package=omit"
7
7
  },
@@ -9,6 +9,10 @@ service ReferralService {
9
9
  rpc GetReferralLink(GetReferralLinkRequest) returns (GetReferralLinkResponse);
10
10
  rpc BindReferralByCode(BindReferralByCodeRequest) returns (BindReferralByCodeResponse);
11
11
  rpc GetReferralSummary(GetReferralSummaryRequest) returns (GetReferralSummaryResponse);
12
+ // CRM admin: получить реферальный профиль для формы редактирования пользователя.
13
+ rpc AdminGetReferralProfileByUserId(AdminGetReferralProfileByUserIdRequest) returns (AdminReferralProfileByUserIdResponse);
14
+ // CRM admin: обновить реферальный профиль (реферер, тип начисления, процент, ref code).
15
+ rpc AdminUpdateReferralProfileByUserId(AdminUpdateReferralProfileByUserIdRequest) returns (AdminReferralProfileByUserIdResponse);
12
16
  rpc GetUserReferralMetrics(GetUserReferralMetricsRequest) returns (GetUserReferralMetricsResponse);
13
17
  rpc ListReferrals(ListReferralsRequest) returns (ListReferralsResponse);
14
18
  rpc GetReferredUserIds(GetReferredUserIdsRequest) returns (GetReferredUserIdsResponse);
@@ -111,6 +115,35 @@ message GetReferralSummaryResponse {
111
115
  string available_usdt_balance = 6;
112
116
  }
113
117
 
118
+ message AdminGetReferralProfileByUserIdRequest {
119
+ int32 user_id = 1;
120
+ }
121
+
122
+ message AdminReferralProfileByUserIdResponse {
123
+ string profile_id = 1;
124
+ int32 user_id = 2;
125
+ string ref_code = 3;
126
+ optional int32 referrer_user_id = 4;
127
+ ReferralBonusType bonus_type = 5;
128
+ string ref_percent = 6;
129
+ ReferralProfileStatus status = 7;
130
+ string created_at = 8;
131
+ string updated_at = 9;
132
+ // true, если в рамках AdminUpdateReferralProfileByUserId был установлен referrer_user_id.
133
+ bool referrer_changed = 10;
134
+ }
135
+
136
+ message AdminUpdateReferralProfileByUserIdRequest {
137
+ int32 user_id = 1;
138
+ // Разрешено только если у профиля еще нет реферера.
139
+ // Если текущий реферер уже задан, сервис возвращает ошибку REFERRER_ALREADY_SET.
140
+ optional int32 referrer_user_id = 2;
141
+ optional ReferralBonusType bonus_type = 3;
142
+ optional string ref_percent = 4;
143
+ optional string ref_code = 5;
144
+ optional string changed_by = 6;
145
+ }
146
+
114
147
  message GetUserReferralMetricsRequest {
115
148
  string wallet_user_id = 1;
116
149
  optional string date_from = 2;
package/proto/user.proto CHANGED
@@ -3,7 +3,11 @@ package user;
3
3
 
4
4
  service UserService {
5
5
  rpc GetUser (GetUserRequest) returns (UserResponse);
6
+ // CRM admin: получить поля пользователя для формы редактирования.
7
+ rpc AdminGetUserForUpdate (AdminGetUserForUpdateRequest) returns (AdminUserForUpdateResponse);
6
8
  rpc UpdateUser (UpdateUserRequest) returns (UserResponse);
9
+ // CRM admin: обновить редактируемые поля пользователя.
10
+ rpc AdminUpdateUserProfile (AdminUpdateUserProfileRequest) returns (AdminUserForUpdateResponse);
7
11
  rpc UpdateUserStatus (UpdateUserStatusRequest) returns (UserResponse);
8
12
  rpc ListUsers (ListUsersRequest) returns (ListUsersResponse);
9
13
  rpc UpdateUserSearchStats (UpdateUserSearchStatsRequest) returns (UpdateUserSearchStatsResponse);
@@ -135,6 +139,47 @@ message UserResponse {
135
139
  optional string adv_channel_name = 42;
136
140
  }
137
141
 
142
+ message AdminGetUserForUpdateRequest {
143
+ int32 user_id = 1;
144
+ }
145
+
146
+ message AdminUserForUpdateResponse {
147
+ int32 id = 1;
148
+ int32 uid = 2;
149
+ optional string first_name = 3;
150
+ optional string last_name = 4;
151
+ optional string email = 5;
152
+ optional string phone = 6;
153
+ optional string telegram_username = 7;
154
+ optional string telegram_id = 8;
155
+ optional string whatsapp = 9;
156
+ optional string adv_channel = 10;
157
+ optional string ref_code = 11;
158
+ optional int32 referrer_user_id = 12;
159
+ optional UserSearchBonusType bonus_type = 13;
160
+ optional double ref_percent = 14;
161
+ // true, если в рамках AdminUpdateUserProfile был установлен referrer_user_id.
162
+ bool referrer_changed = 15;
163
+ }
164
+
165
+ message AdminUpdateUserProfileRequest {
166
+ int32 user_id = 1;
167
+ optional string first_name = 2;
168
+ optional string last_name = 3;
169
+ optional string email = 4;
170
+ optional string phone = 5;
171
+ optional string telegram_username = 6;
172
+ optional string telegram_id = 7;
173
+ optional string whatsapp = 8;
174
+ optional string adv_channel = 9;
175
+ optional string ref_code = 10;
176
+ // Разрешено только если у пользователя еще нет реферера.
177
+ // Если текущий реферер уже задан, сервис возвращает ошибку REFERRER_ALREADY_SET.
178
+ optional int32 referrer_user_id = 11;
179
+ optional UserSearchBonusType bonus_type = 12;
180
+ optional double ref_percent = 13;
181
+ }
182
+
138
183
  message UpdateUserRequest {
139
184
  int32 user_id = 1;
140
185
  optional string first_name = 2;