|
|
@@ -24,6 +24,17 @@
|
|
|
<a-form-item field="section" :label="$t('knowledgeLib.label_desc')">
|
|
|
<a-textarea placeholder="" v-model="form.description" allow-clear />
|
|
|
</a-form-item>
|
|
|
+ <!-- 权限 -->
|
|
|
+ <a-form-item
|
|
|
+ field="permission"
|
|
|
+ :tooltip="$t('knowledgeLib.permission_tooltip')"
|
|
|
+ :label="$t('knowledgeLib.label_permission')"
|
|
|
+ >
|
|
|
+ <a-radio-group v-model="form.permission">
|
|
|
+ <a-radio value="me">{{ $t('knowledgeLib.permission_item_1') }}</a-radio>
|
|
|
+ <a-radio value="team">{{ $t('knowledgeLib.permission_item_2') }}</a-radio>
|
|
|
+ </a-radio-group>
|
|
|
+ </a-form-item>
|
|
|
<!-- 嵌入模型 -->
|
|
|
<a-form-item field="embd_id" :label="$t('knowledgeLib.label_model')">
|
|
|
<a-select
|
|
|
@@ -206,15 +217,14 @@
|
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
|
-import { onMounted, onBeforeMount, reactive, ref, nextTick } from 'vue';
|
|
|
-import Upload from './components/Upload.vue';
|
|
|
+import { onMounted, onBeforeMount, reactive, ref, nextTick, computed } from 'vue';
|
|
|
import { Message } from '@arco-design/web-vue';
|
|
|
import { queryModelList, kbUpdate, getKnowledgeBaseModel } from '../../../../apis/rgflow-dify';
|
|
|
import { toSyncOwnKnowledge } from './asyc.js';
|
|
|
-import message from '@arco-design/web-vue/es/message';
|
|
|
import useLoading from './loading';
|
|
|
-import step1 from '../../../../assets/image/management/step1.png';
|
|
|
-import step2 from '../../../../assets/image/management/step2.png';
|
|
|
+import { useI18n } from 'vue-i18n';
|
|
|
+
|
|
|
+const { t } = useI18n();
|
|
|
|
|
|
const { loading, setLoading } = useLoading(true);
|
|
|
const scrollContainer = ref();
|
|
|
@@ -252,32 +262,40 @@ const form = reactive({
|
|
|
layout_recognize: true
|
|
|
});
|
|
|
|
|
|
-const rules = {
|
|
|
- name: [
|
|
|
- {
|
|
|
- required: true,
|
|
|
- message: '知识库名称不允许为空'
|
|
|
- }
|
|
|
- ],
|
|
|
- embd_id: [
|
|
|
- {
|
|
|
- required: true,
|
|
|
- message: '请选择'
|
|
|
- }
|
|
|
- ],
|
|
|
- parser_id: [
|
|
|
- {
|
|
|
- required: true,
|
|
|
- message: '请选择'
|
|
|
- }
|
|
|
- ],
|
|
|
- prompt: [
|
|
|
- {
|
|
|
- required: true,
|
|
|
- message: '提示词不允许为空'
|
|
|
- }
|
|
|
- ]
|
|
|
-};
|
|
|
+const rules = computed(() => {
|
|
|
+ return {
|
|
|
+ name: [
|
|
|
+ {
|
|
|
+ required: true,
|
|
|
+ message: t('knowledgeLib.config_form_rule.rule_1')
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ embd_id: [
|
|
|
+ {
|
|
|
+ required: true,
|
|
|
+ message: t('knowledgeLib.config_form_rule.rule_2')
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ permission: [
|
|
|
+ {
|
|
|
+ required: true,
|
|
|
+ message: t('knowledgeLib.config_form_rule.rule_2')
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ parser_id: [
|
|
|
+ {
|
|
|
+ required: true,
|
|
|
+ message: t('knowledgeLib.config_form_rule.rule_2')
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ prompt: [
|
|
|
+ {
|
|
|
+ required: true,
|
|
|
+ message: t('knowledgeLib.config_form_rule.rule_3')
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ };
|
|
|
+});
|
|
|
let visible = ref(false);
|
|
|
const formRef = ref();
|
|
|
const modelList = ref({});
|
|
|
@@ -330,11 +348,13 @@ const handleSubmit = async ({ values, errors }) => {
|
|
|
setLoading(true);
|
|
|
const data = await kbUpdate(parms);
|
|
|
if (data.retcode == '0') {
|
|
|
- Message.success('配置成功');
|
|
|
+ Message.success(t('knowledgeLib.config_success'));
|
|
|
// window.location.reload();
|
|
|
emit('saveConfig');
|
|
|
//TODO 同步数据
|
|
|
toSyncOwnKnowledge(kbObj.id);
|
|
|
+ } else {
|
|
|
+ Message.error(t('management.no_permission'));
|
|
|
}
|
|
|
setLoading(false);
|
|
|
} catch (err) {
|