@osise/api-client 0.0.1 → 0.0.2
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/README.md +82 -0
- package/dist/cjs/api/admin-b2b.js +260 -0
- package/dist/cjs/api/admin-b2b.js.map +1 -0
- package/dist/cjs/api/admin-finance.js +78 -0
- package/dist/cjs/api/admin-finance.js.map +1 -0
- package/dist/cjs/api/admin-payouts.js +54 -0
- package/dist/cjs/api/admin-payouts.js.map +1 -0
- package/dist/cjs/api/admin-qc.js +237 -0
- package/dist/cjs/api/admin-qc.js.map +1 -0
- package/dist/cjs/api/admin.js +280 -24
- package/dist/cjs/api/admin.js.map +1 -1
- package/dist/cjs/api/b2b.js +124 -0
- package/dist/cjs/api/b2b.js.map +1 -0
- package/dist/cjs/api/communication.js +283 -0
- package/dist/cjs/api/communication.js.map +1 -0
- package/dist/cjs/api/index.js +33 -1
- package/dist/cjs/api/index.js.map +1 -1
- package/dist/cjs/api/jobs.js +304 -43
- package/dist/cjs/api/jobs.js.map +1 -1
- package/dist/cjs/api/location.js +91 -0
- package/dist/cjs/api/location.js.map +1 -0
- package/dist/cjs/api/payments.js +129 -0
- package/dist/cjs/api/payments.js.map +1 -0
- package/dist/cjs/api/support.js +148 -0
- package/dist/cjs/api/support.js.map +1 -0
- package/dist/cjs/hooks/index.js +1738 -4
- package/dist/cjs/hooks/index.js.map +1 -1
- package/dist/cjs/index.js +35 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/admin-finance.js +7 -0
- package/dist/cjs/types/admin-finance.js.map +1 -0
- package/dist/cjs/types/admin-invoice.js +7 -0
- package/dist/cjs/types/admin-invoice.js.map +1 -0
- package/dist/cjs/types/admin-payout.js +7 -0
- package/dist/cjs/types/admin-payout.js.map +1 -0
- package/dist/cjs/types/b2b.js +7 -0
- package/dist/cjs/types/b2b.js.map +1 -0
- package/dist/cjs/types/communication.js +90 -0
- package/dist/cjs/types/communication.js.map +1 -0
- package/dist/cjs/types/enums.js +343 -1
- package/dist/cjs/types/enums.js.map +1 -1
- package/dist/cjs/types/index.js +18 -2
- package/dist/cjs/types/index.js.map +1 -1
- package/dist/cjs/types/job.js +1 -0
- package/dist/cjs/types/job.js.map +1 -1
- package/dist/cjs/types/location.js +7 -0
- package/dist/cjs/types/location.js.map +1 -0
- package/dist/cjs/types/payment.js +7 -0
- package/dist/cjs/types/payment.js.map +1 -0
- package/dist/cjs/types/qc.js +8 -0
- package/dist/cjs/types/qc.js.map +1 -0
- package/dist/cjs/types/support.js +7 -0
- package/dist/cjs/types/support.js.map +1 -0
- package/dist/esm/api/admin-b2b.js +255 -0
- package/dist/esm/api/admin-b2b.js.map +1 -0
- package/dist/esm/api/admin-finance.js +74 -0
- package/dist/esm/api/admin-finance.js.map +1 -0
- package/dist/esm/api/admin-payouts.js +50 -0
- package/dist/esm/api/admin-payouts.js.map +1 -0
- package/dist/esm/api/admin-qc.js +233 -0
- package/dist/esm/api/admin-qc.js.map +1 -0
- package/dist/esm/api/admin.js +275 -22
- package/dist/esm/api/admin.js.map +1 -1
- package/dist/esm/api/b2b.js +120 -0
- package/dist/esm/api/b2b.js.map +1 -0
- package/dist/esm/api/communication.js +275 -0
- package/dist/esm/api/communication.js.map +1 -0
- package/dist/esm/api/index.js +10 -1
- package/dist/esm/api/index.js.map +1 -1
- package/dist/esm/api/jobs.js +304 -43
- package/dist/esm/api/jobs.js.map +1 -1
- package/dist/esm/api/location.js +87 -0
- package/dist/esm/api/location.js.map +1 -0
- package/dist/esm/api/payments.js +124 -0
- package/dist/esm/api/payments.js.map +1 -0
- package/dist/esm/api/support.js +143 -0
- package/dist/esm/api/support.js.map +1 -0
- package/dist/esm/hooks/index.js +1552 -3
- package/dist/esm/hooks/index.js.map +1 -1
- package/dist/esm/index.js +36 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/admin-finance.js +6 -0
- package/dist/esm/types/admin-finance.js.map +1 -0
- package/dist/esm/types/admin-invoice.js +6 -0
- package/dist/esm/types/admin-invoice.js.map +1 -0
- package/dist/esm/types/admin-payout.js +6 -0
- package/dist/esm/types/admin-payout.js.map +1 -0
- package/dist/esm/types/b2b.js +6 -0
- package/dist/esm/types/b2b.js.map +1 -0
- package/dist/esm/types/communication.js +87 -0
- package/dist/esm/types/communication.js.map +1 -0
- package/dist/esm/types/enums.js +341 -0
- package/dist/esm/types/enums.js.map +1 -1
- package/dist/esm/types/index.js +18 -2
- package/dist/esm/types/index.js.map +1 -1
- package/dist/esm/types/job.js +1 -0
- package/dist/esm/types/job.js.map +1 -1
- package/dist/esm/types/location.js +6 -0
- package/dist/esm/types/location.js.map +1 -0
- package/dist/esm/types/payment.js +6 -0
- package/dist/esm/types/payment.js.map +1 -0
- package/dist/esm/types/qc.js +7 -0
- package/dist/esm/types/qc.js.map +1 -0
- package/dist/esm/types/support.js +6 -0
- package/dist/esm/types/support.js.map +1 -0
- package/dist/types/api/admin-b2b.d.ts +225 -0
- package/dist/types/api/admin-b2b.d.ts.map +1 -0
- package/dist/types/api/admin-finance.d.ts +52 -0
- package/dist/types/api/admin-finance.d.ts.map +1 -0
- package/dist/types/api/admin-payouts.d.ts +37 -0
- package/dist/types/api/admin-payouts.d.ts.map +1 -0
- package/dist/types/api/admin-qc.d.ts +157 -0
- package/dist/types/api/admin-qc.d.ts.map +1 -0
- package/dist/types/api/admin.d.ts +184 -17
- package/dist/types/api/admin.d.ts.map +1 -1
- package/dist/types/api/b2b.d.ts +77 -0
- package/dist/types/api/b2b.d.ts.map +1 -0
- package/dist/types/api/communication.d.ts +201 -0
- package/dist/types/api/communication.d.ts.map +1 -0
- package/dist/types/api/index.d.ts +10 -1
- package/dist/types/api/index.d.ts.map +1 -1
- package/dist/types/api/jobs.d.ts +197 -38
- package/dist/types/api/jobs.d.ts.map +1 -1
- package/dist/types/api/location.d.ts +76 -0
- package/dist/types/api/location.d.ts.map +1 -0
- package/dist/types/api/payments.d.ts +81 -0
- package/dist/types/api/payments.d.ts.map +1 -0
- package/dist/types/api/support.d.ts +101 -0
- package/dist/types/api/support.d.ts.map +1 -0
- package/dist/types/hooks/index.d.ts +965 -6
- package/dist/types/hooks/index.d.ts.map +1 -1
- package/dist/types/index.d.ts +32 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/types/admin-finance.d.ts +265 -0
- package/dist/types/types/admin-finance.d.ts.map +1 -0
- package/dist/types/types/admin-invoice.d.ts +262 -0
- package/dist/types/types/admin-invoice.d.ts.map +1 -0
- package/dist/types/types/admin-payout.d.ts +180 -0
- package/dist/types/types/admin-payout.d.ts.map +1 -0
- package/dist/types/types/admin.d.ts +1341 -0
- package/dist/types/types/admin.d.ts.map +1 -1
- package/dist/types/types/b2b.d.ts +687 -0
- package/dist/types/types/b2b.d.ts.map +1 -0
- package/dist/types/types/communication.d.ts +670 -0
- package/dist/types/types/communication.d.ts.map +1 -0
- package/dist/types/types/enums.d.ts +311 -0
- package/dist/types/types/enums.d.ts.map +1 -1
- package/dist/types/types/index.d.ts +10 -1
- package/dist/types/types/index.d.ts.map +1 -1
- package/dist/types/types/job.d.ts +576 -55
- package/dist/types/types/job.d.ts.map +1 -1
- package/dist/types/types/location.d.ts +74 -0
- package/dist/types/types/location.d.ts.map +1 -0
- package/dist/types/types/payment.d.ts +281 -0
- package/dist/types/types/payment.d.ts.map +1 -0
- package/dist/types/types/qc.d.ts +589 -0
- package/dist/types/types/qc.d.ts.map +1 -0
- package/dist/types/types/support.d.ts +194 -0
- package/dist/types/types/support.d.ts.map +1 -0
- package/package.json +1 -1
package/dist/esm/api/jobs.js
CHANGED
|
@@ -1,13 +1,42 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Jobs API
|
|
3
|
-
* Handles job requests, quotes, payments, ratings, and
|
|
3
|
+
* Handles job requests, quotes, payments, ratings, disputes, and admin operations
|
|
4
4
|
*/
|
|
5
|
-
import {
|
|
5
|
+
import {
|
|
6
|
+
// Enums
|
|
7
|
+
JobStatus, } from '../types';
|
|
8
|
+
// ==================== Service Categories API ====================
|
|
9
|
+
export class ServiceCategoriesApi {
|
|
10
|
+
constructor(http) {
|
|
11
|
+
this.http = http;
|
|
12
|
+
this.basePath = '/api/v1/services/categories';
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Get all active service categories
|
|
16
|
+
*/
|
|
17
|
+
async list() {
|
|
18
|
+
return this.http.get(this.basePath);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Get a specific service category by ID
|
|
22
|
+
*/
|
|
23
|
+
async get(categoryId) {
|
|
24
|
+
return this.http.get(`${this.basePath}/${categoryId}`);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
// ==================== Consumer Jobs API ====================
|
|
6
28
|
export class JobsApi {
|
|
7
29
|
constructor(http) {
|
|
8
30
|
this.http = http;
|
|
9
31
|
this.basePath = '/api/v1/jobs';
|
|
10
32
|
}
|
|
33
|
+
// ==================== Service Categories & Estimates ====================
|
|
34
|
+
/**
|
|
35
|
+
* Get a price estimate for a service
|
|
36
|
+
*/
|
|
37
|
+
async getEstimate(data) {
|
|
38
|
+
return this.http.post(`${this.basePath}/estimate`, data);
|
|
39
|
+
}
|
|
11
40
|
// ==================== Consumer Job Operations ====================
|
|
12
41
|
/**
|
|
13
42
|
* Create a new job request
|
|
@@ -34,17 +63,42 @@ export class JobsApi {
|
|
|
34
63
|
return this.http.get(this.basePath, params);
|
|
35
64
|
}
|
|
36
65
|
/**
|
|
37
|
-
*
|
|
66
|
+
* Get job status with history
|
|
38
67
|
*/
|
|
39
|
-
async
|
|
40
|
-
return this.http.
|
|
68
|
+
async getStatus(jobId) {
|
|
69
|
+
return this.http.get(`${this.basePath}/${jobId}/status`);
|
|
41
70
|
}
|
|
42
71
|
/**
|
|
43
|
-
* Get job
|
|
72
|
+
* Get job updates/events
|
|
73
|
+
*/
|
|
74
|
+
async getUpdates(jobId) {
|
|
75
|
+
return this.http.get(`${this.basePath}/${jobId}/updates`);
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Get job timeline/history (legacy)
|
|
44
79
|
*/
|
|
45
80
|
async getTimeline(jobId) {
|
|
46
81
|
return this.http.get(`${this.basePath}/${jobId}/timeline`);
|
|
47
82
|
}
|
|
83
|
+
// ==================== Artisan Info ====================
|
|
84
|
+
/**
|
|
85
|
+
* Get assigned artisan for a job
|
|
86
|
+
*/
|
|
87
|
+
async getArtisan(jobId) {
|
|
88
|
+
return this.http.get(`${this.basePath}/${jobId}/artisan`);
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Get ETA for artisan arrival
|
|
92
|
+
*/
|
|
93
|
+
async getEta(jobId) {
|
|
94
|
+
return this.http.get(`${this.basePath}/${jobId}/eta`);
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Get artisan's live location
|
|
98
|
+
*/
|
|
99
|
+
async getLocation(jobId) {
|
|
100
|
+
return this.http.get(`${this.basePath}/${jobId}/location`);
|
|
101
|
+
}
|
|
48
102
|
// ==================== Quote Operations (Consumer) ====================
|
|
49
103
|
/**
|
|
50
104
|
* Get the current quote for a job
|
|
@@ -53,35 +107,53 @@ export class JobsApi {
|
|
|
53
107
|
return this.http.get(`${this.basePath}/${jobId}/quote`);
|
|
54
108
|
}
|
|
55
109
|
/**
|
|
56
|
-
* Approve
|
|
110
|
+
* Approve a quote
|
|
111
|
+
*/
|
|
112
|
+
async approveQuote(jobId, data) {
|
|
113
|
+
return this.http.post(`${this.basePath}/${jobId}/quote/approve`, data || {});
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Reject a quote
|
|
117
|
+
*/
|
|
118
|
+
async rejectQuote(jobId, data) {
|
|
119
|
+
return this.http.post(`${this.basePath}/${jobId}/quote/reject`, data);
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Negotiate a quote
|
|
123
|
+
*/
|
|
124
|
+
async negotiateQuote(jobId, data) {
|
|
125
|
+
return this.http.post(`${this.basePath}/${jobId}/quote/negotiate`, data);
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Approve or reject a quote (legacy)
|
|
57
129
|
*/
|
|
58
130
|
async respondToQuote(jobId, data) {
|
|
59
131
|
return this.http.post(`${this.basePath}/${jobId}/quote/respond`, data);
|
|
60
132
|
}
|
|
61
|
-
// ====================
|
|
133
|
+
// ==================== Job Actions ====================
|
|
62
134
|
/**
|
|
63
|
-
*
|
|
135
|
+
* Cancel a job
|
|
64
136
|
*/
|
|
65
|
-
async
|
|
66
|
-
return this.http.
|
|
137
|
+
async cancel(jobId, data) {
|
|
138
|
+
return this.http.post(`${this.basePath}/${jobId}/cancel`, data);
|
|
67
139
|
}
|
|
68
140
|
/**
|
|
69
|
-
*
|
|
141
|
+
* Reschedule a job
|
|
70
142
|
*/
|
|
71
|
-
async
|
|
72
|
-
return this.http.post(`${this.basePath}/${jobId}/
|
|
143
|
+
async reschedule(jobId, data) {
|
|
144
|
+
return this.http.post(`${this.basePath}/${jobId}/reschedule`, data);
|
|
73
145
|
}
|
|
74
146
|
/**
|
|
75
|
-
*
|
|
147
|
+
* Escalate a job
|
|
76
148
|
*/
|
|
77
|
-
async
|
|
78
|
-
return this.http.post(`${this.basePath}/${jobId}/
|
|
149
|
+
async escalate(jobId, data) {
|
|
150
|
+
return this.http.post(`${this.basePath}/${jobId}/escalate`, data);
|
|
79
151
|
}
|
|
80
152
|
/**
|
|
81
|
-
*
|
|
153
|
+
* Confirm job completion
|
|
82
154
|
*/
|
|
83
|
-
async
|
|
84
|
-
return this.http.post(`${this.basePath}/${jobId}/
|
|
155
|
+
async confirmCompletion(jobId, data) {
|
|
156
|
+
return this.http.post(`${this.basePath}/${jobId}/confirm-completion`, data || {});
|
|
85
157
|
}
|
|
86
158
|
// ==================== Rating Operations ====================
|
|
87
159
|
/**
|
|
@@ -96,6 +168,50 @@ export class JobsApi {
|
|
|
96
168
|
async submitRating(jobId, data) {
|
|
97
169
|
return this.http.post(`${this.basePath}/${jobId}/rating`, data);
|
|
98
170
|
}
|
|
171
|
+
/**
|
|
172
|
+
* Add a tip for the artisan
|
|
173
|
+
*/
|
|
174
|
+
async addTip(jobId, data) {
|
|
175
|
+
return this.http.post(`${this.basePath}/${jobId}/tip`, data);
|
|
176
|
+
}
|
|
177
|
+
// ==================== Issue & Redo ====================
|
|
178
|
+
/**
|
|
179
|
+
* Report an issue with the job
|
|
180
|
+
*/
|
|
181
|
+
async reportIssue(jobId, data) {
|
|
182
|
+
return this.http.post(`${this.basePath}/${jobId}/issue`, data);
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Request a redo for the job
|
|
186
|
+
*/
|
|
187
|
+
async requestRedo(jobId, data) {
|
|
188
|
+
return this.http.post(`${this.basePath}/${jobId}/redo`, data);
|
|
189
|
+
}
|
|
190
|
+
// ==================== Payment Operations ====================
|
|
191
|
+
/**
|
|
192
|
+
* Get payment details for a job
|
|
193
|
+
*/
|
|
194
|
+
async getPayment(jobId) {
|
|
195
|
+
return this.http.get(`${this.basePath}/${jobId}/payment`);
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Initiate payment for a job
|
|
199
|
+
*/
|
|
200
|
+
async initiatePayment(jobId, data) {
|
|
201
|
+
return this.http.post(`${this.basePath}/${jobId}/payment/initiate`, data);
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Verify payment (callback from payment gateway)
|
|
205
|
+
*/
|
|
206
|
+
async verifyPayment(jobId, reference) {
|
|
207
|
+
return this.http.post(`${this.basePath}/${jobId}/payment/verify`, { reference });
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* Mark payment as cash (for cash payments)
|
|
211
|
+
*/
|
|
212
|
+
async markCashPayment(jobId) {
|
|
213
|
+
return this.http.post(`${this.basePath}/${jobId}/payment/cash`);
|
|
214
|
+
}
|
|
99
215
|
// ==================== Dispute Operations ====================
|
|
100
216
|
/**
|
|
101
217
|
* Get dispute for a job
|
|
@@ -110,13 +226,21 @@ export class JobsApi {
|
|
|
110
226
|
return this.http.post(`${this.basePath}/${jobId}/dispute`, data);
|
|
111
227
|
}
|
|
112
228
|
}
|
|
229
|
+
// ==================== Artisan Jobs API ====================
|
|
113
230
|
export class ArtisanJobsApi {
|
|
114
231
|
constructor(http) {
|
|
115
232
|
this.http = http;
|
|
116
233
|
this.basePath = '/api/v1/artisans/jobs';
|
|
117
234
|
}
|
|
235
|
+
// ==================== Job Discovery & Listing ====================
|
|
236
|
+
/**
|
|
237
|
+
* Get available jobs for the artisan
|
|
238
|
+
*/
|
|
239
|
+
async getAvailable(params) {
|
|
240
|
+
return this.http.get(`${this.basePath}/available`, params);
|
|
241
|
+
}
|
|
118
242
|
/**
|
|
119
|
-
* Get assigned jobs
|
|
243
|
+
* Get artisan's assigned jobs (paginated with filters)
|
|
120
244
|
*/
|
|
121
245
|
async list(params) {
|
|
122
246
|
return this.http.get(this.basePath, params);
|
|
@@ -128,47 +252,62 @@ export class ArtisanJobsApi {
|
|
|
128
252
|
return this.http.get(`${this.basePath}/${jobId}`);
|
|
129
253
|
}
|
|
130
254
|
/**
|
|
131
|
-
*
|
|
255
|
+
* Get artisan's job history
|
|
132
256
|
*/
|
|
133
|
-
async
|
|
134
|
-
return this.http.
|
|
257
|
+
async getHistory(params) {
|
|
258
|
+
return this.http.get(`${this.basePath}/history`, params);
|
|
135
259
|
}
|
|
260
|
+
// ==================== Job Acceptance ====================
|
|
136
261
|
/**
|
|
137
|
-
*
|
|
262
|
+
* Accept an available job
|
|
138
263
|
*/
|
|
139
|
-
async
|
|
140
|
-
return this.http.post(`${this.basePath}/${jobId}/
|
|
264
|
+
async accept(jobId, data) {
|
|
265
|
+
return this.http.post(`${this.basePath}/${jobId}/accept`, data || {});
|
|
141
266
|
}
|
|
142
267
|
/**
|
|
143
|
-
*
|
|
268
|
+
* Decline an available job
|
|
144
269
|
*/
|
|
145
|
-
async
|
|
146
|
-
return this.http.
|
|
270
|
+
async decline(jobId, data) {
|
|
271
|
+
return this.http.post(`${this.basePath}/${jobId}/decline`, data);
|
|
147
272
|
}
|
|
148
273
|
/**
|
|
149
|
-
*
|
|
274
|
+
* Acknowledge an auto-assigned job
|
|
150
275
|
*/
|
|
151
|
-
async
|
|
152
|
-
return this.
|
|
276
|
+
async acknowledge(jobId, data) {
|
|
277
|
+
return this.http.post(`${this.basePath}/${jobId}/acknowledge`, data || {});
|
|
278
|
+
}
|
|
279
|
+
// ==================== Job Progress ====================
|
|
280
|
+
/**
|
|
281
|
+
* Mark as en route to job location
|
|
282
|
+
*/
|
|
283
|
+
async markEnRoute(jobId, data) {
|
|
284
|
+
return this.http.post(`${this.basePath}/${jobId}/en-route`, data);
|
|
153
285
|
}
|
|
154
286
|
/**
|
|
155
287
|
* Mark arrival at job location (GPS verified)
|
|
156
288
|
*/
|
|
157
|
-
async markArrived(jobId,
|
|
158
|
-
return this.
|
|
289
|
+
async markArrived(jobId, data) {
|
|
290
|
+
return this.http.post(`${this.basePath}/${jobId}/arrive`, data);
|
|
159
291
|
}
|
|
160
292
|
/**
|
|
161
|
-
*
|
|
293
|
+
* Update location while en route
|
|
162
294
|
*/
|
|
163
|
-
async
|
|
164
|
-
return this.
|
|
295
|
+
async updateLocation(jobId, data) {
|
|
296
|
+
return this.http.patch(`${this.basePath}/${jobId}/location`, data);
|
|
297
|
+
}
|
|
298
|
+
/**
|
|
299
|
+
* Send a progress update
|
|
300
|
+
*/
|
|
301
|
+
async sendUpdate(jobId, data) {
|
|
302
|
+
return this.http.post(`${this.basePath}/${jobId}/update`, data);
|
|
165
303
|
}
|
|
166
304
|
/**
|
|
167
305
|
* Mark job as completed
|
|
168
306
|
*/
|
|
169
|
-
async
|
|
170
|
-
return this.
|
|
307
|
+
async markComplete(jobId, data) {
|
|
308
|
+
return this.http.post(`${this.basePath}/${jobId}/complete`, data || {});
|
|
171
309
|
}
|
|
310
|
+
// ==================== Quote Operations ====================
|
|
172
311
|
/**
|
|
173
312
|
* Submit a quote for the job
|
|
174
313
|
*/
|
|
@@ -182,10 +321,42 @@ export class ArtisanJobsApi {
|
|
|
182
321
|
return this.http.put(`${this.basePath}/${jobId}/quote`, data);
|
|
183
322
|
}
|
|
184
323
|
/**
|
|
185
|
-
*
|
|
324
|
+
* Request additional materials
|
|
186
325
|
*/
|
|
187
|
-
async
|
|
188
|
-
return this.http.post(`${this.basePath}/${jobId}/
|
|
326
|
+
async requestMaterials(jobId, data) {
|
|
327
|
+
return this.http.post(`${this.basePath}/${jobId}/materials`, data);
|
|
328
|
+
}
|
|
329
|
+
// ==================== Payment ====================
|
|
330
|
+
/**
|
|
331
|
+
* Confirm cash payment received
|
|
332
|
+
*/
|
|
333
|
+
async confirmCashReceived(jobId, data) {
|
|
334
|
+
return this.http.post(`${this.basePath}/${jobId}/cash-received`, data);
|
|
335
|
+
}
|
|
336
|
+
// ==================== Legacy Methods (for backwards compatibility) ====================
|
|
337
|
+
/**
|
|
338
|
+
* Update job status (legacy)
|
|
339
|
+
*/
|
|
340
|
+
async updateStatus(jobId, data) {
|
|
341
|
+
return this.http.patch(`${this.basePath}/${jobId}/status`, data);
|
|
342
|
+
}
|
|
343
|
+
/**
|
|
344
|
+
* Start traveling to job location (legacy helper)
|
|
345
|
+
*/
|
|
346
|
+
async startEnRoute(jobId) {
|
|
347
|
+
return this.updateStatus(jobId, { status: JobStatus.ArtisanEnRoute });
|
|
348
|
+
}
|
|
349
|
+
/**
|
|
350
|
+
* Start work on the job (legacy helper)
|
|
351
|
+
*/
|
|
352
|
+
async startWork(jobId) {
|
|
353
|
+
return this.updateStatus(jobId, { status: JobStatus.InProgress });
|
|
354
|
+
}
|
|
355
|
+
/**
|
|
356
|
+
* Mark job as completed (legacy helper)
|
|
357
|
+
*/
|
|
358
|
+
async complete(jobId, notes) {
|
|
359
|
+
return this.updateStatus(jobId, { status: JobStatus.Completed, notes });
|
|
189
360
|
}
|
|
190
361
|
/**
|
|
191
362
|
* Respond to a consumer review
|
|
@@ -194,4 +365,94 @@ export class ArtisanJobsApi {
|
|
|
194
365
|
return this.http.post(`${this.basePath}/${jobId}/review/respond`, { response });
|
|
195
366
|
}
|
|
196
367
|
}
|
|
368
|
+
// ==================== Admin Jobs API ====================
|
|
369
|
+
export class AdminJobsApi {
|
|
370
|
+
constructor(http) {
|
|
371
|
+
this.http = http;
|
|
372
|
+
this.basePath = '/api/v1/admin/jobs';
|
|
373
|
+
}
|
|
374
|
+
// ==================== Job Queue ====================
|
|
375
|
+
/**
|
|
376
|
+
* Get the job queue for dispatch
|
|
377
|
+
*/
|
|
378
|
+
async getQueue(params) {
|
|
379
|
+
return this.http.get(`${this.basePath}/queue`, params);
|
|
380
|
+
}
|
|
381
|
+
/**
|
|
382
|
+
* Get a specific job with admin details
|
|
383
|
+
*/
|
|
384
|
+
async get(jobId) {
|
|
385
|
+
return this.http.get(`${this.basePath}/${jobId}`);
|
|
386
|
+
}
|
|
387
|
+
/**
|
|
388
|
+
* Get all active jobs
|
|
389
|
+
*/
|
|
390
|
+
async getActive(params) {
|
|
391
|
+
return this.http.get(`${this.basePath}/active`, params);
|
|
392
|
+
}
|
|
393
|
+
// ==================== Artisan Selection ====================
|
|
394
|
+
/**
|
|
395
|
+
* Get available artisans for a job
|
|
396
|
+
*/
|
|
397
|
+
async getAvailableArtisans(jobId) {
|
|
398
|
+
return this.http.get(`${this.basePath}/${jobId}/artisans/available`);
|
|
399
|
+
}
|
|
400
|
+
/**
|
|
401
|
+
* Get system-suggested artisans for a job
|
|
402
|
+
*/
|
|
403
|
+
async getSuggestedArtisans(jobId) {
|
|
404
|
+
return this.http.get(`${this.basePath}/${jobId}/artisans/suggested`);
|
|
405
|
+
}
|
|
406
|
+
// ==================== Job Assignment ====================
|
|
407
|
+
/**
|
|
408
|
+
* Assign an artisan to a job (manual dispatch)
|
|
409
|
+
*/
|
|
410
|
+
async assignArtisan(jobId, data) {
|
|
411
|
+
return this.http.post(`${this.basePath}/${jobId}/assign`, data);
|
|
412
|
+
}
|
|
413
|
+
/**
|
|
414
|
+
* Broadcast a job to multiple artisans
|
|
415
|
+
*/
|
|
416
|
+
async broadcast(jobId, data) {
|
|
417
|
+
return this.http.post(`${this.basePath}/${jobId}/broadcast`, data);
|
|
418
|
+
}
|
|
419
|
+
/**
|
|
420
|
+
* Reassign a job to a different artisan
|
|
421
|
+
*/
|
|
422
|
+
async reassign(jobId, data) {
|
|
423
|
+
return this.http.post(`${this.basePath}/${jobId}/reassign`, data);
|
|
424
|
+
}
|
|
425
|
+
// ==================== Job Management ====================
|
|
426
|
+
/**
|
|
427
|
+
* Update job priority
|
|
428
|
+
*/
|
|
429
|
+
async updatePriority(jobId, data) {
|
|
430
|
+
return this.http.patch(`${this.basePath}/${jobId}/priority`, data);
|
|
431
|
+
}
|
|
432
|
+
/**
|
|
433
|
+
* Add an internal note to a job
|
|
434
|
+
*/
|
|
435
|
+
async addNote(jobId, data) {
|
|
436
|
+
return this.http.post(`${this.basePath}/${jobId}/notes`, data);
|
|
437
|
+
}
|
|
438
|
+
/**
|
|
439
|
+
* Update job ETA
|
|
440
|
+
*/
|
|
441
|
+
async updateEta(jobId, data) {
|
|
442
|
+
return this.http.patch(`${this.basePath}/${jobId}/eta`, data);
|
|
443
|
+
}
|
|
444
|
+
// ==================== Contact Logging ====================
|
|
445
|
+
/**
|
|
446
|
+
* Log a contact attempt with the customer
|
|
447
|
+
*/
|
|
448
|
+
async logCustomerContact(jobId, data) {
|
|
449
|
+
return this.http.post(`${this.basePath}/${jobId}/contact-customer`, data);
|
|
450
|
+
}
|
|
451
|
+
/**
|
|
452
|
+
* Log a contact attempt with the artisan
|
|
453
|
+
*/
|
|
454
|
+
async logArtisanContact(jobId, data) {
|
|
455
|
+
return this.http.post(`${this.basePath}/${jobId}/contact-artisan`, data);
|
|
456
|
+
}
|
|
457
|
+
}
|
|
197
458
|
//# sourceMappingURL=jobs.js.map
|
package/dist/esm/api/jobs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jobs.js","sourceRoot":"","sources":["../../../src/api/jobs.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"jobs.js","sourceRoot":"","sources":["../../../src/api/jobs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO;AAiFL,QAAQ;AACR,SAAS,GACV,MAAM,UAAU,CAAC;AAElB,mEAAmE;AAEnE,MAAM,OAAO,oBAAoB;IAG/B,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;QAF5B,aAAQ,GAAG,6BAA6B,CAAC;IAEV,CAAC;IAEjD;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAuB,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,UAAkB;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAqB,GAAG,IAAI,CAAC,QAAQ,IAAI,UAAU,EAAE,CAAC,CAAC;IAC7E,CAAC;CACF;AAED,8DAA8D;AAE9D,MAAM,OAAO,OAAO;IAGlB,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;QAF5B,aAAQ,GAAG,cAAc,CAAC;IAEK,CAAC;IAEjD,2EAA2E;IAE3E;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,IAAwB;QACxC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAsB,GAAG,IAAI,CAAC,QAAQ,WAAW,EAAE,IAAI,CAAC,CAAC;IAChF,CAAC;IAED,oEAAoE;IAEpE;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,IAAwC;QACnD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAA+B,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC3E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,KAAa;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,IAAyB;QACnD,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,EAAE,EAAE,IAAI,CAAC,CAAC;IAC1E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,MAAqB;QAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAA8B,IAAI,CAAC,QAAQ,EAAE,MAA+D,CAAC,CAAC;IACpI,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,KAAa;QAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,SAAS,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,KAAa;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAiB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,UAAU,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,KAAa;QAC7B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAwB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,WAAW,CAAC,CAAC;IACpF,CAAC;IAED,yDAAyD;IAEzD;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,KAAa;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAmB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,UAAU,CAAC,CAAC;IAC9E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,KAAa;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAS,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,MAAM,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,KAAa;QAC7B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAc,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,WAAW,CAAC,CAAC;IAC1E,CAAC;IAED,wEAAwE;IAExE;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAc,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,QAAQ,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,KAAa,EAAE,IAAsB;QACtD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAc,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,gBAAgB,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,IAAoB;QACnD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAc,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,eAAe,EAAE,IAAI,CAAC,CAAC;IACrF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,KAAa,EAAE,IAAuB;QACzD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAc,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,kBAAkB,EAAE,IAAI,CAAC,CAAC;IACxF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,KAAa,EAAE,IAAsB;QACxD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAc,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,gBAAgB,EAAE,IAAI,CAAC,CAAC;IACtF,CAAC;IAED,wDAAwD;IAExD;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,IAAkB;QAC5C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,SAAS,EAAE,IAAI,CAAC,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,KAAa,EAAE,IAAsB;QACpD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,aAAa,EAAE,IAAI,CAAC,CAAC;IACpF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,KAAa,EAAE,IAAoB;QAChD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,WAAW,EAAE,IAAI,CAAC,CAAC;IAClF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,KAAa,EAAE,IAA2B;QAChE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,qBAAqB,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IAClG,CAAC;IAED,8DAA8D;IAE9D;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,KAAa;QAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,SAAS,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,KAAa,EAAE,IAAuC;QACvE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,SAAS,EAAE,IAAI,CAAC,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,IAAe;QACzC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,MAAM,EAAE,IAAI,CAAC,CAAC;IAC7E,CAAC;IAED,yDAAyD;IAEzD;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,IAAoB;QACnD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC/E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,IAAoB;QACnD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,OAAO,EAAE,IAAI,CAAC,CAAC;IAC9E,CAAC;IAED,+DAA+D;IAE/D;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,KAAa;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAgB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,UAAU,CAAC,CAAC;IAC3E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,KAAa,EAAE,IAAwB;QAC3D,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAqB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,mBAAmB,EAAE,IAAI,CAAC,CAAC;IAChG,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,KAAa,EAAE,SAAiB;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAgB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,iBAAiB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;IAClG,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,KAAa;QACjC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAgB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,eAAe,CAAC,CAAC;IACjF,CAAC;IAED,+DAA+D;IAE/D;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,KAAa;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAgB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,UAAU,CAAC,CAAC;IAC3E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,KAAa,EAAE,IAAsB;QACvD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAgB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,UAAU,EAAE,IAAI,CAAC,CAAC;IAClF,CAAC;CACF;AAED,6DAA6D;AAE7D,MAAM,OAAO,cAAc;IAGzB,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;QAF5B,aAAQ,GAAG,uBAAuB,CAAC;IAEJ,CAAC;IAEjD,oEAAoE;IAEpE;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,MAA4B;QAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAA6B,GAAG,IAAI,CAAC,QAAQ,YAAY,EAAE,MAA+D,CAAC,CAAC;IAClJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,MAA4B;QACrC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAA6B,IAAI,CAAC,QAAQ,EAAE,MAA+D,CAAC,CAAC;IACnI,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,KAAa;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAsB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,MAA4B;QAC3C,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAA6B,GAAG,IAAI,CAAC,QAAQ,UAAU,EAAE,MAA+D,CAAC,CAAC;IAChJ,CAAC;IAED,2DAA2D;IAE3D;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,IAAmB;QAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAsB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IAC7F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,KAAa,EAAE,IAAmB;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAO,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,UAAU,EAAE,IAAI,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,IAAwB;QACvD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAsB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,cAAc,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IAClG,CAAC;IAED,yDAAyD;IAEzD;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,IAAoB;QACnD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAsB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,WAAW,EAAE,IAAI,CAAC,CAAC;IACzF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,IAAoB;QACnD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAsB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,SAAS,EAAE,IAAI,CAAC,CAAC;IACvF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,KAAa,EAAE,IAAyD;QAC3F,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAO,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,WAAW,EAAE,IAAI,CAAC,CAAC;IAC3E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,KAAa,EAAE,IAA0B;QACxD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAsB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,SAAS,EAAE,IAAI,CAAC,CAAC;IACvF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,KAAa,EAAE,IAAyB;QACzD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAsB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED,6DAA6D;IAE7D;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,IAAqC;QACpE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAc,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC9E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,IAAqC;QACpE,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAc,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CAAC,KAAa,EAAE,IAAyB;QAC7D,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAc,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,YAAY,EAAE,IAAI,CAAC,CAAC;IAClF,CAAC;IAED,oDAAoD;IAEpD;;OAEG;IACH,KAAK,CAAC,mBAAmB,CAAC,KAAa,EAAE,IAA4B;QACnE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAsB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,gBAAgB,EAAE,IAAI,CAAC,CAAC;IAC9F,CAAC;IAED,yFAAyF;IAEzF;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,KAAa,EAAE,IAAwB;QACxD,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAgB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,SAAS,EAAE,IAAI,CAAC,CAAC;IAClF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,KAAa;QAC9B,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,cAAc,EAAE,CAAC,CAAC;IACxE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,KAAa;QAC3B,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC;IACpE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,KAAa,EAAE,KAAc;QAC1C,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,KAAa,EAAE,QAAgB;QACnD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAO,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,iBAAiB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IACxF,CAAC;CACF;AAED,2DAA2D;AAE3D,MAAM,OAAO,YAAY;IAGvB,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;QAF5B,aAAQ,GAAG,oBAAoB,CAAC;IAED,CAAC;IAEjD,sDAAsD;IAEtD;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,MAA0B;QACvC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAA+B,GAAG,IAAI,CAAC,QAAQ,QAAQ,EAAE,MAA+D,CAAC,CAAC;IAChJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,KAAa;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAoB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,MAA4B;QAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAA+B,GAAG,IAAI,CAAC,QAAQ,SAAS,EAAE,MAA+D,CAAC,CAAC;IACjJ,CAAC;IAED,8DAA8D;IAE9D;;OAEG;IACH,KAAK,CAAC,oBAAoB,CAAC,KAAa;QACtC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAwB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,qBAAqB,CAAC,CAAC;IAC9F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB,CAAC,KAAa;QACtC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAwB,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,qBAAqB,CAAC,CAAC;IAC9F,CAAC;IAED,2DAA2D;IAE3D;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,KAAa,EAAE,IAAsB;QACvD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,SAAS,EAAE,IAAI,CAAC,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,KAAa,EAAE,IAAqB;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,YAAY,EAAE,IAAI,CAAC,CAAC;IACnF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,KAAa,EAAE,IAAoB;QAChD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,WAAW,EAAE,IAAI,CAAC,CAAC;IAClF,CAAC;IAED,2DAA2D;IAE3D;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,KAAa,EAAE,IAA0B;QAC5D,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,WAAW,EAAE,IAAI,CAAC,CAAC;IACnF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,KAAa,EAAE,IAAmB;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAa,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,KAAa,EAAE,IAAqB;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,MAAM,EAAE,IAAI,CAAC,CAAC;IAC9E,CAAC;IAED,4DAA4D;IAE5D;;OAEG;IACH,KAAK,CAAC,kBAAkB,CAAC,KAAa,EAAE,IAAmB;QACzD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAa,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,mBAAmB,EAAE,IAAI,CAAC,CAAC;IACxF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,KAAa,EAAE,IAAmB;QACxD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAa,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,kBAAkB,EAAE,IAAI,CAAC,CAAC;IACvF,CAAC;CACF"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Location API
|
|
3
|
+
* Handles geocoding, reverse geocoding, distance calculation, and service area queries
|
|
4
|
+
*/
|
|
5
|
+
export class LocationApi {
|
|
6
|
+
constructor(http) {
|
|
7
|
+
this.http = http;
|
|
8
|
+
this.basePath = '/api/v1/location';
|
|
9
|
+
}
|
|
10
|
+
// ==================== Geocoding ====================
|
|
11
|
+
/**
|
|
12
|
+
* Geocode an address to coordinates
|
|
13
|
+
*
|
|
14
|
+
* Converts a street address to latitude/longitude coordinates.
|
|
15
|
+
* Note: Full geocoding requires external service integration.
|
|
16
|
+
*
|
|
17
|
+
* @param data - The address to geocode
|
|
18
|
+
* @returns Geocoding result with coordinates
|
|
19
|
+
*/
|
|
20
|
+
async geocode(data) {
|
|
21
|
+
return this.http.post(`${this.basePath}/geocode`, data);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Reverse geocode coordinates to an address
|
|
25
|
+
*
|
|
26
|
+
* Converts latitude/longitude coordinates to an address.
|
|
27
|
+
* Returns the nearest known service area information.
|
|
28
|
+
*
|
|
29
|
+
* @param data - The coordinates to reverse geocode
|
|
30
|
+
* @returns Reverse geocoding result with address components
|
|
31
|
+
*/
|
|
32
|
+
async reverseGeocode(data) {
|
|
33
|
+
return this.http.post(`${this.basePath}/reverse-geocode`, data);
|
|
34
|
+
}
|
|
35
|
+
// ==================== Distance Calculation ====================
|
|
36
|
+
/**
|
|
37
|
+
* Calculate distance between two points
|
|
38
|
+
*
|
|
39
|
+
* Calculates the straight-line (Haversine) distance between two coordinates.
|
|
40
|
+
* Also provides an estimated travel time based on average city driving speed.
|
|
41
|
+
*
|
|
42
|
+
* @param data - The origin and destination coordinates
|
|
43
|
+
* @returns Distance calculation result
|
|
44
|
+
*/
|
|
45
|
+
async calculateDistance(data) {
|
|
46
|
+
return this.http.post(`${this.basePath}/distance`, data);
|
|
47
|
+
}
|
|
48
|
+
// ==================== Service Areas ====================
|
|
49
|
+
/**
|
|
50
|
+
* Get all service areas
|
|
51
|
+
*
|
|
52
|
+
* Returns a list of all active service areas where Osise operates.
|
|
53
|
+
* Can be filtered by state or city.
|
|
54
|
+
*
|
|
55
|
+
* @param params - Optional filters (state, city)
|
|
56
|
+
* @returns List of service areas
|
|
57
|
+
*/
|
|
58
|
+
async getServiceAreas(params) {
|
|
59
|
+
return this.http.get(`${this.basePath}/service-areas`, params);
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Find nearby service areas
|
|
63
|
+
*
|
|
64
|
+
* Returns service areas within a specified radius of the given coordinates.
|
|
65
|
+
* Useful for determining if a location is serviceable.
|
|
66
|
+
*
|
|
67
|
+
* @param data - The location and search radius
|
|
68
|
+
* @returns List of nearby service areas with distances
|
|
69
|
+
*/
|
|
70
|
+
async getNearbyAreas(data) {
|
|
71
|
+
return this.http.post(`${this.basePath}/service-areas/nearby`, data);
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Check if a location is within a service area
|
|
75
|
+
*
|
|
76
|
+
* Checks if the given coordinates are within a supported service area.
|
|
77
|
+
* Returns the matching area if found, or nearby areas if not.
|
|
78
|
+
*
|
|
79
|
+
* @param latitude - Latitude coordinate
|
|
80
|
+
* @param longitude - Longitude coordinate
|
|
81
|
+
* @returns Service area check result
|
|
82
|
+
*/
|
|
83
|
+
async checkServiceArea(latitude, longitude) {
|
|
84
|
+
return this.http.get(`${this.basePath}/service-areas/check`, { latitude, longitude });
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=location.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"location.js","sourceRoot":"","sources":["../../../src/api/location.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAiBH,MAAM,OAAO,WAAW;IAGpB,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;QAF5B,aAAQ,GAAG,kBAAkB,CAAC;IAEE,CAAC;IAElD,sDAAsD;IAEtD;;;;;;;;OAQG;IACH,KAAK,CAAC,OAAO,CAAC,IAAuB;QACjC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAqB,GAAG,IAAI,CAAC,QAAQ,UAAU,EAAE,IAAI,CAAC,CAAC;IAChF,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,cAAc,CAAC,IAA8B;QAC/C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAA4B,GAAG,IAAI,CAAC,QAAQ,kBAAkB,EAAE,IAAI,CAAC,CAAC;IAC/F,CAAC;IAED,iEAAiE;IAEjE;;;;;;;;OAQG;IACH,KAAK,CAAC,iBAAiB,CAAC,IAAiC;QACrD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAA+B,GAAG,IAAI,CAAC,QAAQ,WAAW,EAAE,IAAI,CAAC,CAAC;IAC3F,CAAC;IAED,0DAA0D;IAE1D;;;;;;;;OAQG;IACH,KAAK,CAAC,eAAe,CAAC,MAA0C;QAC5D,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAChB,GAAG,IAAI,CAAC,QAAQ,gBAAgB,EAChC,MAA+D,CAClE,CAAC;IACN,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,cAAc,CAAC,IAA8B;QAC/C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAyB,GAAG,IAAI,CAAC,QAAQ,uBAAuB,EAAE,IAAI,CAAC,CAAC;IACjG,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,gBAAgB,CAAC,QAAgB,EAAE,SAAiB;QACtD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAChB,GAAG,IAAI,CAAC,QAAQ,sBAAsB,EACtC,EAAE,QAAQ,EAAE,SAAS,EAAE,CAC1B,CAAC;IACN,CAAC;CACJ"}
|