-- URS推广模块推荐码功能移除记录
-- 移除时间: 2025-06-15 18:01
-- 版本: v3.0.0 (分离映射关系版本)
-- 移除说明: 完全移除推荐码功能，简化系统架构

-- ========================================
-- 移除内容概述
-- ========================================

-- 1. 数据库表移除
--    - 删除表: kku_urs_promotion_referral_codes
--    - 移除字段: kku_urs_promotion_user_referrals.referral_code

-- 2. 模型更新
--    - UrsUserReferral模型: 移除referral_code字段和相关逻辑
--    - 更新$fillable数组，移除referral_code

-- 3. 服务层更新
--    - UrsReferralService: 移除createReferral方法的referral_code参数
--    - 移除推荐码相关的日志记录

-- 4. 后台管理更新
--    - UrsUserReferralController: 移除推荐码相关的显示和过滤
--    - 更新Grid和Show方法，移除referral_code列

-- 5. 测试命令更新
--    - UrsPromotionIntegrationTestCommand: 更新测试数据，移除推荐码

-- 6. 文档更新
--    - 数据库设计.md: 更新版本说明，移除推荐码相关描述
--    - README.md: 更新推荐关系说明，强调无推荐码机制

-- ========================================
-- 已执行的SQL语句
-- ========================================

-- 删除推荐码表
-- DROP TABLE IF EXISTS `kku_urs_promotion_referral_codes`;

-- 移除推荐关系表中的推荐码字段
-- ALTER TABLE `kku_urs_promotion_user_referrals` 
-- DROP KEY `idx_referral_code`,
-- DROP COLUMN `referral_code`;

-- ========================================
-- 移除后的表结构
-- ========================================

-- kku_urs_promotion_user_referrals表结构 (移除推荐码后)
-- 字段: id, urs_user_id, urs_referrer_id, referral_time, status, created_at, updated_at

-- ========================================
-- 移除验证查询
-- ========================================

-- 验证推荐码表已删除
SELECT 'Referral Code Table Check' as check_type;
SHOW TABLES LIKE '%referral_code%';

-- 验证推荐关系表字段已移除
SELECT 'Referral Code Field Check' as check_type;
SELECT 
    COUNT(*) as referral_code_field_count
FROM information_schema.COLUMNS 
WHERE TABLE_SCHEMA = DATABASE() 
  AND TABLE_NAME = 'kku_urs_promotion_user_referrals'
  AND COLUMN_NAME = 'referral_code';

-- 验证推荐关系表当前结构
SELECT 'User Referrals Table Structure' as check_type;
DESCRIBE kku_urs_promotion_user_referrals;

-- ========================================
-- 移除原因和优势
-- ========================================

-- 移除原因:
-- 1. 简化系统架构，减少复杂度
-- 2. URS系统直接通过用户ID建立推荐关系，不需要推荐码
-- 3. 减少数据冗余，提升系统性能
-- 4. 降低维护成本，减少潜在的bug

-- 移除后的优势:
-- 1. 系统架构更加简洁清晰
-- 2. 推荐关系建立更加直接高效
-- 3. 减少了推荐码管理的复杂性
-- 4. 降低了数据存储和查询成本
-- 5. 提升了系统的可维护性

-- ========================================
-- 影响评估
-- ========================================

-- 数据影响:
-- - 推荐码表已删除，但无实际数据丢失（表为空）
-- - 推荐关系表的referral_code字段已移除，历史记录功能丢失
-- - 现有推荐关系数据完整保留，功能不受影响

-- 功能影响:
-- - 推荐码生成和验证功能完全移除
-- - 推荐关系建立改为直接通过URS用户ID
-- - 后台管理界面移除推荐码相关显示
-- - API接口参数简化，移除推荐码参数

-- 兼容性影响:
-- - 旧版本的推荐码相关API调用需要更新
-- - 测试用例需要更新，移除推荐码相关测试
-- - 文档需要更新，反映新的架构设计

-- ========================================
-- 移除状态
-- ========================================
-- 状态: 已完成
-- 数据完整性: 已验证
-- 功能测试: 需要验证
-- 文档更新: 已完成
-- 代码清理: 已完成

-- 注意事项:
-- 1. 推荐码功能已完全移除，无法恢复
-- 2. 推荐关系建立现在直接使用URS用户ID
-- 3. 后台管理界面已更新，移除推荐码相关功能
-- 4. 相关测试命令已更新，需要重新验证
-- 5. 建议进行完整的功能测试确保系统正常运行
