- 新增积分充值申请与审核:商户提交充值申请(凭证图片必填,1元=100积分), 管理员审核通过后事务内自动入账,幂等键防重复 - 新增通用图片上传组件 ImageUploader:canvas 压缩转 webp、预览、删除, 后端按魔数校验图片格式并持久化到 data/uploads - 管理员钱包调整改为按商户维度:移除商户侧调账接口,新增管理员 平台商户积分调整与钱包流水查看 - 低余额 Webhook 告警配置持久化,充值入账/调账后自动检查推送 - 平台商户操作列移除进入/成员,积分充值页接入真实接口并修复金额单位换算
32 lines
879 B
TypeScript
32 lines
879 B
TypeScript
import { defineConfig, loadEnv } from 'vite'
|
||
import react from '@vitejs/plugin-react'
|
||
|
||
export default defineConfig(({ mode }) => {
|
||
// 读取 frontend/.env* 与进程环境(start.sh 会注入根目录 .env)
|
||
const env = loadEnv(mode, process.cwd(), '')
|
||
const apiTarget = env.VITE_API_PROXY_TARGET || 'http://localhost:8080'
|
||
const port = Number(env.PORT || env.FRONTEND_PORT || 5173)
|
||
|
||
return {
|
||
plugins: [react()],
|
||
server: {
|
||
port,
|
||
proxy: {
|
||
// 只代理真实后端 API,避免 /api-debug 这类前端路由刷新时被误转发到后端。
|
||
'^/api(/|$)': {
|
||
target: apiTarget,
|
||
changeOrigin: true,
|
||
},
|
||
'/uploads': {
|
||
target: apiTarget,
|
||
changeOrigin: true,
|
||
},
|
||
'/health': {
|
||
target: apiTarget,
|
||
changeOrigin: true,
|
||
},
|
||
},
|
||
},
|
||
}
|
||
})
|