后端功能增强:全局异常处理、API控制器、JSP视图和单元测试
- 添加 GlobalExceptionHandler 全局异常处理 - 添加 ApiController REST API 控制器 - 更新 WebConfig 跨域配置和 ProductRepository 查询方法 - 新增 monitor/product-detail/profile JSP 视图页面 - 添加 FlashSaleServiceTest 秒杀服务单元测试 - 更新 application.yml 配置
This commit is contained in:
42
flash-sale-frontend/src/api/modules/flashsale.ts
Normal file
42
flash-sale-frontend/src/api/modules/flashsale.ts
Normal file
@@ -0,0 +1,42 @@
|
||||
import { request } from '../request'
|
||||
import type { ApiResponse, FlashSale, PageParams, PageResponse } from '@/types/api'
|
||||
|
||||
export const flashsaleApi = {
|
||||
// 获取秒杀活动列表
|
||||
getList(params?: PageParams & { status?: string }): Promise<ApiResponse<PageResponse<FlashSale>>> {
|
||||
return request.get('/api/flashsale/list', params)
|
||||
},
|
||||
|
||||
// 获取正在进行的秒杀活动
|
||||
getActive(limit?: number): Promise<ApiResponse<FlashSale[]>> {
|
||||
return request.get('/api/flashsale/active', { limit })
|
||||
},
|
||||
|
||||
// 获取秒杀活动详情
|
||||
getDetail(id: number): Promise<ApiResponse<FlashSale>> {
|
||||
return request.get(`/api/flashsale/${id}`)
|
||||
},
|
||||
|
||||
// 参与秒杀
|
||||
participate(data: {
|
||||
flashSaleId: number;
|
||||
quantity: number;
|
||||
timestamp?: number;
|
||||
}): Promise<ApiResponse<{ orderId: number }>> {
|
||||
return request.post('/api/flashsale/participate', data)
|
||||
},
|
||||
|
||||
// 获取用户参与记录
|
||||
getUserRecords(): Promise<ApiResponse<any[]>> {
|
||||
return request.get('/api/flashsale/user-records')
|
||||
},
|
||||
|
||||
// 检查用户是否可以参与
|
||||
checkEligibility(flashSaleId: number): Promise<ApiResponse<{
|
||||
eligible: boolean;
|
||||
reason?: string;
|
||||
remainingQuota?: number;
|
||||
}>> {
|
||||
return request.get(`/api/flashsale/${flashSaleId}/check-eligibility`)
|
||||
},
|
||||
}
|
||||
Reference in New Issue
Block a user