public static ServiceRecordDto asDto(@Nonnull ServiceRecord from) { ServiceRecordDto dto = new ServiceRecordDto(); setId(dto::setId, from); setDateString(dto::setServiceDate, from.getServiceDate()); setString(dto::setTitle, from.getTitle()); setString(dto::setDetails, from.getDetails()); setString(dto::setReferenceNumber, from.getReferenceNumber()); setString(dto::setPosition, maybeGetProperty(from.getPosition(), InstrumentPosition::getAlias)); dto.setAttachments(from.getAttachments().stream().map(Dtos::asDto).collect(Collectors.toList())); return dto; }
private void applyRecordChanges(ServiceRecord target, ServiceRecord source) { target.setTitle(source.getTitle()); target.setDetails(source.getDetails()); if (source.getPosition() == null) { target.setPosition(null); } else { target.setPosition(findPosition(source.getPosition().getId(), target.getInstrument())); } target.setServicedByName(source.getServicedByName()); target.setReferenceNumber(source.getReferenceNumber()); target.setServiceDate(source.getServiceDate()); target.setStartTime(source.getStartTime()); target.setOutOfService(source.isOutOfService()); target.setEndTime(source.getEndTime()); }