From f1c0349f64081ba84cfb212f87f0536a099abc18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Mon, 27 Jul 2026 12:42:27 +0800 Subject: [PATCH] =?UTF-8?q?feat(api):=20=E6=96=B0=E5=A2=9E=20cms-api=20API?= =?UTF-8?q?=20=E5=9F=9F=E5=90=8D=E6=94=AF=E6=8C=81=E5=B9=B6=E5=88=87?= =?UTF-8?q?=E6=8D=A2=E5=B9=BB=E7=81=AF=E7=89=87=E5=B9=BF=E5=91=8A=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E5=9F=9F=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 配置文件 env.js 中新增 CMS_API_URL,三个环境均统一配置 - app.ts 导出 CmsBaseUrl,用于 cms-api 相关请求 - cmsAd 模块接口调用统一改为通过 CmsBaseUrl 拼接完整 cms-api 路径 - 幻灯片广告相关接口走独立 cms-api 域名,保证数据隔离 - 更新工作备忘录,补充 API 域名配置与幻灯片广告调用说明 --- .workbuddy/memory/MEMORY.md | 2 ++ config/app.ts | 3 ++- config/env.js | 5 ++++- src/api/cms/cmsAd/index.ts | 12 ++++++++---- 4 files changed, 16 insertions(+), 6 deletions(-) diff --git a/.workbuddy/memory/MEMORY.md b/.workbuddy/memory/MEMORY.md index bff8d0d..ae3bf12 100644 --- a/.workbuddy/memory/MEMORY.md +++ b/.workbuddy/memory/MEMORY.md @@ -6,6 +6,8 @@ - 后端 API 前缀:`/shop/`、`/api/` - **后端项目路径:`/Users/gxwebsoft/JAVA/guilixu-java`**(⚠️ 不要找 paopao-java 或 websopy-java,那是旧的) - **后端 Maven 编译命令**:`cd /Users/gxwebsoft/JAVA/guilixu-java && "/Applications/IntelliJ IDEA Ultimate.app/Contents/plugins/maven/lib/maven3/bin/mvn" compile`(guilixu 的 mvnw 损坏,用 IntelliJ 自带的 mvn) +- **API 域名配置**(`config/env.js` 三环境一致):`API_BASE_URL=https://shop-api.websoft.top/api`、`SERVER_API_URL=https://server.websoft.top/api`、`CMS_API_URL=https://cms-api.websoft.top/api`;`config/app.ts` 导出 `BaseUrl/ServerBaseUrl/CmsBaseUrl` +- **幻灯片广告(轮播图)调用已切到 cms-api**:`src/api/cms/cmsAd/index.ts` 的读接口(`listCmsAd`/`getCmsAd`/`getCmsAdByCode`/`pageCmsAd`)通过 `cmsUrl()` 拼接 `CmsBaseUrl`,首页轮播 `listCmsAd({ adType: 'banner', status: 0 })` 走 `https://cms-api.websoft.top/api/cms/cms-ad`;写接口仍走 shop-api - 门店店员身份判断:通过 `getMyClerk()` API (`/shop/shop-store-user/my`) 返回值判断 - VIP/分销商申请记录表:`ShopDealerApply`,状态码 10待审核/20通过/30驳回 diff --git a/config/app.ts b/config/app.ts index a465040..9d01f87 100644 --- a/config/app.ts +++ b/config/app.ts @@ -1,7 +1,8 @@ -import { API_BASE_URL, SERVER_API_URL } from './env' +import { API_BASE_URL, SERVER_API_URL, CMS_API_URL } from './env' export const TenantId = '10611' export const TenantName = '鑫龙家电' export const BaseUrl = API_BASE_URL export const ServerBaseUrl = SERVER_API_URL +export const CmsBaseUrl = CMS_API_URL export const Version = 'v1.0.0' diff --git a/config/env.js b/config/env.js index a51cd45..592d4e9 100644 --- a/config/env.js +++ b/config/env.js @@ -4,18 +4,21 @@ export const ENV_CONFIG = { development: { API_BASE_URL: 'https://shop-api.websoft.top/api', SERVER_API_URL: 'https://server.websoft.top/api', + CMS_API_URL: 'https://cms-api.websoft.top/api', APP_NAME: '鑫龙家电', DEBUG: 'true', }, test: { API_BASE_URL: 'https://shop-api.websoft.top/api', SERVER_API_URL: 'https://server.websoft.top/api', + CMS_API_URL: 'https://cms-api.websoft.top/api', APP_NAME: '鑫龙家电', DEBUG: 'true', }, production: { API_BASE_URL: 'https://shop-api.websoft.top/api', SERVER_API_URL: 'https://server.websoft.top/api', + CMS_API_URL: 'https://cms-api.websoft.top/api', APP_NAME: '鑫龙家电', DEBUG: 'false', }, @@ -25,4 +28,4 @@ export function getEnvConfig() { return ENV_CONFIG[CURRENT_ENV] || ENV_CONFIG.development } -export const { API_BASE_URL, SERVER_API_URL, APP_NAME, DEBUG } = getEnvConfig() +export const { API_BASE_URL, SERVER_API_URL, CMS_API_URL, APP_NAME, DEBUG } = getEnvConfig() diff --git a/src/api/cms/cmsAd/index.ts b/src/api/cms/cmsAd/index.ts index 37dae87..401dd9e 100644 --- a/src/api/cms/cmsAd/index.ts +++ b/src/api/cms/cmsAd/index.ts @@ -1,6 +1,10 @@ import request from '@/utils/request'; import type { ApiResult, PageResult } from '@/api'; import type { CmsAd, CmsAdParam } from './model'; +import { CmsBaseUrl } from '@/config/app'; + +// 幻灯片/广告位等 CMS 内容走独立的 cms-api 域名 +const cmsUrl = (path: string) => `${CmsBaseUrl}${path}`; /** @@ -8,7 +12,7 @@ import type { CmsAd, CmsAdParam } from './model'; */ export async function pageCmsAd(params: CmsAdParam) { const res = await request.get>>( - '/cms/cms-ad/page', + cmsUrl('/cms/cms-ad/page'), params ); if (res.code === 0) { @@ -22,7 +26,7 @@ export async function pageCmsAd(params: CmsAdParam) { */ export async function listCmsAd(params?: CmsAdParam) { const res = await request.get>( - '/cms/cms-ad', + cmsUrl('/cms/cms-ad'), params ); if (res.code === 0 && res.data) { @@ -93,7 +97,7 @@ export async function removeBatchCmsAd(data: (number | undefined)[]) { */ export async function getCmsAd(id: number) { const res = await request.get>( - '/cms/cms-ad/' + id + cmsUrl('/cms/cms-ad/' + id) ); if (res.code === 0 && res.data) { return res.data; @@ -106,7 +110,7 @@ export async function getCmsAd(id: number) { */ export async function getCmsAdByCode(code: string) { const res = await request.get>( - '/cms/cms-ad/getByCode/' + code + cmsUrl('/cms/cms-ad/getByCode/' + code) ); if (res.code === 0 && res.data) { return res.data;