|
@@ -10,14 +10,14 @@
|
|
|
<div class="container normal-panel normal-margin">
|
|
<div class="container normal-panel normal-margin">
|
|
|
<p class="normal-title normal-margin" style="line-height:32px">课程设置</p>
|
|
<p class="normal-title normal-margin" style="line-height:32px">课程设置</p>
|
|
|
<el-row :gutter="20">
|
|
<el-row :gutter="20">
|
|
|
- <el-form :model="form" size="small" status-icon label-position="left" label-width="100px" class="demo-ruleForm">
|
|
|
|
|
|
|
+ <el-form :model="form" :rules="rules" ref="form" size="small" status-icon label-position="left" label-width="100px" class="demo-ruleForm">
|
|
|
<el-col :span="24">
|
|
<el-col :span="24">
|
|
|
- <el-form-item label="标题">
|
|
|
|
|
|
|
+ <el-form-item label="标题" prop="title">
|
|
|
<el-input v-model="form.title" placeholder="请输入标题"></el-input>
|
|
<el-input v-model="form.title" placeholder="请输入标题"></el-input>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="开始时间">
|
|
|
|
|
|
|
+ <el-form-item label="开始时间" prop="begdate">
|
|
|
<el-date-picker
|
|
<el-date-picker
|
|
|
style="width:100%"
|
|
style="width:100%"
|
|
|
v-model="form.begdate"
|
|
v-model="form.begdate"
|
|
@@ -28,7 +28,7 @@
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="下架时间">
|
|
|
|
|
|
|
+ <el-form-item label="下架时间" prop="enddate">
|
|
|
<el-date-picker
|
|
<el-date-picker
|
|
|
style="width:100%"
|
|
style="width:100%"
|
|
|
v-model="form.enddate"
|
|
v-model="form.enddate"
|
|
@@ -39,14 +39,14 @@
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="一级分类">
|
|
|
|
|
|
|
+ <el-form-item label="一级分类" prop="sat_courseware_classid_1">
|
|
|
<el-select style="width:100%;margin-right:16px" size="small" v-model="form.sat_courseware_classid_1" clearable>
|
|
<el-select style="width:100%;margin-right:16px" size="small" v-model="form.sat_courseware_classid_1" clearable>
|
|
|
<el-option v-for="item in options1" :key="item.index" :value="item.sat_courseware_classid" :label="item.classname" @click.native="handelSelectClick(item)"></el-option>
|
|
<el-option v-for="item in options1" :key="item.index" :value="item.sat_courseware_classid" :label="item.classname" @click.native="handelSelectClick(item)"></el-option>
|
|
|
</el-select>
|
|
</el-select>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="二级分类">
|
|
|
|
|
|
|
+ <el-form-item label="二级分类" prop="sat_courseware_classid_2">
|
|
|
<el-select style="width:100%;margin-right:16px" size="small" v-model="form.sat_courseware_classid_2" clearable>
|
|
<el-select style="width:100%;margin-right:16px" size="small" v-model="form.sat_courseware_classid_2" clearable>
|
|
|
<el-option v-for="item in options2" :key="item.index" :value="item.sat_courseware_classid" :label="item.classname"></el-option>
|
|
<el-option v-for="item in options2" :key="item.index" :value="item.sat_courseware_classid" :label="item.classname"></el-option>
|
|
|
</el-select>
|
|
</el-select>
|
|
@@ -58,7 +58,7 @@
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="24">
|
|
<el-col :span="24">
|
|
|
- <el-form-item label="封面">
|
|
|
|
|
|
|
+ <el-form-item label="封面" prop="cover">
|
|
|
<previewImage v-if="form.cover" style="width:386px" :image="image" :deletebtn="true" @onSuccess="clearCover"></previewImage>
|
|
<previewImage v-if="form.cover" style="width:386px" :image="image" :deletebtn="true" @onSuccess="clearCover"></previewImage>
|
|
|
<upload v-else btntype="limage" :folderid="folderid" accept=".JPG,.PNG" :bindData="{ownertable:'SAT_COURSEWARE',ownerid:form.sat_coursewareid,usetype:'cover'}" @onSuccess="onSubmit"></upload>
|
|
<upload v-else btntype="limage" :folderid="folderid" accept=".JPG,.PNG" :bindData="{ownertable:'SAT_COURSEWARE',ownerid:form.sat_coursewareid,usetype:'cover'}" @onSuccess="onSubmit"></upload>
|
|
|
<p class="info">注:建议上传图片大小212x118像素,大小不超过2M,格式为JPG/PNG</p>
|
|
<p class="info">注:建议上传图片大小212x118像素,大小不超过2M,格式为JPG/PNG</p>
|
|
@@ -75,7 +75,7 @@
|
|
|
</div>
|
|
</div>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
<el-col :span="12">
|
|
|
- <scopeOfauth></scopeOfauth>
|
|
|
|
|
|
|
+ <scopeOfauth @onChecked="onChecked"></scopeOfauth>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
</el-row>
|
|
</el-row>
|
|
|
</div>
|
|
</div>
|
|
@@ -96,22 +96,47 @@ export default {
|
|
|
},
|
|
},
|
|
|
data () {
|
|
data () {
|
|
|
return {
|
|
return {
|
|
|
|
|
+ rules:{
|
|
|
|
|
+ title: [
|
|
|
|
|
+ { required: true, message: '请输入课程名称', trigger: 'blur' },
|
|
|
|
|
+ ],
|
|
|
|
|
+ begdate: [
|
|
|
|
|
+ { required: true, message: '请选择开始日期', trigger: 'change' }
|
|
|
|
|
+ ],
|
|
|
|
|
+ enddate: [
|
|
|
|
|
+ { required: true, message: '请选择下架时间', trigger: 'change' }
|
|
|
|
|
+ ],
|
|
|
|
|
+ sat_courseware_classid_1: [
|
|
|
|
|
+ { required: true, message: '请选择一级分类', trigger: 'change' }
|
|
|
|
|
+ ],
|
|
|
|
|
+ sat_courseware_classid_2: [
|
|
|
|
|
+ { required: true, message: '请选择二级分类', trigger: 'change' }
|
|
|
|
|
+ ],
|
|
|
|
|
+ cover:[
|
|
|
|
|
+ { required: true, message: '请上传封面', trigger: 'blur' },
|
|
|
|
|
+ ],
|
|
|
|
|
+ },
|
|
|
options1:[],
|
|
options1:[],
|
|
|
options2:[],
|
|
options2:[],
|
|
|
- folderid:JSON.parse(sessionStorage.getItem('folderid')).appfolderid,
|
|
|
|
|
form:{},
|
|
form:{},
|
|
|
image:{},
|
|
image:{},
|
|
|
|
|
+ authData:{},
|
|
|
|
|
+ folderid:JSON.parse(sessionStorage.getItem('folderid')).appfolderid,
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
methods:{
|
|
methods:{
|
|
|
- async onSubmit () {
|
|
|
|
|
|
|
+ onSubmit () {
|
|
|
this.form.sat_courseware_classid = this.form.sat_courseware_classid_2
|
|
this.form.sat_courseware_classid = this.form.sat_courseware_classid_2
|
|
|
- const res = await this.$api.requested({
|
|
|
|
|
- "classname": "webmanage.saletool.courseware.courseware",
|
|
|
|
|
- "method": "insertOrUpdate",
|
|
|
|
|
- "content": this.form
|
|
|
|
|
- })
|
|
|
|
|
- this.selectDetail()
|
|
|
|
|
|
|
+ this.$refs['form'].validate(async (valid) => {
|
|
|
|
|
+ if (!valid) return false;
|
|
|
|
|
+ const res = await this.$api.requested({
|
|
|
|
|
+ "classname": "webmanage.saletool.courseware.courseware",
|
|
|
|
|
+ "method": "insertOrUpdate",
|
|
|
|
|
+ "content": this.form
|
|
|
|
|
+ })
|
|
|
|
|
+ this.selectDetail()
|
|
|
|
|
+ this.insertCoursewareauth()
|
|
|
|
|
+ });
|
|
|
},
|
|
},
|
|
|
async selectDetail () {
|
|
async selectDetail () {
|
|
|
const res = await this.$api.requested({
|
|
const res = await this.$api.requested({
|
|
@@ -156,9 +181,27 @@ export default {
|
|
|
})
|
|
})
|
|
|
res.data[0]?this.image = res.data[0]:this.image = {url:''}
|
|
res.data[0]?this.image = res.data[0]:this.image = {url:''}
|
|
|
},
|
|
},
|
|
|
|
|
+ // 删除封面
|
|
|
clearCover () {
|
|
clearCover () {
|
|
|
this.image = {}
|
|
this.image = {}
|
|
|
},
|
|
},
|
|
|
|
|
+
|
|
|
|
|
+ // 获取保存授权范围数据
|
|
|
|
|
+ onChecked (param) {
|
|
|
|
|
+ this.authData = param
|
|
|
|
|
+ },
|
|
|
|
|
+ // 新增授权范围
|
|
|
|
|
+ async insertCoursewareauth () {
|
|
|
|
|
+ const res = await this.$api.requested({
|
|
|
|
|
+ "classname": "webmanage.saletool.courseware.coursewareauth",
|
|
|
|
|
+ "method": "insert",
|
|
|
|
|
+ "content": this.authData
|
|
|
|
|
+ })
|
|
|
|
|
+ this.tool.showMessage(res)
|
|
|
|
|
+ },
|
|
|
|
|
+ },
|
|
|
|
|
+ created () {
|
|
|
|
|
+ this.tool.checkAuth(this.$route.name,'data_analysis')?'':this.$router.go(-1)
|
|
|
},
|
|
},
|
|
|
mounted () {
|
|
mounted () {
|
|
|
this.coursewareclass()
|
|
this.coursewareclass()
|