u
This commit is contained in:
49
src/api/order.js
Normal file
49
src/api/order.js
Normal file
@@ -0,0 +1,49 @@
|
||||
import { http } from './http.js';
|
||||
|
||||
/**
|
||||
* Sales orders (manifest type = order).
|
||||
* Summary = { id, number, type: 'order', entityId, date }
|
||||
* Line shape same as quote (no transactedAmount).
|
||||
*/
|
||||
export const order = {
|
||||
/**
|
||||
* GET /api/order?offset=0&limit=20
|
||||
* @param {{ offset?: number, limit?: number }} [params]
|
||||
* → { orders: Order[], total: number, offset: number, limit: number }
|
||||
*/
|
||||
list({ offset = 0, limit = 20 } = {}) {
|
||||
const params = new URLSearchParams();
|
||||
if (offset != null) params.set('offset', String(offset));
|
||||
if (limit != null) params.set('limit', String(limit));
|
||||
const qs = params.toString();
|
||||
return http(`/api/order${qs ? `?${qs}` : ''}`);
|
||||
},
|
||||
|
||||
/** GET /api/order/:id → { order: Order } */
|
||||
get(id) {
|
||||
return http(`/api/order/${id}`);
|
||||
},
|
||||
|
||||
/**
|
||||
* POST /api/order
|
||||
* Body: { number, date, entityId?, lines }
|
||||
* → 201 { order: Order }
|
||||
*/
|
||||
create(body) {
|
||||
return http('/api/order', { method: 'POST', body });
|
||||
},
|
||||
|
||||
/**
|
||||
* PATCH /api/order/:id
|
||||
* Body: partial { number?, date?, entityId?, lines? }
|
||||
* → 200 { order: Order }
|
||||
*/
|
||||
update(id, body) {
|
||||
return http(`/api/order/${id}`, { method: 'PATCH', body });
|
||||
},
|
||||
|
||||
/** DELETE /api/order/:id → 204 */
|
||||
delete(id) {
|
||||
return http(`/api/order/${id}`, { method: 'DELETE' });
|
||||
},
|
||||
};
|
||||
Reference in New Issue
Block a user