storemw-core-client 1.0.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.
Files changed (112) hide show
  1. package/.env +1 -0
  2. package/.vscode/launch.json +24 -0
  3. package/dist/config/config.d.ts +6 -0
  4. package/dist/config/config.js +13 -0
  5. package/dist/config/env.d.ts +7 -0
  6. package/dist/config/env.js +16 -0
  7. package/dist/config/index.d.ts +2 -0
  8. package/dist/config/index.js +8 -0
  9. package/dist/index.d.ts +1 -0
  10. package/dist/index.js +32 -0
  11. package/dist/lib/ApiService.d.ts +41 -0
  12. package/dist/lib/ApiService.js +143 -0
  13. package/dist/lib/index.d.ts +4 -0
  14. package/dist/lib/index.js +9 -0
  15. package/dist/lib/queryParams.d.ts +43 -0
  16. package/dist/lib/queryParams.js +99 -0
  17. package/dist/services/account/AccountService.d.ts +52 -0
  18. package/dist/services/account/AccountService.js +119 -0
  19. package/dist/services/auth/AuthService.d.ts +44 -0
  20. package/dist/services/auth/AuthService.js +76 -0
  21. package/dist/services/branch/BranchService.d.ts +124 -0
  22. package/dist/services/branch/BranchService.js +162 -0
  23. package/dist/services/business/BusinessService.d.ts +91 -0
  24. package/dist/services/business/BusinessService.js +153 -0
  25. package/dist/services/document/DocumentService.d.ts +578 -0
  26. package/dist/services/document/DocumentService.js +615 -0
  27. package/dist/services/index.d.ts +36 -0
  28. package/dist/services/index.js +97 -0
  29. package/dist/services/injection_field/InjectionFieldService.d.ts +113 -0
  30. package/dist/services/injection_field/InjectionFieldService.js +220 -0
  31. package/dist/services/inventory/InventoryService.d.ts +27 -0
  32. package/dist/services/inventory/InventoryService.js +231 -0
  33. package/dist/services/item/ItemService.d.ts +227 -0
  34. package/dist/services/item/ItemService.js +411 -0
  35. package/dist/services/location/LocationService.d.ts +154 -0
  36. package/dist/services/location/LocationService.js +256 -0
  37. package/dist/services/logistic/LogisticService.d.ts +104 -0
  38. package/dist/services/logistic/LogisticService.js +150 -0
  39. package/dist/services/permission/PermissionService.d.ts +296 -0
  40. package/dist/services/permission/PermissionService.js +576 -0
  41. package/dist/services/permission/config/custom/adminPermission.d.ts +4 -0
  42. package/dist/services/permission/config/custom/adminPermission.js +18 -0
  43. package/dist/services/permission/config/custom/config.d.ts +40 -0
  44. package/dist/services/permission/config/custom/config.js +23 -0
  45. package/dist/services/permission/config/default/adminPermission.d.ts +2 -0
  46. package/dist/services/permission/config/default/adminPermission.js +129 -0
  47. package/dist/services/permission/config/default/agentPermission.d.ts +2 -0
  48. package/dist/services/permission/config/default/agentPermission.js +43 -0
  49. package/dist/services/permission/config/default/customerPermission.d.ts +2 -0
  50. package/dist/services/permission/config/default/customerPermission.js +10 -0
  51. package/dist/services/permission/config/default/driverPermission.d.ts +2 -0
  52. package/dist/services/permission/config/default/driverPermission.js +4 -0
  53. package/dist/services/permission/config/default/workerPermission.d.ts +2 -0
  54. package/dist/services/permission/config/default/workerPermission.js +25 -0
  55. package/dist/services/rate/RateService.d.ts +201 -0
  56. package/dist/services/rate/RateService.js +303 -0
  57. package/dist/services/region/RegionService.d.ts +111 -0
  58. package/dist/services/region/RegionService.js +193 -0
  59. package/dist/services/repository/RepositoryService.d.ts +153 -0
  60. package/dist/services/repository/RepositoryService.js +243 -0
  61. package/dist/services/transaction/TransactionService.d.ts +153 -0
  62. package/dist/services/transaction/TransactionService.js +173 -0
  63. package/dist/services/user/BranchUserService.d.ts +129 -0
  64. package/dist/services/user/BranchUserService.js +193 -0
  65. package/dist/services/user/UserRoleService.d.ts +105 -0
  66. package/dist/services/user/UserRoleService.js +193 -0
  67. package/dist/services/user/UserService.d.ts +269 -0
  68. package/dist/services/user/UserService.js +477 -0
  69. package/dist/services/wallet/WalletService.d.ts +104 -0
  70. package/dist/services/wallet/WalletService.js +163 -0
  71. package/dist/utils/dateUtils.d.ts +6 -0
  72. package/dist/utils/dateUtils.js +28 -0
  73. package/dist/utils/index.d.ts +2 -0
  74. package/dist/utils/index.js +13 -0
  75. package/package.json +27 -0
  76. package/src/config/config.ts +15 -0
  77. package/src/config/env.ts +18 -0
  78. package/src/config/index.ts +2 -0
  79. package/src/index.ts +41 -0
  80. package/src/lib/ApiService.ts +170 -0
  81. package/src/lib/index.ts +5 -0
  82. package/src/lib/queryParams.ts +162 -0
  83. package/src/services/account/AccountService.ts +232 -0
  84. package/src/services/auth/AuthService.ts +125 -0
  85. package/src/services/branch/BranchService.ts +330 -0
  86. package/src/services/business/BusinessService.ts +277 -0
  87. package/src/services/document/DocumentService.ts +1471 -0
  88. package/src/services/index.ts +73 -0
  89. package/src/services/injection_field/InjectionFieldService.ts +483 -0
  90. package/src/services/inventory/InventoryService.ts +314 -0
  91. package/src/services/item/ItemService.ts +707 -0
  92. package/src/services/location/LocationService.ts +505 -0
  93. package/src/services/logistic/LogisticService.ts +285 -0
  94. package/src/services/permission/PermissionService.ts +1069 -0
  95. package/src/services/permission/config/custom/adminPermission.ts +19 -0
  96. package/src/services/permission/config/custom/config.ts +39 -0
  97. package/src/services/permission/config/default/adminPermission.ts +129 -0
  98. package/src/services/permission/config/default/agentPermission.ts +42 -0
  99. package/src/services/permission/config/default/customerPermission.ts +9 -0
  100. package/src/services/permission/config/default/driverPermission.ts +4 -0
  101. package/src/services/permission/config/default/workerPermission.ts +25 -0
  102. package/src/services/rate/RateService.ts +570 -0
  103. package/src/services/region/RegionService.ts +353 -0
  104. package/src/services/repository/RepositoryService.ts +437 -0
  105. package/src/services/transaction/TransactionService.ts +404 -0
  106. package/src/services/user/BranchUserService.ts +381 -0
  107. package/src/services/user/UserRoleService.ts +342 -0
  108. package/src/services/user/UserService.ts +807 -0
  109. package/src/services/wallet/WalletService.ts +300 -0
  110. package/src/utils/dateUtils.ts +26 -0
  111. package/src/utils/index.ts +2 -0
  112. package/tsconfig.json +119 -0
@@ -0,0 +1,411 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ItemService = exports.itemTargetTypes = exports.itemTypes = exports.uomConfig = void 0;
4
+ const lib_1 = require("@/lib");
5
+ const lib_2 = require("@/lib");
6
+ // only for item uom
7
+ const decimalPlaces = [0, 1, 2, 3, 4];
8
+ const metricTypes = {
9
+ weight: [
10
+ { id: 'kg', abbreviation: 'kg', name: 'kilogram' },
11
+ { id: 'g', abbreviation: 'g', name: 'gram' }
12
+ ],
13
+ volume: [
14
+ { id: 'ml', abbreviation: 'ml', name: 'mililitre' },
15
+ { id: 'l', abbreviation: 'l', name: 'litre' }
16
+ ],
17
+ unit: [
18
+ { id: 'unit', abbreviation: 'unit', name: 'unit' }
19
+ ]
20
+ };
21
+ exports.uomConfig = {
22
+ decimalPlaces,
23
+ metricTypes
24
+ };
25
+ exports.itemTypes = {
26
+ item: "item",
27
+ brand: "item_brand",
28
+ category: "item_category",
29
+ uom: "item_uom",
30
+ product: "product"
31
+ };
32
+ exports.itemTargetTypes = {
33
+ item: "item",
34
+ brand: "item_brand",
35
+ category: "item_category",
36
+ uom: "item_uom",
37
+ product: "product"
38
+ };
39
+ const getCreatePayload = (itemType, data) => {
40
+ if (itemType === "product" && "product" in data) {
41
+ return {
42
+ product: {
43
+ item_name: data.product.product.name,
44
+ model: data.product.product.model,
45
+ product_code: data.product.product.productCode,
46
+ description: data.product.product.description,
47
+ category_id: data.product.product.categoryId,
48
+ brand_id: data.product.product.brandId,
49
+ summary: data.product.product.summary,
50
+ status: data.product.product.status === true ? 1 : 0
51
+ },
52
+ item: {
53
+ is_package: data.product.item.isPackage === true ? 1 : 0,
54
+ status: data.product.item.status === true ? 1 : 0,
55
+ uom_id: data.product.item.uomId,
56
+ code: data.product.item.code,
57
+ item_description: data.product.item.description,
58
+ remark: data.product.item.remark,
59
+ cost: data.product.item.cost,
60
+ uom_price: data.product.item.uomPrice,
61
+ floor_price: data.product.item.floorPrice,
62
+ volume_weight: data.product.item.volumeWeight,
63
+ gross_weight: data.product.item.grossWeight,
64
+ net_weight: data.product.item.netWeight,
65
+ dimension_width: data.product.item.dimensionWidth,
66
+ dimension_height: data.product.item.dimensionHeight,
67
+ dimension_length: data.product.item.dimensionLength,
68
+ cbm: data.product.item.cbm,
69
+ props: {
70
+ ...(data?.product.props?.transformRatio && { transformRatio: data.product.props.transformRatio }),
71
+ supplier_id: data.product.props?.supplierId || "",
72
+ repack_remark: data.product.props?.repackRemark || "",
73
+ scanning_code_prefix: data.product.props?.scanningCodePrefix || "",
74
+ scanning_code_suffix: data.product.props?.scanningCodeSuffix || "",
75
+ relocate_topup_qty: data.product.props?.relocateTopupQty || "",
76
+ reorder_topup_qty: data.product.props?.reorderTopupQty || "",
77
+ relocate_threshold_qty: data.product.props?.relocateThresholdQty || "",
78
+ reorder_threshold_qty: data.product.props?.reorderThresholdQty || "",
79
+ }
80
+ },
81
+ status: {
82
+ scanning_show_cbm: data.product.status.scanningShowCbm === true ? 1 : 0
83
+ }
84
+ };
85
+ }
86
+ if (itemType === "item" && "item" in data) {
87
+ return {
88
+ item: {
89
+ product_id: data.item.item.productId,
90
+ code: data.item.item.code,
91
+ uom_id: data.item.item.uomId,
92
+ status: data.item.item.status === true ? 1 : 0,
93
+ is_package: data.item.item.isPackage === true ? 1 : 0,
94
+ item_description: data.item.item.description,
95
+ remark: data.item.item.remark,
96
+ cost: data.item.item.cost,
97
+ uom_price: data.item.item.uomPrice,
98
+ floor_price: data.item.item.floorPrice,
99
+ gross_weight: data.item.item.grossWeight,
100
+ volume_weight: data.item.item.volumeWeight,
101
+ net_weight: data.item.item.netWeight,
102
+ dimension_width: data.item.item.dimensionWidth,
103
+ dimension_height: data.item.item.dimensionHeight,
104
+ dimension_length: data.item.item.dimensionLength,
105
+ cbm: data.item.item.cbm
106
+ },
107
+ props: {
108
+ supplier_id: data?.item.props?.supplierId || "",
109
+ repack_remark: data?.item.props?.repackRemark || "",
110
+ scanning_code_prefix: data?.item.props?.scanningCodePrefix || "",
111
+ scanning_code_suffix: data?.item.props?.scanningCodeSuffix || "",
112
+ relocate_topup_qty: data?.item.props?.relocateTopupQty || "",
113
+ reorder_topup_qty: data?.item.props?.reorderTopupQty || "",
114
+ relocate_threshold_qty: data?.item.props?.relocateThresholdQty || "",
115
+ reorder_threshold_qty: data?.item.props?.reorderThresholdQty || "",
116
+ ...(data?.item.props?.transformRatio && { transformRatio: data.item.props.transformRatio }),
117
+ },
118
+ status: {
119
+ scanning_show_cbm: data.item.status.scanningShowCbm === true ? 1 : 0
120
+ }
121
+ };
122
+ }
123
+ if (itemType === "item_category" && "itemCategory" in data) {
124
+ return {
125
+ item_category: {
126
+ parent_category_id: data.itemCategory.parentCategoryId,
127
+ name: data.itemCategory.name,
128
+ description: data.itemCategory.description,
129
+ status: data.itemCategory.status === true ? 1 : 0
130
+ }
131
+ };
132
+ }
133
+ if (itemType === "item_brand" && "itemBrand" in data) {
134
+ return {
135
+ item_brand: {
136
+ name: data.itemBrand.name,
137
+ description: data.itemBrand.description,
138
+ status: data.itemBrand.status === true ? 1 : 0
139
+ }
140
+ };
141
+ }
142
+ if (itemType === "item_uom" && "itemUom" in data) {
143
+ return {
144
+ item_uom: {
145
+ name: data.itemUom.name,
146
+ description: data.itemUom.description,
147
+ metric_type: data.itemUom.metricType,
148
+ metric_type_display_name: data.itemUom.metricTypeDisplayName,
149
+ decimal_digit: data.itemUom.decimalDigit,
150
+ status: data.itemUom.status === true ? 1 : 0
151
+ }
152
+ };
153
+ }
154
+ };
155
+ const getMultipleCreatePayload = (multipleType, data) => {
156
+ if (multipleType === "item" && "item" in data) {
157
+ const items = data;
158
+ return {
159
+ item: items.map((i) => ({
160
+ is_package: i.isPackage === true ? 1 : 0,
161
+ status: i.status === true ? 1 : 0,
162
+ uom_id: i.uomId,
163
+ code: i.code,
164
+ item_description: i.description,
165
+ remark: i.remark,
166
+ cost: i.cost,
167
+ uom_price: i.uomPrice,
168
+ floor_price: i.floorPrice,
169
+ volume_weight: i.volumeWeight,
170
+ gross_weight: i.grossWeight,
171
+ net_weight: i.netWeight,
172
+ dimension_width: i.dimensionWidth,
173
+ dimension_height: i.dimensionHeight,
174
+ dimension_length: i.dimensionLength,
175
+ product_id: i.productId,
176
+ }))
177
+ };
178
+ }
179
+ if (multipleType === "item_props" && "itemProps" in data) {
180
+ const items = data;
181
+ return {
182
+ item: items.map((i) => ({
183
+ item_id: i.itemId,
184
+ scanning_code_prefix: i.scanningCodePrefix,
185
+ scanningCodeSuffix: i.scanningCodeSuffix
186
+ }))
187
+ };
188
+ }
189
+ };
190
+ const getUpdatePayload = (itemType, data) => {
191
+ if (itemType === "product" && "product" in data) {
192
+ return {
193
+ product: {
194
+ item_name: data.product.name,
195
+ model: data.product.model,
196
+ product_code: data.product.productCode,
197
+ description: data.product.description,
198
+ category_id: data.product.categoryId,
199
+ brand_id: data.product.brandId,
200
+ summary: data.product.summary,
201
+ status: data.product.status === true ? 1 : 0
202
+ },
203
+ props: {
204
+ default_uom_item_id: data.product.defaultUomItemId || 0
205
+ }
206
+ };
207
+ }
208
+ if (itemType === "item" && "item" in data) {
209
+ return {
210
+ item: {
211
+ code: data.item.code,
212
+ uom_id: data.item.uomId,
213
+ is_package: data.item.isPackage === true ? 1 : 0,
214
+ status: data.item.status === true ? 1 : 0,
215
+ item_description: data.item.description,
216
+ remark: data.item.remark,
217
+ cost: data.item.cost,
218
+ uom_price: data.item.uomPrice,
219
+ floor_price: data.item.floorPrice,
220
+ gross_weight: data.item.grossWeight,
221
+ volume_weight: data.item.volumeWeight,
222
+ net_weight: data.item.netWeight,
223
+ dimension_width: data.item.dimensionWidth,
224
+ dimension_height: data.item.dimensionHeight,
225
+ dimension_length: data.item.dimensionLength,
226
+ cbm: data.item.cbm
227
+ },
228
+ props: {
229
+ supplier_id: data?.props?.supplierId || "",
230
+ repack_remark: data?.props?.repackRemark || "",
231
+ scanning_code_prefix: data?.props?.scanningCodePrefix || "",
232
+ scanning_code_suffix: data?.props?.scanningCodeSuffix || "",
233
+ relocate_topup_qty: data?.props?.relocateTopupQty || "",
234
+ reorder_topup_qty: data?.props?.reorderTopupQty || "",
235
+ relocate_threshold_qty: data?.props?.relocateThresholdQty || "",
236
+ reorder_threshold_qty: data?.props?.reorderThresholdQty || "",
237
+ ...(data?.props?.transformRatio && { transformRatio: data.props.transformRatio }),
238
+ },
239
+ status: {
240
+ scanning_show_cbm: data.status.scanningShowCbm === true ? 1 : 0
241
+ }
242
+ };
243
+ }
244
+ if (itemType === "item_category" && "itemCategory" in data) {
245
+ return {
246
+ item_category: {
247
+ name: data.itemCategory.name,
248
+ description: data.itemCategory.description,
249
+ status: data.itemCategory.status === true ? 1 : 0
250
+ }
251
+ };
252
+ }
253
+ if (itemType === "item_brand" && "itemBrand" in data) {
254
+ return {
255
+ item_brand: {
256
+ name: data.itemBrand.name,
257
+ description: data.itemBrand.description,
258
+ status: data.itemBrand.status === true ? 1 : 0
259
+ }
260
+ };
261
+ }
262
+ if (itemType === "item_uom" && "itemUom" in data) {
263
+ return {
264
+ item_uom: {
265
+ name: data.itemUom.name,
266
+ description: data.itemUom.description,
267
+ metric_type: data.itemUom.metricType,
268
+ metric_type_display_name: data.itemUom.metricTypeDisplayName,
269
+ decimal_digit: data.itemUom.decimalDigit,
270
+ status: data.itemUom.status === true ? 1 : 0
271
+ }
272
+ };
273
+ }
274
+ };
275
+ const ItemService = (props) => {
276
+ const { itemType = "product", itemTargetType, ...rest } = props ?? {};
277
+ const { makeCall } = (0, lib_1.ApiService)(rest?.customToken ? { customToken: rest.customToken } : {});
278
+ const endpoint1 = "item";
279
+ const endpoint2 = "items";
280
+ const list = async (props) => {
281
+ const { itemType: overrideItemType } = props;
282
+ const url = (0, lib_2.buildApiListUrl)(`${endpoint2}/${overrideItemType || itemType}`, props);
283
+ const response = await makeCall({
284
+ url,
285
+ method: "get",
286
+ payload: {},
287
+ // configuration
288
+ });
289
+ return response;
290
+ };
291
+ const get = async (props) => {
292
+ const { id, itemType: overrideItemType } = props;
293
+ const url = (0, lib_2.buildApiGetUrl)(`${endpoint1}/${overrideItemType || itemType}/${id}`, props);
294
+ const response = await makeCall({
295
+ url,
296
+ method: "get",
297
+ payload: {},
298
+ // configuration
299
+ });
300
+ return response;
301
+ };
302
+ const create = async ({ data, itemType: overrideItemType, itemTargetType: overrideItemTargetType }) => {
303
+ let url = `${endpoint1}`;
304
+ let _itemType = overrideItemType || itemType;
305
+ let payload = getCreatePayload(_itemType, data);
306
+ let postData = {
307
+ scope: {
308
+ target: overrideItemTargetType || itemTargetType,
309
+ action: "",
310
+ },
311
+ payload
312
+ };
313
+ const response = await makeCall({
314
+ url,
315
+ method: "post",
316
+ payload: postData
317
+ });
318
+ return response;
319
+ };
320
+ const update = async ({ id, data, itemType: overrideItemType, itemTargetType: overrideItemTargetType }) => {
321
+ let url = `${endpoint1}/${id}`;
322
+ let _itemType = overrideItemType || itemType;
323
+ let payload = getUpdatePayload(_itemType, data);
324
+ const postData = {
325
+ scope: {
326
+ target: overrideItemTargetType || itemTargetType,
327
+ action: "",
328
+ },
329
+ payload
330
+ };
331
+ const response = await makeCall({
332
+ url,
333
+ method: "put",
334
+ payload: postData
335
+ });
336
+ return response;
337
+ };
338
+ const remove = async ({ ids, itemTargetType: overrideItemTargetType }) => {
339
+ let url = `${endpoint2}/${itemTargetType}/delete`;
340
+ const postData = {
341
+ scope: {
342
+ target: overrideItemTargetType || itemTargetType,
343
+ },
344
+ payload: {
345
+ ids
346
+ }
347
+ };
348
+ const response = await makeCall({
349
+ url,
350
+ method: "post",
351
+ payload: postData
352
+ });
353
+ return response;
354
+ };
355
+ const getDataTypes = async ({ itemType: overrideItemType }) => {
356
+ let url = `${endpoint2}/data_types/${overrideItemType || itemType}`;
357
+ const response = await makeCall({
358
+ url,
359
+ method: "get",
360
+ });
361
+ return response;
362
+ };
363
+ const multipleItemCreate = async ({ data, itemType: overrideItemType, itemTargetType: overrideItemTargetType }) => {
364
+ let _itemType = overrideItemType || itemType;
365
+ let url = `${endpoint2}/${_itemType}/bulk_item`;
366
+ let payload = getMultipleCreatePayload("item", data);
367
+ let postData = {
368
+ scope: {
369
+ target: overrideItemTargetType || itemTargetType,
370
+ action: "",
371
+ },
372
+ payload
373
+ };
374
+ const response = await makeCall({
375
+ url,
376
+ method: "post",
377
+ payload: postData
378
+ });
379
+ return response;
380
+ };
381
+ const multipleItemPropsCreate = async ({ data, itemType: overrideItemType, itemTargetType: overrideItemTargetType }) => {
382
+ let _itemType = overrideItemType || itemType;
383
+ let url = `${endpoint2}/${_itemType}/bulk_item_props`;
384
+ let payload = getMultipleCreatePayload("item_props", data);
385
+ let postData = {
386
+ scope: {
387
+ target: overrideItemTargetType || itemTargetType,
388
+ action: "",
389
+ },
390
+ payload
391
+ };
392
+ const response = await makeCall({
393
+ url,
394
+ method: "post",
395
+ payload: postData
396
+ });
397
+ return response;
398
+ };
399
+ return {
400
+ filterOperatorTypes: lib_2.filterOperatorTypes,
401
+ list,
402
+ get,
403
+ create,
404
+ multipleItemCreate,
405
+ multipleItemPropsCreate,
406
+ update,
407
+ remove,
408
+ getDataTypes
409
+ };
410
+ };
411
+ exports.ItemService = ItemService;
@@ -0,0 +1,154 @@
1
+ import { ApiServiceType } from '@/lib';
2
+ import { BuildApiListParamsProps, BuildApiGetParamsProps } from '@/lib';
3
+ export declare const locationTypes: {
4
+ readonly location: "location";
5
+ readonly rack: "rack";
6
+ readonly slot: "slot";
7
+ readonly zone: "zone";
8
+ };
9
+ export declare const locationTargetTypes: {
10
+ readonly location: "location";
11
+ readonly rack: "rack";
12
+ readonly slot: "slot";
13
+ readonly zone: "zone";
14
+ };
15
+ export type LocationType = keyof typeof locationTypes;
16
+ export type LocationTargetType = typeof locationTargetTypes[keyof typeof locationTargetTypes];
17
+ export type LocationTargetKey = keyof typeof locationTargetTypes;
18
+ export type LocationServiceProps = ApiServiceType & {
19
+ locationTargetType?: LocationTargetType;
20
+ locationType?: LocationType;
21
+ };
22
+ export type ListLocationProps = BuildApiListParamsProps & {
23
+ locationType?: LocationType;
24
+ locationId?: number;
25
+ };
26
+ export type GetLocationProps = BuildApiGetParamsProps & {
27
+ id: number | string;
28
+ locationType: LocationType;
29
+ };
30
+ type Location = {
31
+ locationName: string;
32
+ locationType?: "administrator" | "retailer";
33
+ personName: string;
34
+ personContact: string;
35
+ personEmail: string;
36
+ address1: string;
37
+ address2: string;
38
+ postcode: string;
39
+ stateId: number;
40
+ countryId: number;
41
+ areaId: number;
42
+ isDefault: boolean;
43
+ status: boolean;
44
+ };
45
+ type Rack = {
46
+ locationId: number;
47
+ rackName: string;
48
+ rackType: "normal" | "reserve";
49
+ sequence: number;
50
+ isDefault: boolean;
51
+ status: boolean;
52
+ };
53
+ type Slot = {
54
+ rackId: number;
55
+ slotId: number;
56
+ slotName: string;
57
+ status: boolean;
58
+ isDefault: boolean;
59
+ sequence: number;
60
+ };
61
+ type Zone = {
62
+ locationId: number;
63
+ zoneName: string;
64
+ sequence: number;
65
+ isDefault: boolean;
66
+ status: boolean;
67
+ };
68
+ export type CreateLocationProps = {
69
+ locationTargetType?: LocationTargetType;
70
+ locationType?: LocationType;
71
+ data: {
72
+ location: Location;
73
+ } | {
74
+ locationId: number;
75
+ rack: Rack;
76
+ slots?: Slot[];
77
+ } | {
78
+ rackId: number;
79
+ slot: Slot;
80
+ } | {
81
+ locationId: number;
82
+ zone: Zone;
83
+ racks: {
84
+ rackId: number;
85
+ }[];
86
+ worker: {
87
+ userId: number;
88
+ }[];
89
+ };
90
+ };
91
+ export type UpdateLocationProps = {
92
+ id: number;
93
+ locationTargetType?: LocationTargetType;
94
+ locationType?: LocationType;
95
+ data: {
96
+ location: Location;
97
+ } | {
98
+ locationId: number;
99
+ rack: Rack;
100
+ slots?: Slot[];
101
+ } | {
102
+ rackId: number;
103
+ slot: Slot;
104
+ } | {
105
+ locationId: number;
106
+ zone: Zone;
107
+ racks: {
108
+ rackId: number;
109
+ }[];
110
+ worker: {
111
+ userId: number;
112
+ }[];
113
+ };
114
+ };
115
+ export type RemoveLocationProps = {
116
+ locationTargetType?: LocationTargetType;
117
+ ids: number[];
118
+ };
119
+ export type GetDataTypeLocationProps = {
120
+ locationType?: LocationType;
121
+ };
122
+ export declare const LocationService: (props?: LocationServiceProps) => {
123
+ list: (props: ListLocationProps) => Promise<{
124
+ status: boolean;
125
+ message: string;
126
+ data?: any;
127
+ }>;
128
+ get: (props: GetLocationProps) => Promise<{
129
+ status: boolean;
130
+ message: string;
131
+ data?: any;
132
+ }>;
133
+ create: ({ data, locationType: overrideLocationType, locationTargetType: overrideLocationTargetType }: CreateLocationProps) => Promise<{
134
+ status: boolean;
135
+ message: string;
136
+ data?: any;
137
+ }>;
138
+ update: ({ id, data, locationType: overrideLocationType, locationTargetType: overrideLocationTargetType }: UpdateLocationProps) => Promise<{
139
+ status: boolean;
140
+ message: string;
141
+ data?: any;
142
+ }>;
143
+ remove: ({ ids, locationTargetType: overrideLocationTargetType }: RemoveLocationProps) => Promise<{
144
+ status: boolean;
145
+ message: string;
146
+ data?: any;
147
+ }>;
148
+ getDataTypes: ({ locationType: overrideLocationType }: GetDataTypeLocationProps) => Promise<{
149
+ status: boolean;
150
+ message: string;
151
+ data?: any;
152
+ }>;
153
+ };
154
+ export {};