I had a soft sleeper from Chengdu to Lhasa (44 hours).
Bed is comfortable and there's enough space to move around. TV screen wasn't working though. There is an oxygen outlet in the room as well as at the corridor. You can also request for an oxygen nose tube.
You can choose to dine at the dining car or order a set/packed meal from them. Set meal is around 20-30 yuen. There is also push cart going around selling fruits & tidbits.
There is hot water available at the end of each the coach. We bought some instant noodles & instant rice from Chengdu before boarding the train. We alternated between instant meals & train meals.
Toilet can be crowded at times and be prepared for unflushed poo (common in China). The staff cleans it every day.
No shower available/needed as it is constant 20C in the train.
You can sit on the retractable chair along the corridor to enjoy the scenery - it is a very good experience .