提交 ffd353b5 authored 作者: 王鹏飞's avatar 王鹏飞

chore: 班级课程可设置是否可见

上级 19201640
const fs = require('fs')
const path = require('path')
const axios = require('axios')
const domain = 'dev.ezijing.com'
const outputPath = './https'
// 生成文件夹
function genOutputDir() {
if (fs.existsSync(outputPath)) {
console.log('The path exists.')
} else {
fs.mkdir(outputPath, { recursive: true }, err => {
if (err) throw err
})
}
}
function downloadCertFile() {
genOutputDir()
axios.get(`https://ssl.godzyx.com/${domain}/${domain}.key?get=allow`, { responseType: 'stream' }).then(response => {
response.data.pipe(fs.createWriteStream(path.join(__dirname, `${outputPath}/${domain}.key`)))
})
axios.get(`https://ssl.godzyx.com/${domain}/${domain}.pem?get=allow`, { responseType: 'stream' }).then(response => {
response.data.pipe(fs.createWriteStream(path.join(__dirname, `${outputPath}/${domain}.pem`)))
})
}
downloadCertFile()
-----BEGIN RSA PRIVATE KEY----- -----BEGIN RSA PRIVATE KEY-----
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
-----END RSA PRIVATE KEY----- -----END RSA PRIVATE KEY-----
\ No newline at end of file
差异被折叠。
...@@ -7,7 +7,8 @@ ...@@ -7,7 +7,8 @@
"build:test": "vite build --mode test", "build:test": "vite build --mode test",
"preview": "vite preview", "preview": "vite preview",
"deploy": "node ./deploy.js", "deploy": "node ./deploy.js",
"lint": "eslint --ext .js,.vue --ignore-path .gitignore --fix src" "lint": "eslint --ext .js,.vue --ignore-path .gitignore --fix src",
"cert": "node ./cert.js"
}, },
"dependencies": { "dependencies": {
"axios": "^0.27.2", "axios": "^0.27.2",
......
...@@ -111,3 +111,8 @@ export function searchClassExam(params) { ...@@ -111,3 +111,8 @@ export function searchClassExam(params) {
export function updateClassExam(data) { export function updateClassExam(data) {
return httpRequest.post('/api/zy-admin/school/class/add-exam', data) return httpRequest.post('/api/zy-admin/school/class/add-exam', data)
} }
// 课程是否可见
export function updateCourseStatus(data) {
return httpRequest.post('/api/zy-admin/school/class/set-course-is-open', data)
}
...@@ -6,6 +6,16 @@ ...@@ -6,6 +6,16 @@
<template v-slot:table-img="{ row }"> <template v-slot:table-img="{ row }">
<img v-if="row.curriculum" :src="row.curriculum.course_picture" width="120" height="70" /> <img v-if="row.curriculum" :src="row.curriculum.course_picture" width="120" height="70" />
</template> </template>
<template v-slot:table-status="{ row }">
<el-switch
v-model="row.is_open"
:active-value="1"
:inactive-value="0"
:disabled="!hasChangeStatus"
@change="changeStatus(row)">
</el-switch>
</template>
<template v-slot:table-x="{ row }"> <template v-slot:table-x="{ row }">
<router-link :to="{ path: '/school/course/details', query: { id: row.id } }"> <router-link :to="{ path: '/school/course/details', query: { id: row.id } }">
<el-button type="primary" size="mini" plain>查看</el-button> <el-button type="primary" size="mini" plain>查看</el-button>
...@@ -13,12 +23,17 @@ ...@@ -13,12 +23,17 @@
<!-- <el-button @click="onEdit(row)" type="primary" size="mini" plain>更新</el-button> <!-- <el-button @click="onEdit(row)" type="primary" size="mini" plain>更新</el-button>
<el-button @click="onRemove(row)" type="danger" size="mini" plain>删除</el-button> --> <el-button @click="onRemove(row)" type="danger" size="mini" plain>删除</el-button> -->
</template> </template>
<AddCourse v-if="isShowDialog" :info="info" :title="info ? '更新课程' : '添加课程'" :visible.sync="isShowDialog" @success="success" /> <AddCourse
v-if="isShowDialog"
:info="info"
:title="info ? '更新课程' : '添加课程'"
:visible.sync="isShowDialog"
@success="success" />
</app-list> </app-list>
</template> </template>
<script> <script>
import { addCourse, getClassDetail } from '../api' import { addCourse, getClassDetail, updateCourseStatus } from '../api'
import AddCourse from './AddCourse.vue' import AddCourse from './AddCourse.vue'
export default { export default {
...@@ -31,6 +46,12 @@ export default { ...@@ -31,6 +46,12 @@ export default {
} }
}, },
computed: { computed: {
permissions() {
return this.$store.state.permissions || []
},
hasChangeStatus() {
return !!this.permissions.find(item => item.tag === 'menu_class_set_course_is_open')
},
// 列表配置 // 列表配置
tableOptions() { tableOptions() {
return { return {
...@@ -49,6 +70,7 @@ export default { ...@@ -49,6 +70,7 @@ export default {
columns: [ columns: [
{ label: '课程图片', width: '140', slots: 'table-img' }, { label: '课程图片', width: '140', slots: 'table-img' },
{ label: '课程名称', prop: 'course_name' }, { label: '课程名称', prop: 'course_name' },
{ label: '状态', prop: 'status', slots: 'table-status' },
// { label: '开课时间', align: 'center', prop: 'start_time' }, // { label: '开课时间', align: 'center', prop: 'start_time' },
// { label: '结课时间', align: 'center', prop: 'end_time' }, // { label: '结课时间', align: 'center', prop: 'end_time' },
{ label: '操作', slots: 'table-x', align: 'center', width: '120', fixed: 'right' } { label: '操作', slots: 'table-x', align: 'center', width: '120', fixed: 'right' }
...@@ -95,6 +117,11 @@ export default { ...@@ -95,6 +117,11 @@ export default {
this.$message.success('删除成功') this.$message.success('删除成功')
} }
}) })
},
changeStatus(row) {
updateCourseStatus({ class_id: this.id, course_id: row.id, is_open: row.is_open }).then(res => {
this.$refs.list.refetch()
})
} }
} }
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论