From b2510c0eb30f8bc0c37f32ddb44ae2c8bdbd22ad Mon Sep 17 00:00:00 2001 From: TsMask <340112800@qq.com> Date: Mon, 22 Jul 2024 11:45:15 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=8F=AD=E7=BA=A7=E5=AD=A6=E7=94=9F?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E6=90=9C=E7=B4=A2=E6=97=B6=E5=88=B7=E6=96=B0?= =?UTF-8?q?=E5=90=88=E5=B9=B6=E7=94=B3=E8=AF=B7=E7=8A=B6=E6=80=81=EF=BC=8C?= =?UTF-8?q?=E5=8F=AF=E7=9B=B4=E6=8E=A5=E5=BA=94=E7=94=A8=E5=92=8C=E9=80=80?= =?UTF-8?q?=E5=9B=9E=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hooks/usePtOptions.ts | 39 +++++++++++++++---- .../configParamTreeTable/index.vue | 32 ++++++++++----- 2 files changed, 55 insertions(+), 16 deletions(-) diff --git a/src/views/configManage/configParamTreeTable/hooks/usePtOptions.ts b/src/views/configManage/configParamTreeTable/hooks/usePtOptions.ts index a7fe8e25..bf78ea6f 100644 --- a/src/views/configManage/configParamTreeTable/hooks/usePtOptions.ts +++ b/src/views/configManage/configParamTreeTable/hooks/usePtOptions.ts @@ -105,6 +105,15 @@ export default function usePtOptions({ t, fnActiveConfigNode }: any) { content: t('common.operateOk'), duration: 3, }); + // 教师修改学生时改变状态 + if (student) { + const item = classState.studentOptionsDef.find( + s => s.value === classState.student + ); + if (item) { + item.applyStatus = status; + } + } } else { message.error({ content: `${res.msg}`, @@ -146,6 +155,14 @@ export default function usePtOptions({ t, fnActiveConfigNode }: any) { }); } + /**学生选择搜索 */ + function studentChange(v: any) { + if (!v) { + Object.assign(classState.studentOptions, classState.studentOptionsDef); + } + fnActiveConfigNode('#'); + } + let timeout: any; /**学生选择搜索 */ @@ -168,15 +185,22 @@ export default function usePtOptions({ t, fnActiveConfigNode }: any) { if (!Array.isArray(res.data) || res.data.length <= 0) { return; } - for (const s of res.data) { + for (const v of res.data) { classState.studentOptions.push({ - value: s.userName, - label: s.userName, - applyId: s.applyId, - applyStatus: s.applyStatus, + value: v.userName, + label: v.userName, + applyId: v.applyId, + applyStatus: v.applyStatus, }); + // 设为最新状态 + const item = classState.studentOptionsDef.find( + s => s.value === v.userName + ); + if (item) { + item.applyStatus = v.applyStatus; + } } - if (val) { + if (!val) { Object.assign(classState.studentOptionsDef, classState.studentOptions); } }); @@ -184,7 +208,7 @@ export default function usePtOptions({ t, fnActiveConfigNode }: any) { // 学生状态 const studentStatus = computed(() => { - const item = classState.studentOptions.find( + const item = classState.studentOptionsDef.find( s => s.value === classState.student ); if (item) return item.applyStatus; @@ -199,5 +223,6 @@ export default function usePtOptions({ t, fnActiveConfigNode }: any) { classState, studentStatus, studentSearch, + studentChange, }; } diff --git a/src/views/configManage/configParamTreeTable/index.vue b/src/views/configManage/configParamTreeTable/index.vue index 406c585f..19349ffa 100644 --- a/src/views/configManage/configParamTreeTable/index.vue +++ b/src/views/configManage/configParamTreeTable/index.vue @@ -21,7 +21,7 @@ import useConfigArray from './hooks/useConfigArray'; import useConfigArrayChild from './hooks/useConfigArrayChild'; import { getAllNeConfig } from '@/api/ne/neConfig'; import { getPtNeConfigData } from '@/api/pt/neConfig'; -import { hasRoles } from '@/plugins/auth-user'; +import { isSystemAdmin, hasRoles } from '@/plugins/auth-user'; const neInfoStore = useNeInfoStore(); const { t } = useI18n(); const { ruleVerification, getConfigSMFByUPFIds, SMFByUPFIdOptions } = @@ -343,6 +343,7 @@ const { classState, studentStatus, studentSearch, + studentChange, } = usePtOptions({ t, fnActiveConfigNode }); const { tablePagination, listState, listEdit, listEditClose, listEditOk } = @@ -438,6 +439,7 @@ onMounted(() => {