解释Transfer模块中"清理过期的划转订单数据"功能的作用和必要性,澄清"过期"概念在订单管理中的含义。
2025-06-18 23:25
在Transfer模块中,"过期"不是指订单本身有有效期,而是指:
默认清理策略:
php artisan transfer:clean [选项]
--days=30: 清理多少天前的数据(默认30天)--limit=1000: 每次处理的数量限制(默认1000条)--dry-run: 仅预览,不实际删除--force: 强制清理,跳过确认--status=: 指定要清理的状态
100: 只清理已完成订单-1: 只清理失败订单-- 清理30天前的已完成或失败订单
SELECT * FROM kku_transfer_orders
WHERE created_at < '30天前'
AND status IN (100, -1) -- 已完成或失败
找到 1500 条记录需要清理
数据统计:
已完成: 1200 条
失败: 300 条
按类型统计:
转入: 800 条
转出: 700 条
确定要删除这 1500 条记录吗?此操作不可恢复!
--dry-run预览# 预览30天前的数据
php artisan transfer:clean --dry-run
# 预览60天前的数据
php artisan transfer:clean --days=60 --dry-run
# 预览只清理失败订单
php artisan transfer:clean --status=-1 --dry-run
# 清理30天前的已完成和失败订单
php artisan transfer:clean --force
# 清理90天前的数据
php artisan transfer:clean --days=90
# 只清理失败订单
php artisan transfer:clean --status=-1
# 每次只处理500条记录
php artisan transfer:clean --limit=500
# 大批量清理,每次2000条
php artisan transfer:clean --limit=2000 --days=180
Transfer模块的数据清理功能是一个重要的维护工具,"过期"在这里指的是超过保留期限的历史数据。通过定期清理这些数据,可以:
这是一个标准的数据生命周期管理功能,在大多数业务系统中都是必需的。