26 lines
1.3 KiB
JavaScript
26 lines
1.3 KiB
JavaScript
import fs from "node:fs";
|
|
import path from "node:path";
|
|
|
|
const root = process.cwd();
|
|
const viewPath = path.join(root, "src/views/InventoryLedgerView.vue");
|
|
const view = fs.readFileSync(viewPath, "utf8");
|
|
|
|
const checks = [
|
|
["ledger button exists", view.includes("openWarehouseLedgerDrawer") && view.includes("查看当前仓库出入库流水")],
|
|
["ledger drawer exists", view.includes("warehouseLedgerDrawerOpen") && view.includes("出入库流水")],
|
|
["ledger endpoint used", view.includes("/inventory/transaction-ledger")],
|
|
["warehouse tab drives ledger", view.includes("activeWarehouseType") && view.includes("activeInventoryLabel")],
|
|
["server pagination state exists", view.includes("warehouseLedgerPage") && view.includes("warehouseLedgerPageSize") && view.includes("warehouseLedgerTotal")],
|
|
["existing material stock detail remains", view.includes("openStockDetail(balance)") && view.includes("selectedTransactions")],
|
|
["six warehouse tabs still present", ["raw", "semi", "finished", "auxiliary", "scrap", "return"].every((key) => view.includes(`key: "${key}"`))]
|
|
];
|
|
|
|
const failed = checks.filter(([, passed]) => !passed);
|
|
if (failed.length) {
|
|
console.error("Warehouse transaction ledger UI checks failed:");
|
|
failed.forEach(([name]) => console.error(`- ${name}`));
|
|
process.exit(1);
|
|
}
|
|
|
|
console.log("Warehouse transaction ledger UI checks passed");
|