|
|
|
@ -95,7 +95,7 @@
|
|
|
|
<div v-else>
|
|
|
|
<div v-else>
|
|
|
|
<div class="qr-container">
|
|
|
|
<div class="qr-container">
|
|
|
|
<h4 style="margin-bottom: 20px; color: #2c3e50">
|
|
|
|
<h4 style="margin-bottom: 20px; color: #2c3e50">
|
|
|
|
{{ is_arrange === 0 ? selectedCourse.name : selectedCourse.course.name }}
|
|
|
|
{{ is_arrange === 0 ? (selectedCourse && selectedCourse.name) : (selectedCourse && selectedCourse.course && selectedCourse.course.name) }}
|
|
|
|
</h4>
|
|
|
|
</h4>
|
|
|
|
<div class="qr-code" v-if="qrImgUrl">
|
|
|
|
<div class="qr-code" v-if="qrImgUrl">
|
|
|
|
<img
|
|
|
|
<img
|
|
|
|
@ -108,32 +108,32 @@
|
|
|
|
<h3><i class="el-icon-info"></i> 课表信息</h3>
|
|
|
|
<h3><i class="el-icon-info"></i> 课表信息</h3>
|
|
|
|
<div class="qr-info-grid">
|
|
|
|
<div class="qr-info-grid">
|
|
|
|
<div v-if="is_arrange === 0">
|
|
|
|
<div v-if="is_arrange === 0">
|
|
|
|
<strong>课程名称:</strong>{{ selectedCourse.name }}
|
|
|
|
<strong>课程名称:</strong>{{ selectedCourse && selectedCourse.name }}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div v-if="is_arrange === 0">
|
|
|
|
<div v-if="is_arrange === 0">
|
|
|
|
<strong>开始时间:</strong>{{ selectedCourse.start_date }}
|
|
|
|
<strong>开始时间:</strong>{{ selectedCourse && selectedCourse.start_date }}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div v-if="is_arrange === 0">
|
|
|
|
<div v-if="is_arrange === 0">
|
|
|
|
<strong>结束时间:</strong>{{ selectedCourse.end_date }}
|
|
|
|
<strong>结束时间:</strong>{{ selectedCourse && selectedCourse.end_date }}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div v-if="is_arrange === 1">
|
|
|
|
<div v-if="is_arrange === 1">
|
|
|
|
<strong>主题:</strong>{{ selectedCourse.theme }}
|
|
|
|
<strong>主题:</strong>{{ selectedCourse && selectedCourse.theme }}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div v-if="is_arrange === 1">
|
|
|
|
<div v-if="is_arrange === 1">
|
|
|
|
<strong>时间:</strong>{{ selectedCourse.date }} -
|
|
|
|
<strong>时间:</strong>{{ selectedCourse && selectedCourse.date }} -
|
|
|
|
{{ selectedCourse.period }}
|
|
|
|
{{ selectedCourse && selectedCourse.period }}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div v-if="is_arrange === 1">
|
|
|
|
<div v-if="is_arrange === 1">
|
|
|
|
<strong>地点:</strong>{{ selectedCourse.address }}
|
|
|
|
<strong>地点:</strong>{{ selectedCourse && selectedCourse.address }}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div v-if="is_arrange === 1">
|
|
|
|
<div v-if="is_arrange === 1">
|
|
|
|
<strong>主讲:</strong
|
|
|
|
<strong>主讲:</strong
|
|
|
|
>{{
|
|
|
|
>{{
|
|
|
|
selectedCourse.teacher ? selectedCourse.teacher.name : ""
|
|
|
|
selectedCourse && selectedCourse.teacher ? selectedCourse.teacher.name : ""
|
|
|
|
}}
|
|
|
|
}}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div v-if="is_arrange === 0">
|
|
|
|
<div v-if="is_arrange === 0">
|
|
|
|
<strong>签到地点:</strong>{{ selectedCourse.address_detail || '未设置' }}
|
|
|
|
<strong>签到地点:</strong>{{ selectedCourse && (selectedCourse.address_detail || '未设置') }}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
@ -145,6 +145,13 @@
|
|
|
|
@click="downloadQR"
|
|
|
|
@click="downloadQR"
|
|
|
|
>下载二维码</el-button
|
|
|
|
>下载二维码</el-button
|
|
|
|
>
|
|
|
|
>
|
|
|
|
|
|
|
|
<el-button
|
|
|
|
|
|
|
|
type="success"
|
|
|
|
|
|
|
|
icon="el-icon-view"
|
|
|
|
|
|
|
|
class="btn-qr"
|
|
|
|
|
|
|
|
@click="showSignList"
|
|
|
|
|
|
|
|
>查看签到记录</el-button
|
|
|
|
|
|
|
|
>
|
|
|
|
<!-- <el-button type="success" icon="el-icon-view" class="btn-qr" @click="previewCheckin">预览签到页</el-button> -->
|
|
|
|
<!-- <el-button type="success" icon="el-icon-view" class="btn-qr" @click="previewCheckin">预览签到页</el-button> -->
|
|
|
|
<!-- <el-button type="info" icon="el-icon-document-copy" class="btn-qr" @click="copyUrl">复制链接</el-button> -->
|
|
|
|
<!-- <el-button type="info" icon="el-icon-document-copy" class="btn-qr" @click="copyUrl">复制链接</el-button> -->
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
@ -164,6 +171,13 @@
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<editClass ref="editClass" @refresh="getCousreContent"></editClass>
|
|
|
|
<editClass ref="editClass" @refresh="getCousreContent"></editClass>
|
|
|
|
<addCourse ref="addCourse" @refresh="onAddCourseRefresh"></addCourse>
|
|
|
|
<addCourse ref="addCourse" @refresh="onAddCourseRefresh"></addCourse>
|
|
|
|
|
|
|
|
<signList
|
|
|
|
|
|
|
|
ref="signList"
|
|
|
|
|
|
|
|
:course-id="course_id"
|
|
|
|
|
|
|
|
:course-content-id="selectedCourse ? selectedCourse.id : null"
|
|
|
|
|
|
|
|
:course-info="is_arrange === 0 ? selectedCourse : null"
|
|
|
|
|
|
|
|
:schedule-info="is_arrange === 1 ? selectedCourse : null"
|
|
|
|
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</template>
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
|
|
@ -175,12 +189,14 @@ import {
|
|
|
|
} from "@/api/course/courseContent.js";
|
|
|
|
} from "@/api/course/courseContent.js";
|
|
|
|
import editClass from "@/views/course/components/editClass.vue";
|
|
|
|
import editClass from "@/views/course/components/editClass.vue";
|
|
|
|
import addCourse from "@/views/course/components/addCourse.vue";
|
|
|
|
import addCourse from "@/views/course/components/addCourse.vue";
|
|
|
|
|
|
|
|
import signList from "@/views/courseQr/components/signList.vue";
|
|
|
|
import { index as teacherIndex } from "@/api/info/teachers.js";
|
|
|
|
import { index as teacherIndex } from "@/api/info/teachers.js";
|
|
|
|
export default {
|
|
|
|
export default {
|
|
|
|
name: "CourseQr",
|
|
|
|
name: "CourseQr",
|
|
|
|
components: {
|
|
|
|
components: {
|
|
|
|
editClass,
|
|
|
|
editClass,
|
|
|
|
addCourse,
|
|
|
|
addCourse,
|
|
|
|
|
|
|
|
signList,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
data() {
|
|
|
|
data() {
|
|
|
|
return {
|
|
|
|
return {
|
|
|
|
@ -272,6 +288,8 @@ export default {
|
|
|
|
this.course_id = "";
|
|
|
|
this.course_id = "";
|
|
|
|
this.course_date = "";
|
|
|
|
this.course_date = "";
|
|
|
|
this.courseContentList = [];
|
|
|
|
this.courseContentList = [];
|
|
|
|
|
|
|
|
this.selectedCourse = null;
|
|
|
|
|
|
|
|
this.qrImgUrl = "";
|
|
|
|
this.getCourse(e);
|
|
|
|
this.getCourse(e);
|
|
|
|
},
|
|
|
|
},
|
|
|
|
async getCourse() {
|
|
|
|
async getCourse() {
|
|
|
|
@ -374,8 +392,8 @@ export default {
|
|
|
|
const link = document.createElement("a");
|
|
|
|
const link = document.createElement("a");
|
|
|
|
link.href = this.qrImgUrl;
|
|
|
|
link.href = this.qrImgUrl;
|
|
|
|
const fileName = this.is_arrange === 0
|
|
|
|
const fileName = this.is_arrange === 0
|
|
|
|
? `${this.selectedCourse.name}-签到二维码.png`
|
|
|
|
? `${this.selectedCourse && this.selectedCourse.name}-签到二维码.png`
|
|
|
|
: `${this.selectedCourse.theme}-签到二维码.png`;
|
|
|
|
: `${this.selectedCourse && this.selectedCourse.theme}-签到二维码.png`;
|
|
|
|
link.download = fileName;
|
|
|
|
link.download = fileName;
|
|
|
|
link.target = "_blank";
|
|
|
|
link.target = "_blank";
|
|
|
|
link.click();
|
|
|
|
link.click();
|
|
|
|
@ -422,6 +440,15 @@ export default {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
},
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 显示签到记录
|
|
|
|
|
|
|
|
showSignList() {
|
|
|
|
|
|
|
|
if (!this.selectedCourse) {
|
|
|
|
|
|
|
|
this.$message.warning('请先选择课程或课表');
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
this.$refs.signList.show();
|
|
|
|
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
computed: {},
|
|
|
|
computed: {},
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|