In a word, "yes". You can require salaried people to request paid time off in advance. You can require that it be approved and you can declare approval to be a prerogative of the company. The best way to do that is to cover those points in your vacation policy and then ensure that the policy is being enforced. From the payroll side of things, there's no exact way to be sure who is working and who is not without having your salaried EEs clocking in and out or otherwise having someone (reliably) taking attendance. The big problem is that a lot of managers know how salary pay works and they simply fail to report time not worked as a pirq, a sort of bonus that they would not otherwise be able or allowed to give. So, if that's the case, they are working against you in terms of being accountable for the time worked by their subordinates because that would remove a motivational tool that they use (that costs the Company money and probably violates policy).
Because you have the policy in place and the week has already been taken, you may want to report this to employee relations depending on how combative you want to be. Taking the week off without working and without having your PTO bank reduced is theft from the Company. Alternatively, you could look for authorization to simply not pay for the week not worked as it is too late to make the request in advance of the leave. Even if you don't intend to push any hardball tactics to the limit, sometimes it is appropriate to show your teeth but that is for you to decide.
Somewhere in there should be accountability for the manager who allowed the unworked time to be compensated.