index.vue 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <template>
  2. <SimpleProcessDesigner :model-id="modelId"/>
  3. </template>
  4. <script setup lang='ts'>
  5. import { SimpleProcessDesigner } from '@/components/SimpleProcessDesignerV2/src/';
  6. import { getModel } from '@/api/bpm/model'
  7. import { getForm, FormVO } from '@/api/bpm/form'
  8. import { handleTree } from '@/utils/tree'
  9. import * as RoleApi from '@/api/system/role'
  10. import * as DeptApi from '@/api/system/dept'
  11. import * as PostApi from '@/api/system/post'
  12. import * as UserApi from '@/api/system/user'
  13. import * as UserGroupApi from '@/api/bpm/userGroup'
  14. defineOptions({
  15. name: 'SimpleWorkflowDesignEditor'
  16. })
  17. const { query } = useRoute() // 路由的查询
  18. const modelId : string | undefined = query.modelId as string;
  19. const formFields = ref<string[]>([])
  20. const formType = ref(20);
  21. const roleOptions = ref<RoleApi.RoleVO[]>([]) // 角色列表
  22. const postOptions = ref<PostApi.PostVO[]>([]) // 岗位列表
  23. const userOptions = ref<UserApi.UserVO[]>([]) // 用户列表
  24. const deptOptions = ref<DeptApi.DeptVO[]>([]) // 部门列表
  25. const deptTreeOptions = ref()
  26. const userGroupOptions = ref<UserGroupApi.UserGroupVO[]>([]) // 用户组列表
  27. provide('formFields', formFields)
  28. provide('formType', formType)
  29. provide('roleList', roleOptions)
  30. provide('postList', postOptions)
  31. provide('userList', userOptions)
  32. provide('deptList', deptOptions)
  33. provide('userGroupList', userGroupOptions)
  34. provide('deptTree', deptTreeOptions)
  35. onMounted( async () => {
  36. const bpmnModel = await getModel(modelId);
  37. if (bpmnModel) {
  38. formType.value = bpmnModel.formType
  39. if (formType.value === 10) {
  40. const bpmnForm = await getForm(bpmnModel.formId) as unknown as FormVO
  41. formFields.value = bpmnForm?.fields
  42. }
  43. }
  44. // 获得角色列表
  45. roleOptions.value = await RoleApi.getSimpleRoleList()
  46. postOptions.value = await PostApi.getSimplePostList()
  47. // 获得用户列表
  48. userOptions.value = await UserApi.getSimpleUserList()
  49. // 获得部门列表
  50. deptOptions.value = await DeptApi.getSimpleDeptList()
  51. deptTreeOptions.value = handleTree(deptOptions.value as DeptApi.DeptVO[], 'id');
  52. // 用户组列表
  53. userGroupOptions.value = await UserGroupApi.getUserGroupSimpleList()
  54. })
  55. </script>
  56. <style lang='scss' scoped>
  57. </style>