login method

Future<LoginResponse> login(
  1. String username,
  2. String password
)

Implementation

Future<LoginResponse> login(String username, String password) async {
  LoginResponse response = await service.authServices
      .login(username: username, password: password);

  if (!response.result.status ||
      response.result.description == "Oyuncu bilgileri yanlış!") {
    return response;
  }

  ARMOYU.version = response.result.descriptiondetail["versiyon"].toString();
  ARMOYU.securityDetail =
      response.result.descriptiondetail["projegizliliksozlesmesi"];

  APILogin oyuncubilgi = response.response!;

  UserAccounts userdetail = UserAccounts(
    user: ARMOYUFunctions.userfetch(oyuncubilgi).obs,
    sessionTOKEN: Rx(response.result.description),
    language: Rxn(),
  );

  //İlk defa giriş yapılıyorsa
  if (ARMOYU.appUsers.isEmpty) {
    ARMOYU.appUsers.add(userdetail);
  }

  // Kullanıcı listesini Storeage'e kaydetme
  List<String> usersJson =
      ARMOYU.appUsers.map((user) => jsonEncode(user.toJson())).toList();
  ARMOYU.storage.write("users", usersJson);
  // Kullanıcı listesini Storeage'e kaydetme

  userdetail.updateUser(targetUser: ARMOYU.appUsers.first.user.value);

  if (ARMOYU.deviceModel != "Bilinmeyen") {
    log("Onesignal işlemleri!");
    // OneSignalsetupOneSignal(currentUserAccounts: userdetail);
  }

  //Socket Güncelle
  // var socketio = Get.find<SocketioController>();
  // socketio.registerUser(userdetail.user.value);
  //Socket Güncelle

  LoginResponse ll = LoginResponse(
    result: ServiceResult(
      status: true,
      description: "Başarılı",
      descriptiondetail: response.result.descriptiondetail,
    ),
    response: oyuncubilgi,
  );

  return ll;
}