# YCSS-JSC **Repository Path**: open_-ai_-task/ycss-jsc ## Basic Information - **Project Name**: YCSS-JSC - **Description**: web端驾驶舱 智能体之前的替代 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-10 - **Last Updated**: 2026-07-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 景区板块半年度财务数据分析看板生成器 读取一份结构等同 `empty.xlsx` 的经营数据表,一键生成面向高层/董事会的 **单文件、离线、可打印为 PDF** 的 HTML 经营分析报告。 ## 特点 - 🔒 **数据不出本机**:纯本地运行,报告不联网、无外部请求。 - 📊 6 大基础分析 + 3 项高阶:预算完成率、同比、板块贡献排名、收入结构、 成本费用结构、盈利能力,外加自动结论预警、季度趋势、成本集中度扫描。 - 🖨 单个 `.html` 文件,双击即看;顶部「导出 PDF」一键打印存档;支持深浅色。 - 🧩 **自动适配表间差异**(如某表缺同期列、某表逐月拆分),按科目标签解析。 ## 安装(一次) ```bash pip install -r requirements.txt ``` ## 方式一:网页上传(推荐) 双击 **`start.bat`**(或运行 `python app.py`),浏览器自动打开上传页: 把 Excel 拖进去 → 几秒后直接显示深色科技风的交互报告。 - 页面地址:http://127.0.0.1:5000 - 解析在本机完成,数据不外传;报告可一键导出 PDF、可切换深/浅色。 ## 方式二:命令行 ```bash python run.py 你的数据.xlsx # 生成 你的数据_经营分析报告.html python run.py 你的数据.xlsx -o 报告.html ``` ## 一键发布到远程服务器(推荐) 把两个服务一起发布并托管为开机自启的 systemd 服务: - **报告端** `ycss-report`(端口 8010):登录后侧栏上传即出报告。 - **管理端** `ycss-admin`(端口 8011):上传→记录列表→生成只读**分享链接** `/view/`。 步骤: ```bash pip install -r requirements-deploy.txt # 安装发布依赖(paramiko) cp .deploy.env.example .deploy.env # 复制配置,填入服务器密码 ``` 然后 **双击 `deploy.bat`**(或 `python deploy.py`)即可:自动同步文件、安装依赖、 写入并重启两个 systemd 服务、放行本地防火墙、做健康检查。脚本**幂等**,可反复执行。 > 凭据只放在本地 `.deploy.env`(已 gitignore),**不会进仓库**。 > 云服务器还需在**安全组**放行 8010 / 8011。 ### 手动方式(可选) 应用是标准 WSGI,入口 `app:app` / `admin_app:app`: ```bash gunicorn -w 2 -b 0.0.0.0:8010 app:app # 报告端 gunicorn -w 2 -b 0.0.0.0:8011 admin_app:app # 管理端(建议设 YCSS_DATA_DIR 持久化记录) ``` ⚠️ 上传的数据会到达服务器,且 `/view/` 分享链接默认公开可访问(靠不可猜测 ID)。 建议:改强口令(`APP_PW`)、配置 HTTPS、置于内网或加访问控制。 ## 输入文件要求 - Excel(.xlsx),每个板块一个 sheet;结构与随附的 `template_empty.xlsx` 一致。 - 第 5 行为列头(`2026预算 / 2024.1-6完成数 / 2025.1-6完成数 / 月份 / 合计`), 第 6 行起为科目数据;A 列为科目名。 - 名为 `Sheet1` 的表会被当作汇总表自动跳过。 - 金额单位按**万元**处理。 ## 目录 ``` run.py 入口 parser.py xlsx → 标准化数据(按标签匹配,容错缺列/缺行) analyzer.py 指标计算 + 自动中文结论/预警 report.py 单文件 HTML 渲染(内联 ECharts) vendor/echarts.min.js 离线图表库 template_empty.xlsx 结构模板(供生成测试假数据用) make_fake_data.py 生成测试假数据(开发用,不涉及真实数据) tests/ pytest 测试 docs/ 设计与实现计划文档 ``` ## 测试 ```bash pytest -q ``` 所有测试针对自动生成的假数据 `tests/fixtures/_fake_filled.xlsx`, 不涉及任何真实经营数据。