In my model, I have things called Reports that have known workflow associated with them.  I've got a requirement to output at which state a report currently is.public abstract partial class Report{   public virtual string StateStatus(){     if (Check.IsSuccessful) return Approved;     if (Check.AreClarificationsSent) return Clarifications;     if (Check.IsInProgress) return Check in progress;     if (IsTemplateSent) return Sent;     if (IsReceived) return Received;     return Not received;   }  ...}I dislike this method. It won't break, but leaves some nausea in my head, just doesn't feel right.Got any recommendations for improvement?
Refactoring a series of if-return statements.
c#