Probably need to put a set of A/C gages on it to see the pressures first. It could be low of freon or a pressure problem or possibly even a engine fan clutch. If the condenser doesn't get enough air across it at idle the compressor head pressure will rise too high and cause poor cooling. If it cools ok at hwy speeds but not at idle then that could be the cause. The system needs to be evacuated and freon recovered to evaluate the level of freon. Hope this helps.