hy-logic-flow 1.0.4 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +100 -110
- package/lib/hy-logic-flow-mini.common.js +553 -311
- package/lib/hy-logic-flow-mini.css +39 -40
- package/lib/hy-logic-flow-mini.umd.js +553 -311
- package/lib/hy-logic-flow-mini.umd.min.js +8 -8
- package/lib/hy-logic-flow.common.js +553 -311
- package/lib/hy-logic-flow.css +39 -40
- package/lib/hy-logic-flow.umd.js +553 -311
- package/lib/hy-logic-flow.umd.min.js +8 -8
- package/package.json +1 -1
- package/styles/smart-flow-design.less +3 -3
package/README.md
CHANGED
|
@@ -1,123 +1,111 @@
|
|
|
1
|
-
|
|
1
|
+
yarn run dev
|
|
2
|
+
# 使用npm
|
|
3
|
+
# hy-logic-flow (hy-flow-design)
|
|
2
4
|
|
|
3
5
|
<p align="center">
|
|
6
|
+
<a href="https://gitee.com/nirunfa/smart-flow-design">
|
|
7
|
+
<img src="https://img.shields.io/badge/repo-gitee-blue" alt="gitee">
|
|
8
|
+
</a>
|
|
4
9
|
<a href="https://github.com/vuejs/vue">
|
|
5
10
|
<img src="https://img.shields.io/badge/vue-2.7.16-brightgreen.svg" alt="vue">
|
|
6
11
|
</a>
|
|
7
12
|
<a href="https://github.com/vueComponent/ant-design-vue">
|
|
8
13
|
<img src="https://img.shields.io/badge/Ant%20Design%20Vue-1.7.8-blue" alt="ant-design-vue">
|
|
9
14
|
</a>
|
|
10
|
-
<a href="https://gitee.com/nirunfa/
|
|
15
|
+
<a href="https://gitee.com/nirunfa/smart-flow-design/blob/master/LICENSE">
|
|
11
16
|
<img src="https://img.shields.io/badge/license-Apache-blue" alt="license">
|
|
12
17
|
</a>
|
|
13
|
-
<a href='https://gitee.com/nirunfa/hy-flow-design/stargazers'>
|
|
14
|
-
<img src='https://gitee.com/nirunfa/hy-flow-design/badge/star.svg?theme=dark' alt='star'/>
|
|
15
|
-
</a>
|
|
16
|
-
<a href='https://gitee.com/nirunfa/hy-flow-design/members'><img src='https://gitee.com/nirunfa/hy-flow-design/badge/fork.svg?theme=white' alt='fork'/>
|
|
17
|
-
</a>
|
|
18
18
|
</p>
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
简体中文 | English (partial)
|
|
21
21
|
|
|
22
22
|
## 简介
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
注:项目为 `vue2` 项目, 基于[github](https://github.com/smart-flow/hy-flow-design)这个项目根据公司某些独特的需求和组织架构进行了定制化的修改,在这里感谢这个作者!谢谢!
|
|
27
|
-
- [码云](https://gitee.com/nirunfa/hy-flow-design)
|
|
28
|
-
|
|
29
|
-
## 特性 <以下特性待整理>
|
|
30
|
-
|
|
31
|
-
- 支持在线流程设计器,钉钉审批模式,中国式工作流
|
|
32
|
-
- 支持流程办理、退回、自由流、会签、并行、串行、服务任务等
|
|
33
|
-
- 支持退回任务,退回到指定环节,退回到上一步,退回到发起人
|
|
34
|
-
- 支持转办任务,将任务交接给他人办理,办理完成后继续下一步骤
|
|
35
|
-
- 支持委托任务,将任务委托给他人,他人办理完成后再回到委托人
|
|
36
|
-
- 支持智能提交,相同处理人自动跳过,支持自由指定下一步处理人
|
|
37
|
-
- 支持作废流程,允许发起人快速终止流程,管理员维护终止流程
|
|
38
|
-
- 支持自由流程,根据环节选择,自由跳转到指定环节,特事特办
|
|
39
|
-
- 支持流程撤回,下一步未办理的任务,可进行取回撤销重做任务
|
|
40
|
-
- 支持流程跟踪图,流程状态展现,流转信息,任务历史,任务分配信息
|
|
41
|
-
- 支持一个流程模型挂接多个业务单据,如某公司 8 种费用审批流程,表单不一样,但流程相同
|
|
42
|
-
- 支持一个表单挂接多个流程环节,以表单角度去管理流程,方便业务理解
|
|
43
|
-
- 支持全局表单,用于流程全局表单配置,目前支持内置表单、url 表单。如果不配置则发起流程会提示错误。
|
|
44
|
-
- 支持节点表单,节点表单配置。如果不配置默认使用全局表单。
|
|
45
|
-
- 流程事件脚本在线编写,包括:流程启动、完成、取消;任务分配、创建、结束等
|
|
46
|
-
- 我的待办任务处理,我的已办任务、我创建的任务查询、流程跟踪、审批记录查询
|
|
47
|
-
- 流程管控,在无关联表单情况下流程调试,如流程发起、挂起;流程定义、实例、任务等查询;任务办理,重定位等
|
|
48
|
-
- 支持流程组件标签定义(流程按钮、意见审批、下一步流程信息等)快速与自定义的业务表单建立关系。
|
|
49
|
-
- 支持版本化管理流程,新调整的流程业务不影响正在运行,未结束的流程继续流转。
|
|
50
|
-
- 支持任务加签、催办任务、传阅任务、流程委托设置、流水号管理、常用语管理
|
|
51
|
-
|
|
52
|
-
## 术语
|
|
53
|
-
|
|
54
|
-
- **或签:** 一名负责人通过即可通过审批节点
|
|
55
|
-
- **会签:** 需所有负责人通过才能通过审批节点
|
|
56
|
-
- **加签:** 审批过程中加签
|
|
57
|
-
- 前加签:在当前任务的前面加签,如果选择此操作,则当前待办会消失,等待选择的加签人审批后才能办理当前任务。
|
|
58
|
-
- 后加签:即在当前任务的后面加签,选择此操作后会将任务发送给选择的加签人审批,加签人审批后再发给流程设计的下一步人审批。
|
|
59
|
-
- 并签:即和当前任务并列审批。
|
|
60
|
-
- **委托(派):** 将任务委托给他人处理,他人办理完成后再回到委托人的任务中
|
|
61
|
-
- **转交:** 将审批单转交给指定人处理,直接将办理人换成别人,这时任务的拥有着不再是转办人
|
|
62
|
-
- **签收:** 一般情况就是多个候选人,或者候选组的情况下,要先把这个任务签收下来,以免别人又做了同样的任务
|
|
63
|
-
- **反签收:** 就是把执行人设置为空
|
|
64
|
-
- 注意事项:反签收的时候,一定要先确定是否有候选人或者候选组,如果没有的话,不能反签收。因为会导致这个任务无法认领。
|
|
65
|
-
|
|
66
|
-
#模块安装
|
|
67
|
-
|
|
68
|
-
## 组件
|
|
69
|
-
|
|
70
|
-
- FlowDesign 流程设计
|
|
71
|
-
|
|
72
|
-
## 发布
|
|
73
|
-
|
|
74
|
-
```cmd
|
|
75
|
-
npm login
|
|
24
|
+
`hy-logic-flow`(仓库名:`smart-flow-design`)是一个基于 Vue 2 + Ant Design Vue + Logic-Flow 的流程设计与流程组件库,封装了流程设计器、流程执行与常见工作流功能,方便在企业级应用中集成可视化流程管理能力。
|
|
76
25
|
|
|
77
|
-
|
|
78
|
-
```
|
|
26
|
+
主要功能摘要:流程定义/设计、节点表单配置、任务办理、退回/转办/委托、会签/或签、并行分支、流程跟踪、流程版本管理等。
|
|
79
27
|
|
|
80
|
-
|
|
28
|
+
仓库地址(码云): https://gitee.com/nirunfa/smart-flow-design
|
|
81
29
|
|
|
82
|
-
|
|
83
|
-
# 使用yarn
|
|
84
|
-
yarn install
|
|
30
|
+
## 目录结构(简要)
|
|
85
31
|
|
|
86
|
-
|
|
32
|
+
- `packages/`:库入口与 mini 版本实现
|
|
33
|
+
- `FlowDesign/`:流程设计相关视图与逻辑
|
|
34
|
+
- `FlowNode/`:各类流程节点实现
|
|
35
|
+
- `Common/`、`Component/`:可复用组件
|
|
36
|
+
- `examples/`:示例用法和演示页面
|
|
87
37
|
|
|
88
|
-
|
|
38
|
+
更多目录请参阅仓库根目录。
|
|
39
|
+
|
|
40
|
+
## 快速开始
|
|
41
|
+
|
|
42
|
+
安装(npm / yarn):
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
# 使用 npm
|
|
89
46
|
npm install
|
|
90
47
|
|
|
48
|
+
# 或使用 yarn
|
|
49
|
+
yarn install
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
本地开发:
|
|
53
|
+
|
|
54
|
+
```bash
|
|
91
55
|
npm run dev
|
|
56
|
+
# 或
|
|
57
|
+
yarn run dev
|
|
92
58
|
```
|
|
93
59
|
|
|
94
|
-
|
|
60
|
+
构建分发库(生成 `dist`):
|
|
95
61
|
|
|
96
|
-
```
|
|
97
|
-
#
|
|
98
|
-
|
|
62
|
+
```bash
|
|
63
|
+
# 构建主库
|
|
64
|
+
npm run lib
|
|
99
65
|
|
|
100
|
-
#
|
|
66
|
+
# 构建 mini 版本(仅库,体积更小,需项目已引入 antd 组件)
|
|
67
|
+
npm run mini
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
发布到 npm(示例):
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
npm login
|
|
74
|
+
npm publish
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
(仓库还提供 `scripts/publish.js` 与 `scripts/publish-mini.js` 可选的发布自动化脚本)
|
|
78
|
+
|
|
79
|
+
## 在项目中使用
|
|
80
|
+
|
|
81
|
+
安装已发布的包:
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
# 完整包:
|
|
101
85
|
npm i hy-logic-flow --save
|
|
86
|
+
|
|
87
|
+
# 或 mini 包(前提:项目中已包含 Ant Design Vue):
|
|
88
|
+
npm i hy-logic-flow-mini --save
|
|
102
89
|
```
|
|
103
90
|
|
|
104
|
-
|
|
91
|
+
在 `main.js` 中引入并注册:
|
|
105
92
|
|
|
106
93
|
```javascript
|
|
107
|
-
|
|
108
|
-
import HyFlowDesign from 'hy-logic-flow
|
|
109
|
-
import 'hy-logic-flow/styles/hy-logic-flow.less'
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
if (flowStore) {
|
|
116
|
-
|
|
94
|
+
import Vue from 'vue'
|
|
95
|
+
import HyFlowDesign from 'hy-logic-flow'
|
|
96
|
+
import 'hy-logic-flow/styles/hy-logic-flow.less'
|
|
97
|
+
|
|
98
|
+
Vue.use(HyFlowDesign)
|
|
99
|
+
|
|
100
|
+
// 可选:将内部提供的 flow store 注册到你的 Vuex
|
|
101
|
+
const flowStore = HyFlowDesign.flowStore
|
|
102
|
+
if (flowStore && !$store.state.flow) {
|
|
103
|
+
// 假设你的 Vuex 实例为 store
|
|
104
|
+
store.registerModule('flow', flowStore)
|
|
117
105
|
}
|
|
118
106
|
```
|
|
119
107
|
|
|
120
|
-
|
|
108
|
+
在组件中使用:
|
|
121
109
|
|
|
122
110
|
```html
|
|
123
111
|
<template>
|
|
@@ -127,38 +115,40 @@ if (flowStore) {
|
|
|
127
115
|
</template>
|
|
128
116
|
```
|
|
129
117
|
|
|
130
|
-
|
|
118
|
+
示例请参考 `examples/` 目录。
|
|
131
119
|
|
|
132
|
-
|
|
120
|
+
## 可用脚本(来自 `package.json`)
|
|
133
121
|
|
|
134
|
-
|
|
135
|
-
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
122
|
+
- `npm run dev`:本地开发(vue-cli 服务)
|
|
123
|
+
- `npm run build`:构建示例/站点
|
|
124
|
+
- `npm run lib`:构建为库(lib)并同时触发 mini 构建
|
|
125
|
+
- `npm run mini`:生成 mini 包库文件
|
|
126
|
+
- `npm run lint`:运行 ESLint
|
|
127
|
+
- `npm run pub`:自定义发布脚本(`scripts/publish.js`)
|
|
139
128
|
|
|
140
|
-
|
|
141
|
-
const flowStore = HyFlowDesign.flowStore;
|
|
142
|
-
console.log(flowStore)
|
|
143
|
-
if (flowStore) {
|
|
144
|
-
store.registerModule('flow', flowStore);
|
|
145
|
-
}
|
|
146
|
-
```
|
|
129
|
+
完整脚本请查看 `package.json`。
|
|
147
130
|
|
|
148
|
-
|
|
149
|
-
# 构建mini,生成lib目录
|
|
150
|
-
yarn run mini
|
|
131
|
+
## 注意与建议
|
|
151
132
|
|
|
152
|
-
|
|
153
|
-
|
|
133
|
+
- 本项目基于 Vue 2.x(使用 `vue@2.7.x` 与 `vue-template-compiler@2.7.x`)。
|
|
134
|
+
- 如果你的项目已使用 Ant Design Vue,建议使用 `hy-logic-flow-mini`(mini 包)以减小 bundle 体积。
|
|
135
|
+
- 如果要定制节点、表单或事件脚本,请阅读 `FlowDesign/` 与 `FlowNode/` 下的实现并结合 `examples/` 调试。
|
|
154
136
|
|
|
155
|
-
|
|
156
|
-
|
|
137
|
+
## 贡献
|
|
138
|
+
|
|
139
|
+
欢迎提 PR 和 issue。建议先在本地运行并按照仓库代码风格提交(项目包含 ESLint / Prettier / Stylelint 配置)。
|
|
140
|
+
|
|
141
|
+
常见贡献流程:
|
|
142
|
+
|
|
143
|
+
1. Fork 本仓库并创建分支
|
|
144
|
+
2. 编写代码并遵循现有代码风格
|
|
145
|
+
3. 提交 PR 并在 PR 描述中说明变更点
|
|
157
146
|
|
|
158
|
-
##
|
|
147
|
+
## 许可证
|
|
159
148
|
|
|
160
|
-
|
|
149
|
+
Apache License
|
|
161
150
|
|
|
162
|
-
|
|
151
|
+
更多信息请查看仓库 LICENSE 文件。
|
|
163
152
|
|
|
164
|
-
|
|
153
|
+
---
|
|
154
|
+
文件位置: [README.md](README.md)
|