Search in sources :

Example 11 with Award

use of org.devgateway.ocds.persistence.mongo.Award in project oc-explorer by devgateway.

the class ReleaseFlagI019Processor method calculateFlag.

@Override
protected Boolean calculateFlag(FlaggedRelease flaggable, StringBuffer rationale) {
    Optional<Award> award = flaggable.getAwards().stream().filter(a -> a.getDate() != null && Award.Status.active.equals(a.getStatus())).findFirst();
    if (!award.isPresent()) {
        return false;
    }
    Days daysBetween = Days.daysBetween(new DateTime(flaggable.getTender().getTenderPeriod().getEndDate()), new DateTime(award.get().getDate()));
    rationale.append("Days between: ").append(daysBetween.getDays()).append("; Max allowed days: ").append(MAX_ALLOWED_DAYS_TENDER_END_DATE_AWARD_DATE).append(";");
    return daysBetween.getDays() > MAX_ALLOWED_DAYS_TENDER_END_DATE_AWARD_DATE;
}
Also used : Flag(org.devgateway.ocds.persistence.mongo.flags.Flag) Arrays(java.util.Arrays) AbstractFlaggedReleaseFlagProcessor(org.devgateway.ocds.persistence.mongo.flags.AbstractFlaggedReleaseFlagProcessor) FlaggedReleasePredicates(org.devgateway.ocds.persistence.mongo.flags.preconditions.FlaggedReleasePredicates) DateTime(org.joda.time.DateTime) Set(java.util.Set) Award(org.devgateway.ocds.persistence.mongo.Award) FlaggedRelease(org.devgateway.ocds.persistence.mongo.FlaggedRelease) HashSet(java.util.HashSet) Component(org.springframework.stereotype.Component) Days(org.joda.time.Days) PostConstruct(javax.annotation.PostConstruct) FlagType(org.devgateway.ocds.persistence.mongo.flags.FlagType) Optional(java.util.Optional) Collections(java.util.Collections) Award(org.devgateway.ocds.persistence.mongo.Award) Days(org.joda.time.Days) DateTime(org.joda.time.DateTime)

Example 12 with Award

use of org.devgateway.ocds.persistence.mongo.Award in project oc-explorer by devgateway.

the class ReleasePackageJsonImportTest method importObjectsAward.

@Test
public void importObjectsAward() throws Exception {
    final ClassLoader classLoader = getClass().getClassLoader();
    final File file = new File(classLoader.getResource("json/fictional-example/ocds-213czf-000-00001-04-award.json").getFile());
    final ReleasePackageJsonImport releasePackageJsonImport = new ReleasePackageJsonImport(releaseRepository, file);
    final Collection<Release> releases = releasePackageJsonImport.importObjects();
    final Release importedRelease = releaseRepository.findById("ocds-213czf-000-00001-04-award");
    Assert.assertEquals(1, releases.size());
    Assert.assertNotNull(importedRelease);
    final Set<Award> awards = importedRelease.getAwards();
    Assert.assertEquals(Award.Status.pending, awards.iterator().next().getStatus());
}
Also used : Award(org.devgateway.ocds.persistence.mongo.Award) File(java.io.File) Release(org.devgateway.ocds.persistence.mongo.Release) Test(org.junit.Test) AbstractMongoTest(org.devgateway.toolkit.persistence.mongo.AbstractMongoTest)

Aggregations

Award (org.devgateway.ocds.persistence.mongo.Award)12 Release (org.devgateway.ocds.persistence.mongo.Release)6 BigDecimal (java.math.BigDecimal)4 Amount (org.devgateway.ocds.persistence.mongo.Amount)4 Budget (org.devgateway.ocds.persistence.mongo.Budget)4 Planning (org.devgateway.ocds.persistence.mongo.Planning)4 File (java.io.File)2 Arrays (java.util.Arrays)2 Collections (java.util.Collections)2 HashSet (java.util.HashSet)2 Optional (java.util.Optional)2 Set (java.util.Set)2 PostConstruct (javax.annotation.PostConstruct)2 Detail (org.devgateway.ocds.persistence.mongo.Detail)2 FlaggedRelease (org.devgateway.ocds.persistence.mongo.FlaggedRelease)2 AbstractFlaggedReleaseFlagProcessor (org.devgateway.ocds.persistence.mongo.flags.AbstractFlaggedReleaseFlagProcessor)2 Flag (org.devgateway.ocds.persistence.mongo.flags.Flag)2 FlagType (org.devgateway.ocds.persistence.mongo.flags.FlagType)2 FlaggedReleasePredicates (org.devgateway.ocds.persistence.mongo.flags.preconditions.FlaggedReleasePredicates)2 AbstractMongoTest (org.devgateway.toolkit.persistence.mongo.AbstractMongoTest)2