1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- package com.mooctest.service;
- import com.mooctest.dao.FinalReportDao;
- import com.mooctest.data.FinalReportDTO;
- import com.mooctest.model.FinalReport;
- import org.springframework.beans.BeanUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import java.sql.Timestamp;
- import java.util.Date;
- import java.util.List;
- import java.util.stream.Collectors;
- @Service
- public class FinalReportService {
- @Autowired
- FinalReportDao finalReportDao;
- public FinalReportDTO save(FinalReportDTO dto) {
- FinalReport finalReport = new FinalReport();
- BeanUtils.copyProperties(dto, finalReport);
- finalReport.setImgUrls(String.join(",", dto.getImgUrls()));
- finalReport.setCreateTime(new Date());
- finalReport = finalReportDao.save(finalReport);
- BeanUtils.copyProperties(finalReport, dto);
- return dto;
- }
- public FinalReportDTO update(long reportId, FinalReportDTO dto) {
- FinalReport report = finalReportDao.findOne(reportId);
- dto.setCreateTime(report.getCreateTime());
- BeanUtils.copyProperties(dto, report);
- report.setImgUrls(String.join(",", dto.getImgUrls()));
- finalReportDao.save(report);
- return dto;
- }
- public List<FinalReportDTO> getByExamIdAndCaseId(long examId, long caseId) {
- List<FinalReport> frs = finalReportDao.findByExamIdAndCaseId(examId, caseId);
- return wrap(frs);
- }
- public List<FinalReportDTO> getBySourceId(String sourceId) {
- List<FinalReport> frs = finalReportDao.findBySourceId(sourceId);
- return wrap(frs);
- }
- private List<FinalReportDTO> wrap(List<FinalReport> frs) {
- return frs.stream().map(finalReport -> {
- FinalReportDTO dto = new FinalReportDTO();
- BeanUtils.copyProperties(finalReport, dto);
- dto.setImgUrls(finalReport.getImgUrls().split(","));
- return dto;
- }).collect(Collectors.toList());
- }
- public void delete(long reportId) {
- finalReportDao.delete(reportId);
- }
- }
|