diff --git a/api-spec.yaml b/api-spec.yaml index 036b3fb..562b9c1 100644 --- a/api-spec.yaml +++ b/api-spec.yaml @@ -650,7 +650,7 @@ paths: type: number method: type: string - enum: [wechat, alipay] + enum: [alipay] responses: '200': description: Recharge initiated @@ -939,7 +939,7 @@ paths: properties: method: type: string - enum: [wechat, alipay, balance] + enum: [alipay, balance] responses: '200': content: @@ -1249,4 +1249,4 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/UploadResult' \ No newline at end of file + $ref: '#/components/schemas/UploadResult' diff --git a/backend/app/http/v1/dto/order.go b/backend/app/http/v1/dto/order.go index ec0bcbd..ef94822 100644 --- a/backend/app/http/v1/dto/order.go +++ b/backend/app/http/v1/dto/order.go @@ -19,7 +19,7 @@ type OrderCreateResponse struct { } type OrderPayForm struct { - // Method 支付方式(wechat/alipay/balance)。 + // Method 支付方式(alipay/balance)。 Method string `json:"method"` } diff --git a/backend/app/http/v1/dto/user.go b/backend/app/http/v1/dto/user.go index 6d5e574..08b4e87 100644 --- a/backend/app/http/v1/dto/user.go +++ b/backend/app/http/v1/dto/user.go @@ -47,7 +47,7 @@ type Transaction struct { type RechargeForm struct { // Amount 充值金额(单位元)。 Amount float64 `json:"amount"` - // Method 充值方式(wechat/alipay)。 + // Method 充值方式(alipay)。 Method string `json:"method"` } diff --git a/backend/docs/docs.go b/backend/docs/docs.go index db8523e..c911213 100644 --- a/backend/docs/docs.go +++ b/backend/docs/docs.go @@ -8029,7 +8029,7 @@ const docTemplate = `{ "type": "object", "properties": { "method": { - "description": "Method 支付方式(wechat/alipay/balance)。", + "description": "Method 支付方式(alipay/balance)。", "type": "string" } } @@ -8180,7 +8180,7 @@ const docTemplate = `{ "type": "number" }, "method": { - "description": "Method 充值方式(wechat/alipay)。", + "description": "Method 充值方式(alipay)。", "type": "string" } } diff --git a/backend/docs/swagger.json b/backend/docs/swagger.json index ad102f4..a9a30cd 100644 --- a/backend/docs/swagger.json +++ b/backend/docs/swagger.json @@ -8023,7 +8023,7 @@ "type": "object", "properties": { "method": { - "description": "Method 支付方式(wechat/alipay/balance)。", + "description": "Method 支付方式(alipay/balance)。", "type": "string" } } @@ -8174,7 +8174,7 @@ "type": "number" }, "method": { - "description": "Method 充值方式(wechat/alipay)。", + "description": "Method 充值方式(alipay)。", "type": "string" } } diff --git a/backend/docs/swagger.yaml b/backend/docs/swagger.yaml index e3e99ed..5900cec 100644 --- a/backend/docs/swagger.yaml +++ b/backend/docs/swagger.yaml @@ -899,7 +899,7 @@ definitions: dto.OrderPayForm: properties: method: - description: Method 支付方式(wechat/alipay/balance)。 + description: Method 支付方式(alipay/balance)。 type: string type: object dto.OrderPayResponse: @@ -1002,7 +1002,7 @@ definitions: description: Amount 充值金额(单位元)。 type: number method: - description: Method 充值方式(wechat/alipay)。 + description: Method 充值方式(alipay)。 type: string type: object dto.RechargeResponse: diff --git a/docs/design/portal/PAGE_AUTH.md b/docs/design/portal/PAGE_AUTH.md index d3eaccf..52d8b75 100644 --- a/docs/design/portal/PAGE_AUTH.md +++ b/docs/design/portal/PAGE_AUTH.md @@ -35,7 +35,7 @@ - **提交按钮**: "获取验证码" (Primary Button, Full Width, `h-12`)。 - **第三方登录 (Footer)**: - 分隔线: "其他方式登录" (text-xs text-slate-400) - - 图标组: 微信、GitHub 等圆型图标按钮。 +- 图标组: 预留第三方登录入口(暂不展示)。 ### 2.2 第二步:输入验证码 (OTP Input) *用户点击获取验证码成功后,表单区域平滑切换(或水平滑入)至验证码输入界面。* diff --git a/docs/design/portal/PAGE_ORDER.md b/docs/design/portal/PAGE_ORDER.md index 0ddc2c5..c232bef 100644 --- a/docs/design/portal/PAGE_ORDER.md +++ b/docs/design/portal/PAGE_ORDER.md @@ -50,8 +50,7 @@ ### 2.2 支付方式 (Payment Methods) - **布局**: 左侧选择方式,右侧展示二维码 (PC端)。 - **选项**: - - **微信支付**: 绿色图标,推荐。 - - **支付宝**: 蓝色图标。 + - **支付宝**: 蓝色图标,推荐。 - **余额支付**: 显示当前余额,若不足则置灰并提示。 - **二维码区域**: - **尺寸**: `200x200px` (加大,方便扫码)。 @@ -91,4 +90,4 @@ ### 4.3 适老化细节 - **字号**: 关键金额字号 `30px+`。 - **按钮**: 高度统一 `h-12` (48px),间距 `gap-4`。 -- **复制**: 订单号旁增加大尺寸 [复制] 按钮。 \ No newline at end of file +- **复制**: 订单号旁增加大尺寸 [复制] 按钮。 diff --git a/docs/review_report.md b/docs/review_report.md index 9d60b82..5cd1908 100644 --- a/docs/review_report.md +++ b/docs/review_report.md @@ -25,7 +25,7 @@ - 超管统计/订单详情/退款等均为空:`backend/app/services/super.go`。 - 超管内容/订单列表 DTO 映射 TODO:`backend/app/services/super.go`。 -5) 认证方式与规格偏离:现实现 OTP 登录 + JWT;规格为 WeChat OAuth + Cookie(已经移除,仅使用jwt认证)。 +5) 认证方式与规格偏离:现实现 OTP 登录 + JWT;需统一规格文档与实现保持一致。 - 认证流程:`backend/app/http/v1/auth/auth.go`、`backend/app/services/user.go`。 - 前端调用 OTP 登录:`frontend/portal/src/api/auth.js`。 @@ -72,8 +72,8 @@ - 控制器签名支持 `@Bind id path` + `int64` 或 `@Bind tenant model(id)` 进行 model 注入。 - swagger `@Router` 必须使用 `:id` / `:tenantID`。 -### 4) 规格一致性修复 (仅使用JWT -- 统一认证模型(OTP vs WeChat):要么按规格实现 WeChat OAuth,要么更新规格文档。 +### 4) 规格一致性修复(仅使用 JWT) +- 统一认证模型(OTP + JWT),同步规格文档与实现。 - 统一存储方案(OSS + tenant_uuid + md5 命名);当前本地存储仅作开发 fallback。 - 将 `specs/DB.sql` 迁入真实迁移文件并补齐中文字段注释。 @@ -117,4 +117,3 @@ 3) ID 类型统一与 `:id` 路由规范 4) 规格一致性(认证/存储/迁移) 5) 性能优化(N+1/聚合)与可维护性补齐 - diff --git a/docs/todo_list.md b/docs/todo_list.md index 2222f53..cb98109 100644 --- a/docs/todo_list.md +++ b/docs/todo_list.md @@ -233,13 +233,13 @@ **测试方案** - 不同筛选维度下内容列表正确;空内容/无简介时展示兜底。 -### 15) 微信生态清理(若仍存在) +### 15) 微信生态清理(已完成) **需求目标** - 移除微信登录/分享/支付相关逻辑,降低维护成本。 **技术方案(后端/前端/文档)** - 后端:清理 `auth` 路由与服务中的微信授权/回调逻辑(如存在)。 -- 前端:移除 Portal 登录页/分享中的 `wx.*` 依赖与 UI。 +- 前端:移除 Portal 登录页/分享中的微信依赖与 UI。 - 配置/文档:清理 `config.toml`、`specs/*`、`docs/*` 的微信配置与说明;移除无用 SDK 依赖。 **测试方案** diff --git a/frontend/portal/src/views/auth/LoginView.vue b/frontend/portal/src/views/auth/LoginView.vue index c90d85c..76bb9fe 100644 --- a/frontend/portal/src/views/auth/LoginView.vue +++ b/frontend/portal/src/views/auth/LoginView.vue @@ -146,27 +146,8 @@ const login = async () => { -
-
-
-
-
-
- 其他方式登录 -
-
-
- - -
+
+ 当前仅支持手机验证码登录
diff --git a/frontend/portal/src/views/content/DetailView.vue b/frontend/portal/src/views/content/DetailView.vue index 0f9e258..2a40b35 100644 --- a/frontend/portal/src/views/content/DetailView.vue +++ b/frontend/portal/src/views/content/DetailView.vue @@ -382,7 +382,7 @@ const likeComment = async (comment) => { > 购买解锁全文 ¥ {{ content.price }} -

支持微信 / 支付宝

+

支持支付宝

diff --git a/frontend/portal/src/views/creator/OrdersView.vue b/frontend/portal/src/views/creator/OrdersView.vue index 193b38c..3a25b58 100644 --- a/frontend/portal/src/views/creator/OrdersView.vue +++ b/frontend/portal/src/views/creator/OrdersView.vue @@ -276,7 +276,7 @@ const confirmRefund = async () => {
支付方式 - 微信支付 + 支付宝
实付 diff --git a/frontend/portal/src/views/order/PaymentView.vue b/frontend/portal/src/views/order/PaymentView.vue index 73afaf6..d60b34d 100644 --- a/frontend/portal/src/views/order/PaymentView.vue +++ b/frontend/portal/src/views/order/PaymentView.vue @@ -12,7 +12,7 @@ const orderId = route.params.id || "82934712"; const amount = "9.90"; // Should fetch order details first const productName = "《霸王别姬》全本实录珍藏版"; -const paymentMethod = ref("wechat"); +const paymentMethod = ref("alipay"); const timeLeft = ref(900); // 15 minutes const isScanning = ref(false); const isSuccess = ref(false); @@ -20,7 +20,7 @@ let timer = null; let pollTimer = null; const paymentMethodName = computed(() => { - return paymentMethod.value === "wechat" ? "微信" : "支付宝"; + return paymentMethod.value === "alipay" ? "支付宝" : "余额"; }); const formatTime = (seconds) => { @@ -114,31 +114,6 @@ onUnmounted(() => {

选择支付方式

- -