Procházet zdrojové kódy

修改时间为动态时间

lrf402788946 před 4 roky
rodič
revize
4c74c35a93
1 změnil soubory, kde provedl 27 přidání a 6 odebrání
  1. 27 6
      parts/time-table.vue

+ 27 - 6
parts/time-table.vue

@@ -31,8 +31,8 @@
             <tr v-for="(time, ti) in tr" :key="ti">
               <td rowspan="2" v-if="ti == 0">上午</td>
               <td :rowspan="length" v-if="ti == 2">下午</td>
-              <td>{{ time }}</td>
-              <td v-for="(date, di) in th" :key="di" v-html="getLesson(date, time)"></td>
+              <td>{{ getTime(ti) }}</td>
+              <td v-for="(date, di) in th" :key="di" v-html="getLesson(date, getTime(ti))"></td>
               <td rowspan="6" v-if="ti == 0">
                 <div class="classInfo">
                   <p>上课地点</p>
@@ -92,7 +92,25 @@ export default {
     length: 0,
   }),
   async created() {},
-  computed: {},
+  computed: {
+    timeList() {
+      const today = moment().format('YYYY-MM-DD');
+      let mid = _.orderBy(
+        _.uniqBy(
+          this.lessons.map(i => {
+            let m = i.time;
+            m = m.split('-');
+            const obj = { time: i.time, start: moment(`${today} ${m[0]}`).format('YYYY-MM-DD HH:mm') };
+            return obj;
+          }),
+          'start'
+        ),
+        ['start'],
+        ['asc']
+      ).map(i => i.time);
+      return mid;
+    },
+  },
   methods: {
     getLesson(date, time) {
       this.$set(this, `length`, this.tr.length - 2);
@@ -100,11 +118,11 @@ export default {
       if (!r) return '--';
       else {
         let { subname, teaname = '', reason, time } = r;
-        if (time == '08:30-11:30') {
-          let text = `${subname}<br/><span style="color:red">${teaname}</span><br/><span>${reason || ''}</span>`;
+        if (time == this.timeList[0]) {
+          let text = `${subname || ''}<br/><span style="color:red">${teaname || ''}</span><br/><span>${reason || ''}</span>`;
           return text;
         } else {
-          let text = `${subname}<br/><span style="color:red">${teaname}</span>`;
+          let text = `${subname || ''}<br/><span style="color:red">${teaname || ''}</span>`;
           // if (reason && teaname !== '') text = `${text}<br/><span style="color:red">${reason}</span>`;
           return text;
         }
@@ -119,6 +137,9 @@ export default {
         else return `${data}班`;
       }
     },
+    getTime(index) {
+      return this.timeList[index];
+    },
   },
   filters: {
     getWeekDay(date) {