deleteRow method

Future<void> deleteRow(
  1. WaterLineDto waterLineDto,
  2. bool deleteDto,
  3. bool deleteTrDto,
  4. bool deleteWaterLine,
)

Implementation

Future<void> deleteRow(WaterLineDto waterLineDto, bool deleteDto, bool deleteTrDto,
    bool deleteWaterLine) async {
  if (!initialized) throw ArgumentError(AbstractDao.C_MUST_INIT);
  AbstractTableTransactions tableTransactions = await transactionsFactory.getTransactionsFromWaterLineTs(waterLineDto.water_ts!);
  if (deleteDto) {
    if (waterLineDto.water_error == WaterError.NONE) {
      try {
        await tableTransactions.delete(tableTransactions.trDto);
      } on SqlException catch (e) {
        if (e.sqlExceptionEnum == SqlExceptionEnum.ENTRY_NOT_FOUND ||
            e.sqlExceptionEnum == SqlExceptionEnum.FAILED_SELECT ||
            e.sqlExceptionEnum == SqlExceptionEnum.PARTITION_NOT_FOUND)
          print("DB $e");
      }
    }
  }
  if (deleteTrDto) {
    try {
      await tableTransactions.deleteTrRowByTs(waterLineDto.water_ts!);
    } on SqlException catch (e) {
      if (e.sqlExceptionEnum == SqlExceptionEnum.ENTRY_NOT_FOUND ||
          e.sqlExceptionEnum == SqlExceptionEnum.FAILED_SELECT ||
          e.sqlExceptionEnum == SqlExceptionEnum.PARTITION_NOT_FOUND)
        print("DB $e");
    }
  }
  if (deleteWaterLine) {
    try {
      await waterLineDao.deleteWaterLineByTs(waterLineDto.water_ts!);
    } on SqlException catch (e) {
      if (e.sqlExceptionEnum == SqlExceptionEnum.ENTRY_NOT_FOUND ||
          e.sqlExceptionEnum == SqlExceptionEnum.FAILED_SELECT)
        print("DB $e");
    }
  }
}