当前位置: 首页 > news >正文

惠城区城乡规划建设局网站西安建站推广

惠城区城乡规划建设局网站,西安建站推广,建站宝盒如何使用,时时彩网站怎么做目录 1.什么是责任链?它的原理是什么? 2.应用场景 ​3.项目中的应用 传送门:策略模式,工作中你用上了吗? 1.什么是责任链?它的原理是什么? 将请求的发送和接收解耦,让多个接收对象…

目录

1.什么是责任链?它的原理是什么?

2.应用场景

​3.项目中的应用

传送门:策略模式,工作中你用上了吗?


1.什么是责任链?它的原理是什么?

将请求的发送和接收解耦,让多个接收对象都有机会处理这个请求。将这些接收对象串成一条链,并沿着这条链传递这个请求,直到链上的某个接收对象能够处理它为止。

                                                                                               以上定义来自《设计模式之美》

2.应用场景

责任链模式的应用场景,在实际工作中,通常有如下两种应用场景。 

  • 操作需要经过一系列的校验,通过校验后才执行某些操作。

 

  • 工作流。企业中通常会制定很多工作流程,一级一级的去处理任务。 

3.项目中的应用

责任链要执行的业务:

public interface AcptRegisterService {/*** ************** @param acptRegisterBO*/void check(AcptRegisterBO acptBusinRegisterBO);}

责任链第一次执行的实现:


@Slf4j
@Order(1)
@Service
@RequiredArgsConstructor
public class AcptFormExistsCheckImpl implements AcptRegisterService{private final AcptformCtrl acptformCtrl;@Overridepublic void check(AcptRegisterBO checkBO) {//写自己的业务逻辑Boolean counter = BpsCommonUtils.isCounterSystem(checkBO.getOpEntrustWay());if (counter) {return;} else if (StringUtils.isBlank(checkBO.getAcptEnrouteField())){// 如果【受理在途校验字段】为空,则校验结束return;}
}

责任链第二次执行的实现:  

@Slf4j
@Order(2)
@Service
@RequiredArgsConstructor
public class Eservice724ConfigCheckImpl implements AcptRegisterService{private final AcptTemplateComCtrl acptTemplateComCtrl;private final String STAGING_PROCESS_INSTANCE = "stagingance";/***** @param acptRegisterBO */@Overridepublic void check(AcptRegisterBO acptRegisterBO ) {Character config76135 = SysConfigUtils.getCharConfig(HsSysConfigConstants.SYSCONFIG_76135);if (CHARACTOR_1 != config76135) {// 76135开关关闭时,不校验return;}Acpttpl acpttpl = acptTemplateComCtrl.getAcpttpl(acptBusinRegisterCheckBO.getAcptBusinId());if (acpttpl.getAcptType() != BUSIN) {// 参数类、运营类的业务受理模板没有7*24小时受理开关,不校验return;}

 责任链第三次执行的实现:

@Slf4j
@Order(3)
@Service
public class ApprovalNodeCheckImpl implements AcptRegisterService{@Autowiredprivate AcptTemplateCtrl acptTemplateCtrl;@Autowiredprivate AcptTemplateComCtrl acptTemplateComCtrl;@Autowiredprivate DependenceConfigCtrl dependenceConfigCtrl;@CloudReferenceprivate WFProcessDefinitionService wfProcessDefinitionService;//    @Value("${approval.node.acptBusinIds}")
//    private String acptBusinIds;/***登记校验** @param acptRegisterBO */@Overridepublic void check(AcptRegisterBO acptRegisterBO ) {// 柜台接口不需要人工审核接口校验Boolean counter = BpsCommonUtils.isCounterSystem(acptBusinRegisterCheckBO.getOpEntrustWay());if (counter) {return;}String acptBusinIds = dependenceConfigCtrl.getApprovalNodeBusinIds();String acptBusinId = acptBusinRegisterCheckBO.getAcptBusinId();log.info("需要检测人工节点的业务编号:{}", acptBusinId);if (StringUtils.isNoneBlank(acptBusinIds)) {boolean present = Arrays.stream(StringUtils.split(acptBusinIds, ",")).anyMatch(e -> StringUtils.equals(e, acptBusinId));// 不存在需要校验的业务编号,无需处理if (!present) {return;}}

具体的应用:

  @Autowiredprivate List<AcptRegisterService > acptRegisterServiceList;/*** 受理信息登记** @param input 入参* @return*/public PostBpsacptformRegistOutput postBpsacptformRegist(PostBpsacptformRegistInput input) {PostBpsacptformRegistOutput output = new PostBpsacptformRegistOutput();// 1.登记检查AcptRegisterBO acptRegisterBO = new AcptRegisterBO ();DataCopyUtil.copyData(input, acptBusinRegisterCheckBO);//******************* 1.在途校验 2.业务受理时间校验 3.人工审核节点校验 ************//acptRegisterServiceList.forEach(e -> e.check(acptRegisterBO ));
}

传送门:

策略模式,工作中你用上了吗?

给对象讲工厂模式,必须易懂易会

http://www.jinmujx.cn/news/79141.html

相关文章:

  • 汾阳做网站产品推广平台有哪些
  • 温州市网站手机创建网站教程
  • 彩票网站建设需要什么网络营销的未来6个发展趋势
  • 中国建设之乡是哪里seo建站平台哪家好
  • 长沙的网站建设公司如何设置友情链接
  • 嘉兴建站软件如何去推广
  • 网站图片滚动是怎么做的百度关键词搜索工具
  • 在线设计 网站源码企业网站营销的典型案例
  • 政府网站建设分析论文站长友情链接
  • 手机商城网站制作电工培训内容
  • 最好的网站建设小游戏推广接单平台
  • iis 设置网站权限5118数据分析平台官网
  • 中国最新军事新闻 今天seo综合查询系统
  • 企业介绍微网站怎么做的网络推广合作协议范本
  • 网站设计 站网上seo研究
  • 个人网站主办者名称谷歌优化的网络公司
  • 网站宽屏图片怎么做推广普通话手抄报简单
  • 海外贸易平台有哪些seo快速排名关键词
  • wordpress后台被黑搜索引擎seo
  • 搭建网站吧最新国际新闻 大事件
  • 美工设计网站推荐建站官网
  • php 信息分类网站开发南通百度seo代理
  • 校园淘宝店网站开发优化关键词规则
  • 在线文字编辑器网站推广seo招聘
  • 页面制作多少钱宁波seo营销
  • 网站建设中成本怎么描述万物识别扫一扫
  • 网站建设金手指百度搜索资源
  • 2017酷站推荐网站廊坊关键词优化报价
  • 天猫网站是用什么技术做的百度主页入口
  • 个人网站制作源代码下载如何找到网络公关公司