Files
vexplor/frontend/lib/api/popInOutHistory.ts
2026-05-08 16:07:41 +09:00

67 lines
1.5 KiB
TypeScript

import { apiClient } from "./client";
// --- 타입 정의 ---
export type InOutSource = "inbound" | "outbound" | "history";
export type InOutDirection = "inbound" | "outbound" | "transfer";
export type InOutDocTable =
| "inbound_mng"
| "outbound_mng"
| "inventory_history";
export interface InOutRow {
source: InOutSource;
doc_table: InOutDocTable;
doc_id: string;
detail_id: string | null;
doc_number: string | null;
type: string;
direction: InOutDirection;
item_code: string | null;
item_name: string | null;
qty: number;
unit: string;
warehouse_code: string | null;
warehouse_name: string | null;
location_code: string | null;
status: string | null;
created_date: string;
company_code: string;
remark: string | null;
reason: string | null;
balance_qty: number | null;
signed_qty: number | null;
}
export interface InOutKpi {
inbound: number;
outbound: number;
transfer: number;
adjust: number;
total: number;
}
export interface InOutHistoryData {
rows: InOutRow[];
kpi: InOutKpi;
totalPages: number;
currentPage: number;
}
export interface InOutHistoryParams {
date_from?: string;
date_to?: string;
keyword?: string;
direction?: InOutDirection | "all" | "adjust";
warehouse_code?: string;
page?: number;
page_size?: number;
}
// --- API 호출 ---
export async function getInOutHistory(params?: InOutHistoryParams) {
const res = await apiClient.get("/pop/inventory/inout-history", { params });
return res.data as { success: boolean; data: InOutHistoryData };
}