mirror of
https://gitlab.com/mbugroup/lti-web-client.git
synced 2026-05-21 05:45:46 +00:00
refactor(FE): Move Movement FormData into API service
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import { BaseApiService } from '@/services/api/base';
|
||||
import { BaseApiResponse } from '@/types/api/api-general';
|
||||
import {
|
||||
CreateProductWarehousePayload,
|
||||
ProductWarehouse,
|
||||
@@ -20,11 +21,38 @@ export const ProductWarehouseApi = new BaseApiService<
|
||||
UpdateProductWarehousePayload
|
||||
>('/inventory/product-warehouses');
|
||||
|
||||
export const MovementApi = new BaseApiService<
|
||||
export class MovementApiService extends BaseApiService<
|
||||
Movement,
|
||||
CreateMovementPayload,
|
||||
unknown
|
||||
>('/inventory/transfers');
|
||||
> {
|
||||
constructor(basePath: string) {
|
||||
super(basePath);
|
||||
}
|
||||
|
||||
async createMovement(
|
||||
payload: CreateMovementPayload
|
||||
): Promise<BaseApiResponse<Movement> | undefined> {
|
||||
const formData = new FormData();
|
||||
|
||||
// Append data as JSON string
|
||||
formData.append('data', JSON.stringify(payload.data));
|
||||
|
||||
// Append documents if any
|
||||
if (payload.documents && payload.documents.length > 0) {
|
||||
payload.documents.forEach((file) => {
|
||||
formData.append('documents', file);
|
||||
});
|
||||
}
|
||||
|
||||
return await this.customRequest<BaseApiResponse<Movement>>('', {
|
||||
method: 'POST',
|
||||
payload: formData as unknown as Record<string, unknown>,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
export const MovementApi = new MovementApiService('/inventory/transfers');
|
||||
|
||||
export const InventoryAdjustmentApi = new BaseApiService<
|
||||
InventoryAdjustment,
|
||||
|
||||
Reference in New Issue
Block a user