Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ public interface DacDAO extends Transactional<DacDAO> {
d.update_date AS dataset_update_date,
d.update_user_id,
d.data_use AS dataset_data_use,
d.dac_approval AS dataset_dac_approval,
d.sharing_plan_document,
d.sharing_plan_document_name,
daa.daa_id AS daa_daa_id,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,9 @@ public void accumulate(Map<Integer, Dac> container, RowView rowView) {
dataset.setDataUse(dataUseParser.parseDataUse(duStr));
}

Boolean dacApproval = rowView.getColumn("dataset_dac_approval", Boolean.class);
dataset.setDacApproval(dacApproval);

if (dataset != null) {
dac.addDataset(dataset);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,10 @@ public void setAssociatedDaa(DataAccessAgreement associatedDaa) {
this.associatedDaa = associatedDaa;
}

public List<Dataset> getDatasets() {
return datasets;
}

public void addDataset(Dataset dataset) {
if (Objects.isNull(datasets)) {
datasets = new ArrayList<>();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,47 @@ void testFindAllWithDataset() {
assertNull(dac2.getAssociatedDaa());
}

@Test
void testFindAllWithDatasetApproval() {
Integer dacId = createRandomDAC();
User user = createUser();
Integer approvedDatasetId =
datasetDAO.insertDataset(
randomAlphabetic(20),
new Timestamp(new Date().getTime()),
user.getUserId(),
randomAlphabetic(20),
new DataUseBuilder().setGeneralUse(true).build().toString(),
dacId);
Integer pendingDatasetId =
datasetDAO.insertDataset(
randomAlphabetic(20),
new Timestamp(new Date().getTime()),
user.getUserId(),
randomAlphabetic(20),
new DataUseBuilder().setGeneralUse(true).build().toString(),
dacId);
datasetDAO.updateDatasetApproval(true, Instant.now(), user.getUserId(), approvedDatasetId);

List<Dac> dacs = dacDAO.findAll();
Dac dac = dacs.stream().filter(d -> d.getDacId().equals(dacId)).findFirst().orElseThrow();
List<Dataset> datasets = dac.getDatasets();

Dataset approvedDataset =
datasets.stream()
.filter(d -> d.getDatasetId().equals(approvedDatasetId))
.findFirst()
.orElseThrow();
assertTrue(approvedDataset.getDacApproval());

Dataset pendingDataset =
datasets.stream()
.filter(d -> d.getDatasetId().equals(pendingDatasetId))
.findFirst()
.orElseThrow();
assertNull(pendingDataset.getDacApproval());
}

@Test
void testFindAllWithDAAs() {
User user = createUser();
Expand Down
Loading