基于jeecg-boot的NBCIO 亿事达企业管理平台

简介: 基于jeecg-boot的NBCIO 亿事达企业管理平台

gitee源代码地址

后端代码: https://gitee.com/nbacheng/nbcio-boot

前端代码:https://gitee.com/nbacheng/nbcio-vue.git

github源代码地址

后端代码:https://github.com/nbacheng/nbcio-boot.git

前端代码:https://github.com/nbacheng/nbcio-vue.git

在线演示 : http://122.227.135.243:9888

目前只提供mysql的数据库,但代码也兼容oracle11g ,同时也在oracle11g上测试过。

因为系统是基于jeecg-boot 3.0版本基础上,所以可以参考jeecg-boot相应的安装与使用手册进行安装与调试。

首先安装nbcio-boot.sql文件,生成mysql数据,同时在dev进行配置自己的数据库服务器地址与端口,我这里用的minio文件服务器,也可以根据需要用本地或其它oss服务器。

本系统flowable版本是6.7.2。

二、平台工作流使用说明

  1. 工作流的基本使用概念

工作流,首先需要定义一个流程模板,这里用web版流程设计器编辑,得出的是一个流程定义的xml对象,叫流程模板,它的key叫流程定义key,这个是代表一套流程模板的,同一个key能有多个版本的模板。每个版本的模板对象都有个id,这里叫流程定义id通常,我们是根据key来获取最新版本的模板启动一个流程(当然,也可以根据定义id来开启一个流程,正常逻辑应该是取最新去,又指定的业务情景就使用id),这个被启动的流程,这里叫流程实例,同样,它也有个id,我们叫流程实例id

对于用户任务节点,同样的,有两种,一个是定义模板中取来的,里面的信息是事先定义好的,不变的,里面的id就是我们设计流程的时候输入的id。一个是流程实例中取来的,这个对象的id是自动生成的,一般就是uuid。

这里流程分三种,一种是关联web定义表单的流程,一种是根据不同业务自己进行定义的业务流程,还有就是通过钉钉审批的流程。

对业务流程所定义的流程与业务的关联关系表为flow_my_business中:

data_id                        业务数据id

process_definition_key     流程定义key

process_definition_id 流程定义id

process_instance_id   流程实例id

task_id                            流程实例中的待处理节点id,就是uuid那个

task_name                     这个节点的名字,咱们输入的中文的那个

task_name_id               这个节点的定义中的id,比如第一个任务节点为发起人的节点。

操作流程实例的时候,用的就是实例的id;操作流程模板,用的便是定义id。

注意:流程模块中,凡是涉及到用户的,使用username做唯一Key,即用户名,并非id,另外流程定义中第一个用户任务一定要是申请发起人的节点。

2、流程管理与使用

2.1 流程模型

通过web图形化的流程模型定义,如下

这里流程分成几类,OA、财务、钉钉薪资、钉钉人事和自定义业务,当然这些也可以根据自己需要进行定义。

普通的OA流程,关联web定义表单,流程分类要选择OA

一般每个节点都采用用户任务为多,更多可以参考flowable的相关说明。

         其中OA和财务可以关联表单配置的表单定义,钉钉薪资与钉钉人事是通过钉钉进行审批,定义好后可以直接进行提交审批,自定义业务是可以配置自己定义业务表单进行审批,也可以在业务表单里进行流程模块的关联。

2.2 表单配置

通过web图形化的表单设计,满足一些简单的业务表单需求。

         通过上面的流程模型,可以在OA和财务分类的流程模板关联这里定义的表单。

2.3 业务表单

对于自定义业务表单的流程需要在这里进行定义(当然在相应的代码也要进行单独编写),主要涉及业务表单名称,服务名称,前端路由地址,组件注入方式等,可以参考给出的两个例子来参考。

同时可以关联流程,把自定义业务表单与流程模板进行关联,以便后面审批过程中通过这个流程模板进行流转。

3、任务管理

3.1 所有任务

这个是管理员才有的功能,普遍用户没有这个。

这里可以看到所有人发起的任务,同时可以对任务进行委派,转办和取消申请等功能操作,以便对一些异常流程进行处理。

备注:委派:是将任务节点分给其他人处理,等其他人处理好之后,委派任务会自动回到委派人的任务中

     转办:直接将办理人assignee 换成别人,这时任务的拥有着不再是转办人,而是为空,相当与将任务转出。

3.2 我的任务

   这里就是我发起的任务都在这里,可以对任务取消申请或删除等操作,看到的只有我自己发起的任务。

3.3 待办任务

   就是需要你办理的任务列表,一般是通过流转流到你这里的任务,需要你进行处理,

比如上面对当前待办的任务可以进行审批,退回与驳回的功能

备注:驳回就是跳转到当前节点的上一个节点,只能是回到上一个节点,驳回可以回退到子流程开始。

  回退:回退只能退回到串线路线上,不能回退到子流程。

   不过目前平台还不支持子流程。

3.4 已办任务

    通过自己办理的任务列表。

4、流程案例

  这里提供两个自定义业务的流程案例,一个是单表的,一个是主从表的。这些都要结合业务进行代码级的修改。

4.1 单表流程

这里是一个人员管理的例子,可以直接通过业务表单进行流程审批,提交审批后就进入正常的流程审批了。

4.2 主子流程

这里提供了一个主从表的例子,也与上面类似的流程提交方式,同时这里从表录入支持类似ERP功能的选择物料等。

5、消息提醒

   增加了待办消息,对于待办同时往待办消息里添加一个待办消息,可以通过这里进行处理审批流程,对于结束等流程进行消息通知。

6、钉钉审批

    这里提供了一个简单的例子,录入薪资的一些数据,根据这个数据进行分类统计提交钉钉进行审批。

同时可以对钉钉流程进行跟踪

当然要满足上面要求,需要对钉钉的相关参数进行设置,

#第三方APP对接
third-app:
  enabled: true
  type:
    #钉钉
    DINGTALK:
      enabled: true
      # appKey
      client-id: dingrclmpcbhnquxtpsi
      # appSecret
      client-secret: UT9T-zTD82wqMZc_IJl5qoSUaijoy1_YvN1MKU_7a-_cf9SEbB9erZpZ8wq9HKrl
      agent-id: 1105646298

根据自己的参数进行dev里设置,同时在钉钉管理里进行模板设置,比如:

这样提交到手机端,可以看到如下类似界面

三、未来的计划

   主要完善流程的一些功能,同时增加OA、CRM和ERP的相关功能。


相关文章
|
5天前
|
SQL 移动开发 前端开发
基于Jeecg-boot前后端分离的flowable流程管理平台主页调整
基于Jeecg-boot前后端分离的flowable流程管理平台主页调整
11 0
|
5天前
|
JavaScript BI
基于jeecg-boot集成luckysheet记录
基于jeecg-boot集成luckysheet记录
20 0
|
5天前
|
移动开发 前端开发 项目管理
基于jeecg-boot的nbcio-boot亿事达企业管理平台发布
基于jeecg-boot的nbcio-boot亿事达企业管理平台发布
|
5天前
|
移动开发 前端开发
基于jeecg-boot的OA日程安排开发(四)
基于jeecg-boot的OA日程安排开发(四)
|
5天前
|
移动开发 前端开发
基于jeecg-boot的OA日程安排开发(五)
基于jeecg-boot的OA日程安排开发(五)
10 0
|
5天前
|
缓存 前端开发 NoSQL
基于若依和flowable7.0.1的ruoyi-nbcio-plus流程管理系统正式发布
基于若依和flowable7.0.1的ruoyi-nbcio-plus流程管理系统正式发布
14 0
|
5天前
|
Java 数据库连接 数据库
基于SSM+maven框架实现的企业考勤管理系统
基于SSM+maven框架实现的企业考勤管理系统
|
5天前
|
Java 关系型数据库 数据库
基于springboot家政服务管理平台
基于springboot家政服务管理平台
|
5天前
|
Java 关系型数据库 MySQL
基于springboot财务管理系统
基于springboot财务管理系统
基于springboot财务管理系统
|
5天前
|
前端开发 Java 关系型数据库
基于SSM实现校友录管理平台(一)
基于SSM实现校友录管理平台