in operations/flow/pipeline.ts [41:118]
export async function listPipelinesFunc(
organizationId: string,
options?: Omit<ListPipelinesOptions, 'organizationId'>
): Promise<{
items: PipelineListItem[],
pagination: {
nextPage: number | null,
page: number,
perPage: number,
prevPage: number | null,
total: number,
totalPages: number
}
}> {
const baseUrl = `/oapi/v1/flow/organizations/${organizationId}/pipelines`;
// 构建查询参数
const queryParams: Record<string, string | number | undefined> = {};
// 处理时间戳参数
// 如果传入的是日期字符串或Date对象,自动转换为毫秒时间戳
if (options?.createStartTime !== undefined) {
queryParams.createStartTime = utils.convertToTimestamp(options.createStartTime);
}
if (options?.createEndTime !== undefined) {
queryParams.createEndTime = utils.convertToTimestamp(options.createEndTime);
}
if (options?.executeStartTime !== undefined) {
queryParams.executeStartTime = utils.convertToTimestamp(options.executeStartTime);
}
if (options?.executeEndTime !== undefined) {
queryParams.executeEndTime = utils.convertToTimestamp(options.executeEndTime);
}
if (options?.pipelineName !== undefined) {
queryParams.pipelineName = options.pipelineName;
}
if (options?.statusList !== undefined) {
queryParams.statusList = options.statusList;
}
if (options?.perPage !== undefined) {
queryParams.perPage = options.perPage;
}
if (options?.page !== undefined) {
queryParams.page = options.page;
}
const url = utils.buildUrl(baseUrl, queryParams);
const response = await utils.yunxiaoRequest(url, {
method: "GET",
});
const pagination = {
nextPage: null as number | null,
page: 1,
perPage: 10,
prevPage: null as number | null,
total: 0,
totalPages: 0
};
let items: PipelineListItem[] = [];
if (Array.isArray(response)) {
items = response.map(item => PipelineListItemSchema.parse(item));
}
return {
items,
pagination
};
}