<!-- 编辑 --> <script lang="ts" setup name="EditProcess"> import { onMounted, reactive, ref } from 'vue' import type { FormInstance, FormRules } from 'element-plus' import { useRoute, useRouter } from 'vue-router' import type { Ref } from 'vue' import setting from '../../setting.vue' import type { Iform } from './process' import WorkFlow from '@/components/workFlow/workFlow.vue' const emits = defineEmits(['close']) const processSetting = ref() const selectFormId = ref('') // formid const $route = useRoute() const getRowData = ref({}) as any const ruleFormRef = ref<FormInstance>() const form: Ref<Iform> = ref({ number: '', // 编号 name: '', // 名称 business: '', // 关联业务 desc: '', // 流程描述 }) const rules = reactive<FormRules>({ selectDecision: [ { required: true, message: '请选择', trigger: 'change', }, ], rejectTo: [ { required: true, message: '请选择', trigger: 'change', }, ], changeData: [ { required: true, message: '请选择', trigger: 'change', }, ], isMessage: [ { required: true, message: '请选择', trigger: 'change', }, ], }) const $router = useRouter() // 关闭 const close = () => { $router.back() } // 保存 const save = async (formEl: FormInstance | undefined) => { if (!formEl) { return } await formEl.validate((valid, fields) => { if (valid) { // 调保存接口 processSetting.value.saveSet() } else { console.log('error submit!', fields) } }) } onMounted(() => { const rowData: any = $route.query.rowData getRowData.value = JSON.parse(rowData) selectFormId.value = getRowData.value.formId form.value.number = getRowData.value.number form.value.name = getRowData.value.name form.value.business = getRowData.value.business form.value.desc = getRowData.value.describe }) </script> <template> <div class="edit-process"> <app-container> <detail-page title="流程管理-编辑"> <template #btns> <el-button type="primary" @click="save(ruleFormRef)"> 保存 </el-button> <el-button type="info" @click="close"> 关闭 </el-button> </template> <el-form ref="ruleFormRef" :model="form" label-width="150px" :rules="rules"> <el-row :gutter="20"> <el-col :span="8"> <el-form-item label="流程编号:"> <el-input v-model="form.number" disabled type="textarea" autosize /> </el-form-item> <el-form-item label="流程描述"> <!-- <el-input v-model="form.desc" type="textarea" /> --> <el-input v-model="form.desc" disabled type="textarea" autosize /> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="流程名称:"> <el-input v-model="form.name" disabled /> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="关联业务:"> <el-input v-model="form.business" disabled /> </el-form-item> </el-col> </el-row> </el-form> </detail-page> <detail-block title="流程配置" /> <setting ref="processSetting" :get-row-data="getRowData" :select-form-id="selectFormId" /> </app-container> </div> </template> <style lang="scss" scoped> .edit-process { width: 100%; .title { margin: 0 0 20px; font-weight: 600; } .edit { width: 100%; padding: 12px; background-color: #fff; border-radius: 7px; margin: 0 0 20px; .button-area { width: 100%; display: flex; justify-content: flex-end; margin-bottom: 20px; } } .set { width: 100%; background-color: #fff; border-radius: 7px; margin: 20px 0; } } </style>