lex 1 年之前
父节点
当前提交
f5134829bb

+ 4 - 4
src/views/classList/contants.ts

@@ -88,18 +88,18 @@ export const classArray = [
 export const getgradeNumList = () => {
   const userInfo = useUserStore();
   let gradeNumList = [];
-  if (userInfo.getUserInfo.schoolInfos[0].gradeYear == 'THREE_YEAR_SYSTEM') {
+  if (userInfo.getUserInfo.schoolInfos[0]?.gradeYear == 'THREE_YEAR_SYSTEM') {
     gradeNumList = threeYearSystem;
   } else if (
-    userInfo.getUserInfo.schoolInfos[0].gradeYear == 'FORE_YEAR_SYSTEM'
+    userInfo.getUserInfo.schoolInfos[0]?.gradeYear == 'FORE_YEAR_SYSTEM'
   ) {
     gradeNumList = foreYearSystem;
   } else if (
-    userInfo.getUserInfo.schoolInfos[0].gradeYear == 'FIVE_YEAR_SYSTEM'
+    userInfo.getUserInfo.schoolInfos[0]?.gradeYear == 'FIVE_YEAR_SYSTEM'
   ) {
     gradeNumList = fiveYearSystem;
   } else if (
-    userInfo.getUserInfo.schoolInfos[0].gradeYear == 'SIX_YEAR_SYSTEM'
+    userInfo.getUserInfo.schoolInfos[0]?.gradeYear == 'SIX_YEAR_SYSTEM'
   ) {
     gradeNumList = sixYearSystem;
   } else {

+ 2 - 2
src/views/homework-record/index.tsx

@@ -243,7 +243,7 @@ export default defineComponent({
           courseId: item.chapterLessonCoursewareId,
           subjectId: null,
           detailId: item.lessonCoursewareKnowledgeDetailId,
-          lessonCourseId: item.lessonCoursewareDetailId
+          lessonCourseId: item.lessonCoursewareId
         };
       } else {
         const { href } = router.resolve({
@@ -253,7 +253,7 @@ export default defineComponent({
             courseId: item.chapterLessonCoursewareId,
             subjectId: null,
             detailId: item.lessonCoursewareKnowledgeDetailId,
-            lessonCourseId: item.lessonCoursewareDetailId
+            lessonCourseId: item.lessonCoursewareId
           }
         });
         window.open(href, +new Date() + '');

+ 34 - 0
src/views/prepare-lessons/components/lesson-main/courseware-presets/index.tsx

@@ -50,6 +50,12 @@ import ResourceMain from '../../resource-main';
 
 export default defineComponent({
   name: 'courseware-presets',
+  props: {
+    addParam: {
+      type: Object,
+      default: () => ({})
+    }
+  },
   emits: ['change'],
   setup(props, { emit }) {
     const prepareStore = usePrepareStore();
@@ -85,6 +91,7 @@ export default defineComponent({
       editTitle: null,
       editBtnLoading: false,
       preRemoveVisiable: false,
+      addVisiable: false, // 是否有添加的课件
       carouselIndex: 0,
       showAttendClass: false,
       attendClassType: 'change', //
@@ -249,6 +256,11 @@ export default defineComponent({
       }
 
       await getCoursewareList();
+
+      console.log(props.addParam, 'addCourseware');
+      if (props.addParam.isAdd) {
+        forms.addVisiable = true;
+      }
     });
 
     const getModalHeight = () => {
@@ -625,6 +637,28 @@ export default defineComponent({
           />
         </NModal>
 
+        <NModal
+          v-model:show={forms.addVisiable}
+          preset="card"
+          class={['modalTitle', styles.removeVisiable1]}
+          title={'保存成功'}>
+          <TheMessageDialog
+            content={`<p style="text-align: left;">【${props.addParam.name}】暂未设置课件作业,是否现在去设置课件作业</p>`}
+            cancelButtonText="稍后设置"
+            confirmButtonText="立即设置"
+            // loading={forms.messageLoading}
+            onClose={() => (forms.addVisiable = false)}
+            onConfirm={() => {
+              forms.addVisiable = false;
+              forms.workVisiable = true;
+              forms.selectItem = {
+                id: props.addParam.id,
+                name: props.addParam.name
+              };
+            }}
+          />
+        </NModal>
+
         {/* 应用内预览或上课 */}
         <PreviewWindow
           v-model:show={forms.previewModal}

+ 52 - 8
src/views/prepare-lessons/components/lesson-main/courseware/addCourseware.tsx

@@ -77,6 +77,7 @@ export default defineComponent({
       openFlagEnable: true, // 是否支持修改公开状态
       name: '',
       openFlag: false,
+      createId: null,
       baseCoursewareList: [
         {
           name: '',
@@ -316,7 +317,14 @@ export default defineComponent({
           ) {
             forms.messageCallBack();
           }
-          emit('change', { status: false });
+          emit('change', {
+            status: false,
+            addParam: {
+              isAdd: !props.groupItem.id ? true : false,
+              name: forms.name,
+              id: forms.createId
+            }
+          });
           eventGlobal.emit('teacher-slideshow', false);
         }
       }
@@ -395,7 +403,14 @@ export default defineComponent({
         const resultStatus = await onSaveCourseWare();
 
         if (resultStatus) {
-          emit('change', { status: false });
+          emit('change', {
+            status: false,
+            addParam: {
+              isAdd: !props.groupItem.id ? true : false,
+              name: forms.name,
+              id: forms.createId
+            }
+          });
           eventGlobal.emit('teacher-slideshow', false);
         }
       } catch {
@@ -443,10 +458,11 @@ export default defineComponent({
             id: props.groupItem.id,
             ...params
           });
+          message.success('保存成功');
         } else {
-          await api_teacherChapterLessonCoursewareAdd(params);
+          const { data } = await api_teacherChapterLessonCoursewareAdd(params);
+          forms.createId = data.id;
         }
-        message.success('保存成功');
 
         return true;
       } catch {
@@ -486,7 +502,14 @@ export default defineComponent({
         if (typeof event === 'function') {
           event();
 
-          emit('change', { status: false });
+          emit('change', {
+            status: false,
+            addParam: {
+              isAdd: !props.groupItem.id ? true : false,
+              name: forms.name,
+              id: forms.createId
+            }
+          });
           eventGlobal.emit('teacher-slideshow', false);
         }
       } else {
@@ -616,7 +639,14 @@ export default defineComponent({
                 const objA = JSON.stringify(forms.coursewareList);
                 const objB = JSON.stringify(forms.baseCoursewareList);
                 if (objA === objB) {
-                  emit('change', { status: false });
+                  emit('change', {
+                    status: false,
+                    addParam: {
+                      isAdd: !props.groupItem.id ? true : false,
+                      name: forms.name,
+                      id: forms.createId
+                    }
+                  });
                   eventGlobal.emit('teacher-slideshow', false);
                 } else {
                   forms.messageOperation = {
@@ -919,7 +949,14 @@ export default defineComponent({
                 forms.messageOperation.type === 'save' ||
                 forms.messageOperation.type === 'pageLive'
               ) {
-                emit('change', { status: false });
+                emit('change', {
+                  status: false,
+                  addParam: {
+                    isAdd: !props.groupItem.id ? true : false,
+                    name: forms.name,
+                    id: forms.createId
+                  }
+                });
                 eventGlobal.emit('teacher-slideshow', false);
                 if (
                   forms.messageOperation.type === 'pageLive' &&
@@ -967,7 +1004,14 @@ export default defineComponent({
                 const resultStatus = await onSaveCourseWare();
                 if (resultStatus) {
                   userStore.setReadCoursewareOpenAgreement(true);
-                  emit('change', { status: false });
+                  emit('change', {
+                    status: false,
+                    addParam: {
+                      isAdd: !props.groupItem.id ? true : false,
+                      name: forms.name,
+                      id: forms.createId
+                    }
+                  });
                   eventGlobal.emit('teacher-slideshow', false);
                 }
               } catch {

+ 9 - 0
src/views/prepare-lessons/components/lesson-main/index.tsx

@@ -15,6 +15,11 @@ export default defineComponent({
     const state = reactive({
       editCoursewareShow: false, // 是否编辑课件
       coursewareType: 'create' as 'create' | 'edit',
+      addParam: {
+        isAdd: false, // 是否添加
+        id: null,
+        addName: '' // 添加的名称
+      },
       editCourseware: {} as any, //
       editWorkShow: false, // 是否编辑预设
       editWork: {} as any // 预设模板编号
@@ -65,6 +70,9 @@ export default defineComponent({
                 <Courseware
                   groupItem={state.editCourseware}
                   onChange={(val: any) => {
+                    if (val.addParam) {
+                      state.addParam = val.addParam;
+                    }
                     state.editCoursewareShow = val.status;
                     prepareStore.setIsEditResource(val.status);
                     if (!val.status) {
@@ -77,6 +85,7 @@ export default defineComponent({
           </NTabs>
         ) : (
           <CoursewarePresets
+            addParam={state.addParam}
             onChange={(val: any) => {
               state.coursewareType = val.type;
               state.editCoursewareShow = val.status;

+ 1 - 1
src/views/prepare-lessons/components/lesson-main/train/assign-homework.tsx

@@ -49,7 +49,7 @@ export default defineComponent({
     },
     homeworkType: {
       type: String as PropType<'CLASSWORK' | 'HOMEWORK'>,
-      default: 'HOMEWORK'
+      default: 'CLASSWORK'
     }
   },
   emits: ['close', 'confirm'],

+ 1 - 0
src/views/prepare-lessons/components/lesson-main/train/index.tsx

@@ -506,6 +506,7 @@ export default defineComponent({
             classGroupId={props.classGroupId}
             courseScheduleId={props.courseScheduleId}
             chapterLessonCoursewareId={props.lessonPreTraining.chapterId}
+            homeworkType={props.courseScheduleId ? 'HOMEWORK' : 'CLASSWORK'}
             item={{
               title: forms.title,
               lessonPreTrainingDetails: forms.trainList

+ 5 - 1
src/views/prepare-lessons/model/add-courseware-protocol/index.tsx

@@ -57,7 +57,11 @@ export default defineComponent({
             </div>
 
             <NSpace style={{ padding: '25px 0 0 0' }} justify="center">
-              <NButton class={styles.cancelBtn} round type="default">
+              <NButton
+                class={styles.cancelBtn}
+                round
+                type="default"
+                onClick={() => emit('close')}>
                 取消
               </NButton>
               <NButton

+ 7 - 5
src/views/prepare-lessons/model/courseware-type/index.module.less

@@ -9,6 +9,12 @@
     box-shadow: 0 2px 15px 0 rgba(0, 0, 0, 0.1);
     border-radius: 15px;
     transition: all .2s ease;
+
+    &:hover .footer {
+      opacity: 1;
+      visibility: visible;
+      transition: all .2s ease;
+    }
   }
 
   &.coursewareTypeHover:hover {
@@ -259,11 +265,7 @@
 .operationBottom {
   padding-bottom: 16px;
 
-  &:hover .footer {
-    opacity: 1;
-    visibility: visible;
-    transition: all .2s ease;
-  }
+
 }