Appearance
合同概述
合同类型
- 租赁服务合同:用户与平台之间的租赁协议
- 授权书:用户授权平台进行信用评估和代扣
- 补充协议:续租、买断等变更协议
合同签署方式
- 电子签章:通过E签宝或爱签等电子签章平台签署
- 线下签署:打印合同,用户签字后上传
- 静默签署:用户授权后自动签署
合同存储
合同签署后存储在以下位置:
- 本地存储:
public/uploads/contract/目录 - 云存储:通过UploadService上传到云存储
- 电子签章平台:E签宝或爱签平台存储
合同生成
生成流程
用户下单 → 获取合同模板 → 填充合同数据 → 生成PDF → 上传存储合同模板
合同模板存储在public/uploads/contract/目录,支持以下格式:
- PDF模板:预设的PDF合同模板
- WebEdit模板:可编辑的HTML模板
合同数据填充
合同数据包括:
- 用户信息:姓名、身份证号、联系方式、地址
- 订单信息:商品名称、规格、数量、租金、租期
- 平台信息:公司名称、统一社会信用代码、联系方式
- 签署信息:签署时间、合同编号
生成代码
合同生成相关代码:
| 文件 | 说明 |
|---|---|
| app/common/services/pdf/PdfServices.php | PDF生成服务 |
| app/common/services/risk/RiskServices.php | 风控服务(包含合同生成) |
| app/common/controller/Lease.php | 租赁控制器(合同相关接口) |
合同签署
电子签章流程
- 创建签署任务:调用电子签章平台API创建签署任务
- 发送签署链接:将签署链接发送给用户
- 用户签署:用户通过链接完成签署
- 签署回调:电子签章平台回调通知签署结果
- 合同存储:签署完成的合同存储到系统
E签宝集成
E签宝集成相关代码:
| 文件 | 说明 |
|---|---|
| app/services/alipay/AlipayPartnerServices.php | 支付宝合作伙伴服务(包含E签宝) |
| app/common/controller/Notarial.php | 公证控制器(合同相关) |
爱签集成
爱签集成相关代码:
| 文件 | 说明 |
|---|---|
| app/constant/ApiType.php | API类型常量(包含爱签合同) |
静默签署
静默签署适用于用户已授权的情况:
- 用户授权:用户在首次下单时授权平台代签
- 自动签署:后续订单自动签署合同
- 签署记录:记录签署历史,用户可查看
合同管理
合同查询
后台管理路径:订单管理 > 订单详情 > 合同信息
功能说明:
- 查看合同详情
- 下载合同文件
- 查看签署状态
- 查看签署时间
合同下载
合同下载方式:
- 后台下载:在订单详情页下载合同
- API下载:通过API接口下载合同
- 用户下载:用户在小程序中下载合同
合同归档
合同归档策略:
- 自动归档:订单完成后自动归档
- 手动归档:管理员手动归档
- 归档存储:归档合同存储在云存储
合同变更
续租合同
续租时生成补充协议:
- 续租申请:用户申请续租
- 生成补充协议:根据续租信息生成补充协议
- 签署补充协议:用户签署补充协议
- 更新合同状态:更新合同状态为已续租
买断合同
买断时生成买断协议:
- 买断申请:用户申请买断
- 生成买断协议:根据买断信息生成买断协议
- 签署买断协议:用户签署买断协议
- 更新合同状态:更新合同状态为已买断
归还合同
归还时生成归还确认单:
- 归还申请:用户申请归还
- 生成归还确认单:根据归还信息生成确认单
- 确认归还:平台确认归还
- 更新合同状态:更新合同状态为已归还
合同配置
配置路径
后台管理路径:系统设置 > 租赁配置 > 合同配置
配置项
| 配置项 | 说明 | 默认值 |
|---|---|---|
| contract_type | 合同类型(电子签章/线下签署) | 电子签章 |
| contract_template | 合同模板 | 默认模板 |
| auto_sign | 是否自动签署 | 是 |
| contract_storage | 合同存储位置 | 本地+云存储 |
| contract_expire | 合同有效期 | 与租期一致 |
电子签章配置
电子签章平台配置:
| 配置项 | 说明 |
|---|---|
| sign_platform | 签署平台(E签宝/爱签) |
| app_id | 应用ID |
| app_secret | 应用密钥 |
| callback_url | 回调地址 |
合同常见问题
问题1:合同生成失败
可能原因:
- 合同模板不存在
- 合同数据不完整
- PDF生成服务异常
解决方案:
- 检查合同模板是否存在
- 检查合同数据是否完整
- 检查PDF生成服务是否正常
问题2:合同签署失败
可能原因:
- 电子签章平台异常
- 用户签署链接过期
- 网络连接问题
解决方案:
- 检查电子签章平台状态
- 重新生成签署链接
- 检查网络连接
问题3:合同下载失败
可能原因:
- 合同文件不存在
- 存储服务异常
- 权限问题
解决方案:
- 检查合同文件是否存在
- 检查存储服务状态
- 检查权限配置
合同监控
监控指标
- 合同生成成功率:合同生成成功的比例
- 合同签署成功率:合同签署成功的比例
- 合同下载成功率:合同下载成功的比例
- 合同签署时长:从生成到签署的平均时长
监控路径
后台管理路径:数据统计 > 合同统计
告警设置
建议设置以下告警:
- 合同生成失败:合同生成失败时告警
- 合同签署超时:合同签署超时时告警
- 合同存储异常:合同存储异常时告警
相关代码
| 文件 | 说明 |
|---|---|
| app/common/services/pdf/PdfServices.php | PDF生成服务 |
| app/common/services/risk/RiskServices.php | 风控服务(包含合同生成) |
| app/common/controller/Lease.php | 租赁控制器(合同相关接口) |
| app/common/controller/Notarial.php | 公证控制器(合同相关) |
| app/services/alipay/AlipayPartnerServices.php | 支付宝合作伙伴服务(包含E签宝) |
| app/constant/ApiType.php | API类型常量(包含爱签合同) |
| app/model/order/StoreOrderNotarial.php | 合同模型 |