慧算盘 · 智能财务管理系统
录入单据 → 自动生成记账凭证 → 自动出具财务报表与进销存报表
覆盖 **业务单据 / 进销项发票 / 出纳账 / 记账凭证 / 账簿 / 报表 / 进销存 / 固定资产 / 员工档案**,凭证与报表可直接调用本机打印机输出 提供 **Windows 桌面版 EXE**(带机器码激活与数据加密)与 **浏览器 Web 版** 两种形态
块 技术选型 说明
前端整体 原生 JS(IIFE 模块 + window 全局对象),无框架、无构建、无依赖 约 1.34 万行;Store/Accounting/Reports/UI/Views/App 六个命名空间
界面与图表 手写 CSS + 手绘 SVG 没有引入任何 UI 库和 Chart.js,柱状图/环形图/进度条都是 SVG 现拼的
路由与交互 哈希路由 + 命令面板(Ctrl K)+ 骨架屏 app.js 里的 NAV 配置驱动侧边栏,角标实时统计
数据层 JSON 文档模型 + 浏览器键值存储 store.js 单例,内存即真相、写穿持久化;migrate() 兜底老账套字段
会计引擎 纯计算函数 accounting.js:单据→分录→余额→存货移动加权平均
报表引擎 声明式科目映射 reports.js:用 codes:['1001','1002'] 声明式定义资产负债表/利润表/现金流量表结构
固定资产 独立核算引擎 平均年限法/双倍余额递减/年数总和,折旧凭证生成与对账
桌面外壳 Electron 44 + electron-builder 26 portable 单文件、asar 打包、只保留 zh-CN/en-US 语言包
加密存储 preload 垫片 + Node crypto 用 Object.defineProperty 整体替换存储对象,同步 IPC + 内存缓存
授权 HMAC-SHA256 机器码绑定 + PBKDF2 派生密钥 + AES-256-GCM 授权码算法 JS 与 Python 双端一致
打印 离屏 BrowserWindow + webContents.print / printToPDF 支持自定义凭证纸 240×140mm
测试 Node 原生断言脚本 + jsdom 冒烟 6 个测试文件、280+ 项断言,不用 Jest
构建 node 脚本(同步 → 指纹 → NSIS 补丁 → electron-builder