/**
 * 将 ArrayBuffer 转换为 Base64 图片
 * @param {ArrayBuffer} buffer - 图片的 ArrayBuffer 数据
 * @returns {string} Base64 图片字符串
 */
export const arrayBufferToBase64 = (buffer) => {
  // 使用 uni-app 的 API 将 ArrayBuffer 转换为 Base64
  return uni.arrayBufferToBase64(buffer);
}

/**
 * 保存二维码到本地
 * @param {string} base64 - Base64 图片字符串
 */
export const saveQRCodeToLocal = async (base64) => {
  try {
    // 将 Base64 转换为临时文件路径
    const fsm = uni.getFileSystemManager();
    const filePath = `${uni.env.USER_DATA_PATH}/qrcode_${Date.now()}.png`;
    
    // 写入文件
    fsm.writeFileSync(filePath, base64, 'base64');
    
    // 保存到相册
    await uni.saveImageToPhotosAlbum({
      filePath: filePath
    });
    
    uni.showToast({
      title: '保存成功',
      icon: 'success'
    });
  } catch (error) {
    console.error('保存二维码失败:', error);
    uni.showToast({
      title: '保存失败',
      icon: 'error'
    });
  }
} 