docs: 批量更新历史文档中的 backend-single 引用为 server
This commit is contained in:
@@ -16,28 +16,28 @@
|
||||
|
||||
| Action | File | Responsibility |
|
||||
| --- | --- | --- |
|
||||
| Create | `backend-single/src/main/java/com/emotion/config/WechatMiniProgramProperties.java` | Binds WeChat mini program appid, secret, and API base URL from application config. |
|
||||
| Create | `backend-single/src/main/resources/db/migration/V20260531__add_unique_wechat_identity.sql` | Prevents duplicate non-null WeChat third-party identities. |
|
||||
| Modify | `backend-single/src/main/resources/application.yml` | Adds default WeChat config keys and public login endpoint allowlist. |
|
||||
| Modify | `backend-single/src/main/java/com/emotion/config/WebMvcConfig.java` | Excludes `/auth/wechat/login` from JWT interception. |
|
||||
| Modify | `backend-single/src/main/java/com/emotion/interceptor/JwtAuthInterceptor.java` | Excludes `/api/auth/wechat/login` from the interceptor's internal public endpoint list. |
|
||||
| Create | `backend-single/src/main/java/com/emotion/dto/request/WechatLoginRequest.java` | Request body for WeChat openid login. |
|
||||
| Create | `backend-single/src/main/java/com/emotion/dto/request/WechatPhoneBindRequest.java` | Request body for WeChat phone binding. |
|
||||
| Create | `backend-single/src/main/java/com/emotion/dto/wechat/WechatCodeSessionResponse.java` | Internal DTO for WeChat `code2Session` response. |
|
||||
| Create | `backend-single/src/main/java/com/emotion/dto/wechat/WechatAccessTokenResponse.java` | Internal DTO for WeChat access token response. |
|
||||
| Create | `backend-single/src/main/java/com/emotion/dto/wechat/WechatPhoneNumberResponse.java` | Internal DTO for WeChat phone number response. |
|
||||
| Create | `backend-single/src/main/java/com/emotion/service/WechatMiniProgramService.java` | Interface for WeChat API calls. |
|
||||
| Create | `backend-single/src/main/java/com/emotion/service/impl/WechatMiniProgramServiceImpl.java` | RestTemplate-backed WeChat client with Redis token caching. |
|
||||
| Create | `backend-single/src/main/java/com/emotion/service/UserIdentityMergeService.java` | Defines temporary WeChat user to phone user data transfer. |
|
||||
| Create | `backend-single/src/main/java/com/emotion/service/impl/UserIdentityMergeServiceImpl.java` | Transfers user-owned rows and avoids singleton row conflicts. |
|
||||
| Modify | `backend-single/src/main/java/com/emotion/dto/response/UserInfoResponse.java` | Adds non-sensitive `wechatBound` flag for frontend display logic. |
|
||||
| Modify | `backend-single/src/main/java/com/emotion/service/UserService.java` | Adds third-party identity lookup helper. |
|
||||
| Modify | `backend-single/src/main/java/com/emotion/service/impl/UserServiceImpl.java` | Implements third-party identity lookup. |
|
||||
| Modify | `backend-single/src/main/java/com/emotion/service/AuthService.java` | Adds WeChat login and phone binding operations. |
|
||||
| Modify | `backend-single/src/main/java/com/emotion/service/impl/AuthServiceImpl.java` | Implements openid login, phone identity merge/bind, and token issuing reuse. |
|
||||
| Modify | `backend-single/src/main/java/com/emotion/controller/AuthController.java` | Adds `/auth/wechat/login` and `/auth/wechat/phone`. |
|
||||
| Test | `backend-single/src/test/java/com/emotion/controller/AuthControllerTest.java` | Verifies controller contract. |
|
||||
| Test | `backend-single/src/test/java/com/emotion/service/AuthServiceWechatTest.java` | Verifies identity matching and binding behavior. |
|
||||
| Create | `server/src/main/java/com/emotion/config/WechatMiniProgramProperties.java` | Binds WeChat mini program appid, secret, and API base URL from application config. |
|
||||
| Create | `server/src/main/resources/db/migration/V20260531__add_unique_wechat_identity.sql` | Prevents duplicate non-null WeChat third-party identities. |
|
||||
| Modify | `server/src/main/resources/application.yml` | Adds default WeChat config keys and public login endpoint allowlist. |
|
||||
| Modify | `server/src/main/java/com/emotion/config/WebMvcConfig.java` | Excludes `/auth/wechat/login` from JWT interception. |
|
||||
| Modify | `server/src/main/java/com/emotion/interceptor/JwtAuthInterceptor.java` | Excludes `/api/auth/wechat/login` from the interceptor's internal public endpoint list. |
|
||||
| Create | `server/src/main/java/com/emotion/dto/request/WechatLoginRequest.java` | Request body for WeChat openid login. |
|
||||
| Create | `server/src/main/java/com/emotion/dto/request/WechatPhoneBindRequest.java` | Request body for WeChat phone binding. |
|
||||
| Create | `server/src/main/java/com/emotion/dto/wechat/WechatCodeSessionResponse.java` | Internal DTO for WeChat `code2Session` response. |
|
||||
| Create | `server/src/main/java/com/emotion/dto/wechat/WechatAccessTokenResponse.java` | Internal DTO for WeChat access token response. |
|
||||
| Create | `server/src/main/java/com/emotion/dto/wechat/WechatPhoneNumberResponse.java` | Internal DTO for WeChat phone number response. |
|
||||
| Create | `server/src/main/java/com/emotion/service/WechatMiniProgramService.java` | Interface for WeChat API calls. |
|
||||
| Create | `server/src/main/java/com/emotion/service/impl/WechatMiniProgramServiceImpl.java` | RestTemplate-backed WeChat client with Redis token caching. |
|
||||
| Create | `server/src/main/java/com/emotion/service/UserIdentityMergeService.java` | Defines temporary WeChat user to phone user data transfer. |
|
||||
| Create | `server/src/main/java/com/emotion/service/impl/UserIdentityMergeServiceImpl.java` | Transfers user-owned rows and avoids singleton row conflicts. |
|
||||
| Modify | `server/src/main/java/com/emotion/dto/response/UserInfoResponse.java` | Adds non-sensitive `wechatBound` flag for frontend display logic. |
|
||||
| Modify | `server/src/main/java/com/emotion/service/UserService.java` | Adds third-party identity lookup helper. |
|
||||
| Modify | `server/src/main/java/com/emotion/service/impl/UserServiceImpl.java` | Implements third-party identity lookup. |
|
||||
| Modify | `server/src/main/java/com/emotion/service/AuthService.java` | Adds WeChat login and phone binding operations. |
|
||||
| Modify | `server/src/main/java/com/emotion/service/impl/AuthServiceImpl.java` | Implements openid login, phone identity merge/bind, and token issuing reuse. |
|
||||
| Modify | `server/src/main/java/com/emotion/controller/AuthController.java` | Adds `/auth/wechat/login` and `/auth/wechat/phone`. |
|
||||
| Test | `server/src/test/java/com/emotion/controller/AuthControllerTest.java` | Verifies controller contract. |
|
||||
| Test | `server/src/test/java/com/emotion/service/AuthServiceWechatTest.java` | Verifies identity matching and binding behavior. |
|
||||
| Modify | `mini-program/src/services/auth.js` | Adds `wechatLogin` and `bindWechatPhone`. |
|
||||
| Modify | `mini-program/src/stores/app.js` | Adds store methods and tracks returned auth user info. |
|
||||
| Modify | `mini-program/src/pages/login/index.vue` | Adds WeChat primary login while keeping phone/SMS form. |
|
||||
@@ -48,20 +48,20 @@
|
||||
### Task 1: Backend WeChat Configuration And DTOs
|
||||
|
||||
**Files:**
|
||||
- Create: `backend-single/src/main/java/com/emotion/config/WechatMiniProgramProperties.java`
|
||||
- Create: `backend-single/src/main/resources/db/migration/V20260531__add_unique_wechat_identity.sql`
|
||||
- Create: `backend-single/src/main/java/com/emotion/dto/request/WechatLoginRequest.java`
|
||||
- Create: `backend-single/src/main/java/com/emotion/dto/request/WechatPhoneBindRequest.java`
|
||||
- Create: `backend-single/src/main/java/com/emotion/dto/wechat/WechatCodeSessionResponse.java`
|
||||
- Create: `backend-single/src/main/java/com/emotion/dto/wechat/WechatAccessTokenResponse.java`
|
||||
- Create: `backend-single/src/main/java/com/emotion/dto/wechat/WechatPhoneNumberResponse.java`
|
||||
- Modify: `backend-single/src/main/java/com/emotion/dto/response/UserInfoResponse.java`
|
||||
- Modify: `backend-single/src/main/resources/application.yml`
|
||||
- Create: `server/src/main/java/com/emotion/config/WechatMiniProgramProperties.java`
|
||||
- Create: `server/src/main/resources/db/migration/V20260531__add_unique_wechat_identity.sql`
|
||||
- Create: `server/src/main/java/com/emotion/dto/request/WechatLoginRequest.java`
|
||||
- Create: `server/src/main/java/com/emotion/dto/request/WechatPhoneBindRequest.java`
|
||||
- Create: `server/src/main/java/com/emotion/dto/wechat/WechatCodeSessionResponse.java`
|
||||
- Create: `server/src/main/java/com/emotion/dto/wechat/WechatAccessTokenResponse.java`
|
||||
- Create: `server/src/main/java/com/emotion/dto/wechat/WechatPhoneNumberResponse.java`
|
||||
- Modify: `server/src/main/java/com/emotion/dto/response/UserInfoResponse.java`
|
||||
- Modify: `server/src/main/resources/application.yml`
|
||||
- Test: backend compile
|
||||
|
||||
- [ ] **Step 1: Create WeChat configuration properties**
|
||||
|
||||
Create `backend-single/src/main/java/com/emotion/config/WechatMiniProgramProperties.java`:
|
||||
Create `server/src/main/java/com/emotion/config/WechatMiniProgramProperties.java`:
|
||||
|
||||
```java
|
||||
package com.emotion.config;
|
||||
@@ -82,7 +82,7 @@ public class WechatMiniProgramProperties {
|
||||
|
||||
- [ ] **Step 2: Create public request DTOs**
|
||||
|
||||
Create `backend-single/src/main/java/com/emotion/dto/request/WechatLoginRequest.java`:
|
||||
Create `server/src/main/java/com/emotion/dto/request/WechatLoginRequest.java`:
|
||||
|
||||
```java
|
||||
package com.emotion.dto.request;
|
||||
@@ -102,7 +102,7 @@ public class WechatLoginRequest {
|
||||
}
|
||||
```
|
||||
|
||||
Create `backend-single/src/main/java/com/emotion/dto/request/WechatPhoneBindRequest.java`:
|
||||
Create `server/src/main/java/com/emotion/dto/request/WechatPhoneBindRequest.java`:
|
||||
|
||||
```java
|
||||
package com.emotion.dto.request;
|
||||
@@ -120,7 +120,7 @@ public class WechatPhoneBindRequest {
|
||||
|
||||
- [ ] **Step 3: Create internal WeChat API response DTOs**
|
||||
|
||||
Create `backend-single/src/main/java/com/emotion/dto/wechat/WechatCodeSessionResponse.java`:
|
||||
Create `server/src/main/java/com/emotion/dto/wechat/WechatCodeSessionResponse.java`:
|
||||
|
||||
```java
|
||||
package com.emotion.dto.wechat;
|
||||
@@ -147,7 +147,7 @@ public class WechatCodeSessionResponse {
|
||||
}
|
||||
```
|
||||
|
||||
Create `backend-single/src/main/java/com/emotion/dto/wechat/WechatAccessTokenResponse.java`:
|
||||
Create `server/src/main/java/com/emotion/dto/wechat/WechatAccessTokenResponse.java`:
|
||||
|
||||
```java
|
||||
package com.emotion.dto.wechat;
|
||||
@@ -173,7 +173,7 @@ public class WechatAccessTokenResponse {
|
||||
}
|
||||
```
|
||||
|
||||
Create `backend-single/src/main/java/com/emotion/dto/wechat/WechatPhoneNumberResponse.java`:
|
||||
Create `server/src/main/java/com/emotion/dto/wechat/WechatPhoneNumberResponse.java`:
|
||||
|
||||
```java
|
||||
package com.emotion.dto.wechat;
|
||||
@@ -213,7 +213,7 @@ public class WechatPhoneNumberResponse {
|
||||
|
||||
- [ ] **Step 4: Add WeChat config keys**
|
||||
|
||||
In `backend-single/src/main/resources/application.yml`, under `emotion:`, add:
|
||||
In `server/src/main/resources/application.yml`, under `emotion:`, add:
|
||||
|
||||
```yaml
|
||||
wechat:
|
||||
@@ -239,7 +239,7 @@ HAVING COUNT(*) > 1;
|
||||
|
||||
Expected: no rows. If rows exist, resolve duplicates before adding the index.
|
||||
|
||||
Create `backend-single/src/main/resources/db/migration/V20260531__add_unique_wechat_identity.sql`:
|
||||
Create `server/src/main/resources/db/migration/V20260531__add_unique_wechat_identity.sql`:
|
||||
|
||||
```sql
|
||||
ALTER TABLE t_user
|
||||
@@ -250,7 +250,7 @@ MySQL permits multiple `NULL` values in a unique index, so users without WeChat
|
||||
|
||||
- [ ] **Step 6: Add non-sensitive WeChat binding flag**
|
||||
|
||||
In `backend-single/src/main/java/com/emotion/dto/response/UserInfoResponse.java`, add:
|
||||
In `server/src/main/java/com/emotion/dto/response/UserInfoResponse.java`, add:
|
||||
|
||||
```java
|
||||
/**
|
||||
@@ -264,7 +264,7 @@ private Boolean wechatBound;
|
||||
Run:
|
||||
|
||||
```bash
|
||||
cd backend-single
|
||||
cd server
|
||||
mvn -q -DskipTests compile
|
||||
```
|
||||
|
||||
@@ -273,15 +273,15 @@ Expected: command exits with status `0`.
|
||||
- [ ] **Step 8: Commit**
|
||||
|
||||
```bash
|
||||
git add backend-single/src/main/java/com/emotion/config/WechatMiniProgramProperties.java
|
||||
git add backend-single/src/main/resources/db/migration/V20260531__add_unique_wechat_identity.sql
|
||||
git add backend-single/src/main/java/com/emotion/dto/request/WechatLoginRequest.java
|
||||
git add backend-single/src/main/java/com/emotion/dto/request/WechatPhoneBindRequest.java
|
||||
git add backend-single/src/main/java/com/emotion/dto/wechat/WechatCodeSessionResponse.java
|
||||
git add backend-single/src/main/java/com/emotion/dto/wechat/WechatAccessTokenResponse.java
|
||||
git add backend-single/src/main/java/com/emotion/dto/wechat/WechatPhoneNumberResponse.java
|
||||
git add backend-single/src/main/java/com/emotion/dto/response/UserInfoResponse.java
|
||||
git add backend-single/src/main/resources/application.yml
|
||||
git add server/src/main/java/com/emotion/config/WechatMiniProgramProperties.java
|
||||
git add server/src/main/resources/db/migration/V20260531__add_unique_wechat_identity.sql
|
||||
git add server/src/main/java/com/emotion/dto/request/WechatLoginRequest.java
|
||||
git add server/src/main/java/com/emotion/dto/request/WechatPhoneBindRequest.java
|
||||
git add server/src/main/java/com/emotion/dto/wechat/WechatCodeSessionResponse.java
|
||||
git add server/src/main/java/com/emotion/dto/wechat/WechatAccessTokenResponse.java
|
||||
git add server/src/main/java/com/emotion/dto/wechat/WechatPhoneNumberResponse.java
|
||||
git add server/src/main/java/com/emotion/dto/response/UserInfoResponse.java
|
||||
git add server/src/main/resources/application.yml
|
||||
git commit -m "feat: add wechat mini program auth DTOs and config"
|
||||
```
|
||||
|
||||
@@ -290,13 +290,13 @@ git commit -m "feat: add wechat mini program auth DTOs and config"
|
||||
### Task 2: Backend WeChat API Client
|
||||
|
||||
**Files:**
|
||||
- Create: `backend-single/src/main/java/com/emotion/service/WechatMiniProgramService.java`
|
||||
- Create: `backend-single/src/main/java/com/emotion/service/impl/WechatMiniProgramServiceImpl.java`
|
||||
- Test: `backend-single/src/test/java/com/emotion/service/WechatMiniProgramServiceImplTest.java`
|
||||
- Create: `server/src/main/java/com/emotion/service/WechatMiniProgramService.java`
|
||||
- Create: `server/src/main/java/com/emotion/service/impl/WechatMiniProgramServiceImpl.java`
|
||||
- Test: `server/src/test/java/com/emotion/service/WechatMiniProgramServiceImplTest.java`
|
||||
|
||||
- [ ] **Step 1: Create service interface**
|
||||
|
||||
Create `backend-single/src/main/java/com/emotion/service/WechatMiniProgramService.java`:
|
||||
Create `server/src/main/java/com/emotion/service/WechatMiniProgramService.java`:
|
||||
|
||||
```java
|
||||
package com.emotion.service;
|
||||
@@ -313,7 +313,7 @@ public interface WechatMiniProgramService {
|
||||
|
||||
- [ ] **Step 2: Create RestTemplate implementation**
|
||||
|
||||
Create `backend-single/src/main/java/com/emotion/service/impl/WechatMiniProgramServiceImpl.java`:
|
||||
Create `server/src/main/java/com/emotion/service/impl/WechatMiniProgramServiceImpl.java`:
|
||||
|
||||
```java
|
||||
package com.emotion.service.impl;
|
||||
@@ -434,7 +434,7 @@ public class WechatMiniProgramServiceImpl implements WechatMiniProgramService {
|
||||
|
||||
- [ ] **Step 3: Create focused unit tests for error behavior**
|
||||
|
||||
Create `backend-single/src/test/java/com/emotion/service/WechatMiniProgramServiceImplTest.java`:
|
||||
Create `server/src/test/java/com/emotion/service/WechatMiniProgramServiceImplTest.java`:
|
||||
|
||||
```java
|
||||
package com.emotion.service;
|
||||
@@ -470,7 +470,7 @@ class WechatMiniProgramServiceImplTest {
|
||||
- [ ] **Step 4: Run test**
|
||||
|
||||
```bash
|
||||
cd backend-single
|
||||
cd server
|
||||
mvn -q -Dtest=WechatMiniProgramServiceImplTest test
|
||||
```
|
||||
|
||||
@@ -479,9 +479,9 @@ Expected: command exits with status `0`.
|
||||
- [ ] **Step 5: Commit**
|
||||
|
||||
```bash
|
||||
git add backend-single/src/main/java/com/emotion/service/WechatMiniProgramService.java
|
||||
git add backend-single/src/main/java/com/emotion/service/impl/WechatMiniProgramServiceImpl.java
|
||||
git add backend-single/src/test/java/com/emotion/service/WechatMiniProgramServiceImplTest.java
|
||||
git add server/src/main/java/com/emotion/service/WechatMiniProgramService.java
|
||||
git add server/src/main/java/com/emotion/service/impl/WechatMiniProgramServiceImpl.java
|
||||
git add server/src/test/java/com/emotion/service/WechatMiniProgramServiceImplTest.java
|
||||
git commit -m "feat: add wechat mini program API client"
|
||||
```
|
||||
|
||||
@@ -490,13 +490,13 @@ git commit -m "feat: add wechat mini program API client"
|
||||
### Task 3: Backend User Identity Merge Service
|
||||
|
||||
**Files:**
|
||||
- Create: `backend-single/src/main/java/com/emotion/service/UserIdentityMergeService.java`
|
||||
- Create: `backend-single/src/main/java/com/emotion/service/impl/UserIdentityMergeServiceImpl.java`
|
||||
- Test: `backend-single/src/test/java/com/emotion/service/UserIdentityMergeServiceImplTest.java`
|
||||
- Create: `server/src/main/java/com/emotion/service/UserIdentityMergeService.java`
|
||||
- Create: `server/src/main/java/com/emotion/service/impl/UserIdentityMergeServiceImpl.java`
|
||||
- Test: `server/src/test/java/com/emotion/service/UserIdentityMergeServiceImplTest.java`
|
||||
|
||||
- [ ] **Step 1: Create merge service interface**
|
||||
|
||||
Create `backend-single/src/main/java/com/emotion/service/UserIdentityMergeService.java`:
|
||||
Create `server/src/main/java/com/emotion/service/UserIdentityMergeService.java`:
|
||||
|
||||
```java
|
||||
package com.emotion.service;
|
||||
@@ -508,7 +508,7 @@ public interface UserIdentityMergeService {
|
||||
|
||||
- [ ] **Step 2: Create JdbcTemplate implementation**
|
||||
|
||||
Create `backend-single/src/main/java/com/emotion/service/impl/UserIdentityMergeServiceImpl.java`:
|
||||
Create `server/src/main/java/com/emotion/service/impl/UserIdentityMergeServiceImpl.java`:
|
||||
|
||||
```java
|
||||
package com.emotion.service.impl;
|
||||
@@ -592,7 +592,7 @@ public class UserIdentityMergeServiceImpl implements UserIdentityMergeService {
|
||||
|
||||
- [ ] **Step 3: Add merge service test**
|
||||
|
||||
Create `backend-single/src/test/java/com/emotion/service/UserIdentityMergeServiceImplTest.java`:
|
||||
Create `server/src/test/java/com/emotion/service/UserIdentityMergeServiceImplTest.java`:
|
||||
|
||||
```java
|
||||
package com.emotion.service;
|
||||
@@ -626,7 +626,7 @@ class UserIdentityMergeServiceImplTest {
|
||||
- [ ] **Step 4: Run merge service test**
|
||||
|
||||
```bash
|
||||
cd backend-single
|
||||
cd server
|
||||
mvn -q -Dtest=UserIdentityMergeServiceImplTest test
|
||||
```
|
||||
|
||||
@@ -635,9 +635,9 @@ Expected: command exits with status `0`.
|
||||
- [ ] **Step 5: Commit**
|
||||
|
||||
```bash
|
||||
git add backend-single/src/main/java/com/emotion/service/UserIdentityMergeService.java
|
||||
git add backend-single/src/main/java/com/emotion/service/impl/UserIdentityMergeServiceImpl.java
|
||||
git add backend-single/src/test/java/com/emotion/service/UserIdentityMergeServiceImplTest.java
|
||||
git add server/src/main/java/com/emotion/service/UserIdentityMergeService.java
|
||||
git add server/src/main/java/com/emotion/service/impl/UserIdentityMergeServiceImpl.java
|
||||
git add server/src/test/java/com/emotion/service/UserIdentityMergeServiceImplTest.java
|
||||
git commit -m "feat: add wechat user identity merge service"
|
||||
```
|
||||
|
||||
@@ -646,22 +646,22 @@ git commit -m "feat: add wechat user identity merge service"
|
||||
### Task 4: Backend User Lookup And Auth Service Methods
|
||||
|
||||
**Files:**
|
||||
- Modify: `backend-single/src/main/java/com/emotion/service/UserService.java`
|
||||
- Modify: `backend-single/src/main/java/com/emotion/service/impl/UserServiceImpl.java`
|
||||
- Modify: `backend-single/src/main/java/com/emotion/service/AuthService.java`
|
||||
- Modify: `backend-single/src/main/java/com/emotion/service/impl/AuthServiceImpl.java`
|
||||
- Modify: `backend-single/src/main/java/com/emotion/dto/response/UserInfoResponse.java`
|
||||
- Test: `backend-single/src/test/java/com/emotion/service/AuthServiceWechatTest.java`
|
||||
- Modify: `server/src/main/java/com/emotion/service/UserService.java`
|
||||
- Modify: `server/src/main/java/com/emotion/service/impl/UserServiceImpl.java`
|
||||
- Modify: `server/src/main/java/com/emotion/service/AuthService.java`
|
||||
- Modify: `server/src/main/java/com/emotion/service/impl/AuthServiceImpl.java`
|
||||
- Modify: `server/src/main/java/com/emotion/dto/response/UserInfoResponse.java`
|
||||
- Test: `server/src/test/java/com/emotion/service/AuthServiceWechatTest.java`
|
||||
|
||||
- [ ] **Step 1: Add third-party lookup to UserService**
|
||||
|
||||
In `backend-single/src/main/java/com/emotion/service/UserService.java`, add:
|
||||
In `server/src/main/java/com/emotion/service/UserService.java`, add:
|
||||
|
||||
```java
|
||||
User getByThirdParty(String thirdPartyType, String thirdPartyId);
|
||||
```
|
||||
|
||||
In `backend-single/src/main/java/com/emotion/service/impl/UserServiceImpl.java`, add:
|
||||
In `server/src/main/java/com/emotion/service/impl/UserServiceImpl.java`, add:
|
||||
|
||||
```java
|
||||
@Override
|
||||
@@ -679,7 +679,7 @@ public User getByThirdParty(String thirdPartyType, String thirdPartyId) {
|
||||
|
||||
- [ ] **Step 2: Add AuthService methods**
|
||||
|
||||
In `backend-single/src/main/java/com/emotion/service/AuthService.java`, import the two request DTOs and add:
|
||||
In `server/src/main/java/com/emotion/service/AuthService.java`, import the two request DTOs and add:
|
||||
|
||||
```java
|
||||
AuthResponse wechatLogin(WechatLoginRequest request);
|
||||
@@ -858,7 +858,7 @@ public AuthResponse bindWechatPhone(String currentUserId, WechatPhoneBindRequest
|
||||
- [ ] **Step 8: Compile backend**
|
||||
|
||||
```bash
|
||||
cd backend-single
|
||||
cd server
|
||||
mvn -q -DskipTests compile
|
||||
```
|
||||
|
||||
@@ -866,7 +866,7 @@ Expected: command exits with status `0`.
|
||||
|
||||
- [ ] **Step 9: Add service tests for identity rules**
|
||||
|
||||
Create `backend-single/src/test/java/com/emotion/service/AuthServiceWechatTest.java`:
|
||||
Create `server/src/test/java/com/emotion/service/AuthServiceWechatTest.java`:
|
||||
|
||||
```java
|
||||
package com.emotion.service;
|
||||
@@ -1002,7 +1002,7 @@ class AuthServiceWechatTest {
|
||||
- [ ] **Step 10: Run auth tests**
|
||||
|
||||
```bash
|
||||
cd backend-single
|
||||
cd server
|
||||
mvn -q -Dtest=AuthControllerTest,AuthServiceWechatTest,UserIdentityMergeServiceImplTest test
|
||||
```
|
||||
|
||||
@@ -1011,12 +1011,12 @@ Expected: command exits with status `0`.
|
||||
- [ ] **Step 11: Commit**
|
||||
|
||||
```bash
|
||||
git add backend-single/src/main/java/com/emotion/service/UserService.java
|
||||
git add backend-single/src/main/java/com/emotion/service/impl/UserServiceImpl.java
|
||||
git add backend-single/src/main/java/com/emotion/service/AuthService.java
|
||||
git add backend-single/src/main/java/com/emotion/service/impl/AuthServiceImpl.java
|
||||
git add backend-single/src/main/java/com/emotion/dto/response/UserInfoResponse.java
|
||||
git add backend-single/src/test/java/com/emotion/service/AuthServiceWechatTest.java
|
||||
git add server/src/main/java/com/emotion/service/UserService.java
|
||||
git add server/src/main/java/com/emotion/service/impl/UserServiceImpl.java
|
||||
git add server/src/main/java/com/emotion/service/AuthService.java
|
||||
git add server/src/main/java/com/emotion/service/impl/AuthServiceImpl.java
|
||||
git add server/src/main/java/com/emotion/dto/response/UserInfoResponse.java
|
||||
git add server/src/test/java/com/emotion/service/AuthServiceWechatTest.java
|
||||
git commit -m "feat: add wechat auth identity binding logic"
|
||||
```
|
||||
|
||||
@@ -1025,10 +1025,10 @@ git commit -m "feat: add wechat auth identity binding logic"
|
||||
### Task 5: Backend Auth Controller And Security Allowlist
|
||||
|
||||
**Files:**
|
||||
- Modify: `backend-single/src/main/java/com/emotion/controller/AuthController.java`
|
||||
- Modify: `backend-single/src/main/java/com/emotion/config/WebMvcConfig.java`
|
||||
- Modify: `backend-single/src/main/java/com/emotion/interceptor/JwtAuthInterceptor.java`
|
||||
- Test: `backend-single/src/test/java/com/emotion/controller/AuthControllerTest.java`
|
||||
- Modify: `server/src/main/java/com/emotion/controller/AuthController.java`
|
||||
- Modify: `server/src/main/java/com/emotion/config/WebMvcConfig.java`
|
||||
- Modify: `server/src/main/java/com/emotion/interceptor/JwtAuthInterceptor.java`
|
||||
- Test: `server/src/test/java/com/emotion/controller/AuthControllerTest.java`
|
||||
|
||||
- [ ] **Step 1: Add controller endpoints**
|
||||
|
||||
@@ -1126,7 +1126,7 @@ public void testWechatPhoneBind() throws Exception {
|
||||
- [ ] **Step 5: Run controller tests**
|
||||
|
||||
```bash
|
||||
cd backend-single
|
||||
cd server
|
||||
mvn -q -Dtest=AuthControllerTest test
|
||||
```
|
||||
|
||||
@@ -1135,10 +1135,10 @@ Expected: command exits with status `0`.
|
||||
- [ ] **Step 6: Commit**
|
||||
|
||||
```bash
|
||||
git add backend-single/src/main/java/com/emotion/controller/AuthController.java
|
||||
git add backend-single/src/main/java/com/emotion/config/WebMvcConfig.java
|
||||
git add backend-single/src/main/java/com/emotion/interceptor/JwtAuthInterceptor.java
|
||||
git add backend-single/src/test/java/com/emotion/controller/AuthControllerTest.java
|
||||
git add server/src/main/java/com/emotion/controller/AuthController.java
|
||||
git add server/src/main/java/com/emotion/config/WebMvcConfig.java
|
||||
git add server/src/main/java/com/emotion/interceptor/JwtAuthInterceptor.java
|
||||
git add server/src/test/java/com/emotion/controller/AuthControllerTest.java
|
||||
git commit -m "feat: expose wechat auth endpoints"
|
||||
```
|
||||
|
||||
@@ -1596,7 +1596,7 @@ git commit -m "feat: add wechat phone binding entry"
|
||||
- [ ] **Step 1: Run backend auth tests**
|
||||
|
||||
```bash
|
||||
cd backend-single
|
||||
cd server
|
||||
mvn -q -Dtest=AuthControllerTest,AuthServiceWechatTest,WechatMiniProgramServiceImplTest,UserIdentityMergeServiceImplTest test
|
||||
```
|
||||
|
||||
@@ -1605,7 +1605,7 @@ Expected: command exits with status `0`.
|
||||
- [ ] **Step 2: Compile backend**
|
||||
|
||||
```bash
|
||||
cd backend-single
|
||||
cd server
|
||||
mvn -q -DskipTests compile
|
||||
```
|
||||
|
||||
@@ -1633,7 +1633,7 @@ Open `mini-program/unpackage/dist/build/mp-weixin` in WeChat DevTools and verify
|
||||
|
||||
- [ ] **Step 5: Add README note if config is not documented elsewhere**
|
||||
|
||||
If no deployment doc already lists WeChat env vars, add this section to `mini-program/README.md` or `backend-single/部署说明.md`:
|
||||
If no deployment doc already lists WeChat env vars, add this section to `mini-program/README.md` or `server/部署说明.md`:
|
||||
|
||||
```markdown
|
||||
### WeChat Mini Program Login
|
||||
|
||||
Reference in New Issue
Block a user