[#583] Get surveyId from surveyInstance instead of surveyalValue

Why we just don't use `DtoMarshaller.copyToDto` instead of picking _some_ values of the `si` instance? This will solve the problem if we need to send more data to the client in the future.