feat: 添加成员

This commit is contained in:
wangdan-fit2cloud 2024-01-23 15:26:20 +08:00
parent d1df86be96
commit 4b3497ac58
5 changed files with 30 additions and 10 deletions

View File

@ -22,15 +22,27 @@ import { ref, watch, useSlots } from 'vue'
const slots = useSlots() const slots = useSlots()
defineOptions({ name: 'CommonList' }) defineOptions({ name: 'CommonList' })
withDefaults( const props = withDefaults(
defineProps<{ defineProps<{
data: Array<any> data: Array<any>
defaultActive: string
}>(), }>(),
{ {
data: () => [] data: () => [],
defaultActive: ''
} }
) )
watch(
() => props.defaultActive,
(val) => {
if (val) {
current.value = props.data.findIndex((v) => v.id === val)
}
},
{ immediate: true }
)
const emit = defineEmits(['click']) const emit = defineEmits(['click'])
const current = ref(0) const current = ref(0)

View File

@ -22,7 +22,7 @@
type="textarea" type="textarea"
> >
</el-input> </el-input>
<span v-else>{{ form.content }}</span> <span v-else class="break-all">{{ form.content }}</span>
</el-form-item> </el-form-item>
</el-form> </el-form>
</template> </template>

View File

@ -1,7 +1,12 @@
<template> <template>
<LayoutContainer :header="documentDetail?.name" back-to="-1" class="document-detail"> <LayoutContainer :header="documentDetail?.name" back-to="-1" class="document-detail">
<template #header> <template #header>
<el-text type="info" v-if="documentDetail?.type==='1'">文档地址{{ documentDetail?.meta?.source_url }}</el-text> <el-text type="info" v-if="documentDetail?.type === '1'"
>文档地址<el-link :href="documentDetail?.meta?.source_url" target="_blank">{{
documentDetail?.meta?.source_url
}}</el-link
></el-text
>
<div class="document-detail__header"> <div class="document-detail__header">
<el-button @click="addParagraph" type="primary" :disabled="loading"> 添加分段 </el-button> <el-button @click="addParagraph" type="primary" :disabled="loading"> 添加分段 </el-button>
</div> </div>

View File

@ -114,9 +114,9 @@ const submitMember = async (formEl: FormInstance | undefined) => {
await formEl.validate((valid, fields) => { await formEl.validate((valid, fields) => {
if (valid) { if (valid) {
loading.value = true loading.value = true
TeamApi.postCreatTeamMember(memberForm.value.users).then(() => { TeamApi.postCreatTeamMember(memberForm.value.users).then((res) => {
MsgSuccess('提交成功') MsgSuccess('提交成功')
emit('refresh') emit('refresh', memberForm.value.users)
dialogVisible.value = false dialogVisible.value = false
}) })
} else { } else {

View File

@ -16,6 +16,7 @@
class="mt-8" class="mt-8"
v-loading="loading" v-loading="loading"
@click="clickMemberHandle" @click="clickMemberHandle"
:default-active="currentUser"
> >
<template #default="{ row }"> <template #default="{ row }">
<div class="flex-between"> <div class="flex-between">
@ -187,13 +188,15 @@ function addMember() {
CreateMemberRef.value?.open() CreateMemberRef.value?.open()
} }
function getMember(num?: number) { function getMember(id?: string) {
loading.value = true loading.value = true
TeamApi.getTeamMember() TeamApi.getTeamMember()
.then((res) => { .then((res) => {
memberList.value = res.data memberList.value = res.data
filterMember.value = res.data filterMember.value = res.data
currentUser.value = memberList.value[num || 0].id
const user = (id && memberList.value.find((p) => p.user_id === id)) || null
currentUser.value = user ? user.id : memberList.value[0].id
MemberPermissions(currentUser.value) MemberPermissions(currentUser.value)
loading.value = false loading.value = false
}) })
@ -202,8 +205,8 @@ function getMember(num?: number) {
}) })
} }
function refresh() { function refresh(data?: string[]) {
getMember(1) getMember(data && data[0])
} }
onMounted(() => { onMounted(() => {