+
Date: Sun, 19 Jan 2025 22:42:05 +0800
Subject: [PATCH 062/129] =?UTF-8?q?=E3=80=90=E5=8A=9F=E8=83=BD=E4=BF=AE?=
=?UTF-8?q?=E5=A4=8D=E3=80=91=E6=9D=A1=E4=BB=B6=E8=8A=82=E7=82=B9=E9=85=8D?=
=?UTF-8?q?=E7=BD=AE=E9=97=AE=E9=A2=98=E4=BF=AE=E5=A4=8D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/NodeHandler.vue | 35 +++----------------
.../SimpleProcessDesignerV2/src/consts.ts | 18 ++++++++++
.../src/nodes-config/ConditionNodeConfig.vue | 3 +-
.../src/nodes-config/components/Condition.vue | 35 +++++++++++++------
.../src/nodes/ExclusiveNode.vue | 11 +++---
.../src/nodes/InclusiveNode.vue | 11 +++---
6 files changed, 61 insertions(+), 52 deletions(-)
diff --git a/src/components/SimpleProcessDesignerV2/src/NodeHandler.vue b/src/components/SimpleProcessDesignerV2/src/NodeHandler.vue
index e575c36c..c3f68830 100644
--- a/src/components/SimpleProcessDesignerV2/src/NodeHandler.vue
+++ b/src/components/SimpleProcessDesignerV2/src/NodeHandler.vue
@@ -71,7 +71,8 @@ import {
NODE_DEFAULT_NAME,
NodeType,
RejectHandlerType,
- SimpleFlowNode
+ SimpleFlowNode,
+ DEFAULT_CONDITION_GROUP_VALUE
} from './consts'
import {generateUUID} from '@/utils'
@@ -167,21 +168,7 @@ const addNode = (type: number) => {
conditionSetting: {
defaultFlow: false,
conditionType: ConditionType.RULE,
- conditionGroups: {
- and: true,
- conditions: [
- {
- and: true,
- rules: [
- {
- opCode: '==',
- leftSide: '',
- rightSide: ''
- }
- ]
- }
- ]
- }
+ conditionGroups: DEFAULT_CONDITION_GROUP_VALUE
}
},
{
@@ -239,21 +226,7 @@ const addNode = (type: number) => {
conditionSetting: {
defaultFlow: false,
conditionType: ConditionType.RULE,
- conditionGroups: {
- and: true,
- conditions: [
- {
- and: true,
- rules: [
- {
- opCode: '==',
- leftSide: '',
- rightSide: ''
- }
- ]
- }
- ]
- }
+ conditionGroups: DEFAULT_CONDITION_GROUP_VALUE
}
},
{
diff --git a/src/components/SimpleProcessDesignerV2/src/consts.ts b/src/components/SimpleProcessDesignerV2/src/consts.ts
index 089a6392..1c910c38 100644
--- a/src/components/SimpleProcessDesignerV2/src/consts.ts
+++ b/src/components/SimpleProcessDesignerV2/src/consts.ts
@@ -463,6 +463,24 @@ export type ConditionGroup = {
// 条件数组
conditions: Condition[]
}
+/**
+ * 条件组默认值
+ */
+export const DEFAULT_CONDITION_GROUP_VALUE = {
+ and: true,
+ conditions: [
+ {
+ and: true,
+ rules: [
+ {
+ opCode: '==',
+ leftSide: '',
+ rightSide: ''
+ }
+ ]
+ }
+ ]
+}
/**
* 条件结构定义
diff --git a/src/components/SimpleProcessDesignerV2/src/nodes-config/ConditionNodeConfig.vue b/src/components/SimpleProcessDesignerV2/src/nodes-config/ConditionNodeConfig.vue
index f22168bd..93e3795a 100644
--- a/src/components/SimpleProcessDesignerV2/src/nodes-config/ConditionNodeConfig.vue
+++ b/src/components/SimpleProcessDesignerV2/src/nodes-config/ConditionNodeConfig.vue
@@ -46,7 +46,6 @@
import {
SimpleFlowNode,
ConditionType,
- ConditionSetting,
COMPARISON_OPERATORS,
ProcessVariableEnum
} from '../consts'
@@ -69,7 +68,7 @@ const props = defineProps({
})
const settingVisible = ref(false)
const currentNode = ref
(props.conditionNode)
-const condition = ref()
+const condition = ref()
const open = () => {
condition.value = currentNode.value.conditionSetting
settingVisible.value = true
diff --git a/src/components/SimpleProcessDesignerV2/src/nodes-config/components/Condition.vue b/src/components/SimpleProcessDesignerV2/src/nodes-config/components/Condition.vue
index 28a7783b..e86ac2da 100644
--- a/src/components/SimpleProcessDesignerV2/src/nodes-config/components/Condition.vue
+++ b/src/components/SimpleProcessDesignerV2/src/nodes-config/components/Condition.vue
@@ -1,7 +1,7 @@
-
+
-
+
-
+
@@ -114,7 +114,7 @@
color="#0089ff"
icon="ep:plus"
:size="24"
- @click="addConditionGroup(condition?.conditionGroups!.conditions)"
+ @click="addConditionGroup(condition.conditionGroups?.conditions)"
/>
@@ -125,7 +125,7 @@
>
@@ -138,13 +138,18 @@ import {
COMPARISON_OPERATORS,
CONDITION_CONFIG_TYPES,
ConditionType,
- ConditionSetting,
+ DEFAULT_CONDITION_GROUP_VALUE,
ProcessVariableEnum
} from '../../consts'
import { BpmModelFormType } from '@/utils/constants'
import { useFormFields } from '../../node'
-const props = defineProps<{modelValue: ConditionSetting}>()
+const props = defineProps({
+ modelValue: {
+ type: Object,
+ required: true
+ }
+})
const emit = defineEmits(['update:modelValue'])
const condition = computed({
get() {
@@ -183,6 +188,14 @@ const formRules = reactive({
})
const formRef = ref() // 表单 Ref
+/** 切换条件配置方式 */
+const changeConditionType = () => {
+ if (condition.value.conditionType === ConditionType.RULE) {
+ if (!condition.value.conditionGroups) {
+ condition.value.conditionGroups = DEFAULT_CONDITION_GROUP_VALUE
+ }
+ }
+}
const deleteConditionGroup = (conditions, index) => {
conditions.splice(index, 1)
}
diff --git a/src/components/SimpleProcessDesignerV2/src/nodes/ExclusiveNode.vue b/src/components/SimpleProcessDesignerV2/src/nodes/ExclusiveNode.vue
index adeae77b..381e4701 100644
--- a/src/components/SimpleProcessDesignerV2/src/nodes/ExclusiveNode.vue
+++ b/src/components/SimpleProcessDesignerV2/src/nodes/ExclusiveNode.vue
@@ -108,7 +108,7 @@
diff --git a/src/views/bpm/model/form/index.vue b/src/views/bpm/model/form/index.vue
index d9d399e5..7c401c1a 100644
--- a/src/views/bpm/model/form/index.vue
+++ b/src/views/bpm/model/form/index.vue
@@ -70,7 +70,7 @@
-
@@ -103,6 +103,7 @@ const userStore = useUserStoreWithOut()
const basicInfoRef = ref()
const formDesignRef = ref()
const processDesignRef = ref()
+const extraSettingsRef = ref()
/** 步骤校验函数 */
const validateBasic = async () => {
@@ -145,7 +146,14 @@ const formData: any = ref({
startUserType: undefined,
startUserIds: [],
managerUserIds: [],
- allowCancelRunningProcess: true
+ allowCancelRunningProcess: true,
+ processIdRule: {
+ enable: false,
+ prefix: '',
+ infix: '',
+ postfix: '',
+ length: 5
+ }
})
//流程数据
@@ -187,6 +195,8 @@ const initData = async () => {
// 最终,设置 currentStep 切换到第一步
currentStep.value = 0
+
+ extraSettingsRef.value.initData()
}
/** 根据类型切换流程数据 */
From 0677173856049659bfa489d948afe8f6ef690ca0 Mon Sep 17 00:00:00 2001
From: YunaiV
Date: Mon, 20 Jan 2025 12:33:28 +0800
Subject: [PATCH 065/129] =?UTF-8?q?=E3=80=90=E4=BB=A3=E7=A0=81=E4=BC=98?=
=?UTF-8?q?=E5=8C=96=E3=80=91Bpm=EF=BC=9A=E6=9B=B4=E5=A4=9A=E8=AE=BE?=
=?UTF-8?q?=E7=BD=AE-=E6=B5=81=E7=A8=8B=E7=BC=96=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/views/bpm/model/form/ExtraSettings.vue | 2 +-
src/views/bpm/model/form/index.vue | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/views/bpm/model/form/ExtraSettings.vue b/src/views/bpm/model/form/ExtraSettings.vue
index 7c03b439..7cc2efe8 100644
--- a/src/views/bpm/model/form/ExtraSettings.vue
+++ b/src/views/bpm/model/form/ExtraSettings.vue
@@ -119,7 +119,7 @@ const numberExample = computed(() => {
}
})
-// 兼容以前未配置更多设置的流程
+/** 兼容以前未配置更多设置的流程 */
const initData = () => {
if (!modelData.value.processIdRule) {
modelData.value.processIdRule = {
diff --git a/src/views/bpm/model/form/index.vue b/src/views/bpm/model/form/index.vue
index 7c401c1a..4bc1cfc0 100644
--- a/src/views/bpm/model/form/index.vue
+++ b/src/views/bpm/model/form/index.vue
@@ -196,6 +196,7 @@ const initData = async () => {
// 最终,设置 currentStep 切换到第一步
currentStep.value = 0
+ // 兼容,以前未配置更多设置的流程
extraSettingsRef.value.initData()
}
From 187fa0852478a18b4d4e9b9a55ef68d3a533f1bd Mon Sep 17 00:00:00 2001
From: YunaiV
Date: Mon, 20 Jan 2025 12:40:59 +0800
Subject: [PATCH 066/129] =?UTF-8?q?=E3=80=90=E4=BB=A3=E7=A0=81=E8=AF=84?=
=?UTF-8?q?=E5=AE=A1=E3=80=91Bpm=EF=BC=9A=E6=9B=B4=E5=A4=9A=E8=AE=BE?=
=?UTF-8?q?=E7=BD=AE-=E6=B5=81=E7=A8=8B=E7=BC=96=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/views/bpm/model/form/ExtraSettings.vue | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/views/bpm/model/form/ExtraSettings.vue b/src/views/bpm/model/form/ExtraSettings.vue
index 7cc2efe8..e512cffe 100644
--- a/src/views/bpm/model/form/ExtraSettings.vue
+++ b/src/views/bpm/model/form/ExtraSettings.vue
@@ -68,7 +68,7 @@ const modelData = defineModel()
const timeOptions = ref([
{
- value: 'NULL',
+ value: 'NULL', // TODO @lesan:用 '' 会好会更好一点哈。
label: '无'
},
{
From 3dbe74c1e918f7d108528eede2fd03a1a2c68544 Mon Sep 17 00:00:00 2001
From: Lesan <1960681385@qq.com>
Date: Mon, 20 Jan 2025 13:36:42 +0800
Subject: [PATCH 067/129] =?UTF-8?q?feat:=20BPM-=E6=9B=B4=E5=A4=9A=E8=AE=BE?=
=?UTF-8?q?=E7=BD=AE-=E6=B5=81=E7=A8=8B=E7=BC=96=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/views/bpm/model/form/ExtraSettings.vue | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/views/bpm/model/form/ExtraSettings.vue b/src/views/bpm/model/form/ExtraSettings.vue
index e512cffe..4b17958a 100644
--- a/src/views/bpm/model/form/ExtraSettings.vue
+++ b/src/views/bpm/model/form/ExtraSettings.vue
@@ -68,7 +68,7 @@ const modelData = defineModel()
const timeOptions = ref([
{
- value: 'NULL', // TODO @lesan:用 '' 会好会更好一点哈。
+ value: '',
label: '无'
},
{
From 0f58e968b1ce35d59bc94eeec4311f19e48953e9 Mon Sep 17 00:00:00 2001
From: Lesan <1960681385@qq.com>
Date: Tue, 21 Jan 2025 08:25:09 +0800
Subject: [PATCH 068/129] =?UTF-8?q?feat:=20BPM-=E6=9B=B4=E5=A4=9A=E8=AE=BE?=
=?UTF-8?q?=E7=BD=AE-=E8=87=AA=E5=8A=A8=E5=8E=BB=E9=87=8D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/utils/constants.ts | 6 ++++++
src/views/bpm/model/form/ExtraSettings.vue | 21 +++++++++++++++++++++
src/views/bpm/model/form/index.vue | 3 ++-
3 files changed, 29 insertions(+), 1 deletion(-)
diff --git a/src/utils/constants.ts b/src/utils/constants.ts
index 692a45fb..75bf765a 100644
--- a/src/utils/constants.ts
+++ b/src/utils/constants.ts
@@ -457,3 +457,9 @@ export const BpmProcessInstanceStatus = {
REJECT: 3, // 审批不通过
CANCEL: 4 // 已取消
}
+
+export const BpmAutoApproveType = {
+ NONE: 1, // 不自动通过
+ APPROVE_ALL: 2, // 仅审批一次,后续重复的审批节点均自动通过
+ APPROVE_SEQUENT: 3, // 仅针对连续审批的节点自动通过
+}
diff --git a/src/views/bpm/model/form/ExtraSettings.vue b/src/views/bpm/model/form/ExtraSettings.vue
index e512cffe..d2e6d2cc 100644
--- a/src/views/bpm/model/form/ExtraSettings.vue
+++ b/src/views/bpm/model/form/ExtraSettings.vue
@@ -58,11 +58,29 @@