Merge branch 'dev/randy' into 'feat/FE/US-279/closing-button'

[FEAT/FE][US#279/TASK#312-313] Add Feature Closing Produksi (Project Flock)

See merge request mbugroup/lti-web-client!72
This commit is contained in:
Rivaldi A N S
2025-12-10 18:06:46 +00:00
22 changed files with 2054 additions and 203 deletions
+63
View File
@@ -78,4 +78,67 @@ export type ClosingIncomingSapronak = {
};
export type ClosingOutgoingSapronak = ClosingIncomingSapronak;
// ====== PERHITUNGAN SAPRONAK ======
export type RowSapronakCalculation = {
id: number;
tanggal: string;
no_referensi: string;
qty_masuk: number;
qty_keluar: number;
qty_pakai: number;
uraian: string;
kategori_produk: string;
harga_beli_per_qty: number;
total_harga: number;
keterangan: string;
};
export type TotalSapronakCalculation = {
label: string;
qty_masuk: number;
qty_keluar: number;
qty_pakai: number;
harga_beli_per_qty: number;
total_harga: number;
};
export type ClosingSapronakCalculationItem = {
rows: RowSapronakCalculation[];
total: TotalSapronakCalculation;
};
export type ClosingSapronakCalculation = {
doc_broiler: ClosingSapronakCalculationItem;
ovk: ClosingSapronakCalculationItem;
pakan: ClosingSapronakCalculationItem;
};
// ====== OVERHEAD ======
export type ClosingOverhead = {
overheads: Overhead[];
total: OverheadTotal;
};
export type Overhead = {
item_name: string;
uom_name: string;
budget_quantity: number;
budget_unit_price: number;
budget_total_amount: number;
actual_date: string;
actual_quantity: number;
actual_unit_price: number;
actual_total_amount: number;
cost_per_bird: number;
};
export type OverheadTotal = {
budget_quantity: number;
budget_total_amount: number;
actual_quantity: number;
actual_total_amount: number;
cost_per_bird: number;
};
export type ClosingSales = BaseMetadata & BaseClosingSales;
+19 -1
View File
@@ -56,8 +56,26 @@ export type ClosingExpense = {
reference_number: string;
};
// "flag_name": "PAKAN",
// "product_warehouse_id": 14,
// "product_id": 8,
// "product_name": "281 SPECIAL STARTER",
// "product_category": "Bahan Baku",
// "uom": "Kilogram",
// "quantity": 1100
export type StockItem = {
flag_name: string;
product_warehouse_id: number;
product_id: number;
product_name: string;
product_category: string;
uom: string;
quantity: number;
};
export type CheckClosingResponse = {
unfinished_expenses: number;
stock_remaining: ProductWarehouse[];
stock_remaining: StockItem[];
expenses: ClosingExpense[];
};