feat(projects): 工作台小组件设计

This commit is contained in:
2026-05-28 08:20:01 +08:00
parent 3988eaf910
commit 4ed4b537ad
54 changed files with 4726 additions and 2720 deletions

View File

@@ -2,7 +2,7 @@
import { computed } from 'vue';
import { RDMS_OBJECT_DIRECTION_DICT_CODE } from '@/constants/dict';
import { useForm, useFormRules } from '@/hooks/common/form';
import BusinessUserSelect from '@/components/custom/business-user-select.vue';
import BusinessUserPicker from '@/components/custom/business-user-picker.vue';
import DictSelect from '@/components/custom/dict-select.vue';
defineOptions({ name: 'ProductCreateBaseForm' });
@@ -72,9 +72,10 @@ defineExpose({ validate: runValidate });
</ElCol>
<ElCol :span="12">
<ElFormItem label="产品经理" prop="managerUserId">
<BusinessUserSelect
<BusinessUserPicker
v-model="model.managerUserId"
:options="managerUserOptions"
:user-options="managerUserOptions"
title="选择产品经理"
placeholder="请选择产品经理"
/>
</ElFormItem>

View File

@@ -17,7 +17,14 @@ interface Props {
}
const props = withDefaults(defineProps<Props>(), {
level: 0
level: 0,
selectedModuleId: undefined,
editingNodeId: undefined,
editingName: undefined,
addingChildParentId: undefined,
newChildModuleName: undefined,
rootModuleId: undefined,
moduleRequirementCountMap: undefined
});
const emit = defineEmits([

View File

@@ -1,7 +1,6 @@
<script setup lang="ts">
import { computed, nextTick, ref, watch } from 'vue';
import { useResizeObserver } from '@vueuse/core';
import dayjs from 'dayjs';
import { fetchSplitRequirement } from '@/service/api';
import { useForm, useFormRules } from '@/hooks/common/form';
import BusinessAttachmentUploader from '@/components/custom/business-attachment-uploader.vue';