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,285 @@
1
+ import { ApiService, ApiServiceType } from '@/lib';
2
+
3
+ import {
4
+ buildApiListUrl,
5
+ BuildApiListParamsProps,
6
+ buildApiGetUrl,
7
+ BuildApiGetParamsProps,
8
+ filterOperatorTypes
9
+ } from '@/lib';
10
+
11
+ export const logisticTypes = {
12
+ transporter: "transporter"
13
+ } as const
14
+
15
+ export const logisticTargetTypes = {
16
+ transporter: "transporter"
17
+ } as const
18
+
19
+ export const transportTypes = {
20
+ ownVehicle: "Own Vehicle",
21
+ courier: "Courier",
22
+ etc: "ETC"
23
+ } as const
24
+
25
+ export type TransportType = typeof transportTypes[keyof typeof transportTypes]
26
+
27
+ // export type LogisticType = keyof typeof logisticTypes
28
+ export type LogisticType = typeof logisticTypes[keyof typeof logisticTypes]
29
+ export type LogisticTargetType = typeof logisticTargetTypes[keyof typeof logisticTargetTypes]
30
+ export type LogisticTargetKey = keyof typeof logisticTargetTypes
31
+
32
+ export type LogisticServiceProps = ApiServiceType & {
33
+ logisticTargetType?: LogisticTargetType
34
+ logisticType?: LogisticType
35
+ };
36
+
37
+ export type ListLogisticProps = BuildApiListParamsProps & {
38
+ logisticType?: LogisticType
39
+ }
40
+
41
+ export type GetLogisticProps = BuildApiGetParamsProps & {
42
+ id: number | string
43
+ logisticType?: LogisticType
44
+ }
45
+
46
+ export type CreateLogisticProps = {
47
+ logisticTargetType?: LogisticTargetType
48
+ logisticType?: LogisticType
49
+ data:
50
+ // for Transporter
51
+ {
52
+ transporter: {
53
+ label: string,
54
+ type: TransportType,
55
+ description: string
56
+ remark: string
57
+ status: boolean
58
+ },
59
+ props: {
60
+ vehiclePlateNo: string,
61
+ vehicleModel: string,
62
+ vehicleBrand: string
63
+ }
64
+ }
65
+ }
66
+
67
+ export type UpdateLogisticProps = {
68
+ id: number
69
+ logisticTargetType?: LogisticTargetType
70
+ logisticType?: LogisticType
71
+ data:
72
+ // for Transporter
73
+ {
74
+ transporter: {
75
+ label: string,
76
+ type: TransportType
77
+ description: string
78
+ remark: string
79
+ status: boolean
80
+ },
81
+ props: {
82
+ vehiclePlateNo: string,
83
+ vehicleModel: string,
84
+ vehicleBrand: string
85
+ }
86
+ }
87
+ }
88
+
89
+ export type RemoveLogisticProps = {
90
+ logisticTargetType?: LogisticTargetType
91
+ ids: number[]
92
+ }
93
+
94
+ export type GetDataTypeLogisticProps = {
95
+ logisticType?: LogisticType
96
+ }
97
+
98
+ const getCreatePayload = (logisticType: LogisticType, data: CreateLogisticProps["data"]) => {
99
+
100
+ if (logisticType === "transporter") {
101
+ return {
102
+ transporter: {
103
+ label: data.transporter.label,
104
+ type: data.transporter.type,
105
+ description: data.transporter.description,
106
+ remark: data.transporter.remark,
107
+ status: (data.transporter.status === true) ? 1 : 0
108
+ },
109
+ props: {
110
+ vehicle_plate_no: data.props.vehiclePlateNo,
111
+ vehicle_model: data.props.vehicleModel,
112
+ vehicle_brand: data.props.vehicleBrand
113
+ }
114
+ }
115
+ }
116
+
117
+ }
118
+
119
+ const getUpdatePayload = (logisticType: LogisticType, data: UpdateLogisticProps["data"]) => {
120
+
121
+ if (logisticType === "transporter") {
122
+ return {
123
+ transporter: {
124
+ label: data.transporter.label,
125
+ type: data.transporter.type,
126
+ description: data.transporter.description,
127
+ remark: data.transporter.remark,
128
+ status: (data.transporter.status === true) ? 1 : 0
129
+ },
130
+ props: {
131
+ vehicle_plate_no: data.props.vehiclePlateNo,
132
+ vehicle_model: data.props.vehicleModel,
133
+ vehicle_brand: data.props.vehicleBrand
134
+ }
135
+ }
136
+ }
137
+
138
+ }
139
+
140
+ export const LogisticService = (props?: LogisticServiceProps) => {
141
+
142
+ const { logisticType = "transporter", logisticTargetType, ...rest } = props ?? {};
143
+
144
+ const { makeCall } = ApiService(rest?.customToken ? { customToken: rest.customToken } : {})
145
+
146
+ const endpoint1 = "logistic";
147
+ const endpoint2 = "logistics"
148
+
149
+ const list = async (props: ListLogisticProps) => {
150
+
151
+ const { logisticType: overrideLogisticType } = props;
152
+
153
+ const url = buildApiListUrl(
154
+ `${endpoint2}/${overrideLogisticType || logisticType}`,
155
+ props
156
+ );
157
+
158
+ const response = await makeCall({
159
+ url,
160
+ method: "get",
161
+ payload: {},
162
+ // configuration
163
+ });
164
+
165
+ return response;
166
+
167
+ }
168
+
169
+ const get = async (props: GetLogisticProps) => {
170
+
171
+ const { id, logisticType: overrideLogisticType } = props;
172
+
173
+ const url = buildApiGetUrl(
174
+ `${endpoint1}/${overrideLogisticType || logisticType}/${id}`,
175
+ props
176
+ );
177
+
178
+ const response = await makeCall({
179
+ url,
180
+ method: "get",
181
+ payload: {},
182
+ // configuration
183
+ });
184
+
185
+ return response;
186
+
187
+ }
188
+
189
+ const create = async ({ data, logisticType: overrideLogisticType, logisticTargetType: overrideLogisticTargetType }: CreateLogisticProps) => {
190
+
191
+ let _logisticType = overrideLogisticType || logisticType
192
+
193
+ let payload: any = getCreatePayload(_logisticType, data)
194
+
195
+ let url = `${endpoint1}`;
196
+
197
+ let postData = {
198
+ scope: {
199
+ target: overrideLogisticTargetType || logisticTargetType,
200
+ action: "",
201
+ },
202
+ payload
203
+ }
204
+
205
+ const response = await makeCall({
206
+ url,
207
+ method: "post",
208
+ payload: postData
209
+ });
210
+
211
+ return response;
212
+
213
+ }
214
+
215
+ const update = async ({ id, data, logisticType: overrideLogisticType, logisticTargetType: overrideLogisticTargetType }: UpdateLogisticProps) => {
216
+
217
+ let url = `${endpoint1}/${id}`
218
+
219
+ let _logisticType = overrideLogisticType || logisticType
220
+
221
+ let payload: any = getUpdatePayload(_logisticType, data)
222
+
223
+ const postData = {
224
+ scope: {
225
+ target: overrideLogisticTargetType || logisticTargetType,
226
+ action: "",
227
+ },
228
+ payload
229
+ }
230
+
231
+ const response = await makeCall({
232
+ url,
233
+ method: "put",
234
+ payload: postData
235
+ });
236
+
237
+ return response;
238
+
239
+ }
240
+
241
+ const remove = async ({ ids, logisticTargetType: overrideLogisticTargetType }: RemoveLogisticProps) => {
242
+
243
+ let url = `${endpoint2}/delete`
244
+
245
+ const postData = {
246
+ scope: {
247
+ target: overrideLogisticTargetType || logisticTargetType,
248
+ },
249
+ payload: {
250
+ ids
251
+ }
252
+ }
253
+
254
+ const response = await makeCall({
255
+ url,
256
+ method: "post",
257
+ payload: postData
258
+ });
259
+
260
+ return response;
261
+
262
+ }
263
+
264
+ const getDataTypes = async ({ logisticType: overrideLogisticType }: GetDataTypeLogisticProps) => {
265
+
266
+ let url = `${endpoint1}/data_types/${overrideLogisticType || logisticType}`
267
+
268
+ const response = await makeCall({
269
+ url,
270
+ method: "get",
271
+ });
272
+
273
+ return response;
274
+
275
+ }
276
+
277
+ return {
278
+ list,
279
+ get,
280
+ create,
281
+ update,
282
+ remove,
283
+ getDataTypes
284
+ };
285
+ }