|
@@ -1,29 +1,29 @@
|
|
<template>
|
|
<template>
|
|
<div id="homework">
|
|
<div id="homework">
|
|
<el-row>
|
|
<el-row>
|
|
- <el-col :span="24" class="homework">
|
|
|
|
|
|
+ <el-col :span="24" class="list">
|
|
<van-collapse v-model="openCollapse" accordion>
|
|
<van-collapse v-model="openCollapse" accordion>
|
|
- <van-collapse-item :name="index" v-for="(item, index) in homeworkList" :key="index">
|
|
|
|
- <div slot="title" class="title" @click="onsist(item.id)">
|
|
|
|
|
|
+ <van-collapse-item :name="index" v-for="(item, index) in list" :key="index">
|
|
|
|
+ <div slot="title" class="title">
|
|
<span class="name">{{ item.name }}</span>
|
|
<span class="name">{{ item.name }}</span>
|
|
</div>
|
|
</div>
|
|
- <van-row class="homeworkLessonList" v-for="(tag, index) in homeworkLessonList" :key="index">
|
|
|
|
- <van-col span="18" class="info">
|
|
|
|
- <p>课程名称:{{ tag.lessonname }}</p>
|
|
|
|
- <p>作业分: {{ tag.score }}分</p>
|
|
|
|
- </van-col>
|
|
|
|
- <van-col span="6" class="btn">
|
|
|
|
- <van-button v-if="user.job == '学委'" type="info" size="mini" @click="homeworkBtn(tag)">上成绩</van-button>
|
|
|
|
- </van-col>
|
|
|
|
|
|
+ <van-row v-for="(tag, index) in item.lesson" :key="index">
|
|
|
|
+ <el-col :span="18">
|
|
|
|
+ <van-col :span="24" class="score"> 名称:{{ tag.lessonname }} </van-col>
|
|
|
|
+ <van-col :span="24" class="score"> 作业分: {{ tag.score }}分</van-col>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="6" class="anniu">
|
|
|
|
+ <van-button v-if="user.job == '学委'" type="primary" size="mini" @click="clickBtn(tag.id, tag.lessonname, tag.score)">上成绩</van-button>
|
|
|
|
+ </el-col>
|
|
</van-row>
|
|
</van-row>
|
|
</van-collapse-item>
|
|
</van-collapse-item>
|
|
</van-collapse>
|
|
</van-collapse>
|
|
</el-col>
|
|
</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
- <van-dialog v-model="show" title="学生成绩上传" :showConfirmButton="false">
|
|
|
|
- <van-form @submit="homeworkOnsubmit">
|
|
|
|
- <van-field v-model="homeworkForm.lessonname" name="课程名称" label="课程名称" readonly />
|
|
|
|
- <van-field v-model="homeworkForm.score" type="digit" name="作业分数" label="作业分数" placeholder="请输入作业分数" />
|
|
|
|
|
|
+ <van-dialog v-model="show" @before-close="closeDialog" title="学生成绩上传" :showConfirmButton="false" show-cancel-button>
|
|
|
|
+ <van-form @submit="onSubmit">
|
|
|
|
+ <span class="lesson">课程名称</span><span class="lesson">{{ form.name }}</span>
|
|
|
|
+ <van-field v-model="form.score" name="作业分数" label="作业分数" placeholder="请输入作业分数" />
|
|
<div style="margin: 16px;">
|
|
<div style="margin: 16px;">
|
|
<van-button round block type="info" native-type="submit">
|
|
<van-button round block type="info" native-type="submit">
|
|
提交
|
|
提交
|
|
@@ -35,45 +35,45 @@
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
-import { mapState, createNamespacedHelpers } from 'vuex';
|
|
|
|
|
|
+import { mapState, createNamespacedHelpers, mapGetters } from 'vuex';
|
|
export default {
|
|
export default {
|
|
name: 'homework',
|
|
name: 'homework',
|
|
props: {
|
|
props: {
|
|
- homeworkList: { type: Array },
|
|
|
|
- homeworkLessonList: { type: Array },
|
|
|
|
- homeworkForm: { type: Object },
|
|
|
|
|
|
+ list: null,
|
|
},
|
|
},
|
|
components: {},
|
|
components: {},
|
|
- data: function() {
|
|
|
|
- return {
|
|
|
|
- openCollapse: [],
|
|
|
|
- show: false,
|
|
|
|
- };
|
|
|
|
- },
|
|
|
|
|
|
+ data: () => ({
|
|
|
|
+ ruleForm: {
|
|
|
|
+ region: '',
|
|
|
|
+ lesson: [],
|
|
|
|
+ },
|
|
|
|
+ show: false,
|
|
|
|
+ dscore: 0,
|
|
|
|
+ form: {},
|
|
|
|
+ value: '',
|
|
|
|
+ openCollapse: [],
|
|
|
|
+ }),
|
|
created() {},
|
|
created() {},
|
|
|
|
+ computed: { ...mapState(['user']) },
|
|
methods: {
|
|
methods: {
|
|
- onsist(id) {
|
|
|
|
- this.$emit('onsist', { id: id });
|
|
|
|
|
|
+ clickcds(index) {
|
|
|
|
+ this.openCollapse = index;
|
|
},
|
|
},
|
|
- // 学生上成绩
|
|
|
|
- homeworkBtn(data) {
|
|
|
|
|
|
+ clickBtn(id, name, score) {
|
|
|
|
+ this.form = { id, name, score };
|
|
|
|
+ this.dscore = score;
|
|
this.show = true;
|
|
this.show = true;
|
|
- this.$emit('homeworkBtn', { data: data });
|
|
|
|
},
|
|
},
|
|
- homeworkOnsubmit() {
|
|
|
|
- this.$emit('homeworkOnsubmit', { data: this.homeworkForm });
|
|
|
|
- this.show = false;
|
|
|
|
|
|
+ onSubmit() {
|
|
|
|
+ this.$emit('submit', { data: this.form });
|
|
|
|
+ this.closeDialog();
|
|
},
|
|
},
|
|
- },
|
|
|
|
- computed: {
|
|
|
|
- ...mapState(['user']),
|
|
|
|
- pageTitle() {
|
|
|
|
- return `${this.$route.meta.title}`;
|
|
|
|
|
|
+ closeDialog() {
|
|
|
|
+ this.form = {};
|
|
|
|
+ this.show = false;
|
|
|
|
+ this.dscore = 0;
|
|
},
|
|
},
|
|
},
|
|
},
|
|
- metaInfo() {
|
|
|
|
- return { title: this.$route.meta.title };
|
|
|
|
- },
|
|
|
|
};
|
|
};
|
|
</script>
|
|
</script>
|
|
|
|
|
|
@@ -82,17 +82,17 @@ p {
|
|
padding: 0;
|
|
padding: 0;
|
|
margin: 0;
|
|
margin: 0;
|
|
}
|
|
}
|
|
-.homework {
|
|
|
|
|
|
+.list {
|
|
margin: 5px;
|
|
margin: 5px;
|
|
width: 97%;
|
|
width: 97%;
|
|
padding: 0 10px;
|
|
padding: 0 10px;
|
|
border-radius: 15px;
|
|
border-radius: 15px;
|
|
}
|
|
}
|
|
-.homework .title {
|
|
|
|
|
|
+.list .title {
|
|
float: left;
|
|
float: left;
|
|
width: 100%;
|
|
width: 100%;
|
|
}
|
|
}
|
|
-.homework .name {
|
|
|
|
|
|
+.list .name {
|
|
float: left;
|
|
float: left;
|
|
width: 80%;
|
|
width: 80%;
|
|
font-size: 20px;
|
|
font-size: 20px;
|
|
@@ -112,16 +112,16 @@ p {
|
|
/deep/.el-collapse-item__content {
|
|
/deep/.el-collapse-item__content {
|
|
padding: 10px 0 10px 0;
|
|
padding: 10px 0 10px 0;
|
|
}
|
|
}
|
|
-.homeworkLessonList {
|
|
|
|
- border-bottom: 1px dashed #ccc;
|
|
|
|
- padding: 5px 0 0 0;
|
|
|
|
- .info {
|
|
|
|
- p {
|
|
|
|
- font-size: 16px;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- .btn {
|
|
|
|
- text-align: right;
|
|
|
|
- }
|
|
|
|
|
|
+.list .score {
|
|
|
|
+ padding: 5px 0;
|
|
|
|
+ font-size: 18px;
|
|
|
|
+}
|
|
|
|
+.anniu {
|
|
|
|
+ padding: 20px 0 0 0;
|
|
|
|
+}
|
|
|
|
+.lesson {
|
|
|
|
+ font-size: 14px;
|
|
|
|
+ padding: 0 21px 0 16px;
|
|
|
|
+ color: #323233;
|
|
}
|
|
}
|
|
</style>
|
|
</style>
|