rwadurian/frontend/mobile-app/lib/core/services
hailin a38aac5581 feat(email): 实现邮箱绑定/解绑功能
后端:
- 新增 EmailService 邮件发送服务,支持 Gmail SMTP
- 新增 EmailCode 数据模型用于存储邮箱验证码
- UserAccount 添加 email 字段
- 新增 API 接口:
  - GET /user/email-status 获取邮箱绑定状态
  - POST /user/send-email-code 发送邮箱验证码
  - POST /user/bind-email 绑定邮箱
  - POST /user/unbind-email 解绑邮箱
- 新增 DTOs: SendEmailCodeDto, BindEmailDto, UnbindEmailDto
- 新增 Commands: SendEmailCodeCommand, BindEmailCommand, UnbindEmailCommand

前端:
- account_service 新增邮箱相关方法和 EmailStatus 类
- bind_email_page 更新为使用真实 API:
  - 绑定/更换邮箱功能
  - 独立的解绑验证码输入和倒计时
  - 解绑确认对话框

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 20:53:20 -08:00
..
account_service.dart feat(email): 实现邮箱绑定/解绑功能 2025-12-23 20:53:20 -08:00
auth_event_service.dart feat(auth): 实现修改密码API和Token过期自动跳转登录 2025-12-23 20:25:56 -08:00
authorization_service.dart feat(authorization): 优化市/省团队自助申请逻辑 2025-12-22 22:52:39 -08:00
deposit_service.dart feat(deposit): add deposit balance API and Kafka consumer for deposit events 2025-12-09 02:29:31 -08:00
multi_account_service.dart feat(auth): 实现修改密码API和Token过期自动跳转登录 2025-12-23 20:25:56 -08:00
notification_service.dart feat(notification): 添加通知中心功能 2025-12-14 20:45:03 -08:00
planting_service.dart fix(mobile-app): 修正认种价格为15831 USDT/棵 2025-12-22 20:15:49 -08:00
referral_service.dart feat(profile): 添加我的伞下功能 - 展示下级用户树形结构 2025-12-14 10:34:56 -08:00
reward_service.dart fix(reward): 为 ExpiredRewardItem 添加 rightTypeName getter 别名 2025-12-17 08:09:11 -08:00
system_config_service.dart chore: 提交所有未提交的修改 2025-12-19 06:09:43 -08:00
wallet_service.dart fix(mobile-app): 点击"全部"时扣除手续费计算最大可转金额 2025-12-22 22:36:20 -08:00