import { useMessage, NImage, NScrollbar, NSpin, NModal, NButton } from 'naive-ui'; import { defineComponent, onMounted, reactive, ref } from 'vue'; import styles from '@/views/classList/index.module.less'; import TrainType from '@/views/attend-class/model/train-type'; import defultHeade from '@/components/layout/images/teacherIcon.png'; import noSub from '@/views/classList/images/nosub.png'; import qualified from '@/views/classList/images/qualified.png'; import unqualified from '@/views/classList/images/unqualified.png'; import { evaluateDifficult } from '/src/utils/contants'; import dayjs from 'dayjs'; import { getTrainingStudentDetail } from '../../classList/api'; import CommentWork from './comment-work'; export default defineComponent({ props: { activeRow: { type: Object, default: () => ({ id: '' }) }, total: { type: Number, default: 0 }, current: { type: Number, default: 0 } }, name: 'studentTraomomhDetails', emits: ['close'], setup(props, { emit, expose }) { const showModalMask = ref(false); const loading = ref(false); const teacherInfo = ref({ teacherName: '', createTime: '', expireDate: '', teacherAvatar: '', studentLessonTrainingDetails: [] as any } as any); // const message = useMessage(); // const foemsRef = ref(); const typeFormat = (trainingType: string, configJson: any) => { let tList: string[] = []; if (trainingType === 'EVALUATION') { tList = [ `${evaluateDifficult[configJson.evaluateDifficult]}`, configJson.practiceChapterBegin || configJson.practiceChapterEnd ? `${configJson.practiceChapterBegin}-${configJson.practiceChapterEnd}小节` : '全部小节', // `速度${configJson.evaluateSpeed}`, `${configJson.trainingTimes}分合格` ]; // console.log('configJson.evaluateDifficult--', tList); } else { tList = [ `${configJson.practiceChapterBegin}-${configJson.practiceChapterEnd}小节`, `速度${configJson.practiceSpeed}`, `${configJson.trainingTimes}分钟` ]; // console.log('configJson.evaluateDifficult', tList); } return tList; }; const getTrainingDetail = async (id: any) => { loading.value = true; try { const res = await getTrainingStudentDetail({ studentLessonTrainingId: id }); const arr = res.data.studentLessonTrainingDetails.map((item: any) => { const tList = typeFormat( item.trainingType, JSON.parse(item.trainingContent) ); return { ...item, coverImg: item.titleImg, allTimes: JSON.parse(item.trainingContent).trainingTimes, typeList: tList || [] }; }); teacherInfo.value = { ...res.data, studentLessonTrainingDetails: arr }; } catch (e) { console.log(e); } loading.value = false; }; expose({ getTrainingDetail }); onMounted(() => { getTrainingDetail(props.activeRow.id); }); return () => (
开始时间: {teacherInfo.value.createTime ? dayjs(new Date(teacherInfo.value.createTime)).format( 'YYYY-MM-DD' ) : '--'}{' '} | 结束时间: {teacherInfo.value.expireDate ? dayjs(new Date(teacherInfo.value.expireDate)).format( 'YYYY-MM-DD' ) : '--'}