@Override
    public Object parse(SourceData sourceData, int rowIndex, Context context) {
        Object firstIntObj = firstIntParser.parse(sourceData, rowIndex, context);
        int firstInt = OperatorTools.parseBigDecimal(firstIntObj).intValue();
        if (secondIntParser != null) {
            Object secondIntObj = secondIntParser.parse(sourceData, rowIndex, context);
            int secondInt = OperatorTools.parseBigDecimal(secondIntObj).intValue();
            return randInteger(firstInt, secondInt);
        }
        return randInteger(firstInt);
    }
RandIntegerFunction  ->  rand_integer(INT1[, INT2])
description:
- Return a pseudorandom integer value in the range [0, 'INT1') if 'INT2' is NULL
- Return a pseudorandom integer value in the range [0, 'INT1') with an initial seed 'INT2'
Note: Two RAND_INTEGER functions will return idential sequences of numbers if they have the same initial seed and bound.
inlong-sdk/transform-sdk/src/main/java/org/apache/inlong/sdk/transform/process/function/arithmetic/RandIntegerFunction.java