refactor(FE-62,63,65): refactor Movement and ProductWarehouse APIs, update MovementForm schema, and enhance MovementTable functionality

This commit is contained in:
rstubryan
2025-10-16 14:33:49 +07:00
parent aa21088e99
commit c6a0c542aa
7 changed files with 277 additions and 556 deletions
+19 -13
View File
@@ -1,5 +1,4 @@
import { BaseMetadata } from '@/types/api/api-general';
import { Product } from '@/types/api/master-data/product';
import { Supplier } from '@/types/api/master-data/supplier';
import { Warehouse } from '@/types/api/master-data/warehouse';
@@ -9,20 +8,27 @@ export type BaseMovement = {
transfer_date: string;
source_warehouse: Warehouse;
destination_warehouse: Warehouse;
products: {
product: Product;
product_qty: number;
details: {
id: number;
product_id: number;
quantity: number;
before_quantity: number;
after_quantity: number;
}[];
deliveries: {
delivery_cost: number;
delivery_cost_per_item: number;
document: string;
driver_name: string;
vehicle_plate: string;
id: number;
supplier_id: number;
supplier: Supplier;
products: {
product: Product;
product_qty: number;
vehicle_plate: string;
driver_name: string;
document_number: string;
document_path: string;
shipping_cost_item: number;
shipping_cost_total: number;
items: {
id: number;
stock_transfer_detail_id: number;
quantity: number;
}[];
}[];
};
@@ -41,7 +47,7 @@ export type CreateMovementPayload = {
deliveries: {
delivery_cost: number;
delivery_cost_per_item: number;
document: string | File;
document_index?: number;
driver_name: string;
vehicle_plate: string;
supplier_id: number;
+22
View File
@@ -0,0 +1,22 @@
import { BaseMetadata } from '@/types/api/api-general';
import { Warehouse } from '@/types/api/master-data/warehouse';
import { Product } from '@/types/api/master-data/product';
export type BaseProductWarehouse = {
id: number;
product_id: number;
warehouse_id: number;
quantity: number;
product: Product;
warehouse: Warehouse;
};
export type ProductWarehouse = BaseMetadata & BaseProductWarehouse;
export type CreateProductWarehousePayload = {
product_id: number;
warehouse_id: number;
quantity: number;
};
export type UpdateProductWarehousePayload = CreateProductWarehousePayload;