rwadurian/frontend/mobile-app/lib/core/services
hailin b4c4239593 feat: 实现手机号+密码登录和账号恢复功能
## 后端更改

### 新增功能
- 添加手机号+密码登录 API (`POST /user/login-with-password`)
  - 新增 LoginWithPasswordDto 验证手机号格式和密码长度
  - 实现 loginWithPassword 服务方法,使用 bcrypt 验证密码
  - 返回 JWT tokens(accessToken + refreshToken)

### 代码优化
- 修复 phone.validator.ts 中的 TypeScript 类型错误(Object -> object)

## 前端更改

### 新增功能
- 实现手机号+密码登录页面 (phone_login_page.dart)
  - 完整的表单验证(手机号格式、密码长度)
  - 集成 AccountService.loginWithPassword API
  - 登录成功后自动更新认证状态并跳转主页

### 账号服务优化
- 在 AccountService 中添加 loginWithPassword 方法
  - 调用后端 login-with-password API
  - 自动保存认证数据(tokens、用户信息)
  - 使用 _savePhoneAuthData 统一保存逻辑

### UI 文案更新
- 向导页文案修改:"创建账号" → "注册账号"
  - 更新标题、副标题和按钮文本
  - 添加"恢复账号"按钮,跳转到手机号密码登录页

## 已验证功能

 前端代码编译通过(0 errors, 仅有非关键警告)
 后端代码编译通过(0 errors, 仅有非关键警告)
 30天登录状态保持(JWT refresh token 已配置为30天)
 自动路由逻辑(有登录状态直接进入主页)

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-20 20:35:44 -08:00
..
account_service.dart feat: 实现手机号+密码登录和账号恢复功能 2025-12-20 20:35:44 -08:00
authorization_service.dart chore: 提交所有未提交的修改 2025-12-19 06:09:43 -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(sentry): 集成 Sentry 自建崩溃收集与错误追踪系统 2025-12-15 07:15:13 -08:00
notification_service.dart feat(notification): 添加通知中心功能 2025-12-14 20:45:03 -08:00
planting_service.dart refactor: use accountSequence as unified user identifier across all services 2025-12-10 13:55:03 -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 feat(auth): 增强提现安全验证 2025-12-19 03:05:53 -08:00