@restorecommerce/protos 4.0.1 → 4.1.1
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/CHANGELOG.md +27 -0
- package/io/restorecommerce/auth.proto +4 -3
- package/io/restorecommerce/authentication_log.proto +2 -1
- package/io/restorecommerce/code.proto +2 -2
- package/io/restorecommerce/currency.proto +3 -2
- package/io/restorecommerce/fulfillment.proto +14 -6
- package/io/restorecommerce/invoice.proto +37 -19
- package/io/restorecommerce/meta.proto +3 -2
- package/io/restorecommerce/order.proto +18 -11
- package/io/restorecommerce/organization.proto +14 -3
- package/io/restorecommerce/product.proto +35 -9
- package/io/restorecommerce/shop.proto +1 -1
- package/io/restorecommerce/status.proto +8 -8
- package/package.json +2 -2
- package/test/test.proto +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,33 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [4.1.1](https://github.com/restorecommerce/libs/compare/@restorecommerce/protos@4.1.0...@restorecommerce/protos@4.1.1) (2023-07-12)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* **fulfillment, invoice, organization.proto:** fix typos in invoice, fulfillment and organization ([8d64222](https://github.com/restorecommerce/libs/commit/8d64222d3cbca44a0c9d4e265431d26aaac20223))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
# [4.1.0](https://github.com/restorecommerce/libs/compare/@restorecommerce/protos@4.0.1...@restorecommerce/protos@4.1.0) (2023-07-11)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Bug Fixes
|
|
21
|
+
|
|
22
|
+
* **timestamps:** fix invoice date type by timestamp, add payment_details to invoice trigger request ([139ab69](https://github.com/restorecommerce/libs/commit/139ab69ba1d4739386ac2844d1e1f98c2046b98e))
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
### Features
|
|
26
|
+
|
|
27
|
+
* **invoicing:** invoicing supports FulfillmentProducts ([d0684cf](https://github.com/restorecommerce/libs/commit/d0684cf4773ecc2aa0f807bb8c4be1a21a62caab))
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
6
33
|
## [4.0.1](https://github.com/restorecommerce/libs/compare/@restorecommerce/protos@4.0.0...@restorecommerce/protos@4.0.1) (2023-06-29)
|
|
7
34
|
|
|
8
35
|
|
|
@@ -2,6 +2,7 @@ syntax = "proto3";
|
|
|
2
2
|
|
|
3
3
|
package io.restorecommerce.auth;
|
|
4
4
|
import "io/restorecommerce/attribute.proto";
|
|
5
|
+
import "google/protobuf/timestamp.proto";
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* Subject of creating User
|
|
@@ -15,12 +16,12 @@ message Subject {
|
|
|
15
16
|
|
|
16
17
|
message Tokens {
|
|
17
18
|
optional string name = 1; // token name
|
|
18
|
-
optional
|
|
19
|
+
optional google.protobuf.Timestamp expires_in = 2; // expiration date for token
|
|
19
20
|
optional string token = 3; // token
|
|
20
21
|
repeated string scopes = 4; // identifier for role_association
|
|
21
22
|
optional string type = 5; // type of token eg: access_token, refresh_token
|
|
22
23
|
optional bool interactive = 6;
|
|
23
|
-
optional
|
|
24
|
+
optional google.protobuf.Timestamp last_login = 7;
|
|
24
25
|
}
|
|
25
26
|
|
|
26
27
|
message HierarchicalScope {
|
|
@@ -33,7 +34,7 @@ message RoleAssociation {
|
|
|
33
34
|
optional string role = 1; // role ID
|
|
34
35
|
repeated io.restorecommerce.attribute.Attribute attributes = 2; // useful attributes for RBAC/ABAC like organizational scope
|
|
35
36
|
optional string id = 3; // identifier for role_association
|
|
36
|
-
optional
|
|
37
|
+
optional google.protobuf.Timestamp created = 4; // timestamp when the role was created
|
|
37
38
|
}
|
|
38
39
|
|
|
39
40
|
message HierarchicalScopesRequest {
|
|
@@ -2,6 +2,7 @@ syntax = "proto3";
|
|
|
2
2
|
|
|
3
3
|
package io.restorecommerce.authentication_log;
|
|
4
4
|
|
|
5
|
+
import "google/protobuf/timestamp.proto";
|
|
5
6
|
import "io/restorecommerce/resource_base.proto";
|
|
6
7
|
import "io/restorecommerce/meta.proto";
|
|
7
8
|
import "io/restorecommerce/auth.proto";
|
|
@@ -47,7 +48,7 @@ message AuthenticationLog {
|
|
|
47
48
|
optional string ipv6_address = 3;
|
|
48
49
|
optional string operating_system = 4;
|
|
49
50
|
optional string user_agent = 5;
|
|
50
|
-
optional
|
|
51
|
+
optional google.protobuf.Timestamp date = 6; // time stamp of login, logout or token update
|
|
51
52
|
optional string activity = 7; // login, logout
|
|
52
53
|
optional io.restorecommerce.meta.Meta meta = 8; // meta info
|
|
53
54
|
optional string subject_id = 9; // subject id
|
|
@@ -38,7 +38,7 @@ message CodeResponse {
|
|
|
38
38
|
message Code {
|
|
39
39
|
optional string id = 1;
|
|
40
40
|
optional io.restorecommerce.meta.Meta meta = 2;
|
|
41
|
-
optional
|
|
41
|
+
optional StatusCode status = 3;
|
|
42
42
|
optional string common_code = 4;
|
|
43
43
|
optional string name = 5;
|
|
44
44
|
optional string description = 6;
|
|
@@ -51,7 +51,7 @@ message Code {
|
|
|
51
51
|
optional string quantity = 13;
|
|
52
52
|
}
|
|
53
53
|
|
|
54
|
-
enum
|
|
54
|
+
enum StatusCode {
|
|
55
55
|
ADDED = 0;
|
|
56
56
|
CHANGED_NAME = 1;
|
|
57
57
|
CHANGED_CHARACTERISTIC = 2;
|
|
@@ -7,6 +7,7 @@ import "io/restorecommerce/meta.proto";
|
|
|
7
7
|
import "io/restorecommerce/auth.proto";
|
|
8
8
|
import "io/restorecommerce/status.proto";
|
|
9
9
|
import "io/restorecommerce/options.proto";
|
|
10
|
+
import "google/protobuf/timestamp.proto";
|
|
10
11
|
|
|
11
12
|
/*
|
|
12
13
|
* Microservice definition.
|
|
@@ -66,7 +67,7 @@ message ExchangeRate {
|
|
|
66
67
|
message ExchangeRateQuery {
|
|
67
68
|
optional string from_currency_id = 1;
|
|
68
69
|
optional string to_currency_id = 2;
|
|
69
|
-
optional
|
|
70
|
+
optional google.protobuf.Timestamp datetime = 3; // now in general case
|
|
70
71
|
optional double amount = 4; // leave empty == 1.0
|
|
71
72
|
}
|
|
72
73
|
|
|
@@ -79,7 +80,7 @@ message ExchangeRateQueryList {
|
|
|
79
80
|
message ExchangeRateResponse {
|
|
80
81
|
optional string from_currency_id = 1;
|
|
81
82
|
ExchangeRate payload = 3;
|
|
82
|
-
optional
|
|
83
|
+
optional google.protobuf.Timestamp timestamp = 2;
|
|
83
84
|
io.restorecommerce.status.Status status = 4;
|
|
84
85
|
}
|
|
85
86
|
|
|
@@ -12,8 +12,10 @@ import "io/restorecommerce/address.proto";
|
|
|
12
12
|
import "io/restorecommerce/country.proto";
|
|
13
13
|
import "io/restorecommerce/product.proto";
|
|
14
14
|
import "io/restorecommerce/options.proto";
|
|
15
|
+
import "io/restorecommerce/price.proto";
|
|
15
16
|
import "io/restorecommerce/amount.proto";
|
|
16
17
|
import "io/restorecommerce/invoice.proto";
|
|
18
|
+
import "google/protobuf/timestamp.proto";
|
|
17
19
|
|
|
18
20
|
/**
|
|
19
21
|
Microservice definition.
|
|
@@ -112,9 +114,10 @@ message Parcel {
|
|
|
112
114
|
}
|
|
113
115
|
];
|
|
114
116
|
optional string variant_id = 3;
|
|
115
|
-
|
|
116
|
-
optional io.restorecommerce.
|
|
117
|
-
optional io.restorecommerce.
|
|
117
|
+
repeated Item items = 4;
|
|
118
|
+
optional io.restorecommerce.price.Price price = 5;
|
|
119
|
+
optional io.restorecommerce.amount.Amount amount = 6;
|
|
120
|
+
optional io.restorecommerce.product.Package package = 8;
|
|
118
121
|
}
|
|
119
122
|
|
|
120
123
|
message Label {
|
|
@@ -141,7 +144,7 @@ message Packaging {
|
|
|
141
144
|
}
|
|
142
145
|
|
|
143
146
|
message Event {
|
|
144
|
-
optional
|
|
147
|
+
optional google.protobuf.Timestamp timestamp = 1;
|
|
145
148
|
optional string location = 2;
|
|
146
149
|
optional google.protobuf.Any details = 3;
|
|
147
150
|
optional io.restorecommerce.status.Status status = 4;
|
|
@@ -209,10 +212,15 @@ message Deleted {
|
|
|
209
212
|
string id = 1;
|
|
210
213
|
}
|
|
211
214
|
|
|
215
|
+
message InvoiceSection {
|
|
216
|
+
optional string fulfillment_id = 1;
|
|
217
|
+
repeated string selected_parcels = 2; // selects all on empty
|
|
218
|
+
}
|
|
219
|
+
|
|
212
220
|
message InvoiceRequest {
|
|
213
221
|
optional string invoice_number = 1; // if given
|
|
214
|
-
|
|
215
|
-
repeated
|
|
222
|
+
repeated string payment_hints = 2;
|
|
223
|
+
repeated InvoiceSection sections = 3;
|
|
216
224
|
}
|
|
217
225
|
|
|
218
226
|
message InvoiceRequestList {
|
|
@@ -14,11 +14,14 @@ import "io/restorecommerce/amount.proto";
|
|
|
14
14
|
import "io/restorecommerce/price.proto";
|
|
15
15
|
import "io/restorecommerce/file.proto";
|
|
16
16
|
import "io/restorecommerce/reference.proto";
|
|
17
|
+
import "io/restorecommerce/attribute.proto";
|
|
17
18
|
|
|
18
19
|
// Used by resolvers
|
|
19
20
|
import "io/restorecommerce/user.proto";
|
|
20
21
|
import "io/restorecommerce/customer.proto";
|
|
21
22
|
import "io/restorecommerce/shop.proto";
|
|
23
|
+
import "google/protobuf/timestamp.proto";
|
|
24
|
+
import "io/restorecommerce/product.proto";
|
|
22
25
|
|
|
23
26
|
/*
|
|
24
27
|
* Microservice definition.
|
|
@@ -33,7 +36,7 @@ service InvoiceService {
|
|
|
33
36
|
rpc Delete (io.restorecommerce.resourcebase.DeleteRequest) returns (io.restorecommerce.resourcebase.DeleteResponse);
|
|
34
37
|
|
|
35
38
|
/*
|
|
36
|
-
*
|
|
39
|
+
* Evaluates and (re-)Renders invoices as PDF to ostorage. (creates if not exist, updates if id is given)
|
|
37
40
|
*/
|
|
38
41
|
rpc Render (InvoiceList) returns (InvoiceListResponse);
|
|
39
42
|
|
|
@@ -130,7 +133,7 @@ message Invoice {
|
|
|
130
133
|
optional string customer_id = 6 [
|
|
131
134
|
(io.restorecommerce.options.resolver) = {
|
|
132
135
|
target_type: ".io.restorecommerce.customer.Customer",
|
|
133
|
-
target_service: "
|
|
136
|
+
target_service: "master_data",
|
|
134
137
|
target_sub_service: "customer",
|
|
135
138
|
target_method: "Read",
|
|
136
139
|
field_name: "customer",
|
|
@@ -139,43 +142,45 @@ message Invoice {
|
|
|
139
142
|
optional string shop_id = 7 [
|
|
140
143
|
(io.restorecommerce.options.resolver) = {
|
|
141
144
|
target_type: ".io.restorecommerce.shop.Shop",
|
|
142
|
-
target_service: "
|
|
145
|
+
target_service: "master_data",
|
|
143
146
|
target_sub_service: "shop",
|
|
144
147
|
target_method: "Read",
|
|
145
148
|
field_name: "shop",
|
|
146
149
|
}
|
|
147
150
|
]; // shop_number --- ref. to sender orga
|
|
148
|
-
optional
|
|
151
|
+
optional google.protobuf.Timestamp timestamp = 8;
|
|
149
152
|
optional PaymentState payment_state = 9;
|
|
150
153
|
optional io.restorecommerce.address.BillingAddress sender = 10;
|
|
151
154
|
optional io.restorecommerce.address.BillingAddress recipient = 11;
|
|
152
|
-
repeated
|
|
155
|
+
repeated Section sections = 12;
|
|
153
156
|
repeated io.restorecommerce.amount.Amount total_amounts = 13;
|
|
154
|
-
repeated string payment_hints = 14;
|
|
157
|
+
repeated string payment_hints = 14;
|
|
155
158
|
repeated io.restorecommerce.file.File documents = 15; // url to rendered PDFs
|
|
156
|
-
optional
|
|
157
|
-
optional
|
|
158
|
-
optional
|
|
159
|
-
optional bool
|
|
160
|
-
optional bool withdrawn = 20;
|
|
159
|
+
optional google.protobuf.Timestamp from_date = 16; // value performance from date
|
|
160
|
+
optional google.protobuf.Timestamp to_date = 17; // value performance to date
|
|
161
|
+
optional bool sent = 18;
|
|
162
|
+
optional bool withdrawn = 19;
|
|
161
163
|
}
|
|
162
164
|
|
|
163
|
-
message
|
|
165
|
+
message Section {
|
|
164
166
|
optional string id = 1;
|
|
165
|
-
|
|
167
|
+
optional string customer_remark = 2;
|
|
168
|
+
repeated Position positions = 3;
|
|
166
169
|
repeated io.restorecommerce.amount.Amount amounts = 5; // repeated in case of multiple currencies?
|
|
167
170
|
}
|
|
168
171
|
|
|
169
|
-
message
|
|
172
|
+
message Position {
|
|
170
173
|
optional string id = 1;
|
|
171
174
|
oneof item_type {
|
|
172
175
|
ProductItem product_item = 2;
|
|
173
|
-
|
|
176
|
+
FulfillmentItem fulfillment_item = 3;
|
|
177
|
+
ManualItem manual_item = 4;
|
|
174
178
|
}
|
|
175
|
-
optional io.restorecommerce.price.Price unit_price =
|
|
176
|
-
optional uint32 quantity =
|
|
177
|
-
optional io.restorecommerce.amount.Amount amount =
|
|
178
|
-
optional double contract_start_date =
|
|
179
|
+
optional io.restorecommerce.price.Price unit_price = 5;
|
|
180
|
+
optional uint32 quantity = 6;
|
|
181
|
+
optional io.restorecommerce.amount.Amount amount = 7;
|
|
182
|
+
optional double contract_start_date = 8; // if there is any contract associated with product
|
|
183
|
+
repeated io.restorecommerce.attribute.Attribute attributes = 9;
|
|
179
184
|
}
|
|
180
185
|
|
|
181
186
|
message ProductItem {
|
|
@@ -191,6 +196,19 @@ message ProductItem {
|
|
|
191
196
|
optional string variant_id = 2;
|
|
192
197
|
}
|
|
193
198
|
|
|
199
|
+
message FulfillmentItem {
|
|
200
|
+
optional string product_id = 1 [
|
|
201
|
+
(io.restorecommerce.options.resolver) = {
|
|
202
|
+
target_type: ".io.restorecommerce.fulfillment_product.FulfillmentProduct",
|
|
203
|
+
target_service: "fulfillment",
|
|
204
|
+
target_sub_service: "fulfillment_product",
|
|
205
|
+
target_method: "Read",
|
|
206
|
+
field_name: "product",
|
|
207
|
+
}
|
|
208
|
+
];
|
|
209
|
+
optional string variant_id = 2;
|
|
210
|
+
}
|
|
211
|
+
|
|
194
212
|
message ManualItem {
|
|
195
213
|
optional string stock_keeping_unit = 1;
|
|
196
214
|
optional string name = 2;
|
|
@@ -3,12 +3,13 @@ syntax = "proto3";
|
|
|
3
3
|
package io.restorecommerce.meta;
|
|
4
4
|
|
|
5
5
|
import "io/restorecommerce/attribute.proto";
|
|
6
|
+
import "google/protobuf/timestamp.proto";
|
|
6
7
|
|
|
7
8
|
// meta properties common to all resources
|
|
8
9
|
|
|
9
10
|
message Meta {
|
|
10
|
-
optional
|
|
11
|
-
optional
|
|
11
|
+
optional google.protobuf.Timestamp created = 1; // timestamp
|
|
12
|
+
optional google.protobuf.Timestamp modified = 2; // timestamp
|
|
12
13
|
optional string modified_by = 3; // ID from last User who modified it
|
|
13
14
|
repeated io.restorecommerce.attribute.Attribute owners = 4;
|
|
14
15
|
repeated io.restorecommerce.attribute.AttributeObj acls = 5;
|
|
@@ -47,7 +47,7 @@ service OrderService {
|
|
|
47
47
|
rpc TriggerInvoice (InvoiceRequestList) returns (io.restorecommerce.status.StatusListResponse);
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
-
enum
|
|
50
|
+
enum OrderState {
|
|
51
51
|
FAILED = 0;
|
|
52
52
|
INVALID = 1;
|
|
53
53
|
CREATED = 2;
|
|
@@ -58,6 +58,11 @@ enum State {
|
|
|
58
58
|
CANCELLED = 7;
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
+
enum FulfillmentInvoiceMode {
|
|
62
|
+
INCLUDE = 0;
|
|
63
|
+
EXCLUDE = 1;
|
|
64
|
+
}
|
|
65
|
+
|
|
61
66
|
message Item {
|
|
62
67
|
optional string id = 1;
|
|
63
68
|
optional string product_id = 2 [
|
|
@@ -92,7 +97,7 @@ message Order {
|
|
|
92
97
|
optional string user_id = 3 [
|
|
93
98
|
(io.restorecommerce.options.resolver) = {
|
|
94
99
|
target_type: ".io.restorecommerce.customer.Customer",
|
|
95
|
-
target_service: "
|
|
100
|
+
target_service: "master_data",
|
|
96
101
|
target_sub_service: "customer",
|
|
97
102
|
target_method: "Read",
|
|
98
103
|
field_name: "customer",
|
|
@@ -101,7 +106,7 @@ message Order {
|
|
|
101
106
|
optional string customer_id = 4 [
|
|
102
107
|
(io.restorecommerce.options.resolver) = {
|
|
103
108
|
target_type: ".io.restorecommerce.customer.Customer",
|
|
104
|
-
target_service: "
|
|
109
|
+
target_service: "master_data",
|
|
105
110
|
target_sub_service: "customer",
|
|
106
111
|
target_method: "Read",
|
|
107
112
|
field_name: "customer",
|
|
@@ -110,14 +115,14 @@ message Order {
|
|
|
110
115
|
optional string shop_id = 5 [
|
|
111
116
|
(io.restorecommerce.options.resolver) = {
|
|
112
117
|
target_type: ".io.restorecommerce.shop.Shop",
|
|
113
|
-
target_service: "
|
|
118
|
+
target_service: "master_data",
|
|
114
119
|
target_sub_service: "shop",
|
|
115
120
|
target_method: "Read",
|
|
116
121
|
field_name: "shop",
|
|
117
122
|
}
|
|
118
123
|
];
|
|
119
124
|
repeated Item items = 6;
|
|
120
|
-
optional
|
|
125
|
+
optional OrderState order_state = 7; // Set by service
|
|
121
126
|
optional io.restorecommerce.fulfillment.State fulfillment_state = 8; // Set by kafka
|
|
122
127
|
optional io.restorecommerce.invoice.PaymentState payment_state = 9; // Set by kafka
|
|
123
128
|
repeated io.restorecommerce.amount.Amount total_amounts = 10; // Set by service --- repeated in case of variant currency?
|
|
@@ -161,7 +166,7 @@ message FulfillmentRequest {
|
|
|
161
166
|
optional string export_description = 3; // @TODO: not used!
|
|
162
167
|
optional string invoice_number = 4; // @TODO: not used!
|
|
163
168
|
optional io.restorecommerce.address.ShippingAddress sender_address = 5;
|
|
164
|
-
repeated string
|
|
169
|
+
repeated string selected_items = 6; // select all on empty
|
|
165
170
|
google.protobuf.Any data = 7;
|
|
166
171
|
}
|
|
167
172
|
|
|
@@ -171,15 +176,17 @@ message FulfillmentRequestList {
|
|
|
171
176
|
io.restorecommerce.auth.Subject subject = 3;
|
|
172
177
|
}
|
|
173
178
|
|
|
174
|
-
message
|
|
175
|
-
optional string order_id =
|
|
176
|
-
repeated string
|
|
177
|
-
|
|
179
|
+
message InvoiceSection {
|
|
180
|
+
optional string order_id = 1;
|
|
181
|
+
repeated string selected_items = 2; // select all on empty
|
|
182
|
+
optional FulfillmentInvoiceMode fulfillment_mode = 3;
|
|
183
|
+
repeated io.restorecommerce.fulfillment.InvoiceSection selected_fulfillments = 4; // includes all on empty
|
|
178
184
|
}
|
|
179
185
|
|
|
180
186
|
message InvoiceRequest {
|
|
181
187
|
optional string invoice_number = 1; // if given
|
|
182
|
-
repeated
|
|
188
|
+
repeated string payment_hints = 2;
|
|
189
|
+
repeated InvoiceSection sections = 3;
|
|
183
190
|
}
|
|
184
191
|
|
|
185
192
|
message InvoiceRequestList {
|
|
@@ -2,16 +2,19 @@ syntax = "proto3";
|
|
|
2
2
|
|
|
3
3
|
package io.restorecommerce.organization;
|
|
4
4
|
|
|
5
|
-
import "io/restorecommerce/resource_base.proto";
|
|
6
5
|
import "google/protobuf/any.proto";
|
|
6
|
+
|
|
7
|
+
import "io/restorecommerce/resource_base.proto";
|
|
7
8
|
import "io/restorecommerce/meta.proto";
|
|
8
9
|
import "io/restorecommerce/auth.proto";
|
|
9
10
|
import "io/restorecommerce/status.proto";
|
|
11
|
+
import "io/restorecommerce/image.proto";
|
|
10
12
|
import "io/restorecommerce/options.proto";
|
|
11
13
|
|
|
12
14
|
// Used by resolvers
|
|
13
15
|
import "io/restorecommerce/address.proto";
|
|
14
16
|
import "io/restorecommerce/contact_point.proto";
|
|
17
|
+
import "io/restorecommerce/payment_method.proto";
|
|
15
18
|
|
|
16
19
|
service OrganizationService {
|
|
17
20
|
rpc Read (io.restorecommerce.resourcebase.ReadRequest) returns (OrganizationListResponse) {
|
|
@@ -73,12 +76,20 @@ message Organization {
|
|
|
73
76
|
]; // list of possible legal addresses of different types
|
|
74
77
|
optional string website = 5;
|
|
75
78
|
optional string email = 6;
|
|
76
|
-
optional
|
|
79
|
+
optional io.restorecommerce.image.Image logo = 7; // base64; arangoDB does not support blob storage
|
|
77
80
|
optional string vat_id = 8;
|
|
78
81
|
optional string isic_v4 = 9;
|
|
79
82
|
optional string registration = 10;
|
|
80
83
|
optional string registration_court = 11;
|
|
81
84
|
optional string name = 12;
|
|
82
|
-
repeated string payment_method_ids = 13
|
|
85
|
+
repeated string payment_method_ids = 13 [
|
|
86
|
+
(io.restorecommerce.options.resolver) = {
|
|
87
|
+
target_type: ".io.restorecommerce.payment_method.PaymentMethod",
|
|
88
|
+
target_service: "payment",
|
|
89
|
+
target_sub_service: "payment_method",
|
|
90
|
+
target_method: "Read",
|
|
91
|
+
field_name: "paymentMethods",
|
|
92
|
+
}
|
|
93
|
+
];
|
|
83
94
|
optional google.protobuf.Any data = 14; /// additional data
|
|
84
95
|
}
|
|
@@ -67,7 +67,7 @@ message Product {
|
|
|
67
67
|
optional string shop_id = 5 [
|
|
68
68
|
(io.restorecommerce.options.resolver) = {
|
|
69
69
|
target_type: ".io.restorecommerce.shop.Shop",
|
|
70
|
-
target_service: "
|
|
70
|
+
target_service: "master_data",
|
|
71
71
|
target_sub_service: "shop",
|
|
72
72
|
target_method: "Read",
|
|
73
73
|
field_name: "shop",
|
|
@@ -91,9 +91,18 @@ message IndividualProduct {
|
|
|
91
91
|
field_name: "manufacturer",
|
|
92
92
|
}
|
|
93
93
|
];
|
|
94
|
-
optional string
|
|
94
|
+
optional string origin_country_id = 4 [
|
|
95
|
+
(io.restorecommerce.options.resolver) = {
|
|
96
|
+
target_type: ".io.restorecommerce.country.Country",
|
|
97
|
+
target_service: "master_data",
|
|
98
|
+
target_sub_service: "country",
|
|
99
|
+
target_method: "Read",
|
|
100
|
+
field_name: "origin_country",
|
|
101
|
+
}
|
|
102
|
+
];
|
|
103
|
+
optional string taric_code = 5;
|
|
95
104
|
oneof classification {
|
|
96
|
-
string prototype_id =
|
|
105
|
+
string prototype_id = 6 [
|
|
97
106
|
(io.restorecommerce.options.resolver) = {
|
|
98
107
|
target_type: ".io.restorecommerce.product_prototype.ProductPrototype",
|
|
99
108
|
target_service: "catalog",
|
|
@@ -102,7 +111,7 @@ message IndividualProduct {
|
|
|
102
111
|
field_name: "prototype",
|
|
103
112
|
}
|
|
104
113
|
];
|
|
105
|
-
string category_id =
|
|
114
|
+
string category_id = 7 [
|
|
106
115
|
(io.restorecommerce.options.resolver) = {
|
|
107
116
|
target_type: ".io.restorecommerce.product_category.ProductCategory",
|
|
108
117
|
target_service: "catalog",
|
|
@@ -112,12 +121,12 @@ message IndividualProduct {
|
|
|
112
121
|
}
|
|
113
122
|
];
|
|
114
123
|
}
|
|
115
|
-
repeated string tax_ids =
|
|
116
|
-
optional string
|
|
117
|
-
optional string gtin = 9;
|
|
124
|
+
repeated string tax_ids = 8;
|
|
125
|
+
optional string gtin = 10;
|
|
118
126
|
oneof nature {
|
|
119
|
-
PhysicalProduct physical =
|
|
120
|
-
|
|
127
|
+
PhysicalProduct physical = 11;
|
|
128
|
+
ServiceProduct service = 12;
|
|
129
|
+
VirtualProduct virtual = 13;
|
|
121
130
|
};
|
|
122
131
|
}
|
|
123
132
|
|
|
@@ -125,6 +134,10 @@ message PhysicalProduct {
|
|
|
125
134
|
repeated PhysicalVariant variants = 1;
|
|
126
135
|
}
|
|
127
136
|
|
|
137
|
+
message ServiceProduct {
|
|
138
|
+
repeated ServiceVariant variants = 1;
|
|
139
|
+
}
|
|
140
|
+
|
|
128
141
|
message VirtualProduct {
|
|
129
142
|
repeated VirtualVariant variants = 1;
|
|
130
143
|
}
|
|
@@ -166,6 +179,19 @@ message PhysicalVariant {
|
|
|
166
179
|
repeated io.restorecommerce.attribute.Attribute attributes = 11;
|
|
167
180
|
}
|
|
168
181
|
|
|
182
|
+
message ServiceVariant {
|
|
183
|
+
optional string id = 1;
|
|
184
|
+
optional string name = 2;
|
|
185
|
+
optional string description = 3;
|
|
186
|
+
optional int32 stock_level = 4;
|
|
187
|
+
optional io.restorecommerce.price.Price price = 5;
|
|
188
|
+
repeated io.restorecommerce.image.Image images = 6;
|
|
189
|
+
repeated io.restorecommerce.file.File files = 7;
|
|
190
|
+
optional string stock_keeping_unit = 8;
|
|
191
|
+
optional string template_variant = 9;
|
|
192
|
+
repeated io.restorecommerce.attribute.Attribute attributes = 10;
|
|
193
|
+
}
|
|
194
|
+
|
|
169
195
|
message VirtualVariant {
|
|
170
196
|
optional string id = 1;
|
|
171
197
|
optional string name = 2;
|
|
@@ -54,7 +54,7 @@ message Shop {
|
|
|
54
54
|
optional string organization_id = 7 [
|
|
55
55
|
(io.restorecommerce.options.resolver) = {
|
|
56
56
|
target_type: ".io.restorecommerce.organization.Organization",
|
|
57
|
-
target_service: "
|
|
57
|
+
target_service: "master_data",
|
|
58
58
|
target_sub_service: "organization",
|
|
59
59
|
target_method: "Read",
|
|
60
60
|
field_name: "organization",
|
|
@@ -3,9 +3,9 @@ syntax = "proto3";
|
|
|
3
3
|
package io.restorecommerce.status;
|
|
4
4
|
|
|
5
5
|
message Status {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
string id = 1;
|
|
7
|
+
uint32 code = 2;
|
|
8
|
+
string message = 3;
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
message StatusArray {
|
|
@@ -13,19 +13,19 @@ message StatusArray {
|
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
message StatusObj {
|
|
16
|
-
|
|
16
|
+
Status status = 1;
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
message OperationStatusObj {
|
|
20
|
-
|
|
20
|
+
OperationStatus operation_status = 1;
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
message OperationStatus {
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
uint32 code = 1;
|
|
25
|
+
string message = 2;
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
message StatusListResponse {
|
|
29
29
|
repeated Status status = 1;
|
|
30
|
-
|
|
30
|
+
OperationStatus operation_status = 2;
|
|
31
31
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@restorecommerce/protos",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.1.1",
|
|
4
4
|
"description": "Protobuf descriptors for Restorecommerce services",
|
|
5
5
|
"author": "n-fuse GmbH",
|
|
6
6
|
"repository": {
|
|
@@ -15,5 +15,5 @@
|
|
|
15
15
|
"protobufs"
|
|
16
16
|
],
|
|
17
17
|
"scripts": {},
|
|
18
|
-
"gitHead": "
|
|
18
|
+
"gitHead": "0b69448ada6429205437ec5642fded8495695360"
|
|
19
19
|
}
|
package/test/test.proto
CHANGED
|
@@ -6,6 +6,7 @@ import "io/restorecommerce/resource_base.proto";
|
|
|
6
6
|
import "io/restorecommerce/meta.proto";
|
|
7
7
|
import "io/restorecommerce/status.proto";
|
|
8
8
|
import "io/restorecommerce/auth.proto";
|
|
9
|
+
import "google/protobuf/timestamp.proto";
|
|
9
10
|
|
|
10
11
|
service Test {
|
|
11
12
|
rpc Test (TestRequest) returns (TestResponse);
|
|
@@ -103,7 +104,7 @@ message Resource {
|
|
|
103
104
|
int32 value = 3;
|
|
104
105
|
string text = 4;
|
|
105
106
|
bool active = 5;
|
|
106
|
-
|
|
107
|
+
google.protobuf.Timestamp created = 6;
|
|
107
108
|
string status = 7;
|
|
108
109
|
optional google.protobuf.Any data = 8;
|
|
109
110
|
}
|