上游每日推送刻章任务,只能插入式入库,不改动上游分配结果
印章收发与结算管理系统
刻章任务收发、证明文件结构化解析与批量结算的小而全定制交付:状态机流转、金额强制一致与可配置考核阈值。
项目概览
项目背景
企业在设立环节需要刻制公章。管理刻章服务主体的机构长期面对这样的日常:刻章任务靠人工分派,证明与发票靠人工核对,结算按周期手工汇总对账,时效超期没人考核,过程缺少统一留痕,内部的白名单审批还在走纸质单据。链条不算长,但每一环都靠人盯,出了错也很难追溯。
这类业务不适合套用标准化产品,也不需要庞大的平台:流程边界清楚、角色固定,缺的是一套把收发、核对、结算串起来、并且每个动作都留下记录的定制系统。这套印章收发与结算管理系统的定位正是”小而全”——环节不多,但每一环都要能用、能查。
客户当时的状态
刻章任务由上游生产系统生成并分配到各持牌刻章企业,管理方负责后续的收发与结算。改造前这些环节分散在不同人的表格里:证明上写了什么,要人眼对着核;发票金额对不对得上结算单,往往到付款前才发现;漏结要翻历史记录了才能发现;超期只有事后统计,没有事前提示。系统的取舍也因此很克制:先把任务下发到结算完成这条主链在线上走通,其余能力分批跟进。
文件核对,我们为什么不猜
刻章证明是固定版式的 PDF,数电票带有随票生成的数据文件。系统的做法是文件结构化解析与自动核对:读取证明 PDF 的文字层,按模板规则提取印章明细与时间节点,回填任务详情并与录入要求自动比对;发票直读数据文件,PDF 原件按行规则解析,再做金额大小写互验、发票明细与购方税号对照结算数据勾稽,不一致就醒目提示人工复核。
关键在于对不确定的东西一律不猜。扫描件没有文字层,异常文件版式漂移,规则解析失败时系统做软失败处理:提示解析未完成、引导人工填写,绝不猜测字段值入库。取舍很直白——多一次人工录入,最多慢一步;把猜出来的内容写进核对与结算依据,错了很难回头。
主链路上的几条硬规则
刻章任务沿状态机流转:待上传、待交付、已交付三档,管理方清点实体章后手动确认交付,发现证明有问题可以打回重传,每次流转都留痕。结算按周期与刻章企业汇总,逐条下发结算单;发票金额必须与结算金额一致才允许提交,不一致进不了结算,只能走打回。漏结的任务可在后续周期补结,作废有单独入口。
时效考核以下发到证明内交付时间的耗时为口径,预警与超时两档阈值做成数据字典配置项,业务人员可随时调整,不必改代码;报表按预警、正常、超时分色呈现,仅面向管理方,线下奖惩机制刻意留在系统外。白名单审批改为线上填写加审批留痕,但它与刻章、结算两条主业务相互独立——台账规则不该牵动主业务逻辑。
角色边界与账号安全
系统按管理员、管理方、刻章企业三类角色划分功能与数据范围:刻章企业账号登录后只能看到本公司名下的任务、结算与发票。前端登录后按角色下发菜单并据此生成动态路由,越权访问在路由层拦截,接口侧再做一次角色校验,不把前端隐藏当安全边界。
账号安全单独做了一轮加固迭代:口令以 BCrypt 散列存储,不保存明文;前后端执行同一套强密码规则,对长度与字符类别都有校验;登录页不展示、也不预填任何账号信息。前端是 PC 端单页应用,面向实际办公终端做了浏览器兼容构建。
交付状态与边界
本项目已完成开发与测试环境部署演练,生产上线与运行数据未披露。上游任务与企业同步接口按插入式入库设计,只承接数据、不改动上游的分配结果,实际联通依赖上游对接条件。打款等资金动作在系统外完成,系统承担的是结算单生成、核对与清单导出。
项目信息
某区级政务相关管理机构
行政事务与公共服务
未披露
Java 17 / Spring Boot 3 / MyBatis-Plus / Sa-Token / Flyway / MySQL / Apache PDFBox / Knife4j / SpringDoc / Vue 2 / Element UI / ECharts / Vite
印章收发与结算管理系统
CHALLENGES
客户当时面对的现实
管理员、管理方、刻章企业三类角色职责交叉,数据范围需要隔离
刻章证明与发票需自动核对,扫描件与异常文件不能误判
发票金额必须与结算金额强制一致,漏结还要能在后续周期补结
时效考核阈值尚未定稿,必须做成可配置且不干扰业务主流程
CAPABILITIES
我们交付的能力
小而全交付里做实的细节
任务状态机流转
刻章任务沿待上传、待交付、已交付三档流转,管理方清点后确认交付,发现问题可打回重传,每次流转都留痕。
证明解析与回填
固定模板证明 PDF 按文字层规则解析,自动提取印章明细与时间节点回填任务;异常文件软失败转人工填写,不做猜测性判定。
结算与发票校验
按结算周期与刻章企业汇总已交付任务,逐条下发结算单;发票金额与结算金额强制一致方可提交,支持补结、打回与作废。
考核阈值可配置
以任务下发到证明内交付时间的耗时为考核口径,预警与超时两档阈值以数据字典配置,可随时调整,报表分色呈现。
角色与口令安全
管理员、管理方、刻章企业三类角色隔离功能与数据范围,口令以 BCrypt 散列存储,前后端执行同规则强密码校验。
白名单审批台账
白名单事项线上填写、管理员审批,审批人与结论全程留痕,驳回必填意见,历史可查,与刻章结算业务互不联动。
SCOPE
交付范围
以下范围按本项目需求基线与代码库留档整理;本项目已完成开发与测试环境部署演练,生产上线与运行数据未披露。
已交付
- 刻章任务接收与状态机管理:插入式入库、入库即下发、交付确认与打回重传,全程留痕
- 刻章证明结构化解析与自动回填:固定模板 PDF 文字层规则解析,异常文件转人工填写
- 周期结算与发票校验:按企业汇总逐条下发结算单,金额强制一致,支持补结、打回、作废与清单导出
- 时效考核统计:预警与超时两档阈值以数据字典配置,报表分色呈现并可导出
- 白名单填写、审批与查询台账:审批人与结论留痕,驳回必填意见,替代纸质流转
- 三类角色权限体系与账号安全加固:BCrypt 口令散列存储,前后端同规则强密码校验
不在本次范围
- 上游生产系统每日推送的联调启用:同步接口已实现,实际联通依赖上游系统的对接条件
- 财务打款与资金流转:系统输出已结算清单供导出,付款动作在系统外完成
- 线下奖惩机制:考核报表只提供事实依据,奖惩规则与执行不进系统
- 扫描件解析与外部识别服务:异常文件软失败转人工填写,属刻意不引入的能力
- 刻章企业的准入与资质审核:主体名单通过白名单台账登记维护,不做在线准入流程
PROJECT MATERIALS
项目图纸与资料
以下内容来自项目原始资料,保留准确的业务关系与技术含义,并通过统一画框呈现。点击图片可查看高清细节。
ARCHITECTURE
分层技术架构
架构归纳为五层:PC 管理端与同步接口构成入口;接入与权限层负责令牌认证、密钥鉴权与数据范围控制;业务层承载任务与证明、结算与发票、时效考核、白名单台账;平台能力层提供数据字典、附件与待办通知;数据层以 MySQL 存储业务数据,模式以版本化迁移脚本演进。部署拓扑与库表细节不公开。
入口层
覆盖人工操作与系统对接两类接入场景
接入与权限层
统一身份校验并限定各角色可见的数据范围
业务服务层
组织收发、结算、考核主线为可追溯链路
平台能力层
通用能力复用,业务代码专注业务规则
数据层
业务数据与附件分治,模式变更留档可追溯
DELIVERY
交付过程
分阶段推进,每个阶段都有可验收的产出,客户在早期就能看到实际效果。
需求评审与基线定版
与客户逐项评审需求并形成定版需求基线,确认三类角色权限矩阵、全局业务规则与模块边界,未定事项单独列出跟踪。
数据模式与主链路开发
以版本化迁移脚本建立数据库基线,开发刻章任务收发、状态机流转、证明解析回填与交付确认,打通主链路。
结算发票与考核报表
实现周期汇总逐条下发结算,发票金额强制一致校验与大小写互验,上线考核报表、阈值字典与白名单台账。
安全加固与部署演练
完成强密码校验、内置账号口令收敛等独立加固迭代,随后在测试环境完成部署演练与回归验证。
FACTS
可核验的交付事实
以下内容来自本项目实际交付物;未经验证的指标不予展示。
任务状态机:待上传·待交付·已交付
角色:管理员·管理方·刻章企业,数据范围隔离
刻章业务·结算管理·台账与考核·系统管理
FAQ
常见问题
以下是同类项目沟通中出现频率最高的问题,答案就是我们实际的做法。
我们的业务流程和这个案例差别不小,这套系统能直接拿来用吗?
证明和发票的自动核对,能核对到什么程度?会不会认错字段?
以后考核标准要调整,是不是还得找你们改代码、重新部署?
刻章企业会不会看到别家企业的数据?权限是怎么管住的?
上游系统的数据怎么进到我们的系统里?需要谁来配合?
这种小而全的系统,报价和工期一般怎么定?能先看到东西吗?
你们在项目里做了哪些账号与数据安全方面的工作?
本页最后更新:2026年9月22日