Even if you need to go out of U.S. to get the visa, you can get the approval notice quickly within U.S.
If you go to China now before you file the petition, as your lawyer suggested, USCIS will send some of approved documents to the U.S. Consulate in China you indicated in the petition so that you can get the visa there, and this will take more time.