@prodoctors/contracts 1.0.3 → 1.0.5
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/dist/proto/paths.d.ts +5 -0
- package/dist/proto/paths.js +5 -0
- package/gen/account.ts +79 -17
- package/gen/auth.ts +3 -1
- package/gen/branch.ts +43 -57
- package/gen/catalog.ts +302 -0
- package/gen/common.ts +1 -1
- package/gen/google/protobuf/timestamp.ts +11 -10
- package/gen/inventory.ts +312 -137
- package/gen/partner.ts +194 -0
- package/gen/purchase.ts +156 -0
- package/gen/sales.ts +427 -0
- package/package.json +1 -1
- package/proto/account.proto +60 -14
- package/proto/auth.proto +5 -3
- package/proto/branch.proto +44 -44
- package/proto/catalog.proto +124 -0
- package/proto/inventory.proto +228 -93
- package/proto/partner.proto +103 -0
- package/proto/purchase.proto +105 -0
- package/proto/sales.proto +292 -0
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
syntax = "proto3";
|
|
2
|
+
|
|
3
|
+
package catalog.v1;
|
|
4
|
+
|
|
5
|
+
import "common.proto";
|
|
6
|
+
import "google/protobuf/timestamp.proto";
|
|
7
|
+
|
|
8
|
+
message Brand {
|
|
9
|
+
string id = 1;
|
|
10
|
+
string name = 2;
|
|
11
|
+
google.protobuf.Timestamp created_at = 3;
|
|
12
|
+
google.protobuf.Timestamp updated_at = 4;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
message Category {
|
|
16
|
+
string id = 1;
|
|
17
|
+
string name = 2;
|
|
18
|
+
google.protobuf.Timestamp created_at = 3;
|
|
19
|
+
google.protobuf.Timestamp updated_at = 4;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
message InternationalName {
|
|
23
|
+
string id = 1;
|
|
24
|
+
string name = 2;
|
|
25
|
+
google.protobuf.Timestamp created_at = 3;
|
|
26
|
+
google.protobuf.Timestamp updated_at = 4;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
message Manufacturer {
|
|
30
|
+
string id = 1;
|
|
31
|
+
string name = 2;
|
|
32
|
+
optional string country = 3;
|
|
33
|
+
optional string note = 4;
|
|
34
|
+
google.protobuf.Timestamp created_at = 5;
|
|
35
|
+
google.protobuf.Timestamp updated_at = 6;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
message CreateBrandRequest {
|
|
39
|
+
string name = 1;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
message UpdateBrandRequest {
|
|
43
|
+
string id = 1;
|
|
44
|
+
string name = 2;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
message ListBrandsResponse {
|
|
48
|
+
repeated Brand items = 1;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
message CreateCategoryRequest {
|
|
52
|
+
string name = 1;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
message UpdateCategoryRequest {
|
|
56
|
+
string id = 1;
|
|
57
|
+
string name = 2;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
message ListCategoriesResponse {
|
|
61
|
+
repeated Category items = 1;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
message CreateInternationalNameRequest {
|
|
65
|
+
string name = 1;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
message UpdateInternationalNameRequest {
|
|
69
|
+
string id = 1;
|
|
70
|
+
string name = 2;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
message ListInternationalNamesResponse {
|
|
74
|
+
repeated InternationalName items = 1;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
message CreateManufacturerRequest {
|
|
78
|
+
string name = 1;
|
|
79
|
+
optional string country = 2;
|
|
80
|
+
optional string note = 3;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
message UpdateManufacturerRequest {
|
|
84
|
+
string id = 1;
|
|
85
|
+
optional string name = 2;
|
|
86
|
+
optional string country = 3;
|
|
87
|
+
optional string note = 4;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
message ListManufacturersResponse {
|
|
91
|
+
repeated Manufacturer items = 1;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
service BrandService {
|
|
95
|
+
rpc CreateBrand(CreateBrandRequest) returns (Brand);
|
|
96
|
+
rpc UpdateBrand(UpdateBrandRequest) returns (Brand);
|
|
97
|
+
rpc GetBrandById(common.v1.IdRequest) returns (Brand);
|
|
98
|
+
rpc ListBrands(common.v1.Empty) returns (ListBrandsResponse);
|
|
99
|
+
rpc DeleteBrand(common.v1.IdRequest) returns (common.v1.BoolResponse);
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
service CategoryService {
|
|
103
|
+
rpc CreateCategory(CreateCategoryRequest) returns (Category);
|
|
104
|
+
rpc UpdateCategory(UpdateCategoryRequest) returns (Category);
|
|
105
|
+
rpc GetCategoryById(common.v1.IdRequest) returns (Category);
|
|
106
|
+
rpc ListCategories(common.v1.Empty) returns (ListCategoriesResponse);
|
|
107
|
+
rpc DeleteCategory(common.v1.IdRequest) returns (common.v1.BoolResponse);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
service InternationalNameService {
|
|
111
|
+
rpc CreateInternationalName(CreateInternationalNameRequest) returns (InternationalName);
|
|
112
|
+
rpc UpdateInternationalName(UpdateInternationalNameRequest) returns (InternationalName);
|
|
113
|
+
rpc GetInternationalNameById(common.v1.IdRequest) returns (InternationalName);
|
|
114
|
+
rpc ListInternationalNames(common.v1.Empty) returns (ListInternationalNamesResponse);
|
|
115
|
+
rpc DeleteInternationalName(common.v1.IdRequest) returns (common.v1.BoolResponse);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
service ManufacturerService {
|
|
119
|
+
rpc CreateManufacturer(CreateManufacturerRequest) returns (Manufacturer);
|
|
120
|
+
rpc UpdateManufacturer(UpdateManufacturerRequest) returns (Manufacturer);
|
|
121
|
+
rpc GetManufacturerById(common.v1.IdRequest) returns (Manufacturer);
|
|
122
|
+
rpc ListManufacturers(common.v1.Empty) returns (ListManufacturersResponse);
|
|
123
|
+
rpc DeleteManufacturer(common.v1.IdRequest) returns (common.v1.BoolResponse);
|
|
124
|
+
}
|
package/proto/inventory.proto
CHANGED
|
@@ -4,71 +4,151 @@ package inventory.v1;
|
|
|
4
4
|
|
|
5
5
|
import "google/protobuf/timestamp.proto";
|
|
6
6
|
import "common.proto";
|
|
7
|
+
import "catalog.proto";
|
|
7
8
|
|
|
9
|
+
enum ProductStatus {
|
|
10
|
+
PRODUCT_STATUS_UNSPECIFIED = 0;
|
|
11
|
+
PRODUCT_STATUS_ACTIVE = 1;
|
|
12
|
+
PRODUCT_STATUS_INACTIVE = 2;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
enum UnitType {
|
|
16
|
+
UNIT_TYPE_UNSPECIFIED = 0;
|
|
17
|
+
UNIT_TYPE_PIECE = 1;
|
|
18
|
+
UNIT_TYPE_BOX = 2;
|
|
19
|
+
UNIT_TYPE_BOTTLE = 3;
|
|
20
|
+
UNIT_TYPE_PACK = 4;
|
|
21
|
+
UNIT_TYPE_BLISTER = 5;
|
|
22
|
+
UNIT_TYPE_TUBE = 6;
|
|
23
|
+
UNIT_TYPE_AMPULE = 7;
|
|
24
|
+
UNIT_TYPE_VIAL = 8;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
enum ProductForm {
|
|
28
|
+
PRODUCT_FORM_UNSPECIFIED = 0;
|
|
29
|
+
PRODUCT_FORM_TABLET = 1;
|
|
30
|
+
PRODUCT_FORM_CAPSULE = 2;
|
|
31
|
+
PRODUCT_FORM_SYRUP = 3;
|
|
32
|
+
PRODUCT_FORM_INJECTION = 4;
|
|
33
|
+
PRODUCT_FORM_OINTMENT = 5;
|
|
34
|
+
PRODUCT_FORM_CREAM = 6;
|
|
35
|
+
PRODUCT_FORM_GEL = 7;
|
|
36
|
+
PRODUCT_FORM_DROPS = 8;
|
|
37
|
+
PRODUCT_FORM_SPRAY = 9;
|
|
38
|
+
PRODUCT_FORM_POWDER = 10;
|
|
39
|
+
PRODUCT_FORM_SOLUTION = 11;
|
|
40
|
+
PRODUCT_FORM_SUPPOSITORY = 12;
|
|
41
|
+
PRODUCT_FORM_OTHER = 13;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
enum BatchStatus {
|
|
45
|
+
BATCH_STATUS_UNSPECIFIED = 0;
|
|
46
|
+
BATCH_STATUS_ACTIVE = 1;
|
|
47
|
+
BATCH_STATUS_EXPIRED = 2;
|
|
48
|
+
BATCH_STATUS_DEPLETED = 3;
|
|
49
|
+
BATCH_STATUS_BLOCKED = 4;
|
|
50
|
+
}
|
|
8
51
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
52
|
+
enum StockMovementType {
|
|
53
|
+
STOCK_MOVEMENT_TYPE_UNSPECIFIED = 0;
|
|
54
|
+
STOCK_MOVEMENT_TYPE_IN = 1;
|
|
55
|
+
STOCK_MOVEMENT_TYPE_OUT = 2;
|
|
56
|
+
STOCK_MOVEMENT_TYPE_RETURN_IN = 3;
|
|
57
|
+
STOCK_MOVEMENT_TYPE_RETURN_OUT = 4;
|
|
58
|
+
STOCK_MOVEMENT_TYPE_WRITE_OFF = 5;
|
|
59
|
+
STOCK_MOVEMENT_TYPE_ADJUSTMENT = 6;
|
|
60
|
+
STOCK_MOVEMENT_TYPE_TRANSFER_OUT = 7;
|
|
61
|
+
STOCK_MOVEMENT_TYPE_TRANSFER_IN = 8;
|
|
18
62
|
}
|
|
19
63
|
|
|
20
64
|
message Product {
|
|
21
65
|
string id = 1;
|
|
22
66
|
string name = 2;
|
|
23
67
|
string sku = 3;
|
|
24
|
-
string barcode = 4;
|
|
25
|
-
string
|
|
26
|
-
optional string
|
|
27
|
-
|
|
28
|
-
|
|
68
|
+
optional string barcode = 4;
|
|
69
|
+
optional string dosage = 5;
|
|
70
|
+
optional string description = 6;
|
|
71
|
+
ProductForm form = 7;
|
|
72
|
+
UnitType unit = 8;
|
|
73
|
+
bool requires_prescription = 9;
|
|
74
|
+
ProductStatus status = 10;
|
|
75
|
+
optional string brand_id = 11;
|
|
76
|
+
optional string category_id = 12;
|
|
77
|
+
optional string international_name_id = 13;
|
|
78
|
+
optional string manufacturer_id = 14;
|
|
79
|
+
string price = 15;
|
|
80
|
+
optional string cost_price = 16;
|
|
81
|
+
optional catalog.v1.Brand brand = 17;
|
|
82
|
+
optional catalog.v1.Category category = 18;
|
|
83
|
+
optional catalog.v1.InternationalName international_name = 19;
|
|
84
|
+
optional catalog.v1.Manufacturer manufacturer = 20;
|
|
85
|
+
google.protobuf.Timestamp created_at = 21;
|
|
86
|
+
google.protobuf.Timestamp updated_at = 22;
|
|
87
|
+
optional string image_url = 23;
|
|
29
88
|
}
|
|
30
89
|
|
|
31
|
-
message
|
|
90
|
+
message ProductBarcode {
|
|
32
91
|
string id = 1;
|
|
33
|
-
string
|
|
34
|
-
string
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
optional
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
Product product = 9;
|
|
41
|
-
google.protobuf.Timestamp created_at = 10;
|
|
42
|
-
google.protobuf.Timestamp updated_at = 11;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
message CreateBranchRequest {
|
|
46
|
-
string name = 1;
|
|
47
|
-
optional string address = 2;
|
|
48
|
-
optional string phone = 3;
|
|
92
|
+
string product_id = 2;
|
|
93
|
+
string barcode = 3;
|
|
94
|
+
bool is_primary = 4;
|
|
95
|
+
optional string package_type = 5;
|
|
96
|
+
optional string note = 6;
|
|
97
|
+
google.protobuf.Timestamp created_at = 7;
|
|
98
|
+
google.protobuf.Timestamp updated_at = 8;
|
|
49
99
|
}
|
|
50
100
|
|
|
51
|
-
message
|
|
101
|
+
message ProductBatch {
|
|
52
102
|
string id = 1;
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
103
|
+
string product_id = 2;
|
|
104
|
+
string branch_id = 3;
|
|
105
|
+
string batch_number = 4;
|
|
106
|
+
google.protobuf.Timestamp expiry_date = 5;
|
|
107
|
+
optional google.protobuf.Timestamp manufacture_date = 6;
|
|
108
|
+
string purchase_price = 7;
|
|
109
|
+
string selling_price = 8;
|
|
110
|
+
int32 initial_quantity = 9;
|
|
111
|
+
int32 remaining_quantity = 10;
|
|
112
|
+
BatchStatus status = 11;
|
|
113
|
+
optional string purchase_item_id = 12;
|
|
114
|
+
optional Product product = 13;
|
|
115
|
+
google.protobuf.Timestamp created_at = 14;
|
|
116
|
+
google.protobuf.Timestamp updated_at = 15;
|
|
56
117
|
}
|
|
57
118
|
|
|
58
|
-
message
|
|
59
|
-
|
|
119
|
+
message StockMovement {
|
|
120
|
+
string id = 1;
|
|
121
|
+
string branch_id = 2;
|
|
122
|
+
string product_id = 3;
|
|
123
|
+
string product_batch_id = 4;
|
|
124
|
+
StockMovementType type = 5;
|
|
125
|
+
int32 quantity = 6;
|
|
126
|
+
int32 balance_before = 7;
|
|
127
|
+
int32 balance_after = 8;
|
|
128
|
+
optional string reference_type = 9;
|
|
129
|
+
optional string reference_id = 10;
|
|
130
|
+
optional string performed_by_id = 11;
|
|
131
|
+
optional string note = 12;
|
|
132
|
+
google.protobuf.Timestamp created_at = 13;
|
|
60
133
|
}
|
|
61
134
|
|
|
62
135
|
message CreateProductRequest {
|
|
63
136
|
string name = 1;
|
|
64
137
|
string sku = 2;
|
|
65
|
-
string barcode = 3;
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
optional
|
|
138
|
+
optional string barcode = 3;
|
|
139
|
+
optional string dosage = 4;
|
|
140
|
+
optional string description = 5;
|
|
141
|
+
ProductForm form = 6;
|
|
142
|
+
UnitType unit = 7;
|
|
143
|
+
optional bool requires_prescription = 8;
|
|
144
|
+
optional ProductStatus status = 9;
|
|
145
|
+
optional string brand_id = 10;
|
|
146
|
+
optional string category_id = 11;
|
|
147
|
+
optional string international_name_id = 12;
|
|
148
|
+
optional string manufacturer_id = 13;
|
|
149
|
+
string price = 14;
|
|
150
|
+
optional string cost_price = 15;
|
|
151
|
+
optional string image_url = 16;
|
|
72
152
|
}
|
|
73
153
|
|
|
74
154
|
message UpdateProductRequest {
|
|
@@ -76,17 +156,29 @@ message UpdateProductRequest {
|
|
|
76
156
|
optional string name = 2;
|
|
77
157
|
optional string sku = 3;
|
|
78
158
|
optional string barcode = 4;
|
|
79
|
-
optional string
|
|
80
|
-
optional string
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
159
|
+
optional string dosage = 5;
|
|
160
|
+
optional string description = 6;
|
|
161
|
+
optional ProductForm form = 7;
|
|
162
|
+
optional UnitType unit = 8;
|
|
163
|
+
optional bool requires_prescription = 9;
|
|
164
|
+
optional ProductStatus status = 10;
|
|
165
|
+
optional string brand_id = 11;
|
|
166
|
+
optional string category_id = 12;
|
|
167
|
+
optional string international_name_id = 13;
|
|
168
|
+
optional string manufacturer_id = 14;
|
|
169
|
+
optional string price = 15;
|
|
170
|
+
optional string cost_price = 16;
|
|
171
|
+
optional string image_url = 17;
|
|
85
172
|
}
|
|
86
173
|
|
|
87
174
|
message ListProductsRequest {
|
|
88
175
|
common.v1.PaginationRequest pagination = 1;
|
|
89
176
|
optional string search = 2;
|
|
177
|
+
optional string brand_id = 3;
|
|
178
|
+
optional string category_id = 4;
|
|
179
|
+
optional string international_name_id = 5;
|
|
180
|
+
optional string manufacturer_id = 6;
|
|
181
|
+
optional ProductStatus status = 7;
|
|
90
182
|
}
|
|
91
183
|
|
|
92
184
|
message ListProductsResponse {
|
|
@@ -94,77 +186,120 @@ message ListProductsResponse {
|
|
|
94
186
|
common.v1.PaginationMeta meta = 2;
|
|
95
187
|
}
|
|
96
188
|
|
|
97
|
-
message
|
|
98
|
-
string
|
|
99
|
-
string
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
optional
|
|
103
|
-
optional string batch_number = 6;
|
|
189
|
+
message CreateProductBarcodeRequest {
|
|
190
|
+
string product_id = 1;
|
|
191
|
+
string barcode = 2;
|
|
192
|
+
optional bool is_primary = 3;
|
|
193
|
+
optional string package_type = 4;
|
|
194
|
+
optional string note = 5;
|
|
104
195
|
}
|
|
105
196
|
|
|
106
|
-
message
|
|
197
|
+
message UpdateProductBarcodeRequest {
|
|
107
198
|
string id = 1;
|
|
108
|
-
optional
|
|
109
|
-
optional
|
|
110
|
-
optional
|
|
111
|
-
optional string
|
|
199
|
+
optional string barcode = 2;
|
|
200
|
+
optional bool is_primary = 3;
|
|
201
|
+
optional string package_type = 4;
|
|
202
|
+
optional string note = 5;
|
|
112
203
|
}
|
|
113
204
|
|
|
114
|
-
message
|
|
115
|
-
|
|
116
|
-
int32 quantity_change = 2;
|
|
117
|
-
string reason = 3;
|
|
205
|
+
message ListProductBarcodesResponse {
|
|
206
|
+
repeated ProductBarcode items = 1;
|
|
118
207
|
}
|
|
119
208
|
|
|
120
|
-
message
|
|
209
|
+
message CreateProductBatchRequest {
|
|
121
210
|
string product_id = 1;
|
|
122
|
-
string
|
|
123
|
-
string
|
|
124
|
-
|
|
125
|
-
optional
|
|
211
|
+
string branch_id = 2;
|
|
212
|
+
string batch_number = 3;
|
|
213
|
+
google.protobuf.Timestamp expiry_date = 4;
|
|
214
|
+
optional google.protobuf.Timestamp manufacture_date = 5;
|
|
215
|
+
string purchase_price = 6;
|
|
216
|
+
string selling_price = 7;
|
|
217
|
+
int32 initial_quantity = 8;
|
|
218
|
+
optional int32 remaining_quantity = 9;
|
|
219
|
+
optional BatchStatus status = 10;
|
|
220
|
+
optional string purchase_item_id = 11;
|
|
126
221
|
}
|
|
127
222
|
|
|
128
|
-
message
|
|
223
|
+
message UpdateProductBatchRequest {
|
|
129
224
|
string id = 1;
|
|
225
|
+
optional string batch_number = 2;
|
|
226
|
+
optional google.protobuf.Timestamp expiry_date = 3;
|
|
227
|
+
optional google.protobuf.Timestamp manufacture_date = 4;
|
|
228
|
+
optional string purchase_price = 5;
|
|
229
|
+
optional string selling_price = 6;
|
|
230
|
+
optional int32 initial_quantity = 7;
|
|
231
|
+
optional int32 remaining_quantity = 8;
|
|
232
|
+
optional BatchStatus status = 9;
|
|
130
233
|
}
|
|
131
234
|
|
|
132
|
-
message
|
|
235
|
+
message ListProductBatchesRequest {
|
|
133
236
|
common.v1.PaginationRequest pagination = 1;
|
|
134
237
|
optional string branch_id = 2;
|
|
135
238
|
optional string product_id = 3;
|
|
136
|
-
optional string
|
|
137
|
-
optional
|
|
138
|
-
optional bool
|
|
239
|
+
optional string batch_number = 4;
|
|
240
|
+
optional BatchStatus status = 5;
|
|
241
|
+
optional bool low_stock_only = 6;
|
|
242
|
+
optional bool expiring_soon_only = 7;
|
|
139
243
|
}
|
|
140
244
|
|
|
141
|
-
message
|
|
142
|
-
repeated
|
|
245
|
+
message ListProductBatchesResponse {
|
|
246
|
+
repeated ProductBatch items = 1;
|
|
143
247
|
common.v1.PaginationMeta meta = 2;
|
|
144
248
|
}
|
|
145
249
|
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
250
|
+
message CreateStockMovementRequest {
|
|
251
|
+
string branch_id = 1;
|
|
252
|
+
string product_id = 2;
|
|
253
|
+
string product_batch_id = 3;
|
|
254
|
+
StockMovementType type = 4;
|
|
255
|
+
int32 quantity = 5;
|
|
256
|
+
int32 balance_before = 6;
|
|
257
|
+
int32 balance_after = 7;
|
|
258
|
+
optional string reference_type = 8;
|
|
259
|
+
optional string reference_id = 9;
|
|
260
|
+
optional string performed_by_id = 10;
|
|
261
|
+
optional string note = 11;
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
message ListStockMovementsRequest {
|
|
265
|
+
common.v1.PaginationRequest pagination = 1;
|
|
266
|
+
optional string branch_id = 2;
|
|
267
|
+
optional string product_id = 3;
|
|
268
|
+
optional string product_batch_id = 4;
|
|
269
|
+
optional StockMovementType type = 5;
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
message ListStockMovementsResponse {
|
|
273
|
+
repeated StockMovement items = 1;
|
|
274
|
+
common.v1.PaginationMeta meta = 2;
|
|
152
275
|
}
|
|
153
276
|
|
|
154
277
|
service ProductService {
|
|
155
278
|
rpc CreateProduct(CreateProductRequest) returns (Product);
|
|
156
279
|
rpc UpdateProduct(UpdateProductRequest) returns (Product);
|
|
157
|
-
rpc GetProductById(
|
|
280
|
+
rpc GetProductById(common.v1.IdRequest) returns (Product);
|
|
158
281
|
rpc ListProducts(ListProductsRequest) returns (ListProductsResponse);
|
|
159
282
|
rpc DeleteProduct(common.v1.IdRequest) returns (common.v1.BoolResponse);
|
|
160
283
|
}
|
|
161
284
|
|
|
162
|
-
service
|
|
163
|
-
rpc
|
|
164
|
-
rpc
|
|
165
|
-
rpc
|
|
166
|
-
rpc
|
|
167
|
-
rpc
|
|
168
|
-
|
|
169
|
-
|
|
285
|
+
service ProductBarcodeService {
|
|
286
|
+
rpc CreateProductBarcode(CreateProductBarcodeRequest) returns (ProductBarcode);
|
|
287
|
+
rpc UpdateProductBarcode(UpdateProductBarcodeRequest) returns (ProductBarcode);
|
|
288
|
+
rpc GetProductBarcodeById(common.v1.IdRequest) returns (ProductBarcode);
|
|
289
|
+
rpc ListProductBarcodes(common.v1.IdRequest) returns (ListProductBarcodesResponse);
|
|
290
|
+
rpc DeleteProductBarcode(common.v1.IdRequest) returns (common.v1.BoolResponse);
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
service ProductBatchService {
|
|
294
|
+
rpc CreateProductBatch(CreateProductBatchRequest) returns (ProductBatch);
|
|
295
|
+
rpc UpdateProductBatch(UpdateProductBatchRequest) returns (ProductBatch);
|
|
296
|
+
rpc GetProductBatchById(common.v1.IdRequest) returns (ProductBatch);
|
|
297
|
+
rpc ListProductBatches(ListProductBatchesRequest) returns (ListProductBatchesResponse);
|
|
298
|
+
rpc DeleteProductBatch(common.v1.IdRequest) returns (common.v1.BoolResponse);
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
service StockMovementService {
|
|
302
|
+
rpc CreateStockMovement(CreateStockMovementRequest) returns (StockMovement);
|
|
303
|
+
rpc GetStockMovementById(common.v1.IdRequest) returns (StockMovement);
|
|
304
|
+
rpc ListStockMovements(ListStockMovementsRequest) returns (ListStockMovementsResponse);
|
|
170
305
|
}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
syntax = "proto3";
|
|
2
|
+
|
|
3
|
+
package partner.v1;
|
|
4
|
+
|
|
5
|
+
import "google/protobuf/timestamp.proto";
|
|
6
|
+
import "common.proto";
|
|
7
|
+
|
|
8
|
+
message Supplier {
|
|
9
|
+
string id = 1;
|
|
10
|
+
string name = 2;
|
|
11
|
+
optional string phone = 3;
|
|
12
|
+
optional string email = 4;
|
|
13
|
+
optional string address = 5;
|
|
14
|
+
optional string tax_number = 6;
|
|
15
|
+
bool is_active = 7;
|
|
16
|
+
optional string note = 8;
|
|
17
|
+
google.protobuf.Timestamp created_at = 9;
|
|
18
|
+
google.protobuf.Timestamp updated_at = 10;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
message Customer {
|
|
22
|
+
string id = 1;
|
|
23
|
+
optional string full_name = 2;
|
|
24
|
+
optional string phone = 3;
|
|
25
|
+
optional string code = 4;
|
|
26
|
+
optional string branch_id = 5;
|
|
27
|
+
google.protobuf.Timestamp created_at = 6;
|
|
28
|
+
google.protobuf.Timestamp updated_at = 7;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
message CreateSupplierRequest {
|
|
32
|
+
string name = 1;
|
|
33
|
+
optional string phone = 2;
|
|
34
|
+
optional string email = 3;
|
|
35
|
+
optional string address = 4;
|
|
36
|
+
optional string tax_number = 5;
|
|
37
|
+
optional bool is_active = 6;
|
|
38
|
+
optional string note = 7;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
message UpdateSupplierRequest {
|
|
42
|
+
string id = 1;
|
|
43
|
+
optional string name = 2;
|
|
44
|
+
optional string phone = 3;
|
|
45
|
+
optional string email = 4;
|
|
46
|
+
optional string address = 5;
|
|
47
|
+
optional string tax_number = 6;
|
|
48
|
+
optional bool is_active = 7;
|
|
49
|
+
optional string note = 8;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
message ListSuppliersRequest {
|
|
53
|
+
common.v1.PaginationRequest pagination = 1;
|
|
54
|
+
optional bool is_active = 2;
|
|
55
|
+
optional string search = 3;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
message ListSuppliersResponse {
|
|
59
|
+
repeated Supplier items = 1;
|
|
60
|
+
common.v1.PaginationMeta meta = 2;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
message CreateCustomerRequest {
|
|
64
|
+
optional string full_name = 1;
|
|
65
|
+
optional string phone = 2;
|
|
66
|
+
optional string code = 3;
|
|
67
|
+
optional string branch_id = 4;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
message UpdateCustomerRequest {
|
|
71
|
+
string id = 1;
|
|
72
|
+
optional string full_name = 2;
|
|
73
|
+
optional string phone = 3;
|
|
74
|
+
optional string code = 4;
|
|
75
|
+
optional string branch_id = 5;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
message ListCustomersRequest {
|
|
79
|
+
common.v1.PaginationRequest pagination = 1;
|
|
80
|
+
optional string branch_id = 2;
|
|
81
|
+
optional string search = 3;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
message ListCustomersResponse {
|
|
85
|
+
repeated Customer items = 1;
|
|
86
|
+
common.v1.PaginationMeta meta = 2;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
service SupplierService {
|
|
90
|
+
rpc CreateSupplier(CreateSupplierRequest) returns (Supplier);
|
|
91
|
+
rpc UpdateSupplier(UpdateSupplierRequest) returns (Supplier);
|
|
92
|
+
rpc GetSupplierById(common.v1.IdRequest) returns (Supplier);
|
|
93
|
+
rpc ListSuppliers(ListSuppliersRequest) returns (ListSuppliersResponse);
|
|
94
|
+
rpc DeleteSupplier(common.v1.IdRequest) returns (common.v1.BoolResponse);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
service CustomerService {
|
|
98
|
+
rpc CreateCustomer(CreateCustomerRequest) returns (Customer);
|
|
99
|
+
rpc UpdateCustomer(UpdateCustomerRequest) returns (Customer);
|
|
100
|
+
rpc GetCustomerById(common.v1.IdRequest) returns (Customer);
|
|
101
|
+
rpc ListCustomers(ListCustomersRequest) returns (ListCustomersResponse);
|
|
102
|
+
rpc DeleteCustomer(common.v1.IdRequest) returns (common.v1.BoolResponse);
|
|
103
|
+
}
|