/// <summary> /// マスターデータ取得通信 /// </summary> public static void CallGetMasterApi(Action onCompleted, params Master.IDataBase[] dbs) { #if SHARK_OFFLINE onCompleted?.Invoke(); return; #endif var request = new SlotWebRequest <Dictionary <string, object> >("master/getMaster"); request.SetRequestHeader("AccessToken", UserData.Get().hash); request.SetRequestParameter(new Dictionary <string, object> { { "tableNameList", dbs.Select(x => x.tableName).ToArray() }, }); request.onSuccess = (response) => { foreach (var db in dbs) { db.SetList(response[db.tableName].ToString()); } onCompleted?.Invoke(); }; request.Send(); }
/// <summary> /// ユーザー作成通信 /// </summary> public static void CallCreateApi(string userName, Action onCompleted) { //リクエスト作成 var request = new SlotWebRequest <CreateResponseData>("user/create"); //リクエストパラメータセット request.SetRequestParameter(new Dictionary <string, object> { { "userName", userName }, { "authType", 3 }, { "deviceType", SlotDefine.DEVICE_TYPE }, }); //通信完了時コールバック登録 request.onSuccess = (response) => { //id,hash,passwordが揃った段階で一旦端末に保存する response.userData.password = response.password; response.userData.Save(); //ユーザーデータセット response.userData.Set(response.tUsers); UserData.Set(response.userData); //通信完了 onCompleted?.Invoke(); }; //通信開始 request.Send(); }
/// <summary> /// 引継ぎコード入力後ユーザーID・PASS取得通信 /// </summary> public static void CallDeviceChangeCode( string takeOverId, string takeOverPass, Action <DeviceChangeCodeResponseData> onCompleted, Action <int> onError) { var request = new SlotWebRequest <DeviceChangeCodeResponseData>("user/takeOver"); request.SetRequestParameter(new Dictionary <string, object> { { "takeOverId", takeOverId }, { "takeOverPassword", takeOverPass }, { "authType", 3 }, { "deviceType", SlotDefine.DEVICE_TYPE } }); request.onSuccess = (response) => { onCompleted?.Invoke(response); }; request.onError = (errorCode) => { onError?.Invoke(errorCode); }; request.Send(); }
/// <summary> /// ユーザー機器移動情報取得通信 /// </summary> public static void CallCreateDeviceChangeCode(Action <CreateDeviceChangeCodeResponseData> onCompleted) { var request = new SlotWebRequest <CreateDeviceChangeCodeResponseData>("user/createCode"); request.SetRequestHeader("AccessToken", UserData.Get().hash); request.onSuccess = (response) => { onCompleted?.Invoke(response); }; request.Send(); }
/// <summary> /// ユーザー名変更通信 /// </summary> public static void CallChangeUserNameApi(string changeuserName, Action onCompleted) { var request = new SlotWebRequest <ChangeUserNameResponseData>("user/edit"); request.SetRequestHeader("AccessToken", UserData.Get().hash); request.SetRequestParameter(new Dictionary <string, object> { { "userName", changeuserName } }); request.onSuccess = (response) => { UserData.Get().Set(response.tUsers); onCompleted?.Invoke(); }; request.Send(); }
/// <summary> /// ログイン通信 /// </summary> public static void CallLoginApi(UserData userData, Action onCompleted) { //リクエスト作成 var request = new SlotWebRequest <LoginResponseData>("user/login"); //リクエストパラメータセット request.SetRequestParameter(new Dictionary <string, object> { { "userId", userData.userId }, { "password", userData.password }, { "authType", 3 }, { "deviceType", SlotDefine.DEVICE_TYPE }, }); //通信完了時コールバック登録 request.onSuccess = (response) => { //ログインの合否を判定 // ToDo 自身の端末内のパスワードが消失した場合にはアカウントの再発行となるので // アカウント作り直しのフローを作る必要がある /*if (!response.loginSuccess) * { * //リトライ用のダイアログを設定 * SimpleDialog dialog = SharedUI.Instance.ShowSimpleDialog(); * var content = dialog.SetAsMessageDialog("ログインに失敗しました" + "\n" + "login_success = " + response.loginSuccess); * content.buttonGroup.buttons[0].onClick = dialog.Close; * dialog.onClose = onRetry; * return; * }*/ //ログイン時に取得するuserIDとhashの設定 userData.Set(response.userData); userData.Save(); //通信完了 onCompleted?.Invoke(); }; //通信開始 request.Send(); }
/// <summary> /// ユーザーデータ取得通信 (Login時のみ) /// </summary> public static void CallFirstUserApi(UserData userData, Action onCompleted) { //リクエスト作成 var request = new SlotWebRequest <FirstUserResponseData>("first/user"); request.SetRequestHeader("AccessToken", UserData.Get().hash); //通信完了時コールバック登録 request.onSuccess = (response) => { //通信で取得したデータを格納 userData.Set(response); //通信完了 onCompleted?.Invoke(); }; //通信開始 request.Send(); }
/// <summary> /// ユーザー情報取得通信 /// </summary> public static void CallFindApi(UserData userData, Action onCompleted) { var request = new SlotWebRequest <FindResponseData>("user/find"); request.SetRequestHeader("AccessToken", userData.hash); request.SetRequestParameter(new Dictionary <string, object> { { "userId", userData.userId } }); request.onSuccess = (response) => { //ユーザーデータセット userData.Set(response.tUsers); UserData.Set(userData); //通信完了 onCompleted?.Invoke(); }; request.Send(); }