feat(admin): photo upload in album photos tab (same staging pipeline as app)
- 照片页签工具栏加「上传照片」(多选 jpeg/png/heic)→ /v1/uploads
init → PUT staging → complete(clientTaskId 幂等;categoryId 随当前分类筛选)
- 逐张结果:部分成功语义(成功 N 张 toast + 失败明细前 3 条);完成后 reload
- 类型 UploadInitPayload/UploadSession/UploadCompleteResponse + api/uploads.ts
- 问题1 修复说明:详情页 404 系并行部署把 2618ad3 server 覆盖回 8e674a9,
已重滚双栈至 ui06-2618ad3(assets 端点恢复 200,详情页零失败请求)
Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
/**
|
||||
* 照片直传域(对齐 @photo/contracts tags [uploads]):
|
||||
* init(预签名)→ PUT staging → complete(受理;处理异步)。
|
||||
* 管理端「上传照片」与 App 同链路(clientTaskId 幂等)。
|
||||
*/
|
||||
import request from '@/utils/http'
|
||||
|
||||
/** 初始化照片直传(返回 staging 直传凭证) */
|
||||
export function fetchInitUpload(data: Api.Album.UploadInitPayload) {
|
||||
return request.post<Api.Album.UploadSession>({ url: '/v1/uploads', data })
|
||||
}
|
||||
|
||||
/** 完成直传(服务端核验后受理照片处理;返回 photoId) */
|
||||
export function fetchCompleteUpload(uploadId: string) {
|
||||
return request.post<Api.Album.UploadCompleteResponse>({
|
||||
url: `/v1/uploads/${uploadId}/complete`
|
||||
})
|
||||
}
|
||||
Reference in New Issue
Block a user