惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

L
LINUX DO - 最新话题
Microsoft Azure Blog
Microsoft Azure Blog
The Register - Security
The Register - Security
Vercel News
Vercel News
Cloudbric
Cloudbric
Recent Announcements
Recent Announcements
O
OpenAI News
Y
Y Combinator Blog
Hacker News: Ask HN
Hacker News: Ask HN
I
InfoQ
WordPress大学
WordPress大学
S
Secure Thoughts
P
Proofpoint News Feed
Hacker News - Newest:
Hacker News - Newest: "LLM"
小众软件
小众软件
I
Intezer
博客园 - 司徒正美
Google DeepMind News
Google DeepMind News
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
G
GRAHAM CLULEY
P
Palo Alto Networks Blog
Attack and Defense Labs
Attack and Defense Labs
MyScale Blog
MyScale Blog
P
Proofpoint News Feed
美团技术团队
V
Vulnerabilities – Threatpost
Scott Helme
Scott Helme
C
Check Point Blog
H
Help Net Security
博客园 - Franky
AWS News Blog
AWS News Blog
MongoDB | Blog
MongoDB | Blog
Project Zero
Project Zero
N
Netflix TechBlog - Medium
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
V2EX - 技术
V2EX - 技术
Cisco Talos Blog
Cisco Talos Blog
Latest news
Latest news
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Last Week in AI
Last Week in AI
V
V2EX
C
Cybersecurity and Infrastructure Security Agency CISA
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
大猫的无限游戏
大猫的无限游戏
N
News and Events Feed by Topic
Hugging Face - Blog
Hugging Face - Blog
The Hacker News
The Hacker News
Schneier on Security
Schneier on Security
PCI Perspectives
PCI Perspectives
Apple Machine Learning Research
Apple Machine Learning Research

博客园 - 云飞扬

揭开文档在线编辑和预览的神秘面纱 AI的正确使用方法 详解HFBPM开发框架(下) 详解HFBPM开发框架(上) 浅谈数据访问层 流程梳理的重要性 菜鸟电子面单对接技术方案(link) 数据库升级工具 HF Code Designer 代码生成器 HF工作流引擎与现有业务系统的整合 一步一步学习开发BPM工作流系统--------(七)BPM表单设计和业务展现平台 一步一步学习开发BPM工作流系统--------(六)BPM流程设计器(2) 一步一步学习开发BPM工作流系统--------(六)BPM流程设计器(1) 一步一步学习开发BPM工作流系统--------(五)用户、组织机构和权限管理 一步一步学习开发BPM工作流系统--------(四)BPM数据库访问层 一步一步学习开发BPM工作流系统--------(三)开发WinForm的应用平台-2 - 云飞扬 一步一步学习开发BPM工作流系统--------(三)开发WinForm的应用平台-1 一步一步学习开发BPM工作流系统--------(二)BPM工作流系统的组成部分 - 云飞扬 一步一步学习开发BPM工作流系统--------(一)为什么要开发工作流系统 支持多数据库本地和远程调用的数据访问层架构
详解HFBPM开发框架(中)
云飞扬 · 2026-03-05 · via 博客园 - 云飞扬

详解HFBPM开发框架(中)

  1. 数据库结构

数据库结构也就是数据字典,常见的做法是把表结构放在excel或者word里,但是这种方法有个弊端,实时性不强,修改了表很容易忘记更新文档,或者顾不上更新文档,往往在项目初期数据字典和数据库还是一致,到了中后期,没人去更新文档了。把数据字典的功能加到框架上,用程序来读取表结构,甚至修改表结构,统一管理,确保一致性。这种管理方式好处还是很多的,方便分享,方便查询。

表结构管理界面如下图:

一个表的字段管理,如下图,可以直接从数据库中读取表结构,包括列名、类型、长度、是否为空、默认值、是否为主键等信息,不需要逐个手动创建,一切都是为了方便。

  1. 统一提交

前面有了统一查询,是否可以做一个统一提交呢?当然可以,但很少有人这么做。这不太符合软件设计规范,一般一个接口一个功能。比如订单提交,把订单的数据打包成一个json,调用后台的SaveOrder接口,这是常规做法。如果一个接口实现了所有提交的功能,似乎分不清楚。HFBPM框架虽然提供了这个功能,但不提倡这么做,当初设计这个功能也是为了方便,少写后台代码,有点投机取巧了。

既然有这个功能,有必要介绍一下。

统一提交的重点还是配置提交需要的参数,配置提交到那个表,单表提交还是多表提交,主键名字,编号创建规则,数据校验,是否允许删除,是否允许作废等。如下图:

虽然不太提倡这么用,但是如果使用统一提交和统一查询,是不是就不用写后台代码了,只需要前端编写页面就可以了?一个早期的项目为了方便,大量使用了统一提交(见下图),但是在需要精细化控制接口权限的时候,还是要每个业务编写BLL层和Data层。

  1. 第三方授权

第三方授权是与微信服务号、微信小程序、企业号、钉钉集成时的登录授权。框架记录每个app的帐号和密钥。如下图:

框架手机版使用h5开发,可以直接与服务号、微信企业号、钉钉等对接,根据各app的OpenId与系统帐号绑定,实现单点登录。

框架还可以与其他第三方系统进行集成,例如奥信OA,用友致远OA等。

集成的功能包括,从第三方系统直接打开业务系统,向第三方系统推送待办任务,推送待办任务处理结果,实时同步任务退回、转办、加签、取消、完成等状态。

与微信服务号集成时,用户绑定管理,如下图:

与微信企业号集成时,用户帐号绑定如下图:

与钉钉集成时,用户帐号绑定如下图:

与澳信OA集成时,用户帐号绑定如下图:

与致远OA集成时,用户帐号绑定如下图:

框架手机版效果如下图:

  1. 第三方消息跟踪

与第三方系统集成时,特别关心任务和消息是否推送成功,任务的执行结果如何,以便在丢失任务时,有迹可循。

例如与微信企业号集成时,任务消息跟踪如下图:

与澳信OA集成时,任务消息跟踪如下图:

与致远OA集成时,任务消息跟踪如下图:

与钉钉集成时,任务消息跟踪如下图:

  1. 短信模块

最有效的即时消息莫过于短信,这个传统的方式,即使可靠。HFBPM的短信模块支持两个短信通道,一个是亿美通讯的,一个是阿里云的。可以随时切换使用那个通道,每个短信业务也可以单独指定使用那个通道,为啥要弄2个短信通道?也是被逼出来的,运营商短信签名管理越来越严格,经常因为签名问题被拦截,那个通道稳定就启用那个通道。通道切换时,不需要修改代码,管理端配置切换就可以。

短信调用的配置如下图:

每个短信业务定义一个短信的调用配置,如下图:

已发送短信,根据通道短信网关返回发送结果,精准的确定用户是否收到,如下图: