updateUserInfo static method

Future<UserEntity> updateUserInfo(
  1. UserEntity userEntity, {
  2. bool update = false,
  3. bool submit = false,
})

更新本地数据库

Implementation

static Future<UserEntity> updateUserInfo(UserEntity userEntity,
    {bool update = false, bool submit = false}) async {
  var userDbProvider = UserInfoDbProvider();
  if (update) {
    var userEntityPro = await userDbProvider.getUserInfo(userEntity.id);
    if (userEntityPro == null) {
      if (userEntity.age == '0001-01-01') {
        userEntity.gender = '-1';
        userEntity.localData = true;
        userEntity.age = null;
        userEntity.country = null;
        userEntity.likes = [];
        userEntity.rechargeCount = 0;
      } else {
        userEntity.localData = false;
      }
    } else {
      userEntity.localData = false;
      userEntity.rechargeCount = userEntityPro.rechargeCount ?? 0;
    }
  }
  userDbProvider.insert(
    userEntity.id,
    jsonEncode(
      userEntity.toJson(),
    ),
  );
  return userEntity;
}