using System;
using System.Collections;
using System.Collections.Generic;
using IgnoreOPS;
using SGModule.Common.Base;
using SGModule.Common.Helper;
using SGModule.DataStorage;
using SGModule.Net;
using SGModule.NetKit;
using UnityEngine;

namespace Roy
{
    public class CloudDataSaver {
        public static void UpdateData(string json, long version, bool onQuit) {
            Log.Info("CloudDataSaver", $"最新数据版本: {version}, onQuit: {onQuit} ,数据: {json}");
            if (json == null) {
                return;
            }

            // 应用直接退出或者退到后台, 直接保存数据到服务器, 不启用协程发送
            if (onQuit) {
                NetApi.UploadPlayerDataUpdate(version, json);
                return;
            }

            NetApi.UploadPlayerDataUpdate(version, json, result => {
                if (result) {
                    Log.Info("CloudDataSaver", $"最新数据版本: {version} ,更新成功");
                }
                else {
                    Log.Warning("CloudDataSaver", $"最新数据版本: {version} ,更新失败");
                }
            });
        }
    }
}
