guhongwei 4 роки тому
батько
коміт
ca4c59b28f

+ 58 - 56
src/layout/user/checkList.vue

@@ -1,33 +1,18 @@
 <template>
   <div id="checkList">
     <el-row>
-      <van-col :span="24">
-        <van-collapse v-model="openCollapse">
-          <!-- <van-collapse-item :name="index" v-for="(item, index) in checkWorkList" :key="index"> -->
-          <van-collapse-item>
-            <div slot="title" class="title">
-              <span class="name">{{ anames }}</span>
-            </div>
-            <van-row class="attend" v-for="(tag, index) in checkWorkList" :key="index">
-              <template v-for="(item, indexs) in tag.attend">
-                <van-col :span="24" class="dateTime" :key="indexs">
-                  <el-col :span="18">
-                    <p>{{ item.date }}</p>
-                    <p>{{ item.time }}</p>
-                  </el-col>
-
-                  <el-col :span="4">
-                    <p>{{ item.type === '0' ? '上课考勤' : item.type === '1' ? '寝室考勤' : '' }}</p>
-                  </el-col>
-                  <el-col :span="2">
-                    <p>{{ item.status === '0' ? '未签到' : item.status === '1' ? '签到' : '迟到' }}</p>
-                  </el-col>
-                </van-col>
-              </template>
-            </van-row>
-          </van-collapse-item>
-        </van-collapse>
-      </van-col>
+      <el-col :span="24" class="info">
+        <el-col :span="24" class="list" v-for="(item, index) in list" :key="index">
+          <el-col :span="18" class="left">
+            <p>{{ item.date }}</p>
+            <p>{{ item.time }}</p>
+          </el-col>
+          <el-col :span="6" class="right">
+            <p>{{ item.type === '0' ? '上课考勤' : item.type === '1' ? '寝室考勤' : '' }}</p>
+            <p>{{ item.status === '0' ? '未签到' : item.status === '1' ? '签到' : '迟到' }}</p>
+          </el-col>
+        </el-col>
+      </el-col>
     </el-row>
   </div>
 </template>
@@ -36,13 +21,10 @@
 export default {
   name: 'checkList',
   props: {
-    checkWorkList: null,
-    anames: null,
+    list: null,
   },
   components: {},
-  data: () => ({
-    openCollapse: [],
-  }),
+  data: () => ({}),
   created() {},
   computed: {},
   methods: {},
@@ -54,29 +36,49 @@ p {
   padding: 0;
   margin: 0;
 }
-.list {
-  background: #fff;
-  margin: 0 5px 5px 5px;
-  width: 97%;
-  padding: 0 10px;
-  border-radius: 15px;
-}
-.list .title {
-  float: left;
-  width: 100%;
-}
-.list .name {
-  float: left;
-  width: 80%;
-  font-size: 20px;
-}
-.attend {
-  border-bottom: 1px solid #f3f3f3;
-}
-.dateTime p {
-  padding: 2px 0;
-}
-.status {
-  padding: 12px 0;
+.info {
+  margin: 15px 0 0 0;
+  .list {
+    background: #fff;
+    margin: 0 10px 10px 10px;
+    width: 95%;
+    padding: 10px;
+    .left {
+      p {
+        padding: 0 0 5px 0;
+      }
+    }
+    .right {
+      text-align: center;
+      p {
+        padding: 0 0 5px 0;
+      }
+    }
+  }
 }
+// .list {
+//   background: #fff;
+//   margin: 0 5px 5px 5px;
+//   width: 97%;
+//   padding: 0 10px;
+//   border-radius: 15px;
+// }
+// .list .title {
+//   float: left;
+//   width: 100%;
+// }
+// .list .name {
+//   float: left;
+//   width: 80%;
+//   font-size: 20px;
+// }
+// .attend {
+//   border-bottom: 1px solid #f3f3f3;
+// }
+// .dateTime p {
+//   padding: 2px 0;
+// }
+// .status {
+//   padding: 12px 0;
+// }
 </style>

+ 1 - 3
src/layout/user/workList.vue

@@ -50,14 +50,12 @@ p {
 
 .list {
   width: 97%;
-
   background-color: #fff;
   border-radius: 15px;
   margin: 0 5px 5px 5px;
 }
 .list .time {
-  padding: 5px 0;
-  height: 70px;
+  padding: 15px 10px;
 }
 .list .ispass {
   padding: 20px 0;

+ 3 - 67
src/views/user/checkWork.vue

@@ -6,12 +6,7 @@
           <NavBar v-show="navShow" :title="title" :isleftarrow="isleftarrow"> </NavBar>
         </el-col>
         <el-col :span="24" class="main">
-          <!-- <el-col :span="24" class="leaveBtn">
-        <punchBtn :show="show" :form="form" :dates="dates" @openClick="openClick" @onSubmit="onSubmit"></punchBtn>
-          </el-col> -->
-          <el-col :span="24" class="leaveList">
-            <checkList :checkWorkList="checkWorkList" :anames="anames"></checkList>
-          </el-col>
+          <checkList :list="list"></checkList>
         </el-col>
       </el-col>
     </el-row>
@@ -21,7 +16,6 @@
 <script>
 import NavBar from '@/layout/common/topInfo.vue';
 import checkList from '@/layout/user/checkList.vue';
-// import punchBtn from '@/layout/user/punchBtn.vue';
 import { mapState, createNamespacedHelpers, mapGetters } from 'vuex';
 const { mapActions: mapAttendance } = createNamespacedHelpers('attendance');
 const { mapActions: mapClass } = createNamespacedHelpers('classes');
@@ -31,26 +25,16 @@ export default {
   components: {
     NavBar, //头部导航
     checkList, //考勤列表
-    // punchBtn, //考勤打卡
   },
   data: () => ({
-    show: false,
-    form: {
-      attend: [],
-    },
-    dates: {},
-    anames: '',
-    checkWorkList: {
-      attend: [],
-    },
     title: '',
     isleftarrow: '',
     transitionName: 'fade',
     navShow: true,
+    list: [],
   }),
   created() {
     this.search();
-    this.getDate();
   },
   computed: {
     ...mapState(['user']),
@@ -72,48 +56,7 @@ export default {
     async search() {
       let studentid = this.user.userid;
       const res = await this.query({ studentid });
-
-      this.$set(this, `checkWorkList`, res.data);
-      this.$set(this, `anames`, this.user.name);
-    },
-    // 考勤详情显示
-    async openClick() {
-      this.show = true;
-      const classInfo = await this.classinfo(this.user.classid);
-      this.$set(this.form, `topTitle`, classInfo.data.name);
-    },
-    // 考勤提交
-    async onSubmit(form) {
-      this.form.termid = this.user.termid;
-      this.form.batchid = this.user.batchid;
-      this.form.classid = this.user.classid;
-      this.form.studentid = this.user.userid;
-      let data = this.form;
-      let res = await this.create(data);
-      this.show = false;
-      this.search();
-    },
-    // 获得时间
-    getDate() {
-      this.timer = setInterval(() => {
-        var adate = new Date();
-        let year = adate.getFullYear();
-        let mouth = adate.getMonth() + 1;
-        let day = adate.getDate();
-        let newsdate = year + '年' + mouth + '月' + day + '日';
-        this.value = adate.getHours() + ':' + adate.getMinutes() + adate.getSeconds();
-        let str = adate.getHours() > 9 ? adate.getHours() : '0' + adate.getHours();
-        let tt = adate.getMinutes() > 9 ? adate.getMinutes() : '0' + adate.getMinutes();
-        let ss = adate.getSeconds() > 9 ? adate.getSeconds() : '0' + adate.getSeconds();
-        let tim = str + ':' + tt + ':' + ss;
-        let time = tim;
-        let date = newsdate;
-        let attend = [{ time, date }];
-        for (const val of attend) {
-          this.$set(this, `dates`, val);
-        }
-        this.$set(this.form, `attend`, attend);
-      }, 1000);
+      this.$set(this, `list`, res.data[0].attend);
     },
   },
 };
@@ -133,11 +76,4 @@ export default {
 .main {
   min-height: 570px;
 }
-.main .leaveBtn {
-  text-align: center;
-  padding: 15px 0;
-}
-.leaveList {
-  padding: 15px 0 0 0;
-}
 </style>

+ 0 - 1
src/views/user/homework.vue

@@ -6,7 +6,6 @@
           <NavBar v-show="navShow" :title="title" :isleftarrow="isleftarrow"> </NavBar>
         </el-col>
         <el-col :span="24" class="main">
-          <el-col :span="24" class="leaveBtn"> </el-col>
           <el-col :span="24" class="leaveList">
             <workList :workLists="workLists" :display="display"></workList>
           </el-col>