#21 -- Fix save files
This commit is contained in:
parent
691ccca54b
commit
6d36ac3416
@ -94,9 +94,9 @@ public class FileService {
|
|||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
private FileData update(FileDataDto fileDataDto) {
|
private FileData update(FileDataDto fileDataDto) {
|
||||||
FileData file = fileRepository.findById(fileDataDto.getId())
|
return fileRepository.findById(fileDataDto.getId())
|
||||||
.orElseThrow(() -> new RuntimeException("File not found by id"));
|
.orElseThrow(() -> new RuntimeException("File not found by id"));
|
||||||
return fileRepository.save(copyFromDto(file, fileDataDto));
|
//return fileRepository.save(copyFromDto(file, fileDataDto));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
|
@ -20,7 +20,7 @@ public class ReportValue extends BaseEntity {
|
|||||||
@ManyToOne
|
@ManyToOne
|
||||||
private Indicator indicator;
|
private Indicator indicator;
|
||||||
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
|
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
|
||||||
@JoinColumn(name = "report_value_id", unique = true)
|
@JoinColumn(name = "report_value_id")
|
||||||
@Fetch(FetchMode.SUBSELECT)
|
@Fetch(FetchMode.SUBSELECT)
|
||||||
private List<FileData> files = new ArrayList<>();
|
private List<FileData> files = new ArrayList<>();
|
||||||
private int indicatorValue;
|
private int indicatorValue;
|
||||||
|
@ -65,6 +65,7 @@ public class ReportService {
|
|||||||
|
|
||||||
public void addReportValue(Integer reportId, ReportValue reportValue) {
|
public void addReportValue(Integer reportId, ReportValue reportValue) {
|
||||||
Report report = getReportById(reportId);
|
Report report = getReportById(reportId);
|
||||||
|
report.getValues().remove(reportValue);
|
||||||
report.getValues().add(reportValue);
|
report.getValues().add(reportValue);
|
||||||
reportRepository.save(report);
|
reportRepository.save(report);
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package ru.ulstu.report.service;
|
package ru.ulstu.report.service;
|
||||||
|
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
import ru.ulstu.file.model.FileData;
|
||||||
import ru.ulstu.file.service.FileService;
|
import ru.ulstu.file.service.FileService;
|
||||||
import ru.ulstu.indicator.service.IndicatorService;
|
import ru.ulstu.indicator.service.IndicatorService;
|
||||||
import ru.ulstu.report.model.ReportValue;
|
import ru.ulstu.report.model.ReportValue;
|
||||||
@ -8,6 +9,7 @@ import ru.ulstu.report.model.dto.ReportValueDto;
|
|||||||
import ru.ulstu.report.repository.ReportValueRepository;
|
import ru.ulstu.report.repository.ReportValueRepository;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class ReportValueService {
|
public class ReportValueService {
|
||||||
@ -35,9 +37,11 @@ public class ReportValueService {
|
|||||||
}
|
}
|
||||||
reportValue.setIndicatorValue(reportValueDto.getIndicatorValue());
|
reportValue.setIndicatorValue(reportValueDto.getIndicatorValue());
|
||||||
reportValue.setIndicator(indicatorService.getIndicatorById(reportValueDto.getIndicator().getId()));
|
reportValue.setIndicator(indicatorService.getIndicatorById(reportValueDto.getIndicator().getId()));
|
||||||
reportValue.setFiles(fileService.saveOrCreate(reportValueDto.getFiles().stream()
|
List<FileData> files = fileService.saveOrCreate(reportValueDto.getFiles().stream()
|
||||||
.filter(f -> !f.isDeleted())
|
.filter(f -> !f.isDeleted())
|
||||||
.toList()));
|
.toList());
|
||||||
|
reportValue.getFiles().removeAll(files);
|
||||||
|
reportValue.setFiles(files);
|
||||||
reportValue = reportValueRepository.save(reportValue);
|
reportValue = reportValueRepository.save(reportValue);
|
||||||
reportService.addReportValue(reportValueDto.getReportId(), reportValue);
|
reportService.addReportValue(reportValueDto.getReportId(), reportValue);
|
||||||
|
|
||||||
|
@ -44,6 +44,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col col-md-6">
|
<div class="col col-md-6">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
@ -54,7 +55,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
|
|
||||||
<button name="save" type="submit" class="btn btn-outline-dark">Сохранить</button>
|
<button name="save" type="submit" class="btn btn-outline-dark">Сохранить</button>
|
||||||
<button name="delete"
|
<button name="delete"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user