Reporting Module - Calculating Pump Runtimes

We are collecting pump on/off statuses as historical tags and we want to run a daily pump summary report on this information. The raw dataset looks like the attached below.

And the outputs we are looking to calculate for a day are:
Count turned on
Total pump runtime
Longest time run
Shortest time run

Does the reporting module have any built in keys that can summarize the raw data for us? Or would we be better served writing a custom query for this data?

Thanks

The report module does provide count, total, min and max functions for numeric data. Turned on count will work fine, but trying to analyze the time stamps to derive longest / shortest / total time interval is not currently supported, so you will have to take the writing the query route.