lrf402788946 4 éve
szülő
commit
b8fa5822aa
2 módosított fájl, 40 hozzáadás és 23 törlés
  1. 15 3
      src/views/task/index.vue
  2. 25 20
      src/views/task/taskDetail.vue

+ 15 - 3
src/views/task/index.vue

@@ -27,7 +27,6 @@ export default {
     ],
     fields: [
       { label: '课程日期', prop: 'date' },
-      { label: '课程时间', prop: 'time' },
       { label: '课程名称', prop: 'subname' },
     ],
     tableData: [],
@@ -55,8 +54,21 @@ export default {
       const classid = this.id;
       const userid = this.user.userid;
       const lesson = await this.modelFetch({ model: 'lesson', classid });
-      const tealesson = lesson.data.lessons.filter(item => item.teaid === userid);
-      const data = _.slice(tealesson, skip, limit);
+      let lessons = _.get(lesson.data, 'lessons', []);
+      // lesson排序,只去时间最早的作为作业的上传lessonid,需要和学生作业列表处相同处理
+      let r = lessons.filter(f => f.subid);
+      r = r.map(r => {
+        let time = r.time.split('-');
+        r.start = `${r.date} ${time[0]}`;
+        return r;
+      });
+      r = Object.values(_.groupBy(r, 'subid'));
+      r = r.map(a => {
+        let na = _.orderBy(a, ['start'], ['asc']);
+        return _.head(na);
+      });
+      const tealesson = r.filter(item => item.teaid === userid);
+      let data = _.slice(tealesson, skip, limit);
       this.$set(this, `tableData`, data);
       this.$set(this, `total`, tealesson.length);
     },

+ 25 - 20
src/views/task/taskDetail.vue

@@ -1,26 +1,31 @@
 <template>
   <div id="taskDetail">
     <detail-frame title="作业详情" :returns="toreturn">
-      <el-row>
-        <template v-if="tasktype === 'task'">
-          <el-col :span="24" class="title">
-            {{ task.title }}
-          </el-col>
-          <el-col :span="24" class="question" v-for="(item, index) in task.question" :key="index">
-            <p>
-              {{ index + 1 }}、(<template>{{ item.type === '0' ? '单选' : item.type === '1' ? '多选' : item.type === '2' ? '简答' : '' }}</template
-              >)({{ item.score }}分)
-            </p>
-            <p>{{ item.topic }}({{ item.stuanswer }})</p>
-            <p v-for="i in item.option" :key="i._id">{{ i.number }}、{{ i.opname }}</p>
-            <p v-if="item.answer">正确答案:{{ item.answer }}</p>
-          </el-col>
-        </template>
-        <template v-else-if="tasktype === 'pic'">
-          <el-image :src="picrul"></el-image>
-        </template>
-        <el-input class="score" v-model="score" type="number" label="作业成绩:" placeholder="请输入学生成绩" />
-        <el-button round @click="onSubmit">提交成绩</el-button>
+      <el-row style="text-align:center">
+        <el-col :span="24">
+          <template v-if="tasktype === 'task'">
+            <el-col :span="24" class="title">
+              {{ task.title }}
+            </el-col>
+            <el-col :span="24" class="question" v-for="(item, index) in task.question" :key="index">
+              <p>
+                {{ index + 1 }}、(<template>{{ item.type === '0' ? '单选' : item.type === '1' ? '多选' : item.type === '2' ? '简答' : '' }}</template
+                >)({{ item.score }}分)
+              </p>
+              <p>{{ item.topic }}({{ item.stuanswer }})</p>
+              <p v-for="i in item.option" :key="i._id">{{ i.number }}、{{ i.opname }}</p>
+              <p v-if="item.answer">正确答案:{{ item.answer }}</p>
+            </el-col>
+          </template>
+          <template v-else-if="tasktype === 'pic'">
+            <el-alert title="点击查看大图" type="success" style="margin:10px" center></el-alert>
+            <el-image :src="picrul" style="width:150px;height:150px" :preview-src-list="[picrul]"></el-image>
+          </template>
+        </el-col>
+        <el-col :span="24">
+          <el-input class="score" v-model="score" type="number" label="作业成绩:" placeholder="请输入学生成绩" />
+          <el-button round @click="onSubmit">提交成绩</el-button>
+        </el-col>
       </el-row>
     </detail-frame>
   </div>