You can create a transient attribute at VO level. In the value of this attribute you can write groovy expression which will use the value of attribute named status and decode it.
Alternatively, you can alter the VO query using DECODE function by doing something like this :
SELECT name and other fields needed, DECODE(status, 'A', 'Approved', 'X', 'Rejected', 'P', 'Pending', 'Default') decodedstatus FROM projects;
You will need to have an additional attribute in VO in this case and can directly use the value returned by VO in UI.