Sign inSign up

6996899/workflow_net_cn

By 6996899

•Updated over 3 years ago

轻代码研发平台

Image
1

1.1K

6996899/workflow_net_cn repository overview

⁠WORKFLOW业务表单配置系统

一款基于spring boot的数据处理系统。可以定义扩展功能模块、定义数据源、定义数据表单、定义打印模版、定义数据导入导出; 支持SQL语法检索、分析和处理数据。 系统用户的授权及鉴权体系完整;表单配置简便、web组件丰富;搭配的业务工作流系统可灵活配置和处理业务;内置任务协同可以满足企业日常工作任务的发起、反馈和追踪管理。多数据源分库分表的独特方式可以使您的数据存储更加稳健。

⁠特点

  • 可以配置多数据源,同时和现有多系统互联互通,方便读取和修改老旧系统的业务数据,降低老旧系统的改造成本。

  • 同一模块展示数据和写入数据使用不同的数据源、从而可以实现读写分离、异地跨库查询。

  • 配置库中支持以sql方式读写和配置大多数数据源,目前支持:MySQL,TIDB,MSSql,Oracle,DB2,SysBase,SqlLite,ClickHouse...

  • 使SQL支持多步计算。拆解复杂的和计算开销较大SQL,使其能够将存储结果缓存并由后续的SQL继续使用,共同完成数据的分析和查找,弥补传统关系型数据库在OLAP上存在的短板。

  • 非关系型数据库支持ElasticSearch,支持简单SQL查询。

  • 可以根据需求不断增加新的功能模块,且数量无上限,修改配置库数据后刷新页面,所见即所得。需求变化再快,业务系统也可以及时跟进。

  • 备份配置库后需求撤回,还原配置库即可复原原有功能。

  • 可以对现有业务表或者新增加的业务表设计录入表单,实现业务数据的人工采录、及接口采录。

  • 支持配置excel文件导入模块,将Excel中的数据根据数据的模型和业务需要导入到不同的业务表。

  • 支持配置jExcel组件批量录入数据,支持同时保存多个sheet页数据。

  • 可以根据需要配置数据列表组件,列表组件的数据源可以导出Excel文件,保存到本地进行二次分析。

  • 内置人员角色权限管理,根据实际需要将不同模块授权给不同的角色使用。

  • 内置工作流业务系统,将业务表单按照系统要求增加特定的关键字段即可对接。设计好流程节点,参与角色,流转动作脚本,数据校验脚本,之后即可实现流程审批。

  • 支持丰富的数据处理组件,满足复杂业务:列表组件,表单录入组件,打印模版组件,静态页面组件,数据查询组件、数据导入导出组件...

  • 支持将表单数据写入到数据库、传给shell作为传参进一步处理也可以post或get到网络地址交由三方系统处理。

  • 支持CSS自定义功能,根据需要修改系统的样式,以符合企业的品牌形象。

而这一切都将无需编写逻辑复杂的代码,只需要按照系统所设计的规范,根据模块编号在配置库中创建好配置表以及配置数据即可。您只需要编写SQL语句,和少量的页面javascript脚本,即可实现功能强大的业务系统。帮助您分析和处理数据。

⁠获得镜像

docker push 6996899/workflow_net_cn

⁠启动容器

docker run -itd --name wf -p 80:80 --mac-address=f4:0f:24:33:26:39 6996899/workflow_net_cn sh -c "/opt/workflow.net.cn/start.sh"

或者启动时挂载宿主机目录,需要提前将config目录中的文件复制到宿主机:

docker run -itd --name wf -p 80:80 -v d:/opt/workflow.net.cn/config:/opt/workflow.net.cn/config --mac-address=f4:0f:24:33:26:39 6996899/workflow_net_cn sh -c "/opt/workflow.net.cn/start.sh"

注意事项

1. 端口号可以修改成任意的,但是 mac地址必须保持f4:0f:24:33:26:39,否则将无法启动服务。

2. 如果您在windows环境下,使用Docker Desktop,拉取images镜像之后,也需要在Dos命令行窗口复制以上命令运行容器。通过在Docker Desktop界面上之间点击运行按钮,是无法正常启动的。

⁠进入容器

docker exec -it wf bash

cd /opt/workflow.net.cn/

⁠启动服务

/opt/workflow.net.cn/start.sh

⁠访问WEB管理界面

⁠http://localhost⁠

局域网内其它客户机若要访问,请将localhost指向到docker所在的宿主机IP地址。

web登录默认账号:000001 密码:123456

若无法登录,请参考业务库中的 person_user 表数据。

⁠系统内置数据源

为了方便发布,最新版本的Docker镜像采用了sqllite数据库,故无须额外修改数据源即可启动运行。其它数据库请参考对应的历史版本。配置库SQLLite文件路径:/opt/workflow.net.cn/config/wf.sqllite.conf 业务库SQLLite文件路径:/opt/workflow.net.cn/config/wf.biz.db。您也可以将其更换成MySQL数据库,MySQL和SQLLite语法略有不同例如:连接字符串SQLLite使用||MySQL使用concat,SQLLite不支持关联Update,这些差异化的修改需要进入配置库,修改配置库中保存的SQL语句,修改成MySQL数据源之后修改服务器端配置数据将会更加方便(MySQL可以远程,SQLite需要将远程文件复制本机修改,或者只能部署在本机)。更换数据源需进入容器后修改/opt/workflow.net.cn/config/application.properties中的配置即可,config目录已经包含了mysql的配置方式。

软件的全部可见功能均为配置库中配置获得。若功能不完整,请根据文档或教程自行修改配置,以达到理想的使用效果。

更换数据源之后配置库和业务库中需要具备相应的数据。更多的配置数据后续将会公布在官网。您也可以根据需要自行配置和设计。同时也欢迎公开由您配置的系统功能数据。

⁠系统扩展数据源

配置库(/opt/workflow.net.cn/config/wf.sqllite.conf)中的表 data_source_bridge_conf ,修改和添加数据源桥接表中的配置数据后,系统读取对应模块的业务数据之前会尝试链接到该数据源。从指定数据源读取数据。

⁠data_source_bridge_conf 配置表字段说明
  1. model 模块编号 (系统功能编号),数据示例:003001

  2. templid 模板编号(相同模块中有不同的数据模板),数据示例:1

  3. type 数据源类型,以下值中任选其一:SqlAccess,SqlDB2,SqlDM,SqlKingBaseES,SqlLite,SqlMariaDB,SqlMySQL,SqlOracle,SqlPostgre,SqlServer,SqlElasticSearch

  4. visible 是否可见:1,可见;0,不可见(即失效状态,系统不检测此数据源);

  5. conf 一段json数据,描述数据源的url,username 和 password以及其它一些有关JDBC连接驱动的信息。

    mysql的数据示例(type=SqlMySQL):

    
    {
      "url":"jdbc:mysql://127.0.0.1:3306/windowdb?useUnicode=true&characterEncoding=UTF-8&useSSL=false&autoReconnect=true&rewriteBatchedStatements=true&serverTimezone=Hongkong",
      "password":"root",
      "username":"root"
    }
    
    

    ElasticSearch的数据示例(type=SqlElasticSearch):

    
    {
      "url":"localhost",
      "port":9200,
      "username":"elastic",
      "password":"123456"
    }
    
    

    其它类型数据源,参考mysql的,注意url,username,password基本三要素。

  6. note 用来记录该数据源的详细说明(哪个系统在用,是主是从等等),删除该字段,对系统没有任何影响。

⁠修改端口

1,运行docker run 的时候将:-p 1980:1980 修改为自己需要的端口号,例如:80

2,docker exec -it wf bash 进入容器内部,修改配置文件:vi /opt/workflow.net.cn/config/application.properties 中的第一行: server.port: 1980 中的1980修改为您需要使用的端口号。

⁠缓存配置数据

为了实现所见即所得,系统默认读取配置库数据时是没有优先读取缓存的。这样将会损失一点点服务器性能开销。但是,不用担心。

在开发阶段完成之后,将application.properties中的server.mode: dev 的dev修改为除了dev之外的任意值,系统都将会将配置库中的数据读入缓存,然后从缓存中读取配置信息。

注意:在生产环境(server.mode不等于dev)修改配置库,需要在修改完配置之后,登录web页面点击右上角的刷新按钮(位于个人头像右侧),刷新后系统会重新从配置库将配置信息读入缓存,并且以后都会从缓存读取配置,避免频繁请求配置库。(而业务库相应数据量较大模块请优先考虑使用ElasticSearch作为扩展数据源)

⁠支持

⁠声明

  • 由于此版本仅供教学用途,您可以根据自己的需要自行配置软件的功能,所以不能保障现有功能的可用性。
  • 建议安装在局域网内,外网的请求访问可能将受到限制。当前版本为固定域名,访问web界面需修改系统hosts文件指向到Docker容器所在服务器的IP。
  • 软件以及软件的作者不对您的业务数据负责、不对您的系统安全负责、不对使用后产生的任何直接或间接的负面影响负责。
  • 禁止逆向破解,禁止使用于任何违反国家法律的事业和用途。

Tag summary

Content type

Image

Digest

sha256:963a47ccc…

Size

287.1 MB

Last updated

over 3 years ago

docker pull 6996899/workflow_net_cn