task-114(任务与重复分析中心): 实现店铺数据任务权限配置
shop-data-api.ts 增加 fetch/saveShopDataTaskPermissions(GET|PUT /api/admin/ shop-data-crawl-task-permissions),复用 task-permission 解析与保存负载。 TDD: task-114.test.ts 8 用例先 RED 后 GREEN。
This commit is contained in:
@@ -4,8 +4,10 @@ import { parseShopDataTaskPage, type ShopDataTaskPageResult } from './shop-data-
|
||||
import { toShopDataQuery, type ShopDataFilter } from './shop-data-filter.ts'
|
||||
import { toShopDataZipRequest } from './shop-data-download.ts'
|
||||
import { downloadZipHeaderCounts } from './image-video-download.ts'
|
||||
import { parseTaskPermissionPayload, toPermissionUserIdsPayload, type TaskPermissionItem } from './task-permission.ts'
|
||||
|
||||
export const SHOP_DATA_CRAWL_TASKS_ENDPOINT = '/api/admin/shop-data-crawl-tasks'
|
||||
export const SHOP_DATA_TASK_PERMISSIONS_ENDPOINT = '/api/admin/shop-data-crawl-task-permissions'
|
||||
|
||||
export async function fetchShopDataTaskList(
|
||||
filter: ShopDataFilter,
|
||||
@@ -32,3 +34,14 @@ export async function requestShopDataZipDownload(resultIds: readonly (number | s
|
||||
const counts = downloadZipHeaderCounts(headers as Record<string, string>)
|
||||
return { blob: data, fileCount: counts.fileCount, errorCount: counts.errorCount }
|
||||
}
|
||||
|
||||
/** 加载店铺数据任务数据范围授权用户:GET /api/admin/shop-data-crawl-task-permissions。 */
|
||||
export async function fetchShopDataTaskPermissionUsers(): Promise<TaskPermissionItem[]> {
|
||||
const { data } = await http.get<unknown>(SHOP_DATA_TASK_PERMISSIONS_ENDPOINT)
|
||||
return parseTaskPermissionPayload(data)
|
||||
}
|
||||
|
||||
/** 保存店铺数据任务数据范围授权:PUT /api/admin/shop-data-crawl-task-permissions { user_ids }。 */
|
||||
export async function saveShopDataTaskPermissions(userIds: Iterable<number>): Promise<void> {
|
||||
await http.put<unknown>(SHOP_DATA_TASK_PERMISSIONS_ENDPOINT, toPermissionUserIdsPayload(userIds))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user