Have so many ways to get what you looking for. In my opinion, this is the most easier way to do that.
In this example i use an accoustic guitar. Create a blueprint for your root component (The body in your case), add a component that will be rotated around the parent (your rotor), atatch to the right position and proceed to the next step.
In this example i use the Z vector to rotate the object around this orientation, but you can rotate in any axis as you want. You simply can get the time in seconds, multiply by velocity that you want, make a rotator from you rotor and add the time value in desired rotation axis. You’re not really need to use seconds as a parameter, you can use minutes, milliseconds etc. You can make this triggerable by a key, or something else.
Here is the result:
But to move an oobject, you will need to set it to moveable, you can rotate static meshes, but not move them.
Here is a basic setup for this:
I’m using in delta time exe to trigger all of this, but you can trigger this by other methods, trigger by overlap collision box, or on hit key by player.
Hope this helps. Let me know if this works for you. Good luck