Эх сурвалжийг харах

feat: 创建流程 - 表单提交 50%

luoyali 1 жил өмнө
parent
commit
4a08d9e25b

+ 1 - 0
src/store/modules/flow.ts

@@ -6,6 +6,7 @@ export const useFlowStore = defineStore({
 	state: () => {
 		return {
 			storeInfoName: '',
+			processKey: '', // 流程定义KEY
 			flowProcessId: '', // 流程定义ID
 			flowName: '流程名称', // 流程名称
 			cacheSwitch: false, // 缓存开关

+ 2 - 1
src/views/flow/create/components/BasicInfo.vue

@@ -8,7 +8,7 @@ import process from '@/api/flow/process'
 // 缓存 start
 import { EVENT_ENUM, EVENT_BUS, cacheTriggerFunc } from '@/utils/cacheHelper'
 const flowStore = useFlowStore()
-const { flowName, flowProcessId } = storeToRefs(flowStore)
+const { flowName, flowProcessId, processKey } = storeToRefs(flowStore)
 const cacheLoading = ref(false)
 const cacheLoadingNum = ref(600)
 const cacheLoadingFr = 1000
@@ -151,6 +151,7 @@ const updateRemoteCache = async () => {
 		const params = processId.value ? { ...flowInfo.value, processId: processId.value } : flowInfo.value
 		const res = await process.progressCreateApi(params)
 		flowProcessId.value = processId.value = res
+		processKey.value = flowInfo.value.processKey
 		console.log('updateRemoteCache 实际调用接口, params = ', params, new Date().getTime())
 	} catch (e) {
 		console.log(e)

+ 14 - 1
src/views/flow/create/components/FormDesign.vue

@@ -1,8 +1,21 @@
 <script setup name="FormDesign">
 import FcDesigner from '@/components/FormCreateDesigner/FcDesigner.vue'
+import useFlowStore from '@/store/modules/flow'
+import { storeToRefs } from 'pinia'
+import process from '@/api/flow/process'
+const flowStore = useFlowStore()
+const { flowProcessId, processKey } = storeToRefs(flowStore)
 
-const exportJsonEv = json => {
+const exportJsonEv = async json => {
 	console.log(json)
+
+	try {
+		const params = flowProcessId.value ? { processForm: JSON.stringify(json), processId: flowProcessId.value, processKey: processKey.value } : { processForm: JSON.stringify(json) }
+		const res = await process.progressCreateApi(params)
+		flowProcessId.value = res
+	} catch (e) {
+		console.log(e)
+	}
 }
 </script>