Commit a7a0a6ec authored by 王's avatar

bug fix

parent 7ab62374
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
</el-cascader> </el-cascader>
</el-form-item> </el-form-item>
<el-form-item label="老师"> <el-form-item label="老师">
<el-select v-model="teacher_id" placeholder="请选择"> <el-select v-model="teacher_id" placeholder="请选择" clearable>
<el-option <el-option
v-for="(data,index) in teacherList" v-for="(data,index) in teacherList"
:key="index" :key="index"
......
...@@ -16,11 +16,13 @@ ...@@ -16,11 +16,13 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="3"> <el-col :span="4">
<el-button style="margin-left: 16px;" type="primary" plain @click="getUser">搜索</el-button> <el-form-item>
<el-button type="primary" plain @click="getUser">搜索</el-button>
</el-form-item>
</el-col> </el-col>
<el-col :span="5" :offset="8"> <el-col :span="4" :offset="8">
<el-button style="float: right" type="success" plain @click="add">新增课程</el-button> <el-button type="success" plain @click="add">新增课程</el-button>
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
......
...@@ -5,16 +5,33 @@ ...@@ -5,16 +5,33 @@
<el-form-item label="期数标题"> <el-form-item label="期数标题">
<el-input v-model="title" placeholder="请输入内容" clearable></el-input> <el-input v-model="title" placeholder="请输入内容" clearable></el-input>
</el-form-item> </el-form-item>
<el-form-item label="商品ID"> <el-form-item label="商品名称">
<el-input v-model="goodsId" placeholder="请输入内容" clearable></el-input> <el-select v-model="goodsId" placeholder="请选择" clearable>
<el-option
v-for="(data,index) in goodList"
:key="index"
:label="data | filterGoods"
:value="data.id">
</el-option>
</el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item label="课程名称">
<el-button @click="onChoose" type="success">选择商品</el-button> <el-select v-model="lessonId" placeholder="请选择" clearable>
<el-option
v-for="(data,index) in lessonList"
:key="index"
:label="data.title"
:value="data.id">
</el-option>
</el-select>
</el-form-item> </el-form-item>
<el-form-item> <!--<el-form-item>-->
<!--<el-button @click="onChoose" type="success">选择商品</el-button>-->
<!--</el-form-item>-->
<!--<el-form-item>-->
<el-button @click="onSearch" type="primary">查询</el-button> <el-button @click="onSearch" type="primary">查询</el-button>
</el-form-item> </el-form-item>
<el-form-item style="float: right"> <el-form-item style="float: left;margin-left: 20px;">
<el-button @click="onAdd" type="primary">添加期数</el-button> <el-button @click="onAdd" type="primary">添加期数</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
...@@ -22,46 +39,6 @@ ...@@ -22,46 +39,6 @@
<el-table <el-table
:data="periodList" :data="periodList"
style="width: 100%"> style="width: 100%">
<el-table-column type="expand">
<template slot-scope="props">
<el-form label-position="left" class="demo-table-expand">
<el-row>
<el-col :span="8">
<el-form-item label="关联的商品ID:">
<span>{{ props.row.goods_id }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="已看课包数:">
<span>{{ props.row.has_watch_num }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="已续看课包数:">
<span>{{ props.row.has_duration_num }}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="当前看的课包ID:">
<span>{{ props.row.current_category_id }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="周几不上课:">
<span>{{ props.row.rest_week_day | dayFilter }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="开始的主题/歌ID:">
<span>{{ props.row.start_num }}</span>
</el-form-item>
</el-col>
</el-row>
</el-form>
</template>
</el-table-column>
<el-table-column <el-table-column
prop="id" prop="id"
label="期数ID"> label="期数ID">
...@@ -71,12 +48,26 @@ ...@@ -71,12 +48,26 @@
label="期数标题"> label="期数标题">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="course_id" prop="goods_name"
label="课程ID"> label="商品名称">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="start_at" label="商品价格">
label="期数开始时间"> <template slot-scope="scope">
{{scope.row.goods_price / 100 }}
</template>
</el-table-column>
<el-table-column
prop="course_title"
label="课程名称">
</el-table-column>
<el-table-column
prop="start_name"
label="开始主题/歌">
</el-table-column>
<el-table-column
prop="current_category_name"
label="当前歌曲">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="watch_num" prop="watch_num"
...@@ -86,6 +77,24 @@ ...@@ -86,6 +77,24 @@
prop="duration_num" prop="duration_num"
label="续看课包数"> label="续看课包数">
</el-table-column> </el-table-column>
<el-table-column
prop="has_watch_num"
label="已看课包数">
</el-table-column>
<el-table-column
prop="has_duration_num"
label="已续看课包数">
</el-table-column>
<el-table-column
label="周几不上课">
<template slot-scope="scope">
{{scope.row.rest_week_day | dayFilter}}
</template>
</el-table-column>
<el-table-column
prop="start_at"
label="期数开始时间">
</el-table-column>
<el-table-column <el-table-column
label="操作" label="操作"
width="148"> width="148">
...@@ -100,7 +109,6 @@ ...@@ -100,7 +109,6 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
<page :nowPage="nowPage" :total="total"/> <page :nowPage="nowPage" :total="total"/>
<good-dialog v-if="dialogObj.show" :dialogObj="dialogObj" @reflash="getChooseGood"></good-dialog>
<new-dialog v-if="newDialog.show" :dialogObj="newDialog" @reflash="onSave"></new-dialog> <new-dialog v-if="newDialog.show" :dialogObj="newDialog" @reflash="onSave"></new-dialog>
</div> </div>
</template> </template>
...@@ -109,7 +117,7 @@ ...@@ -109,7 +117,7 @@
import goodDialog from './dialog' import goodDialog from './dialog'
import newDialog from './newDialog' import newDialog from './newDialog'
import page from '../framework/page' import page from '../framework/page'
import {getPeriodsApi,delPeriodApi} from "../../service/api"; import {getPeriodsApi,delPeriodApi,getGoodsListApi,getLessonApi} from "../../service/api";
import {WEEKDAY} from '../../util/wordbook'; import {WEEKDAY} from '../../util/wordbook';
export default { export default {
name: "index", name: "index",
...@@ -119,11 +127,8 @@ ...@@ -119,11 +127,8 @@
total: 0, total: 0,
title: '', title: '',
goodsId: null, goodsId: null,
lessonId: null,
periodList: [], periodList: [],
dialogObj:{
show:false,
title:'选择商品',
},
newDialog: { newDialog: {
form: { form: {
id: 0, id: 0,
...@@ -135,7 +140,9 @@ ...@@ -135,7 +140,9 @@
}, },
show: false, show: false,
title: '' title: ''
} },
goodList: [],
lessonList: []
} }
}, },
filters: { filters: {
...@@ -145,6 +152,9 @@ ...@@ -145,6 +152,9 @@
return WEEKDAY[day]; return WEEKDAY[day];
}) })
return list.join(',') return list.join(',')
},
filterGoods(val){
return val.name + '[' +val.current_price / 100 + '元]'
} }
}, },
components:{ components:{
...@@ -153,13 +163,6 @@ ...@@ -153,13 +163,6 @@
page page
}, },
methods: { methods: {
onChoose(){
this.dialogObj.show = true;
},
getChooseGood(val){
this.goodsId = val.id;
this.dialogObj.show = false;
},
onSearch(){ onSearch(){
let json={ let json={
} }
...@@ -169,6 +172,9 @@ ...@@ -169,6 +172,9 @@
if(this.goodsId){ if(this.goodsId){
json.goods_id = this.goodsId; json.goods_id = this.goodsId;
} }
if(this.lessonId){
json.course_id = this.lessonId;
}
getPeriodsApi(json).then(res=>{ getPeriodsApi(json).then(res=>{
this.periodList = res.list; this.periodList = res.list;
this.total = res.total this.total = res.total
...@@ -225,10 +231,30 @@ ...@@ -225,10 +231,30 @@
this.onSearch() this.onSearch()
}); });
}); });
},
getGoodsOption(){
let json = {
page: 1,
limit: 100
};
getGoodsListApi(json).then(res=>{
this.goodList = res.list;
})
},
getLessonOption(){
let json = {
page: 1,
limit: 100
};
getLessonApi(json).then(res=>{
this.lessonList = res.list;
})
} }
}, },
mounted(){ mounted(){
this.onSearch(); this.onSearch();
this.getGoodsOption();
this.getLessonOption();
} }
} }
</script> </script>
......
...@@ -10,13 +10,15 @@ ...@@ -10,13 +10,15 @@
<el-form ref="form" :model="form" label-width="120px" :rules="rules"> <el-form ref="form" :model="form" label-width="120px" :rules="rules">
<el-row> <el-row>
<el-col :span="10"> <el-col :span="10">
<el-form-item label="商品ID" prop="goods_id"> <el-form-item label="商品名称" prop="goods_id">
<el-input v-model="form.goods_id" placeholder="请输入内容" clearable></el-input> <el-select v-model="form.goods_id" placeholder="请选择" clearable @change="getLessonDetail">
</el-form-item> <el-option
</el-col> v-for="(data,index) in goodList"
<el-col :span="10"> :key="index"
<el-form-item> :label="data | filterGoods"
<el-button @click="onChoose" type="success">选择商品</el-button> :value="data.id">
</el-option>
</el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -39,10 +41,11 @@ ...@@ -39,10 +41,11 @@
format="yyyy-MM-dd" format="yyyy-MM-dd"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
type="date" type="date"
:picker-options="pickerOptions1"
placeholder="选择日期"> placeholder="选择日期">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="相关老师ID"> <el-form-item label="相关老师">
<el-select v-model="teacherList" multiple placeholder="请选择"> <el-select v-model="teacherList" multiple placeholder="请选择">
<el-option <el-option
v-for="item in teacherOptions" v-for="item in teacherOptions"
...@@ -69,7 +72,6 @@ ...@@ -69,7 +72,6 @@
</span> </span>
</div> </div>
</el-dialog> </el-dialog>
<good-dialog v-if="goodDialogObj.show" :dialogObj="goodDialogObj" @reflash="getChooseGood"></good-dialog>
</div> </div>
</template> </template>
...@@ -86,9 +88,10 @@ ...@@ -86,9 +88,10 @@
loading: false, loading: false,
form: {}, form: {},
teacherList: [], teacherList: [],
goodDialogObj:{ pickerOptions1: {
show:false, disabledDate(time) {
title:'选择商品', return !(time.getTime() > Date.now());
}
}, },
options: [ options: [
{ {
...@@ -121,6 +124,7 @@ ...@@ -121,6 +124,7 @@
} }
], ],
teacherOptions: [], teacherOptions: [],
goodList: [],
itemOptions: [], itemOptions: [],
rules:{ rules:{
title:[ title:[
...@@ -159,21 +163,12 @@ ...@@ -159,21 +163,12 @@
}, },
goodsStatus(value){ goodsStatus(value){
return GOODSSTATUS[value] return GOODSSTATUS[value]
},
filterGoods(val){
return val.name + '[' +val.current_price / 100 + '元]'
} }
}, },
methods:{ methods:{
initPage(){
getGoodsListApi().then(res=>{
this.goodList = res.list;
this.total = res.total
});
},
handleCurrentChange(val){
this.currentRow = val;
},
onConfirm(){
this.$emit("reflash",this.currentRow);
},
sub(){ sub(){
if (!this.teacherList) { if (!this.teacherList) {
this.$message.error('请选择老师ID'); this.$message.error('请选择老师ID');
...@@ -209,14 +204,11 @@ ...@@ -209,14 +204,11 @@
} }
}); });
}, },
onChoose(){ // getChooseGood(val){
this.goodDialogObj.show = true; // this.form.goods_id = val.id;
}, // this.getLessonDetail(val.course_id);
getChooseGood(val){ // this.goodDialogObj.show = false;
this.form.goods_id = val.id; // },
this.getLessonDetail(val.course_id);
this.goodDialogObj.show = false;
},
getTeachers(){ getTeachers(){
getTeacherListApi().then((res)=>{ getTeacherListApi().then((res)=>{
this.teacherOptions = res.list; this.teacherOptions = res.list;
...@@ -226,11 +218,21 @@ ...@@ -226,11 +218,21 @@
getLessonDetailApi(id,{}).then((res) => { getLessonDetailApi(id,{}).then((res) => {
this.itemOptions = res.detail[res.type] this.itemOptions = res.detail[res.type]
}) })
},
getGoodsOption(){
let json = {
page: 1,
limit: 100
};
getGoodsListApi(json).then(res=>{
this.goodList = res.list;
})
} }
}, },
mounted(){ mounted(){
// this.initPage() // this.initPage()
this.getTeachers(); this.getTeachers();
this.getGoodsOption();
this.form = this.dialogObj.form; this.form = this.dialogObj.form;
this.teacherList = this.dialogObj.form.teacher_ids; this.teacherList = this.dialogObj.form.teacher_ids;
} }
......
...@@ -45,6 +45,9 @@ ...@@ -45,6 +45,9 @@
<el-form-item label="标题"> <el-form-item label="标题">
<el-input v-model="form.title"></el-input> <el-input v-model="form.title"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="单词量">
<el-input-number v-model="form.words_num"></el-input-number>
</el-form-item>
<el-form-item label="封面"> <el-form-item label="封面">
<el-upload <el-upload
class="upload-demo" class="upload-demo"
...@@ -151,6 +154,7 @@ ...@@ -151,6 +154,7 @@
title:'', title:'',
content:'', content:'',
cover:'', cover:'',
words_num: 0
}; };
break; break;
case 1: case 1:
...@@ -159,10 +163,10 @@ ...@@ -159,10 +163,10 @@
category_id:res.category_id, category_id:res.category_id,
content:res.content, content:res.content,
cover:res.cover, cover:res.cover,
title:res.title title:res.title,
words_num: res.words_num
} }
this.selectedMould = JSON.parse(res.content) this.selectedMould = JSON.parse(res.content)
console.log(this.selectedMould)
}) })
} }
......
...@@ -130,12 +130,12 @@ ...@@ -130,12 +130,12 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="form.goods_type === 1 ? '原价(元)' : '拼团价格(元)'"> <el-form-item :label="form.goods_type === 1 ? '原价(元)' : '单买价格(元)'">
<el-input-number v-model="form.original_price" label="原价"></el-input-number> <el-input-number v-model="form.original_price" label="原价"></el-input-number>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="form.goods_type === 1 ? '现价(元)' : '单买价格(元)'"> <el-form-item :label="form.goods_type === 1 ? '现价(元)' : '拼团价格(元)'">
<el-input-number v-model="form.current_price" label="现价"></el-input-number> <el-input-number v-model="form.current_price" label="现价"></el-input-number>
</el-form-item> </el-form-item>
</el-col> </el-col>
......
...@@ -42,6 +42,10 @@ ...@@ -42,6 +42,10 @@
{{scope.row.current_price/100}} {{scope.row.current_price/100}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column
prop="course_title"
label="课程名称">
</el-table-column>
<el-table-column <el-table-column
label="课程类别"> label="课程类别">
<template slot-scope="scope"> <template slot-scope="scope">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment