Преглед изворни кода

完成评价数据和授课关系在线上匿名和线下答卷的数据交互

lm пре 1 месец
родитељ
комит
d75aae2595

+ 5 - 4
src/components/ReviewManagementDetailSideBar.vue

@@ -13,7 +13,7 @@
         <!-- 激活状态的步骤 -->
         <template  v-for="stepItm in stepMsgs" :key="stepItm.stepName">
           <li v-if="stepItm.show"
-            :class="['nav_item', {'active_item':currentActiveStep == stepItm.stepName}]"
+            :class="['nav_item', {'active_item':store.state.evaluationManageStepData.currentActiveStepName == stepItm.stepName}]"
             @click="HandleChangeStep(stepItm)"
           >
             <div class="step_header_title">
@@ -48,7 +48,6 @@ import router from '@/router';
 const route = useRoute()
 const store = useStore()  //store.state.evaluationManageStepData.evaluationType,   // 评价方式  0-线上匿名,1-线下答卷,2-线上导入,3-线上实名
 
-const currentActiveStep = ref(1)
 const stepMsgs = computed(()=>[
   {
     stepNum:1,
@@ -176,7 +175,8 @@ const stepMsgs = computed(()=>[
 ])
 
 const HandleChangeStep=(currentStep)=>{
-  currentActiveStep.value = currentStep.stepName
+  store.commit('updateEvaluationManageStepData',
+                {currentActiveStepName:currentStep.stepName})
   if(currentStep.stepName  == 'reviewAccount'){
     if(currentStep.isGenerateReviewCode){
       // 已经生成评价码,跳转到评价码生成页面
@@ -196,7 +196,8 @@ onMounted(()=>{
     return item.route === stepRoute || item.childrenRoute?.includes(stepRoute)
   })
   if(matchRes){
-    currentActiveStep.value = matchRes.stepName
+    store.commit('updateEvaluationManageStepData',
+                {currentActiveStepName: matchRes.stepName})
   }
 })
 </script>

+ 3 - 0
src/store/index.ts

@@ -12,6 +12,8 @@ import { ElMessage } from 'element-plus'
  
 
 interface HorizontalMenuItem {
+  // 当前活跃的步骤 名称
+  currentActiveStepName:string, 
   evaluationManageDetailName:string,  // 评价管理任务名称
   evaluationType:string |number,   // 评价方式  0-线上匿名,1-线下答卷,2-线上导入,3-线上实名
 
@@ -89,6 +91,7 @@ const store = createStore<RootState>({
     increment({ commit }) {
       commit('increment')
     },
+    //更新评价管理详情的数据
     async updateEvaluationManageStepData({commit},evaluationManagementId){
       console.log('路由参数',evaluationManagementId)
       if(!evaluationManagementId){

+ 5 - 3
src/views/reviewManagement/stepComponent/evaluationDataComponent/EvaluationDataComponent.vue

@@ -263,6 +263,7 @@ import {
     saveEvaluationDataDetailApi
 } from '@/api/evaluationDataComponent.ts'
 import { ElMessage } from 'element-plus';
+import router from '@/router';
 
 interface subjectOrClassDataItm {
    id:string, 
@@ -708,10 +709,11 @@ const SaveEvaluationData = async ()=>{
 
   let res = await saveEvaluationDataDetailApi(params)
   if(res?.code == 200){
-    ElMessage.success(res?.msg)
     // 完成后,重新查询 任务管理基础信息,并跳到下一步
-
-    await GetEvaluationDataDetail()
+    await store.dispatch('updateEvaluationManageStepData',route.query.id)
+    store.commit('updateEvaluationManageStepData',
+                {currentActiveStepName:'teachingRelationship'})
+    router.push(`teachingRelationship?id=${route.query.id}`)
   }
 
 }

+ 15 - 2
src/views/reviewManagement/stepComponent/teachingRelationshipComponent/TeachingRelationshipComponent.vue

@@ -147,6 +147,7 @@
 <script setup lang="ts">
 import { ref, reactive, onMounted } from 'vue';
 import { useRoute } from 'vue-router';
+import { useStore } from 'vuex';
 
 import { Close } from '@element-plus/icons-vue';
 import FormSearchGroup from '@/baseComponents/FormSearchGroup.vue';
@@ -162,9 +163,10 @@ import {getEvaluationDataDetailApi} from '@/api/evaluationDataComponent'
 
 import {administrativeClassTableColumns,teacherTableColumns,teachingClassTableColumns} from './table'
 import { ElMessage } from 'element-plus';
+import router from '@/router';
 
 const route = useRoute()
-
+const store = useStore()
 
 // 配置模式开关
 const isConfigMode = ref(true);
@@ -491,7 +493,18 @@ const FinishTeachingRelationship = async ()=>{
   })
   let res = await finishTeachingRelationshipApi(params)
   if(res?.code == 200){
-    ElMessage.success(res?.msg)
+    // 更新全局状态 并 跳转到下一步 
+    store.dispatch('updateEvaluationManageStepData',route.query.id)
+    // 线上匿名  线下答卷 
+    // store.state.evaluationManageStepData.evaluationType   // 评价方式  0-线上匿名,1-线下答卷,2-线上导入,3-线上实名
+    if(store.state.evaluationManageStepData.evaluationType === 0){
+      store.commit('updateEvaluationManageStepData',{currentActiveStepName:'questionnaireTemplate'})  //更新全局活跃路由
+      router.push(`questionnaireTemplate?id=${route.query.id}`)
+    
+    }else if(store.state.evaluationManageStepData.evaluationType === 1){
+      store.commit('updateEvaluationManageStepData',{currentActiveStepName:'numberMapping'})  //更新全局活跃路由
+      router.push(`numberMapping?id=${route.query.id}`)
+    }
   }
 }