# 2026-06-04 工作日志

## 登录页迁移 (paopao-taro → template-10582)

从 `/Users/gxwebsoft/VUE/paopao-taro/src/passport/login.tsx` 迁移微信手机号快捷登录功能到当前项目。

### 变更文件
1. **`src/passport/login.tsx`** — 完全重写，从手机号+密码表单登录改为微信手机号快捷登录
   - 使用 `openType='getPhoneNumber'` 微信授权登录
   - 调用 `/wx-login/loginByMpWxPhone` 接口
   - 支持邀请参数解析与推荐关系绑定
   - 登录后自动绑定 openid、处理邀请关系
   - 品牌「南南佐顿门窗」，TenantId = 10582
   - 无 logo.png 资源，改用品牌名首字「南」文字 logo

2. **`src/passport/login.scss`** — 新建，从 paopao-taro 迁移的渐变背景登录页样式
   - 紫蓝渐变背景 + 浮动圆圈动画
   - 绿色微信登录按钮
   - 自定义协议勾选框

3. **`src/utils/invite.ts`** — 新增 `checkAndHandleInviteRelation` 函数
   - 登录成功后自动检查并处理待处理的邀请关系
   - 复用已有的 `handleInviteRelation` 函数

### 依赖确认
- `@/api/layout`: `getWxOpenId`, `getUserInfo` ✅ 已有
- `@/utils/server`: `saveStorageByLoginUser`, `SERVER_API_URL` ✅ 已有
- `@/utils/invite`: `parseInviteParams`, `saveInviteParams`, `trackInviteSource`, `hasPendingInvite` ✅ 已有
- `@/config/app`: `TenantId` ✅ 已有 (config/app.ts, TenantId='10582')

### 构建验证
- `taro build --type weapp` 构建成功，无编译错误

## 个人资料完善流程优化 (2026-06-04 17:07)

### 1. 头像检查逻辑简化（仅检查头像）
**文件**: `src/pages/index/Header.tsx`
- `reload()` 中移除昵称检查，仅检查 `hasAvatar`
- 移除监听 `nickname === '微信用户'` 的 `useEffect` 自动跳转逻辑
- 新增 `useDidShow` 钩子：从 profile 页返回时重新检查头像状态

### 2. Profile 页面移除昵称字段
**文件**: `src/user/profile/profile.tsx`
- 删除昵称 `Form.Item`、`getWxNickname` 函数
- 移除 `Input` 导入和 `InputEvent` 类型定义
- 保留头像上传、性别、备注等字段

### 3. 修复头像更新后不立即刷新
**根因**: `useUser` 使用 `useState`，每个组件实例独立持有 state。profile 页更新 `user` 后，UserCard 组件无法感知变化。
**修复**: `src/pages/user/components/UserCard.tsx` 新增 `useDidShow`，页面显示时调用 `fetchUserInfo()` 重新拉取用户数据。

### 4. 修复登出时 Avatar/Nickname 存储未清除
**文件**: `src/hooks/useUser.ts`
- `logoutUser()` 补充清除 `Taro.removeStorageSync('Avatar')` 和 `Taro.removeStorageSync('Nickname')`，防止切换账号时数据残留。

## 后台管理按钮新增 PC 端引导页 (2026-06-04 17:10)

### 背景
用户中心页 UserCell.tsx 中"后台管理"按钮（仅管理员可见）原本跳转到首页占位，现改为引导用户到 PC 端后台。

### 变更
1. **新增页面 `src/admin/redirect/index.tsx`** — PC 端引导页
   - 显示"请在电脑端打开后台管理"提示
   - 展示管理后台地址 `https://nnlzdmc.websoft.top`
   - "复制链接并在电脑浏览器打开"按钮（`Taro.setClipboardData`）
   - 底部提示使用 Chrome/Edge 浏览器

2. **修改 `src/pages/user/components/UserCell.tsx`** — 第 40 行
   - `onClick` 从 `Taro.reLaunch({url: '/pages/index/index'})` 改为 `navTo('/admin/redirect/index', true)`

3. **路由注册** — `app.config.ts` admin 分包已包含 `redirect/index`（已存在配置）

### 构建验证
- `taro build --type weapp` 成功，dist 目录下 `admin/redirect/` 正常输出
