/**
 * 数据格式化工具函数
 */

/**
 * 将时间戳转换为 YYYY-MM-DD HH:mm:ss 格式
 * @param timestamp 时间戳（毫秒）
 * @returns 格式化后的时间字符串
 */
export function formatTimestamp(timestamp: number): string {
  const date = new Date(timestamp);
  const year = date.getFullYear();
  const month = String(date.getMonth() + 1).padStart(2, '0');
  const day = String(date.getDate()).padStart(2, '0');
  const hours = String(date.getHours()).padStart(2, '0');
  const minutes = String(date.getMinutes()).padStart(2, '0');
  const seconds = String(date.getSeconds()).padStart(2, '0');

  return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
}

/**
 * 为文件路径添加基础URL前缀
 * @param filePath 文件路径
 * @param baseUrl 基础URL，默认为 http://localhost:8080
 * @returns 完整的文件URL
 */
export function formatFilePath(baseUrl: string, filePath: string): string {
  // 如果路径已经包含http，则直接返回
  if (filePath.startsWith('http')) {
    return filePath;
  }

  // 确保基础URL末尾没有斜杠，路径开头有斜杠
  const cleanBaseUrl = baseUrl.endsWith('/') ? baseUrl.slice(0, -1) : baseUrl;
  const cleanFilePath = filePath.startsWith('/') ? filePath : '/' + filePath;

  return cleanBaseUrl + cleanFilePath;
}

/**
 * 处理文件列表数据，格式化时间戳和文件路径
 * @param dataList 原始文件列表数据
 * @param baseUrl 基础URL
 * @returns 处理后的文件列表数据
 */
export function processFileList(dataList: any[], baseUrl?: string): any[] {
  return dataList.map((item) => ({
    ...item,
    addTime: formatTimestamp(item.addTime),
    filePath: formatFilePath(item.filePath, baseUrl)
    // 可以添加其他需要的字段处理
  }));
}
