派单规则类图
2021-11-24 11:39:43   0  举报             
     
         
 派单规则
    作者其他创作
 大纲/内容
 RuleOutput//规则输出
  RuleEngine
  ProcessData  dispatchRule(BillDo billDo)//派单dispatchSuccess(ProcessData data)//派单成功后的处理
  RuleData//规则DispatchRuleDo rule;//等级规则     DispatchGradeDo grade;//等级详情列表    List<DispatchGradeDetailDo> gradeDetailList;     //继承 Condition 的类 bean name 列表  (逗号分隔)    String conditions;     //继承 Selector 的类 bean name 列表 (逗号分隔)    String selectors;
  RuleProcesser//规则逻辑处理
  void selectAssignee(ProcessData data)//选择委托人
  RuleNode//规则处理节点
  //当前规则是否启用此功能 默认启用Boolean isEnable(RuleData data)//节点初始化自身需要的数据void init(RuleData data)
  RuleEngine//运行规则
  RuleProcesserRuleMatcherRuleCache
  ProcessData run(ProcessData data)//运行规则处理单据void dispose(ProcessData data)//运行规则结束后的处理
  OrgCondition//单据来源限制
  GradeAverageSeletor//等级平均分派
  RuleMatcher//规则匹配
  RuleData ruleMatch(ProcessData data)//选择规则 Boolean ruleConflict(RuleData currentRule)//规则冲突判断//选择规则时 调用 inLimit//规则冲突判断 调用 conflict 
  DefaultAverageSeletor//平均分派
  ProcessData    String ruleId;//规则id        BillDo billDo;//单据       String assignee=null;//委托人(最后的结果)      String gradeDetailId=null;//等级规则详情id
  Selector//派单逻辑
  void process(ProcessData data) //节点处理
  RuleManager//规则管理
  void init()//初始化void enableRule(DispatchRuleDo rule)//启用规则void disEnableRule(DispatchRuleDo rule)//禁用规则//启用规则 调用 RuleNode的init,初始化缓存数据//禁用规则删除缓存
  DateCondition//派单时间
  Condition//规则条件
  RuleCache//缓存
  前缀                            redisPrefix = \"RULE\" + 公司Id启用的规则       Set       redisPrefix+\"ENABLERULE\"规则明细          Map      redisPrefix+ruleId单据使用的规则 String    redisPrefix+\"TYPE\"+typeId委托人列表       Map      redisPrefix+\"ASSIGNEE\"+ruleId委托人等级列表 Map      redisPrefix+\"ASSIGNEE\"+ruleId+gradeDetailId 规则当前阈值   String    redisPrefix+\"CURRENTTHRESHOLD\"+ruleId 委托人待处理单据数量   String   redisPrefix+\"PENDINGMAP\" + typeId + assignee
     收藏 
     
 
 
 
 
  0 条评论
 下一页