# 肇新合同管理系统(开源版) **Repository Path**: Gianttrees/zhaoxin-contract ## Basic Information - **Project Name**: 肇新合同管理系统(开源版) - **Description**: 面向企业的开源合同管理平台,覆盖合同起草、模板管理、审批流转、合同编号、在线编辑及合同台账等核心功能,支持 OnlyOffice在线编辑,可作为企业合同管理系统的技术参考与二次开发基础。 - **Primary Language**: Java - **License**: MIT - **Default Branch**: contract0.9.1 - **Homepage**: http://zhaoxinms.com - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 937 - **Created**: 2026-07-18 - **Last Updated**: 2026-07-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
# 肇新合同管理系统(开源版) **Zhaoxin Contract Management System — Open Source Edition** [![License](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE) [![Java](https://img.shields.io/badge/Java-11-orange.svg)](https://www.oracle.com/java/) [![Spring Boot](https://img.shields.io/badge/Spring%20Boot-2.6.x-brightgreen.svg)](https://spring.io/projects/spring-boot) [![Vue](https://img.shields.io/badge/Vue-2.6-42b883.svg)](https://v2.vuejs.org/) [![Activiti](https://img.shields.io/badge/Activiti-6.x-005571.svg)](https://www.activiti.org/) 由 **山西肇新科技有限公司** 出品 · 官网 [zhaoxinms.com](http://zhaoxinms.com) [功能截图](#-功能截图) · [在线体验](#-在线体验) · [快速开始](#快速开始) · [文档](#-文档)
--- ## 项目简介 肇新合同管理开源版,是一套面向企业的合同管理平台,覆盖合同起草、模板管理、审批流转等核心环节。 本仓库开源的是商用产品的部分功能, **早期版本(0.9)的核心模块**,源自实际交付的商业系统,可作为企业级合同管理的技术参考与二次开发基础。 > - 公司最新版本(2026 年)已迭代至 **2.x**,内核已全面采用最新技术重写,并集成 AI 能力(详见下文)。最新版与本开源版本在架构和功能上存在较大差异。 ## 🖼 功能截图 以下均为开源版实际界面,点击图片可查看原图。 | 登录页面 | 系统首页与任务工作台 | |---|---| | [![登录页面](docs/images/login.png)](docs/images/login.png) | [![系统首页与任务工作台](docs/images/index.png)](docs/images/index.png) | | 合同起草 | 审批流程设计器 | |---|---| | [![合同起草](docs/images/draft.png)](docs/images/draft.png) | [![审批流程设计器](docs/images/workflow.png)](docs/images/workflow.png) | | OnlyOffice 在线编辑 | 合同审批 | |---|---| | [![OnlyOffice 在线编辑](docs/images/editor.png)](docs/images/editor.png) | [![合同审批](docs/images/approval.png)](docs/images/approval.png) | ## 🌐 在线体验 > 本开源版暂未单独部署在线演示环境。以下地址展示的是其他商业版本,界面与功能和本仓库存在差异,仅供产品体验参考。 - 演示地址:[zhaoxinms.com/demo](https://zhaoxinms.com/demo) > 演示环境仅供功能预览,数据会定期重置,请勿录入真实数据。 ## 技术栈 | 分类 | 技术选型 | 说明 | |---|---|---| | 后端框架 | Spring Boot 2.6.x | Java 11 | | 权限认证 | Sa-Token + JWT | 无状态 Token | | 数据库 | MySQL 8.x | | | 缓存 | Redis | 会话、分布式锁、限流 | | ORM | MyBatis-Plus 3.5.x | | | 工作流 | Activiti 6.x | 合同审批流程 | | 在线编辑 | OnlyOffice / WPS | 合同文档在线编辑、多人协同 | | 文件存储 | 本地文件系统 | | | 前端框架(PC) | Vue 2.6 + Element UI 2.15 | `zxcm-ui` 模块 | | 企业通讯 | 钉钉开放平台 / JustAuth | 钉钉组织架构与用户同步,可选 OAuth 登录、消息推送 | | 部署 | Docker + Compose | 容器化部署 | > 本系统基于优秀的开源框架 [RuoYi-Vue-Plus](https://gitee.com/JavaLionLi/RuoYi-Vue-Plus)(MIT 协议)二次开发,在此致谢。 ## 🏗 系统架构 [![肇新合同管理系统开源版总体架构](docs/images/architecture.png)](docs/images/architecture.png) 架构图覆盖合同生命周期、核心业务模块、平台支撑、数据运行环境及可选外部集成。开发者可进一步查看 [架构说明](ARCHITECTURE.md)。 ## ✨ 核心功能 本系统相较于通用后台脚手架,重点沉淀了合同领域的专业能力: - **📝 合同在线编辑(OnlyOffice + WPS 双引擎)** 集成 OnlyOffice 实现合同文档的在线编辑、多人协同与回调保存;同时内置 WPS 开放平台对接能力。 > ⚠️ 说明:本开源版本中的 WPS 对接基于 WPS 早期开放接口实现,WPS 官方现已切换为新版接口,**旧接口已不可用**,仅作历史参考。推荐使用 OnlyOffice 方案。 - **🧩 合同模板管理(上传式)** 支持合同模板的上传、使用范围与版本(发布/停用)管理,按合同类型组织模板库,起草时一键引用。 - **🔄 合同审批流程(基于 Activiti 工作流)** 内置自研流程引擎与设计器,支持起草 → 审批 → 用印(盖章/上传双章)的核心流转,并通过领域事件(`ContractEvent`)驱动状态扭转、记录全程节点日志。履行状态与统计仍保留在后端领域模型中,开源版不提供独立履约任务页面。 - **🔢 合同编号规则引擎** 可视化配置编号规则(前缀、日期、按主体/类型/年月维度的独立流水、自动重置),规则解释执行 + 同步事务保证并发下编号唯一,业务零代码适配任意编号规范。 - **📊 看板与台账** 合同统计看板(`DashboardController`)与合同台账,提供草拟、审批及合同状态等维度的统计和查询。 - **📄 文档处理能力** 集成 docx4j、iText、POI 等,支持 Word/Excel/PDF 解析、文档合并(`DocMergeUtil`)、模板渲染与导出。 - **📨 多渠道通知** 邮件 + 短信(sms4j)通知,覆盖审批、到期等关键节点提醒。 - **🏢 钉钉组织与用户同步** 保留 `zxcm-third/zxcm-syncData` 模块,支持从钉钉通讯录同步部门、用户和第三方账号映射到系统用户;用户管理页在开启钉钉配置后显示"同步钉钉"入口,可选配钉钉 OAuth 登录与消息推送。 ## 🗺 开发计划 ### 履约计划与任务中心 下一步计划补充基础履约管理功能,形成合同签订后的任务跟踪闭环。 - **履约计划管理** 在合同下新增、编辑、取消和查看履约任务。 - **履约任务类型** 支持付款、收款、开票、交付、验收和其他事项。 - **任务基本信息** 记录计划日期、计划金额、责任人和任务说明。 - **任务状态** 支持待执行、已完成、已逾期和已取消状态。 - **完成记录** 任务完成时记录实际完成日期、实际金额、办理说明和相关附件。 - **合同履约信息** 在合同详情中增加履约计划页签,展示该合同的履约任务和完成情况。 - **任务中心** 提供“我的履约任务”页面,查看本人负责的待执行、已逾期和已完成任务。 ## 🚀 商业版 2.0:AI 驱动合同全生命周期协同 肇新合同管理系统 2.0 是面向企业的全新一代商业版本。系统以合同全生命周期平台为基础,将 AI 融入起草、审查、审批、签署、履约和经营分析等关键环节,使智能能力直接参与业务协同,而不是作为独立的附加工具。 - **智能业务助手**:支持自然语言查询合同与待办、合同起草与信息提取、规则化风险预审、履约任务生成、工作报表及企业知识库问答。 - **合同业务闭环**:覆盖起草、审批、用印与电子签、归档、履约、变更、借阅、中止及作废,并通过统一任务中心持续跟踪办理过程。 - **企业级支撑**:提供动态表单、可视化流程、数据权限、在线文档与多渠道通知,支持企业微信、钉钉、飞书及私有化部署。 - **灵活交付合作**:面向企业客户及软件行业合作伙伴提供产品实施、集成适配与项目交付支持;商业版 2.0 可结合项目需求协商源码交付方案。 2.0 商业版不包含在本开源仓库中。更多说明见 [肇新合同管理系统 2.0](docs/肇新合同管理系统2.0.md),如需了解或试用可访问 [zhaoxinms.com](http://zhaoxinms.com)。 ## 模块结构 整体结构以 **合同业务模块** 为核心,基础框架统一收敛到 `ruoyi-base` 之下,目录更清晰: ``` ruoyi-vue-plus (root) ├── ruoyi-admin # 启动入口、Web 控制层 ├── ruoyi-base # 基础框架聚合(基于 RuoYi-Vue-Plus) │ ├── ruoyi-common # 通用工具 │ ├── ruoyi-framework # 框架核心配置 │ ├── ruoyi-system # 系统管理(用户、角色、菜单、字典等) │ ├── ruoyi-generator # 代码生成器 │ └── ruoyi-tenant # 多租户支持 ├── zxcm-contract # ★ 合同核心业务(合同、模板、在线编辑等) ├── zxcm-form # 合同类型配置 ├── zxcm-workflow # 合同工作流(基于 Activiti) ├── zxcm-notify # 消息通知(邮件、短信) ├── zxcm-third # 第三方能力 │ ├── zxcm-excel # Excel/Word 导入导出 │ └── zxcm-syncData # 钉钉组织架构 / 用户同步、第三方账号映射 └── zxcm-ui # PC 前端(Vue 2 + Element UI) ``` ### 基础框架模块(`ruoyi-base`,基于 RuoYi-Vue-Plus) | 模块 | 说明 | |---|---| | `ruoyi-common` | 通用工具 | | `ruoyi-framework` | 框架核心配置 | | `ruoyi-system` | 系统管理(用户、角色、菜单、字典等) | | `ruoyi-generator` | 代码生成器 | | `ruoyi-tenant` | 多租户支持 | ### 合同业务模块(核心) | 模块 | 说明 | |---|---| | `zxcm-contract` | 合同核心业务(合同、模板、在线编辑等) | | `zxcm-form` | 合同类型配置 | | `zxcm-workflow` | 合同工作流(基于 Activiti,审批/用印/变更) | | `zxcm-notify` | 消息通知(邮件、短信) | | `zxcm-third/zxcm-excel` | Excel / Word 导入导出 | | `zxcm-third/zxcm-syncData` | 钉钉组织架构 / 用户同步、第三方账号映射 | ### 前端 | 目录 | 说明 | |---|---| | `zxcm-ui` | 本版本 PC 前端(Vue 2 + Element UI) | ## 📚 文档 完整文档位于 [`docs/`](docs/) 目录: | 文档 | 内容 | |---|---| | [商业版 2.0 产品介绍](docs/肇新合同管理系统2.0.md) | AI 协同、合同全生命周期与企业级支撑能力概览 | | [架构说明](ARCHITECTURE.md) | 模块结构、依赖、关键设计、请求链路(开发者 / AI 友好概览) | | [核心实现逻辑](docs/核心实现.md) | 智能比对、事件驱动生命周期、工作流联动、编号引擎的实现剖析 | | [技术文档(架构)](docs/技术文档.md) | 技术栈、模块结构、模块依赖、关键设计 | | [开发与运行文档](docs/开发运行文档.md) | 本地环境搭建、后端/前端运行、计划任务、常见问题 | | [服务器部署文档](docs/服务器部署文档.md) | Docker + Compose 容器化部署、上线安全清单 | | [数据库初始化](docs/数据库初始化.md) | 初始化脚本说明与导入步骤、默认账号 | | [系统初始化文档](docs/系统初始化文档.md) | 首次登录后的租户、组织、角色、合同类型、流程、模板、编号规则配置 | | [流程配置说明](docs/流程配置说明.md) | 流程设计器、岗位变量、角色审批、学校/学院等复杂负责层级配置 | | [数据库设计](docs/数据库设计.md) | 表分组、通用字段、业务域说明 | ## 🤝 参与贡献 欢迎任何形式的贡献!参与前请阅读: | 文档 | 内容 | |---|---| | [贡献指南](CONTRIBUTING.md) | 如何提 Issue / PR、代码与提交规范 | | [行为准则](CODE_OF_CONDUCT.md) | 社区行为准则 | | [安全策略](SECURITY.md) | 如何报告安全漏洞 | ## 快速开始 ### 环境要求 - JDK 11 - Maven 3.8+ - MySQL 8.x - Redis - Node.js(前端) - OnlyOffice(合同在线编辑,可选) 详细步骤见 [开发与运行文档](docs/开发运行文档.md)。 ### 数据库初始化 ```bash # 创建数据库(utf8mb4)后导入初始化脚本(已含字段注释补全) mysql -u <账号> -p zxcm < script/sql/zxcm_init.sql ``` 完整说明见 [数据库初始化](docs/数据库初始化.md)。本地开发时请注意 `application-dev.yml` 中的默认库名,建议统一改为 `zxcm`。 ### 后端启动 ```bash # 1. 修改配置文件中的数据库、Redis 等连接信息 # ruoyi-admin/src/main/resources/application-dev.yml # 2. 编译并启动 mvn clean package -DskipTests java -jar ruoyi-admin/target/zxcm-admin.jar ``` 后端默认端口 8080。 ### 前端启动 ```bash cd zxcm-ui npm install npm run dev ``` 前端默认端口 80,默认账号 `zxcmAdmin` / `123456`(首次登录请立即修改)。 ### 系统初始化 首次登录后,请继续完成租户、部门、岗位、角色、用户、签约主体、合同类型、审批流程、编号规则、合同模板等基础配置。 完整步骤见 [系统初始化文档](docs/系统初始化文档.md)。 ### Docker 部署 部署脚本与编排文件位于 `script/` 目录,完整步骤见 [服务器部署文档](docs/服务器部署文档.md)。 > 📌 部署前请务必修改 `script/docker-compose.yml` 与各 `application-*.yml` 中的默认账号、密码与密钥。 ## 配置安全提示 开源版本中的数据库账号、密码、控制台账号、JWT 密钥等均为**占位/默认值**,请在实际部署前全部替换为自己的安全配置,切勿在生产环境直接使用默认值。 ## 开源协议 本项目基于 [MIT 协议](LICENSE) 开源,允许商业使用、修改、分发、再许可和销售软件副本。 任何副本或实质部分必须保留 [LICENSE](LICENSE)、[NOTICE.md](NOTICE.md)、源代码/文档/界面中已有的版权与归属标记,包括“肇新合同管理系统”“山西肇新科技有限公司”版权声明以及 RuoYi-Vue-Plus 来源声明。 MIT 协议不授予商标或品牌背书权,未经书面许可,不得使用“肇新”“肇新合同管理系统”“山西肇新科技有限公司”等名称或标识暗示官方授权、认证、合作或背书。 ``` Copyright (c) 2021-2026 山西肇新科技有限公司 (Shanxi Zhaoxin Technology Co., Ltd.) 本项目基于 RuoYi-Vue-Plus (MIT License) 二次开发。 ``` ## 关于我们 **山西肇新科技有限公司**成立于 2021 年,长期专注企业合同管理数字化建设,围绕合同全生命周期管理、业务流程协同和智能化应用持续进行产品研发与项目实践,积累了较为完整的合同业务理解与工程交付经验。 除直接服务企业客户外,我们也与软件公司、系统集成商及行业解决方案伙伴开展合作,为合同管理相关项目提供产品能力、方案支持、集成适配和交付协同,帮助合作伙伴将专业合同管理能力融入自身解决方案,更高效地完成项目建设与落地。 针对私有化部署、深度集成或持续二次开发等需求,商业版 2.0 可结合具体项目协商源码交付及配套技术服务;实际授权范围、交付内容与维护方式以双方约定为准。 - 🌐 官网:[http://zhaoxinms.com](http://zhaoxinms.com) 欢迎 Star、Issue 与 PR,一起把开源合同系统做得更好。