public static bool IsReadyToSubmit(this ProjectUpdateBatch projectUpdateBatch) { bool inEditableState = projectUpdateBatch.InEditableState(); bool isPassingAllValidationRules = projectUpdateBatch.IsPassingAllValidationRules(); bool projectUpdateBatchHasAlreadyBeenSaved = ModelObjectHelpers.IsRealPrimaryKeyValue(projectUpdateBatch.ProjectUpdateBatchID); return(inEditableState && isPassingAllValidationRules && projectUpdateBatchHasAlreadyBeenSaved); }