Search in sources :

Example 6 with Award

use of org.devgateway.ocds.persistence.mongo.Award in project ocvn by devgateway.

the class ReleaseFlagI171Processor method calculateFlag.

@Override
protected Boolean calculateFlag(FlaggedRelease flaggable, StringBuffer rationale) {
    boolean result = false;
    for (Award award : flaggable.getAwards()) {
        if (!Award.Status.active.equals(award.getStatus())) {
            continue;
        }
        BigDecimal dLeft = relativeDistanceLeft(flaggable.getTender().getValue().getAmount(), award.getValue().getAmount());
        BigDecimal dRight = relativeDistanceRight(flaggable.getTender().getValue().getAmount(), award.getValue().getAmount());
        rationale.append(";Award=").append(award.getValue().getAmount()).append(" with tender=").append(flaggable.getTender().getValue().getAmount());
        if (dLeft.compareTo(MAX_ALLOWED_PERCENT_TENDER_VALUE_AMOUNT) < 0 || dRight.compareTo(MAX_ALLOWED_PERCENT_TENDER_VALUE_AMOUNT) < 0) {
            result = true;
            break;
        }
    }
    return result;
}
Also used : Award(org.devgateway.ocds.persistence.mongo.Award) BigDecimal(java.math.BigDecimal)

Aggregations

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