There is some hope to recover data which was stored on the “internal SD card”. Samsung Galaxy S2 supports USB connection in the mass storage mode (unlike some other more recent models). This mode provides the required block-level access to the partition which holds your media and other files (but not contacts, SMS and app data). Therefore you can connect your phone to PC in the USB storage mode (not MTP), then use the same utilities as you would use to recover files from an SD card which was accidentally formatted (one free option for Windows is Recuva).
Recovering data from the internal memory is much more harder for several reasons:
You need to root the phone in order to get access to raw partitions (with some phones which have an unlocked bootloader there is an option of flashing an alternate recovery image with root access through ADB). Note that the rooting process in most cases involves writes to the
/data partition, which could overwrite the data you want to restore.
The internal file system is not the usual FAT or NTFS, like in Windows (recent models in most cases use ext4), therefore many recovery tools designed for use with Windows filesystems won't work well (scanning the raw disk for pieces looking like data in a well-known format might give a useful result even if the filesystem is not supported, but see the next point).
In most cases the app data is stored in some format not used outside of the Android OS (e.g., contacts and SMS/MMS messages are stored in SQLite databases with the Android-specific schema), and these formats are unlikely to be supported by commonly available data recovery utilities.
And this assumes that the phone repair lab did not just replace the main phone board (which they often do, unless the problem was obviously in some other component).