protected function generateCacheKey()
    {
        $bindings = array_map(function ($param) {

            // Round datetime
            if ($param instanceof \DateTime) {
                $this->isTimeAwareQuery = true;
                return $this->getRoundedDateTime($param);
            }

            return $param;

        }, $this->getBindings());


        return sha1($this->connection->getName() . $this->toSql() . serialize($bindings));
    }