perf: 优化专业版限制提示

This commit is contained in:
wangdan-fit2cloud 2024-09-18 11:03:04 +08:00
parent 9561961d0f
commit 45bf3477d1
5 changed files with 70 additions and 43 deletions

View File

@ -67,7 +67,7 @@
<el-button @click.prevent="dialogVisible = false" :loading="loading"> <el-button @click.prevent="dialogVisible = false" :loading="loading">
{{ $t('views.application.applicationForm.buttons.cancel') }} {{ $t('views.application.applicationForm.buttons.cancel') }}
</el-button> </el-button>
<el-button type="primary" @click="submitValid(applicationFormRef)" :loading="loading"> <el-button type="primary" @click="submitHandle(applicationFormRef)" :loading="loading">
{{ $t('views.application.applicationForm.buttons.create') }} {{ $t('views.application.applicationForm.buttons.create') }}
</el-button> </el-button>
</span> </span>
@ -177,7 +177,8 @@ watch(dialogVisible, (bool) => {
}, },
model_params_setting: {}, model_params_setting: {},
problem_optimization: false, problem_optimization: false,
problem_optimization_prompt: '', problem_optimization_prompt:
'()里面是用户问题,根据上下文回答揣测用户问题({question}) 要求: 输出一个补全问题,并且放在<data></data>标签中',
stt_model_id: '', stt_model_id: '',
tts_model_id: '', tts_model_id: '',
stt_model_enable: false, stt_model_enable: false,
@ -193,21 +194,6 @@ const open = () => {
dialogVisible.value = true dialogVisible.value = true
} }
const submitValid = (formEl: FormInstance | undefined) => {
if (user.isEnterprise()) {
submitHandle(formEl)
} else {
common
.asyncGetValid(ValidType.Application, ValidCount.Application, loading)
.then(async (res: any) => {
if (res?.data) {
submitHandle(formEl)
} else {
MsgAlert('提示', '社区版最多支持 5 个应用,如需拥有更多应用,请升级为专业版。')
}
})
}
}
const submitHandle = async (formEl: FormInstance | undefined) => { const submitHandle = async (formEl: FormInstance | undefined) => {
if (!formEl) return if (!formEl) return
await formEl.validate((valid) => { await formEl.validate((valid) => {

View File

@ -131,9 +131,11 @@ import { MsgSuccess, MsgConfirm } from '@/utils/message'
import { isAppIcon } from '@/utils/application' import { isAppIcon } from '@/utils/application'
import { useRouter } from 'vue-router' import { useRouter } from 'vue-router'
import { isWorkFlow } from '@/utils/application' import { isWorkFlow } from '@/utils/application'
import useStore from '@/stores' import { ValidType, ValidCount } from '@/enums/common'
import { t } from '@/locales' import { t } from '@/locales'
const { application, user } = useStore() import useStore from '@/stores'
const { application, user, common } = useStore()
const router = useRouter() const router = useRouter()
const CopyApplicationDialogRef = ref() const CopyApplicationDialogRef = ref()
@ -168,7 +170,27 @@ function settingApplication(row: any) {
} }
function openCreateDialog() { function openCreateDialog() {
CreateApplicationDialogRef.value.open() if (user.isEnterprise()) {
CreateApplicationDialogRef.value.open()
} else {
MsgConfirm(`提示`, '社区版最多支持 5 个应用,如需拥有更多应用,请升级为专业版。', {
cancelButtonText: '确定',
confirmButtonText: '购买专业版',
confirmButtonClass: 'primary'
})
.then(() => {
window.open('https://maxkb.cn/pricing.html', '_blank')
})
.catch(() => {
common
.asyncGetValid(ValidType.Application, ValidCount.Application, loading)
.then(async (res: any) => {
if (res?.data) {
CreateApplicationDialogRef.value.open()
}
})
})
}
} }
function searchHandle() { function searchHandle() {

View File

@ -73,7 +73,7 @@
<el-button @click.prevent="dialogVisible = false" :loading="loading"> <el-button @click.prevent="dialogVisible = false" :loading="loading">
{{ $t('views.application.applicationForm.buttons.cancel') }} {{ $t('views.application.applicationForm.buttons.cancel') }}
</el-button> </el-button>
<el-button type="primary" @click="submitValid" :loading="loading"> <el-button type="primary" @click="submitHandle" :loading="loading">
{{ $t('views.application.applicationForm.buttons.create') }} {{ $t('views.application.applicationForm.buttons.create') }}
</el-button> </el-button>
</span> </span>
@ -124,19 +124,6 @@ const open = () => {
dialogVisible.value = true dialogVisible.value = true
} }
const submitValid = () => {
if (user.isEnterprise()) {
submitHandle()
} else {
common.asyncGetValid(ValidType.Dataset, ValidCount.Dataset, loading).then(async (res: any) => {
if (res?.data) {
submitHandle()
} else {
MsgAlert('提示', '社区版最多支持 50 个知识库,如需拥有更多知识库,请升级为专业版。')
}
})
}
}
const submitHandle = async () => { const submitHandle = async () => {
if (await BaseFormRef.value?.validate()) { if (await BaseFormRef.value?.validate()) {
await DatasetFormRef.value.validate((valid: any) => { await DatasetFormRef.value.validate((valid: any) => {

View File

@ -107,7 +107,7 @@
</InfiniteScroll> </InfiniteScroll>
</div> </div>
<SyncWebDialog ref="SyncWebDialogRef" @refresh="refresh" /> <SyncWebDialog ref="SyncWebDialogRef" @refresh="refresh" />
<CreateDatasetDialog ref="CreateDatasetDialogRef"/> <CreateDatasetDialog ref="CreateDatasetDialogRef" />
</div> </div>
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
@ -118,6 +118,10 @@ import datasetApi from '@/api/dataset'
import { MsgSuccess, MsgConfirm } from '@/utils/message' import { MsgSuccess, MsgConfirm } from '@/utils/message'
import { useRouter } from 'vue-router' import { useRouter } from 'vue-router'
import { numberFormat } from '@/utils/utils' import { numberFormat } from '@/utils/utils'
import { ValidType, ValidCount } from '@/enums/common'
import useStore from '@/stores'
const { user, common } = useStore()
const router = useRouter() const router = useRouter()
const CreateDatasetDialogRef = ref() const CreateDatasetDialogRef = ref()
@ -133,7 +137,27 @@ const paginationConfig = reactive({
const searchValue = ref('') const searchValue = ref('')
function openCreateDialog() { function openCreateDialog() {
CreateDatasetDialogRef.value.open() if (user.isEnterprise()) {
CreateDatasetDialogRef.value.open()
} else {
MsgConfirm(`提示`, '社区版最多支持 50 个知识库,如需拥有更多知识库,请升级为专业版。', {
cancelButtonText: '确定',
confirmButtonText: '购买专业版',
confirmButtonClass: 'primary'
})
.then(() => {
window.open('https://maxkb.cn/pricing.html', '_blank')
})
.catch(() => {
common
.asyncGetValid(ValidType.Dataset, ValidCount.Dataset, loading)
.then(async (res: any) => {
if (res?.data) {
CreateDatasetDialogRef.value.open()
}
})
})
}
} }
function refresh() { function refresh() {

View File

@ -140,14 +140,22 @@ function createUser() {
title.value = '创建用户' title.value = '创建用户'
UserDialogRef.value.open() UserDialogRef.value.open()
} else { } else {
common.asyncGetValid(ValidType.User, ValidCount.User, loading).then((res: any) => { MsgConfirm(`提示`, '社区版最多支持 2 个用户,如需拥有更多用户,请升级为专业版。', {
if (res?.data) { cancelButtonText: '确定',
title.value = '创建用户' confirmButtonText: '购买专业版',
UserDialogRef.value.open() confirmButtonClass: 'primary'
} else {
MsgAlert('提示', '社区版最多支持 2 个用户,如需拥有更多用户,请升级为专业版。')
}
}) })
.then(() => {
window.open('https://maxkb.cn/pricing.html', '_blank')
})
.catch(() => {
common.asyncGetValid(ValidType.User, ValidCount.User, loading).then(async (res: any) => {
if (res?.data) {
title.value = '创建用户'
UserDialogRef.value.open()
}
})
})
} }
} }