# report-manager **Repository Path**: liudc0810/report-manager ## Basic Information - **Project Name**: report-manager - **Description**: Go语言编写的报表管理系统,有汇总、计算、效验功能。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-18 - **Last Updated**: 2026-06-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 实用报表校验汇总管理系统 基于 Go 语言的月度报表自动化处理工具,支持**汇总**、**公式计算**、**备注计算**、**校验**四大功能,Web 界面操作,多人可同时使用。 ## 快速开始 ```bash # 启动 cd report-manager report-manager.exe # 浏览器打开 http://localhost:8080 ``` 或直接双击 `启动服务.bat`。 ## 项目结构 ``` report-manager/ ├── main.go # HTTP 服务入口,路由注册 ├── handler.go # REST API 处理器 ├── models.go # 数据结构定义 ├── excel.go # Excel 文件 I/O 工具 ├── formula.go # 公式解析求值引擎 + 单元格引用 + 日期周期解析 ├── aggregate.go # 数据聚合引擎 + 公式计算引擎 ├── validate.go # 报表校验引擎 + 备注计算引擎上下文 ├── remark_calc.go # 备注计算引擎 ├── go.mod / go.sum # 依赖管理 ├── static/index.html # Web 操作界面 ├── report-manager.exe # 编译后可执行文件 ├── 启动服务.bat # 一键启动脚本 └── 使用说明手册.md # 详细操作手册 ``` ## 四大功能 | 功能 | API | 说明 | |------|-----|------| | 📈 汇总报表 | `/api/aggregate` | 将填写单位数据按行标签累加到汇总单位 | | 🔢 公式计算 | `/api/computeFormulas` | 计算报表中所有 Excel 公式(IF/SUM/AVERAGE/COUNT/MAX/MIN/ROUND) | | 📝 备注计算 | `/api/remarkCalc` | 按模板「计算:」备注表达式求值填入报表 | | ✓ 校验报表 | `/api/validate` | 按模板「校验:/效验:」规则验证数据并出报告 | ## 数据目录约定 ``` 数据根目录/ ├── 20040701/ ← 日期目录(YYYYMMDD) │ ├── 单位.xlsx ← 单位层级表 │ ├── 计算模板.xlsx ← 校验 + 计算规则 │ ├── *_教务处_20040701.xlsx ← 汇总单位报表 │ ├── *_班级01_20040701.xlsx ← 填写单位报表 │ └── ... └── 20040702/ └── ... ``` ## 引用语法 | 引用 | 含义 | |------|------| | `B3` | 当前 Sheet 的 B3 | | `上月C4` | 上月同日报表的 C4 | | `上季C4` / `上年C4` | 上季度末 / 去年同期 | | `上半年C4` | 同年 6 月(仅 12 月有效) | | `全本月B2` | 本月 1 日至当日 B2 累计 | | `全本季B2` / `全本年B2` | 本季 / 本年每日累计 | | `报表R002.D3` | 跨 Sheet 引用 | | `报表R002.上月D3` | 跨 Sheet + 跨期 | ## 公式引擎支持 `+` `-` `*` `/` 四则运算 · `IF()` · `SUM()` · `AVERAGE()` · `COUNT()` · `MAX()` · `MIN()` · `ROUND()` 不支持的函数自动跳过并在日志中提示用 Excel 手动计算。 ## 环境变量 | 变量 | 用途 | |------|------| | `REPORT_PORT` | 服务端口(默认 8080) | | `REPORT_DATA_DIR` | 预设数据根目录 | ## 构建 ```bash cd report-manager go build ``` ## License 内部工具,无 License。