Skip to content

Commit 4bc79c3

Browse files
committed
feat: 空流程分类展示新建按钮、回显分类逻辑
1 parent 708e12b commit 4bc79c3

File tree

2 files changed

+26
-1
lines changed

2 files changed

+26
-1
lines changed

src/views/bpm/model/CategoryDraggableModel.vue

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,16 @@
2323
<Icon icon="fa:sort-amount-desc" class="mr-5px" />
2424
排序
2525
</el-button>
26+
<el-button
27+
v-else
28+
link
29+
type="info"
30+
class="mr-20px"
31+
@click.stop="handleAddModel('create')"
32+
>
33+
<Icon icon="fa:plus" class="mr-5px" />
34+
新建
35+
</el-button>
2636
<el-dropdown
2737
@command="(command) => handleCategoryCommand(command)"
2838
placement="bottom"
@@ -228,9 +238,12 @@
228238
</div>
229239
</template>
230240
</Dialog>
241+
<!-- 表单弹窗:添加流程模型 -->
242+
<ModelForm :categoryId="categoryInfo.code" ref="modelFormRef" @success="emit('success')" />
231243
</template>
232244

233245
<script lang="ts" setup>
246+
import ModelForm from './ModelForm.vue'
234247
import { CategoryApi } from '@/api/bpm/category'
235248
import Sortable from 'sortablejs'
236249
import { propTypes } from '@/utils/propTypes'
@@ -480,6 +493,12 @@ const handleDeleteGroup = async () => {
480493
} catch {}
481494
}
482495
496+
// 添加流程模型弹窗
497+
const modelFormRef = ref()
498+
const handleAddModel = (type: string) => {
499+
modelFormRef.value.open(type)
500+
}
501+
483502
watch(() => props.categoryInfo.modelList, updateTableData, { immediate: true })
484503
watch(
485504
() => props.isCategorySorting,

src/views/bpm/model/ModelForm.vue

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,7 @@
155155
</Dialog>
156156
</template>
157157
<script lang="ts" setup>
158+
import { propTypes } from '@/utils/propTypes'
158159
import { DICT_TYPE, getBoolDictOptions, getIntDictOptions } from '@/utils/dict'
159160
import { ElMessageBox } from 'element-plus'
160161
import * as ModelApi from '@/api/bpm/model'
@@ -170,7 +171,9 @@ defineOptions({ name: 'ModelForm' })
170171
const { t } = useI18n() // 国际化
171172
const message = useMessage() // 消息弹窗
172173
const userStore = useUserStoreWithOut() // 用户信息缓存
173-
174+
const props = defineProps({
175+
categoryId: propTypes.number
176+
})
174177
const dialogVisible = ref(false) // 弹窗的是否展示
175178
const dialogTitle = ref('') // 弹窗的标题
176179
const formLoading = ref(false) // 表单的加载中:1)修改时的数据加载;2)提交的按钮禁用
@@ -232,6 +235,9 @@ const open = async (type: string, id?: string) => {
232235
categoryList.value = await CategoryApi.getCategorySimpleList()
233236
// 查询用户列表
234237
userList.value = await UserApi.getSimpleUserList()
238+
if (props.categoryId) {
239+
formData.value.category = props.categoryId
240+
}
235241
}
236242
defineExpose({ open }) // 提供 open 方法,用于打开弹窗
237243

0 commit comments

Comments
 (0)