package org.example; import com.ycl.scheme.AbstractSchemeRunner; import com.ycl.scheme.BlockText; import com.ycl.scheme.Parameter; import com.ycl.scheme.entity.BlockCode; import com.ycl.scheme.entity.Scheme; import com.ycl.scheme.SchemeRunnerBuilder; import com.ycl.scheme.service.SchemeService; import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.stereotype.Component; import javax.annotation.Resource; import java.util.HashMap; import java.util.Map; @SpringBootTest public class Builder { private SchemeService schemeService; @Autowired public void setSchemeService(SchemeService schemeService) { this.schemeService = schemeService; } @Test public void build(){ BlockText blockText = new BlockText(); String text = "数据源 : 警情通报 \n 条件:时间范围(最近5天) 并且 警情内容 包含 '抢夺' 并且 案发地 包含 '金牛大道'\n 结果: 计数 > 2 \n and 数据源:案件系统 \n 条件:时间范围(最近5天) 并且 警情内容 包含 '命案' 并且 案发地 包含 '金牛大道'\n 结果: 计数>=2 \n"; Scheme scheme =new Scheme(); scheme.setId(1); scheme.setName("紧急通报"); scheme.setInputText(text); SchemeService m = this.schemeService; SchemeService service = new SchemeService(); service.buildScheme(scheme); String code =scheme.getOutCode(); AbstractSchemeRunner runner = scheme.getRunner(); Map pars= new HashMap<>(); Parameter p = new Parameter(); p.setName("rowId"); p.setScript(1); p.setTypeName("Integer"); runner.run(pars,service); System.out.println(code); } @Test public void scriptText(){ } }