rwadurian/frontend/mobile-app/lib/features
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/presentation/pages fix(frontend): 添加新账号时显示加载状态提示 2025-12-15 06:14:49 -08:00
auth/presentation feat: 实现手机号+密码登录和账号恢复功能 2025-12-20 20:35:44 -08:00
authorization/presentation chore: 提交所有未提交的修改 2025-12-19 06:09:43 -08:00
deposit/presentation/pages fix(mobile-app): 修复 deposit_usdt_page 中未定义的 _loadWalletData 方法 2025-12-19 22:22:45 -08:00
home/presentation refactor(splash): 简化开屏动画为纯帧播放,恢复监控Tab 2025-12-15 03:28:53 -08:00
mining/presentation/pages feat(frontend): 多项功能改进 2025-12-15 04:04:21 -08:00
notification/presentation/pages feat(notification): 添加通知中心功能 2025-12-14 20:45:03 -08:00
planting/presentation feat(ui): 将全部"积分"更名为"绿积分" 2025-12-16 07:49:45 -08:00
profile/presentation feat(mobile-app): 添加钱包生成状态轮询和UI显示 2025-12-20 19:59:02 -08:00
ranking/presentation/pages feat(ui): 优化待领取明细显示和移除认种数量限制 2025-12-16 22:46:48 -08:00
security/presentation/pages fix(referral): correct response parsing for authorization-service API 2025-12-11 03:08:50 -08:00
share/presentation/pages feat(frontend): 多项功能改进 2025-12-15 04:04:21 -08:00
trading/presentation/pages chore: 提交所有未提交的修改 2025-12-19 06:09:43 -08:00
withdraw/presentation/pages chore: 提交所有未提交的修改 2025-12-19 06:09:43 -08:00