Appearance
概述
租赁业务是 EBAOZU V4 系统的核心业务板块,提供包括长短租方案、信用免押、自动风控机审、电子合同签署、租金分期代扣、租期买断、续租与归还等全生命周期租赁管理能力。
模块架构与核心文件
app/
├── common/
│ ├── controller/
│ │ └── Lease.php # 租赁通用 Controller Trait(复用租赁接口逻辑)
│ └── services/
│ └── risk/
│ ├── RiskServices.php # 风控通用服务基类
│ └── JuZhengServices.php # 聚证风控服务
├── controller/
│ ├── admin/v1/order/ # 总后台订单与租赁管理
│ ├── api/v1/order/ # 用户端租赁订单接口
│ └── store/order/ # 门店端租赁订单管理
├── services/
│ └── order/
│ ├── StoreOrderServices.php # 订单核心服务(集成租赁业务)
│ └── StoreOrderLeaseServices.php # 租赁扩展订单专有服务
├── jobs/
│ └── order/
│ ├── OrderAutoAuditJob.php # 租赁订单自动机审队列任务
│ └── OrderWithholdJob.php # 租金周期性代扣队列任务
└── model/
└── order/
├── StoreOrder.php # 订单主模型
└── StoreOrderLease.php # 租赁订单扩展模型核心业务组件与能力
通用租赁 Trait (app\common\controller\Lease.php)
在各端订单控制器中复用租赁核心动作:
| 核心方法 | 业务说明 |
|---|---|
leaseAudit() | 租赁订单人工/自动审核 |
cancelOrder() | 取消租赁订单并解冻授权 |
withholdPay() | 发起当期租金代扣支付 |
withholdRefund() | 代扣款项原路退回 |
withholdUnbindConfirm() | 代扣协议解约确认 |
leaseRenewal() | 租赁订单续租申请与处理 |
leaseBuyout() | 租转售(买断尾款)处理 |
leaseReturn() | 设备归还检验与押金结算 |
租赁订单生命周期流转
用户选品下单 → 信用评估/风控机审 → 签署电子合同 → 首期支付与代扣签约 → 设备发货 → 租赁中(周期代扣) → 到期处理(归还 / 续租 / 买断)租金代扣与分期管理
- 代扣协议签约:用户在下单时通过支付宝或银联签约周期扣款协议。
- 定时调度代扣:通过 Cron 与
OrderWithholdJob队列在账单到期日前 1-3 天自动触发扣款指令。 - 代扣重试与逾期标记:扣款失败后进入重试策略并标记逾期状态,触发短信与站内提醒。
二次开发扩展指南
新增风控规则
在 app/common/services/risk/ 下实现新的风控驱动,并在订单创建或审核前调用:
php
// 示例:风控准入检查
$riskResult = app()->make(RiskServices::class)->checkUserRisk($uid, $orderData);
if (!$riskResult['pass']) {
throw new ValidateException('风控审核未通过: ' . $riskResult['reason']);
}扩展租赁商品属性
如需新增租赁方案参数:
- 在
eb_store_product或租赁扩展表中新增字段; - 在
StoreProductServices的数据组装方法中补充映射; - 将修改后的 SQL 追加至
db_sql/zyl.sql。