在Bootstrap开发框架的工作流模块中实现流程完成后更新资料状态处理

在开发查看流程表单明细的时候,在Web界面中,我们往往通过使用@RenderPage实现页面内容模块化的隔离,减少复杂度,因此把一些常用的如审批、撤销、会签、阅办等等的流程步骤都放到了通用处理的页面ViewDetail.cshtml里面实现了。那么如果在一些特殊的表单处理过程中,我们在审批完成后需要触发一个事件来修改一些业务表的数据的处理的话,就会变得麻烦起来,通用的处理就代表要损失一部分灵活性,特殊性。那是否可以通过一些处理,能够实现这些特殊更新的操作呢?本篇随笔介绍的就是这个方面,实现流程完成后更新资料状态处理。

1、页面的模块关系

之前我在随笔《在Bootstrap开发框架的前端视图中使用@RenderPage实现页面内容模块化的隔离,减少复杂度》里面已经介绍过,对于这种有着共同内容的页面,我们可以把它提取出来,然后在主页面里面使用@RenderPage的方式进行包含进来,这样有助于我们模块化的处理。

上面通用的处理内容,全部在Apply/ViewDetail.cshtml页面里面。

它的页面内容,主要是封装一些常规的界面和处理脚本。

也就是对于一些如资产领用或者资产处置的界面,它都是包含这些基础流程显示的界面和处理逻辑的。

查看具体流程表单明细的界面如下所示。

 

或者资产领用表单的查看界面如下所示。

 

2、脚本的模板化处理,实现子类函数的差异性

在查看信息的顶部有对应的流程处理按钮,如果用户是流程参与人,那么可以执行相关的处理。

审批是一个通用的常规处理操作,弹出界面需要录入处理意见,以及下一步流程的处理人员,如下界面所示。

既然我们需要在一些业务表单结束后,触发一些后处理的事件来实现我们所需要数据的更新操作,那么我们可以通过使用Javascript的模板化方法的设计模式来实现我们需要的处理。

首先我们在通用处理的模块页面里面,定义好我们需要的函数,可以保留它不做任何事情,仅仅定义一个空壳函数就可以,不过需要在调用它的地方加上这个函数即可,而差异处理的不同,则让子类页面重载它的函数就可以实现差异性的模板方法模式。

例如我们在Apply/ViewDetail.cshtml页面,这个通用页面是相当于基类界面了,定义它的函数处理如下所示。

    //审批处理后的执行操作
    //该操作一般发生在申请单完成后,需要修改业务表单数据的情况
    //该函数默认为空,具体逻辑给子视图页面ViewDetail.cs里面实现
    function ToCompletedForm() {
        console.log("ToCompletedForm");//留待子类重写函数
    }

而在可能需要进行后续处理的地方,调用这个方法,以完成它的调用逻辑。

以上就是处理流程的时候,增加上这个函数处理方法的调用,其他地方如果是类似的场景,则类似处理即可。

然后,我们不同的子类页面,重写好自己的处理函数就可以覆盖基类的函数ToCompletedForm的处理逻辑了。

以上是资产领用流程的一个处理步骤,其中主要就是在流程结束的时候,完成一些数据更新和状态的处理操作。

以上就是对于表单完成后的一些特殊处理的实现方法,在流程结束的时刻,我们可以做更多的相关后台处理逻辑,都可以这样统一在一个后台方法中处理。

这样通过这种方式实现的逻辑,不影响页面的关系和处理过程,仅仅是我们在子页面里面重写一下处理规则即可,如果不需要,也可以不重写,不影响整个处理过程。 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: nfine是一个使用C#语言的快速开发框架。它提供了一系列的工具和功能,帮助开发人员更加高效地创建和管理.NET应用程序。 首先,nfine提供了一个功能强大的代码生成器,可以根据数据库表格自动生成实体类、业务逻辑层和数据访问层的代码。通过使用代码生成器,开发人员可以节省大量的时间和精力,快速地建立起应用程序的基本框架。 其次,nfine还提供了一套完善的权限管理系统。通过该系统,开发人员可以方便地对用户、角色和权限进行管理,并通过角色的配置控制不同用户的访问权限。这样做可以保证应用程序的安全性,并且对权限的管理也变得更加简单高效。 此外,nfine还提供了一些常用的功能模块,如日志记录、异常处理、任务调度等。这些功能模块可以帮助开发人员更好地管理应用程序的各个方面,并提升应用程序的性能和稳定性。 最后,nfine采用了模块化的设计理念,使得开发人员可以将应用程序拆分成独立的模块进行开发。这种设计方式可以提高开发的灵活性和可维护性,使得团队合作更加容易。 综上所述,nfine快速开发框架是一个功能强大、易于使用的开发工具,它能够帮助开发人员更快地开发出高质量的.NET应用程序。无论是对于个人开发者还是团队开发者来说,nfine都是一个值得尝试的选择。 ### 回答2: nfine是一款快速开发框架,它是基于.NET技术栈的 web 开发框架。该框架具有简单易用的特点,为开发者提供了一套高效快速的开发工具和组件。 首先,nfine提供了一系列的代码生成工具,如代码生成器、表单设计器等,可以帮助开发者快速生成基础代码和界面布局。使用这些工具,开发者只需简单配置相关参数,就能生成带有基本增删改查功能的代码,大大减少了开发时间和人力成本。 其次,nfine内置了丰富的功能模块和扩展组件,如权限管理模块、报表生成器、工作流引擎等,可以满足各种常见的业务需求。这些功能模块和组件可以快速集成到项目,省去了开发者自行实现的繁琐过程。 此外,nfine采用了模块化开发的架构,每个模块都是独立的,可以独立部署和升级,灵活性很高。开发者可以根据需要选择性地引入和使用某个模块,无需整个框架的依赖。 最后,nfine还提供了完善的技术文档和示例代码,供开发者学习和参考。它的社区活跃度也很高,开发者可以通过社区进行交流和分享,获取帮助和支持。 总体来说,nfine是一款功能强大、易用高效的快速开发框架。它能够帮助开发者快速构建稳定可靠的系统,提高开发效率,减少开发成本。无论是个人开发者还是团队,都能从nfine获得便利和帮助。 ### 回答3: nfine快速开发框架(Nfine Rapid Development Framework)是一款基于Microsoft.NET平台的快速开发框架。它专注于帮助开发人员快速构建可靠、高效的企业级应用程序。 首先,nfine提供了丰富的模版和代码生成器,使开发人员能够快速生成业务代码。通过简单的配置,可以自动生成各种基础的功能模块,包括用户管理、权限管理、角色管理、部门管理等。这大大节省了开发时间,避免了重复劳动。 其次,nfine具有良好的可扩展性。开发人员可以根据实际需求,通过自定义模版和插件来扩展框架的功能。不论是添加新的业务模块,还是修改现有功能,都可以通过简单的配置和代码编写来实现。 另外,nfine还支持分布式部署和云平台。它可以轻松地与其他系统进行集成,无论是在本地服务器上部署还是在云平台上运行。这为企业提供了更大的灵活性和可扩展性,能够满足各种复杂的环境要求。 此外,nfine还提供了丰富的技术支持和文档资源。开发人员可以通过在线文档和社区论坛获取帮助和解决问题。这使得开发人员能够更好地利用nfine框架进行项目开发,并能够更快地解决遇到的技术难题。 总之,nfine快速开发框架是一款功能强大、易用性高的开发工具。它能够快速生成代码、提供可扩展性、支持分布式部署,并提供全面的技术支持。无论是初学者还是经验丰富的开发人员,都能够通过nfine快速开发框架来提高开发效率、降低开发成本。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值