Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 10 additions & 20 deletions backend/apps/data_training/curd/data_training.py
Original file line number Diff line number Diff line change
Expand Up @@ -162,10 +162,7 @@ def create_training(session: SessionDep, info: DataTrainingInfo, oid: int, trans

# 检查数据源和高级应用不能同时为空
if info.datasource is None and info.advanced_application is None:
if oid == 1:
raise Exception(trans("i18n_data_training.datasource_assistant_cannot_be_none"))
else:
raise Exception(trans("i18n_data_training.datasource_cannot_be_none"))
raise Exception(trans("i18n_data_training.datasource_assistant_cannot_be_none"))

# 检查重复记录
stmt = select(DataTraining.id).where(
Expand Down Expand Up @@ -221,10 +218,7 @@ def update_training(session: SessionDep, info: DataTrainingInfo, oid: int, trans
raise Exception(trans("i18n_data_training.description_cannot_be_empty"))

if info.datasource is None and info.advanced_application is None:
if oid == 1:
raise Exception(trans("i18n_data_training.datasource_assistant_cannot_be_none"))
else:
raise Exception(trans("i18n_data_training.datasource_cannot_be_none"))
raise Exception(trans("i18n_data_training.datasource_assistant_cannot_be_none"))

count = session.query(DataTraining).filter(
DataTraining.id == info.id
Expand Down Expand Up @@ -310,11 +304,11 @@ def batch_create_training(session: SessionDep, info_list: List[DataTrainingInfo]
datasource_name_to_id[ds.name.strip()] = ds.id

assistant_name_to_id = {}
if oid == 1:
assistant_stmt = select(AssistantModel.id, AssistantModel.name).where(AssistantModel.type == 1)
assistant_result = session.execute(assistant_stmt).all()
for assistant in assistant_result:
assistant_name_to_id[assistant.name.strip()] = assistant.id

assistant_stmt = select(AssistantModel.id, AssistantModel.name).where(and_(AssistantModel.type == 1, AssistantModel.oid == oid))
assistant_result = session.execute(assistant_stmt).all()
for assistant in assistant_result:
assistant_name_to_id[assistant.name.strip()] = assistant.id

# 验证和转换数据
valid_records = []
Expand All @@ -338,20 +332,16 @@ def batch_create_training(session: SessionDep, info_list: List[DataTrainingInfo]

# 高级应用验证和转换
advanced_application_id = None
if oid == 1 and info.advanced_application_name and info.advanced_application_name.strip():
if info.advanced_application_name and info.advanced_application_name.strip():
if info.advanced_application_name.strip() in assistant_name_to_id:
advanced_application_id = assistant_name_to_id[info.advanced_application_name.strip()]
else:
error_messages.append(
trans("i18n_data_training.advanced_application_not_found").format(info.advanced_application_name))

# 检查数据源和高级应用不能同时为空
if oid == 1:
if not datasource_id and not advanced_application_id:
error_messages.append(trans("i18n_data_training.datasource_assistant_cannot_be_none"))
else:
if not datasource_id:
error_messages.append(trans("i18n_data_training.datasource_cannot_be_none"))
if not datasource_id and not advanced_application_id:
error_messages.append(trans("i18n_data_training.datasource_assistant_cannot_be_none"))

if error_messages:
failed_records.append({
Expand Down
38 changes: 12 additions & 26 deletions frontend/src/views/system/training/index.vue
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ import IconOpeDelete from '@/assets/svg/icon_delete.svg'
import icon_searchOutline_outlined from '@/assets/svg/icon_search-outline_outlined.svg'
import EmptyBackground from '@/views/dashboard/common/EmptyBackground.vue'
import { useClipboard } from '@vueuse/core'
import { useUserStore } from '@/stores/user'
import { useI18n } from 'vue-i18n'
import { cloneDeep } from 'lodash-es'
import { getAdvancedApplicationList } from '@/api/embedded.ts'
Expand All @@ -26,7 +25,6 @@ interface Form {
advanced_application_name: string | null
description: string | null
}
const userStore = useUserStore()
const { t } = useI18n()
const multipleSelectionAll = ref<any[]>([])
const keywords = ref('')
Expand All @@ -42,10 +40,6 @@ onMounted(() => {
search()
})

const isDefaultOrg = computed(() => {
return userStore.oid === '1'
})

const dialogFormVisible = ref<boolean>(false)
const multipleTableRef = ref()
const isIndeterminate = ref(true)
Expand Down Expand Up @@ -261,26 +255,23 @@ const rules = computed(() => {
},
],
}
if (!isDefaultOrg.value) {
_list.datasource = [
{
required: true,
message: t('datasource.Please_select') + t('common.empty') + t('ds.title'),
},
]
}
// _list.datasource = [
// {
// required: true,
// message: t('datasource.Please_select') + t('common.empty') + t('ds.title'),
// },
// ]

return _list
})

const list = () => {
datasourceApi.list().then((res: any) => {
options.value = res || []
})
if (isDefaultOrg.value) {
getAdvancedApplicationList().then((res: any) => {
adv_options.value = res || []
})
}
getAdvancedApplicationList().then((res: any) => {
adv_options.value = res || []
})
}

const saveHandler = () => {
Expand Down Expand Up @@ -426,7 +417,6 @@ const onRowFormClose = () => {
</el-table-column>
<el-table-column prop="datasource_name" :label="$t('ds.title')" min-width="180" />
<el-table-column
v-if="isDefaultOrg"
prop="advanced_application_name"
:label="$t('embedded.advanced_application')"
min-width="180"
Expand Down Expand Up @@ -588,11 +578,7 @@ const onRowFormClose = () => {
</el-select>
</el-form-item>

<el-form-item
v-if="isDefaultOrg"
prop="advanced_application"
:label="t('embedded.advanced_application')"
>
<el-form-item prop="advanced_application" :label="t('embedded.advanced_application')">
<el-select
v-model="pageForm.advanced_application"
filterable
Expand Down Expand Up @@ -653,7 +639,7 @@ const onRowFormClose = () => {
{{ pageForm.datasource_name }}
</div>
</el-form-item>
<el-form-item v-if="isDefaultOrg" :label="t('embedded.advanced_application')">
<el-form-item :label="t('embedded.advanced_application')">
<div class="content">
{{ pageForm.advanced_application_name }}
</div>
Expand Down