updateTs method

Future<WaterLineFieldDto> updateTs(
  1. int? localTs,
  2. int? remoteTs
)

Implementation

Future<WaterLineFieldDto> updateTs(int? localTs, int? remoteTs) async {
  if (!initialized) throw ArgumentError(AbstractDao.C_MUST_INIT);
  WaterLineFieldDto tmpWaterLineFieldDto;
  try {
    tmpWaterLineFieldDto =
        await waterLineFieldDao.getWaterLineFieldDtoByUnique(
            waterLineFieldDto.id,
            waterLineFieldDto.table_field_id,
            waterLineFieldDto.change_type_enum,
            waterLineFieldDto.user_id);
    if (localTs != null && tmpWaterLineFieldDto.local_ts != null) {
      if (localTs < tmpWaterLineFieldDto.local_ts!) localTs = null;
    }
    if (remoteTs != null && tmpWaterLineFieldDto.remote_ts != null) {
      if (remoteTs < tmpWaterLineFieldDto.remote_ts!) remoteTs = null;
    }
  } on SqlException catch (e) {
    if (e.sqlExceptionEnum != SqlExceptionEnum.ENTRY_NOT_FOUND) rethrow;
  }

  waterLineFieldDto = await waterLineFieldDao.setWaterLineField(
      waterLineFieldDto.id,
      waterLineFieldDto.table_field_id,
      waterLineFieldDto.change_type_enum,
      waterLineFieldDto.user_id,
      waterLineFieldDto.notify_state_enum,
      waterLineFieldDto.value_number,
      waterLineFieldDto.ui_type,
      localTs,
      remoteTs);
  return waterLineFieldDto;
}