Search in sources :

Example 1 with BeanPropertyRuleRunner

use of org.akaza.openclinica.logic.rulerunner.BeanPropertyRuleRunner in project OpenClinica by OpenClinica.

the class RuleSetService method runIndividualRulesInBeanProperty.

public void runIndividualRulesInBeanProperty(List<RuleSetBean> ruleSets, Integer userId, StudyEventChangeDetails changeDetails, Integer studyEventOrdinal) {
    ArrayList<RuleSetBean> ruleSetBeans = new ArrayList<>();
    for (RuleSetBean ruleSet : ruleSets) {
        String studyEventDefinitionOrdinal = getExpressionService().getStudyEventDefinitionOrdninalCurated(ruleSet.getOriginalTarget().getValue() + ".A.B");
        if (studyEventDefinitionOrdinal.equals("") || studyEventDefinitionOrdinal.equals(String.valueOf(studyEventOrdinal))) {
            ruleSetBeans.add(ruleSet);
        }
    }
    BeanPropertyRuleRunner ruleRunner = new BeanPropertyRuleRunner(dataSource, requestURLMinusServletPath, contextPath, mailSender);
    ruleRunner.runRules(ruleSetBeans, dataSource, beanPropertyService, getStudyEventDomainDao(), getStudyEventDefDomainDao(), changeDetails, userId, mailSender);
}
Also used : ArrayList(java.util.ArrayList) BeanPropertyRuleRunner(org.akaza.openclinica.logic.rulerunner.BeanPropertyRuleRunner) RuleSetBean(org.akaza.openclinica.domain.rule.RuleSetBean)

Example 2 with BeanPropertyRuleRunner

use of org.akaza.openclinica.logic.rulerunner.BeanPropertyRuleRunner in project OpenClinica by OpenClinica.

the class RuleSetService method runRulesInBeanProperty.

public void runRulesInBeanProperty(List<RuleSetBean> ruleSets, Integer userId, StudyEventChangeDetails changeDetails) {
    BeanPropertyRuleRunner ruleRunner = new BeanPropertyRuleRunner(dataSource, requestURLMinusServletPath, contextPath, mailSender);
    ruleSets = (ArrayList<RuleSetBean>) filterByStatusEqualsAvailable(ruleSets);
    ruleSets = (ArrayList<RuleSetBean>) filterRuleSetsByStudyEventOrdinal(ruleSets, null);
    try {
        ruleSets = (ArrayList<RuleSetBean>) filterRuleSetsByStudySubject(ruleSets);
    } catch (NumberFormatException | ParseException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    ruleRunner.runRules(ruleSets, dataSource, beanPropertyService, getStudyEventDomainDao(), getStudyEventDefDomainDao(), changeDetails, userId, mailSender);
}
Also used : BeanPropertyRuleRunner(org.akaza.openclinica.logic.rulerunner.BeanPropertyRuleRunner) ParseException(java.text.ParseException) RuleSetBean(org.akaza.openclinica.domain.rule.RuleSetBean)

Aggregations

RuleSetBean (org.akaza.openclinica.domain.rule.RuleSetBean)2 BeanPropertyRuleRunner (org.akaza.openclinica.logic.rulerunner.BeanPropertyRuleRunner)2 ParseException (java.text.ParseException)1 ArrayList (java.util.ArrayList)1