lion 2 years ago
parent 8f20ea83ad
commit 6cd2da3c98

@ -74,7 +74,7 @@ export default {
type: 'info'
}, {
id: 1,
value: '发布',
value: '直接发布',
type: ''
}],
course_date: [{

@ -15,7 +15,7 @@
<el-input v-model="select.course_name" placeholder="请输入课程名称"></el-input>
</div> -->
<div>
<el-select clearable v-model="select.courses_id" placeholder="请选择课程">
<el-select clearable v-model="select.course_id" placeholder="请选择课程">
<el-option
v-for="item in course_options"
:key="item.id"
@ -98,7 +98,7 @@
select: {
name: '',
course_name:'',
courses_id:'',
course_id:'',
page: 1,
page_size: 10,
},
@ -168,7 +168,7 @@
page_size: this.select.page_size,
name: this.select.name,
course_name:this.select.course_name,
courses_id: this.select.courses_id
course_id: this.select.course_id
})
this.list = res.list.data
this.total = res.list.total

@ -33,7 +33,7 @@
<template v-slot:image_id>
<el-table-column align='center' label="图片" width="100" header-align="center">
<template slot-scope="scope">
<el-image style="width: 60px; height: 60px" :src="scope.row.image.url" :preview-src-list="[scope.row.image.url]">
<el-image style="width: 70px; height: 40px" :src="scope.row.image.url" :preview-src-list="[scope.row.image.url]">
</el-image>
</template>
</el-table-column>
@ -48,7 +48,7 @@
</el-table-column>
</template>
<template v-slot:position>
<el-table-column align='center' label="显示位置" width="120" header-align="center">
<el-table-column align='center' label="显示位置" width="240" header-align="center">
<template slot-scope="scope">
<div v-for="item in position_options">
<div v-if="scope.row.position===item.id">{{item.value}}</div>
@ -96,7 +96,7 @@
value: '首页'
}, {
id: 2,
value: '列表'
value: '课程中心、我的课程、报名状态'
}
// , {
// id: 3,
@ -126,17 +126,17 @@
prop: 'position',
label: '显示位置',
align: 'center',
width: 120,
width: 240,
}, {
prop: 'jump_type',
label: '跳转类型',
align: 'center',
width: 120,
width: 180,
}, {
prop: 'jump_url',
label: '跳转链接',
align: 'left',
width: 180,
width: 220,
}, {
prop: 'sort',
label: '排序',

@ -14,7 +14,7 @@
</el-date-picker>
</div>
<div>
<el-select v-model="select.type" placeholder="请选择类别" clearable>
<el-select v-model="select.type" placeholder="请选择课程体系" clearable>
<el-option v-for="item in courseTypesList" :key="item.id" :label="item.name" :value="item.id">
</el-option>
</el-select>
@ -125,7 +125,7 @@
width: 180,
}, {
prop: 'type_detail.name',
label: '类别',
label: '课程体系',
align: 'center',
width: 180,
}, {

@ -41,7 +41,7 @@
<div class="txl">
<div>课程名称{{subjectObj.title}}</div>
<div>开课日期{{subjectObj.date}}</div>
<div>类别{{subjectObj.leibie}}</div>
<div>课程体系{{subjectObj.leibie}}</div>
</div>
<xy-table :list="list" :total="total" :showIndex="false" @pageIndexChange="pageIndexChange"
@pageSizeChange="pageSizeChange" :table-item="table_item" @selection-change="selectionChange">
@ -55,10 +55,10 @@
</el-table-column>
</template>
<template v-slot:btns>
<el-table-column align='center' fixed="right" label="操作" width="80" header-align="center">
<el-table-column align='center' fixed="right" label="操作" width="180" header-align="center">
<template slot-scope="scope">
<!-- -->
<el-button type="primary" size="small" v-if="scope.row.status===0"
<!-- v-if="scope.row.status===0" -->
<el-button type="primary" size="small"
@click="showDetail('check',scope.row)">审核</el-button>
<el-button type="primary" v-if="scope.row.status>0" size="small"
@click="showDetail('checkshow',scope.row)">查看</el-button>
@ -102,14 +102,17 @@
selectids:[],
list: [],
total: 0,
table_item: [{
table_item: [
{
type: 'selection',
width: 50,
fixed: 'left',
prop:'selection',
selectable:(row)=>{
return row.status===0
}
}, {
},
{
prop: 'user.username',
label: '姓名',
align: 'center',
@ -245,7 +248,9 @@
if (item.prop === 'status') {
_export['status_text'] = item.label
} else {
}else if(item.prop === 'selection') {
}else {
_export[item.prop] = item.label
}
})

@ -29,7 +29,7 @@
<div class="txl">
<div>课程名称{{subjectObj.title}}</div>
<div>开课日期{{subjectObj.date}}</div>
<div>类别{{subjectObj.leibie}}</div>
<div>课程体系{{subjectObj.leibie}}</div>
<div>班主任{{subjectObj.teacher}}</div>
</div>
<xy-table :list="list" :total="total" :table-item="table_item" @pageIndexChange="pageIndexChange"

@ -15,7 +15,7 @@
</el-date-picker>
</div>
<div>
<el-select v-model="select.type" placeholder="请选择类别" clearable>
<el-select v-model="select.type" placeholder="请选择课程体系" clearable>
<el-option v-for="item in courseTypesList" :key="item.id" :label="item.name" :value="item.id">
</el-option>
</el-select>
@ -120,7 +120,7 @@
width: 180,
}, {
prop: 'type_detail.name',
label: '类别',
label: '课程体系',
align: 'center',
width: 160,
}, {

@ -4,7 +4,7 @@
<div class="txl">
<div>课程名称{{subjectObj.name}}</div>
<div>开课日期{{subjectObj.start_date}}{{subjectObj.end_date}}</div>
<div>类别{{subjectObj.type_detail?subjectObj.type_detail.name:''}}</div>
<div>课程体系{{subjectObj.type_detail?subjectObj.type_detail.name:''}}</div>
</div>
<div class="txl">
<div>班主任{{subjectObj.teacher?subjectObj.teacher.name:''}}</div>

@ -14,6 +14,19 @@
</el-steps>
</div>
</div>
</template>
<template v-slot:type v-if="active===0">
<div class="xy-table-item">
<div class="xy-table-item-label" style="font-weight: bold">
<span style="color: red;font-weight: bold;padding-right: 4px;">*</span>课程体系
</div>
<div class="xy-table-item-content">
<el-select v-model="form.type" @change="changeType" placeholder="请选择体系" clearable style="width: 100%;">
<el-option v-for="item in courseTypesList" :key="item.id" :label="item.name" :value="item.id">
</el-option>
</el-select>
</div>
</div>
</template>
<template v-slot:name v-if="active===0">
<div class="xy-table-item">
@ -25,19 +38,7 @@
</div>
</div>
</template>
<template v-slot:type v-if="active===0">
<div class="xy-table-item">
<div class="xy-table-item-label" style="font-weight: bold">
<span style="color: red;font-weight: bold;padding-right: 4px;">*</span>课程类别
</div>
<div class="xy-table-item-content">
<el-select v-model="form.type" @change="changeType" placeholder="请选择类别" clearable style="width: 100%;">
<el-option v-for="item in courseTypesList" :key="item.id" :label="item.name" :value="item.id">
</el-option>
</el-select>
</div>
</div>
</template>
<template v-slot:dateRange v-if="active===0">
<div class="xy-table-item">
<div class="xy-table-item-label" style="font-weight: bold">
@ -116,12 +117,12 @@
<template v-slot:is_fee v-if="active===0">
<div class="xy-table-item">
<div class="xy-table-item-label" style="font-weight: bold">
<span style="color: red;font-weight: bold;padding-right: 4px;"></span>是否缴费
<span style="color: red;font-weight: bold;padding-right: 4px;"></span>课程类型
</div>
<div class="xy-table-item-content">
<el-radio-group style="width:100%" v-model="form.is_fee">
<el-radio :label="1"></el-radio>
<el-radio :label="0"></el-radio>
<el-radio :label="1">付费</el-radio>
<el-radio :label="0">公益</el-radio>
</el-radio-group>
</div>
</div>
@ -223,7 +224,7 @@
<Button ghost type="primary" v-if="active===1" @click="active=0"></Button>
<!-- <Button ghost type="primary" v-if="active===0" @click="next"></Button> -->
<Button type="primary" ghost @click="checkSubmit" v-if="active===0"></Button>
<Button type="primary" @click="closeSubmit"></Button>
<Button type="primary" @click="closeSubmit"></Button>
</template>
@ -269,8 +270,8 @@
publicizeList: [],
form: {
step: '', //
name: '',
type: '',
name: '',
dateRange: '',
total: '',
sign_start_date: '',
@ -292,23 +293,23 @@
}],
type: [{
required: true,
message: '请选择课程类别'
message: '请选择课程体系'
}],
sign_start_date: [{
required: true,
message: '请选择报名开始日期'
}],
sign_end_date: [{
required: true,
message: '请选择报名截止日期'
}],
sign_end_date: [{
required: true,
message: '请选择报名截止日期'
}],
// image_id: [{
// required: true,
// message: ''
// }],
qun_image_id: [{
required: true,
message: '请上传群聊二维码'
// }],
qun_image_id: [{
required: true,
message: '请上传群聊二维码'
}],
// content: [{
// required: true,
@ -451,15 +452,15 @@
getDetail() {
show({
id: this.id,
show_relation: ['image','qun_image']
show_relation: ['image', 'qun_image']
}).then(res => {
this.form = this.base.requestToForm(res, this.form)
if (res.image) {
this.imgList.push(res.image)
}
if (res.qun_image) {
this.qunList.push(res.qun_image)
}
}
if (res.qun_image) {
this.qunList.push(res.qun_image)
}
this.publicizeList = res.publicize
this.form.dateRange = res.start_date ? [res.start_date, res.end_date] : ''
@ -510,15 +511,15 @@
} else {
this.id = ''
this.showTinymce = false
this.imgList = []
this.imgList = []
this.qunList = []
this.publicizeList = []
this.active = 0
this.formList = []
this.form = {
step: '', //
name: '',
type: '',
name: '',
dateRange: '',
total: '',
sign_start_date: '',

@ -1,14 +1,14 @@
<template>
<div>
<xy-dialog ref="dialog" :width="70" :is-show.sync="isShow" :type="'form'" :title="type === 'add' ? '新增课程类别' : '编辑课程类别'"
<xy-dialog ref="dialog" :width="70" :is-show.sync="isShow" :type="'form'" :title="type === 'add' ? '新增课程体系' : '编辑课程体系'"
:form="form" :rules='rules' @submit="submit">
<template v-slot:name>
<div class="xy-table-item">
<div class="xy-table-item-label" style="font-weight: bold">
<span style="color: red;font-weight: bold;padding-right: 4px;">*</span>课程类别
<span style="color: red;font-weight: bold;padding-right: 4px;">*</span>课程体系
</div>
<div class="xy-table-item-content">
<el-input v-model="form.name" placeholder="请输入课程类别" clearable style="width: 100%;"></el-input>
<el-input v-model="form.name" placeholder="请输入课程体系" clearable style="width: 100%;"></el-input>
</div>
</div>
</template>

@ -4,7 +4,9 @@
<template v-slot:title>
<div style="display: flex;align-items: center;justify-content: space-between;font-size: 26px;">
<div>创建报名表单</div>
<div style="cursor: pointer;" @click="dialogVisible = false">X</div>
<div style="cursor: pointer;">
<Button type="primary" @click="dialogVisible = false">完成并关闭</Button>
</div>
</div>
</template>

@ -12,7 +12,7 @@
<div>
<div>课程名称{{row.name}}</div>
<div>开课日期{{row.start_date ? row.start_date + '至' + row.end_date : ''}}</div>
<div>类别{{row.type_value}}</div>
<div>课程体系{{row.type_value}}</div>
</div>
</div>

@ -17,7 +17,7 @@
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">
课程类别
课程体系
</template>
{{showform.type_detail?showform.type_detail.name:''}}
</el-descriptions-item>

@ -15,7 +15,7 @@
</el-date-picker>
</div>
<div>
<el-select v-model="select.type" placeholder="请选择类别" clearable>
<el-select v-model="select.type" placeholder="请选择课程体系" clearable>
<el-option v-for="item in courseTypesList" :key="item.id" :label="item.name" :value="item.id">
</el-option>
</el-select>
@ -125,7 +125,7 @@
width: 120,
}, {
prop: 'type_detail.name',
label: '类别',
label: '课程体系',
align: 'center',
width: 180,
}, {

@ -15,7 +15,7 @@
</el-date-picker>
</div>
<div>
<el-select v-model="select.type" placeholder="请选择类别" clearable>
<el-select v-model="select.type" placeholder="请选择课程体系" clearable>
<el-option v-for="item in courseTypesList" :key="item.id" :label="item.name" :value="item.id">
</el-option>
</el-select>
@ -53,7 +53,7 @@
<el-table-column align='center' label="报名日期" width="200" header-align="center">
<template slot-scope="scope">
{{scope.row.sign_start_date?scope.row.sign_start_date:''}}
{{scope.row.sign_end_date?"至"+scope.row.end_date:'起'}}
{{scope.row.sign_end_date?"至"+scope.row.sign_end_date:'起'}}
</template>
</el-table-column>
</template>
@ -145,7 +145,7 @@
width: 120,
}, {
prop: 'type_detail.name',
label: '类别',
label: '课程体系',
align: 'center',
width: 180,
}, {

@ -43,7 +43,7 @@
<div class="txl">
<div>课程名称{{subjectObj.title}}</div>
<div>开课日期{{subjectObj.date}}</div>
<div>类别{{subjectObj.leibie}}</div>
<div>课程体系{{subjectObj.leibie}}</div>
</div>
<xy-table :list="list" :total="total" :showIndex="url_type==='pay'?false:true"
:showIndexFixed="url_type==='pay'?null:'left'" @pageIndexChange="pageIndexChange"
@ -163,7 +163,8 @@
}, {
prop: 'user.company_name',
label: '公司名称',
align: 'left',
align: 'left',
width: 240,
}, {
prop: 'user.company_position',
label: '职务',

@ -81,7 +81,7 @@
<div class="txl">
<div>课程名称{{subjectObj.title}}</div>
<div>开课日期{{subjectObj.date}}</div>
<div>类别{{subjectObj.leibie}}</div>
<div>课程体系{{subjectObj.leibie}}</div>
</div>
<xy-table :list="list" :total="total" :showIndexFixed="'left'" @pageIndexChange="pageIndexChange"
@pageSizeChange="pageSizeChange" :table-item="table_item">

@ -28,10 +28,10 @@
<template v-slot:leibie>
<div class="xy-table-item">
<div class="xy-table-item-label" style="font-weight: bold">
<span style="color: red;font-weight: bold;padding-right: 4px;">*</span>类别
<span style="color: red;font-weight: bold;padding-right: 4px;">*</span>课程体系
</div>
<div class="xy-table-item-content">
<el-select v-model="form.leibie" placeholder="请选择类别" clearable style="width: 100%;">
<el-select v-model="form.leibie" placeholder="请选择课程体系" clearable style="width: 100%;">
<el-option v-for="item in leibie_options" :key="item.id" :label="item.value" :value="item.id">
</el-option>
</el-select>
@ -138,7 +138,7 @@
}],
leibie: [{
required: true,
message: '请选择类别'
message: '请选择课程体系'
}],
image_id: [{
required: true,

@ -10,7 +10,7 @@
<el-input v-model="select.biaoti" placeholder="请输入标题"></el-input>
</div>
<div>
<el-select v-model="select.leibie" placeholder="请选择类别" clearable>
<el-select v-model="select.leibie" placeholder="请选择课程体系" clearable>
<el-option v-for="item in leibie_options" :key="item.id" :label="item.value" :value="item.id">
</el-option>
</el-select>
@ -95,7 +95,7 @@
align: 'left'
}, {
prop: 'leibie',
label: '类别',
label: '课程体系',
align: 'center',
width: 160,
customFn: (row) => {

@ -10,7 +10,7 @@
<div class="courseName" v-if="type=='check' || type=='checkshow' ">
<div>课程名称{{subjectObj.title}}</div>
<div>开课日期{{subjectObj.date}}</div>
<div>类别{{subjectObj.leibie}}</div>
<div>课程体系{{subjectObj.leibie}}</div>
</div>
<div>
<lx-header icon="" text="个人信息" style="margin-bottom: 10px; border: 0px; margin-top: 15px">
@ -362,6 +362,10 @@
this.sign_info = []
}
this.form.status = res.status?res.status:0
this.form.score = res.score?res.score:''
this.form.reason = res.reason?res.reason:''
this.fileList = res.files?res.files:[]
console.log("this.sign_info",this.sign_info)
})
}

@ -178,7 +178,8 @@
is_vip: '',
is_schoolmate: '',
courses_end_date: '',
education:'',
education:'',
type:'',
page: 1,
page_size: 10,
},
@ -282,7 +283,8 @@
is_vip: this.select.is_vip,
courses_end_date: this.select.courses_end_date,
is_schoolmate: this.select.is_schoolmate,
education:this.select.education
education:this.select.education,
type:this.select.type
})
this.list = res.list.data
this.total = res.list.total

@ -10,9 +10,9 @@
<div>
<div>
<el-input v-model="select.name" placeholder="请输入姓名"></el-input>
</div>
<div>
<el-input v-model="select.mobile" placeholder="请输入手机号"></el-input>
</div>
<div>
<el-input v-model="select.mobile" placeholder="请输入手机号"></el-input>
</div>
<div>
<el-input v-model="select.company_name" placeholder="请输入公司名称"></el-input>
@ -83,10 +83,10 @@
</div>
</div>
<div>
<div>
<div class="txl">统计本年度学员共计{{year_total}}累计学员{{alltotal}}</div>
<xy-table :list="list" @pageIndexChange="pageIndexChange" @pageSizeChange="pageSizeChange"
:total="total" :table-item="table_item">
<xy-table :list="list" @pageIndexChange="pageIndexChange" @pageSizeChange="pageSizeChange" :total="total"
:table-item="table_item">
<template v-slot:course_list>
<el-table-column align='left' label="课程" width="320" header-align="center">
@ -96,13 +96,13 @@
</div>
</template>
</el-table-column>
</template>
<template v-slot:mobile>
<el-table-column align='center' label="联系方式" width="120" header-align="center">
<template slot-scope="scope">
{{base.maskPhoneNumber(scope.row.mobile)}}
</template>
</el-table-column>
</template>
<template v-slot:mobile>
<el-table-column align='center' label="联系方式" width="120" header-align="center">
<template slot-scope="scope">
{{base.maskPhoneNumber(scope.row.mobile)}}
</template>
</el-table-column>
</template>
<template v-slot:is_schoolmate>
<el-table-column align='center' label="是否校友库学员" width="120" header-align="center">
@ -137,9 +137,9 @@
<script>
import studentDetail from './components/detail.vue';
import myMixins from "@/mixin/selectMixin.js";
import formMixin from "@/mixin/formMixin.js";
import {
download
import formMixin from "@/mixin/formMixin.js";
import {
download
} from "@/utils/downloadRequest";
import {
indexStudy
@ -153,8 +153,8 @@
return {
path: '',
select: {
name: '',
mobile:'',
name: '',
mobile: '',
course_name: '',
company_name: '',
company_position: '',
@ -162,14 +162,15 @@
company_type: '',
company_industry: '',
is_vip: '',
courses_end_date: '',
education:'',
courses_end_date: '',
education: '',
type: '',
page: 1,
page_size: 10,
},
list: [],
year_total:0,
alltotal:0,
year_total: 0,
alltotal: 0,
total: 0,
table_item: [{
prop: 'course_list',
@ -245,16 +246,17 @@
const res = await indexStudy({
page: this.select.page,
page_size: this.select.page_size,
name: this.select.name,
mobile:this.select.mobile,
name: this.select.name,
mobile: this.select.mobile,
company_name: this.select.company_name,
company_position: this.select.company_position,
company_area: this.select.company_area,
company_type: this.select.company_type,
company_industry: this.select.company_industry,
is_vip: this.select.is_vip,
courses_end_date: this.select.courses_end_date,
education:this.select.education,
courses_end_date: this.select.courses_end_date,
education: this.select.education,
type: this.select.type
})
this.list = res.list.data
this.total = res.list.total
@ -272,48 +274,50 @@
this.$refs.studentDetail.id = id
this.$refs.studentDetail.type = type
this.$refs.studentDetail.isShow = true
},
exportExcel() {
let _export = {}
this.table_item.map(item => {
_export[item.prop] = item.label
})
download(
'/api/admin/users/study',
'get', {
export_fields: _export,
name: this.select.name,
mobile:this.select.mobile,
company_name: this.select.company_name,
company_position: this.select.company_position,
company_area: this.select.company_area,
company_type: this.select.company_type,
company_industry: this.select.company_industry,
is_vip: this.select.is_vip,
courses_end_date: this.select.courses_end_date,
education:this.select.education,
is_export: 1,
page: 1,
page_size: 999
},
`学员信息.xlsx`)
},
exportExcel() {
let _export = {}
this.table_item.map(item => {
_export[item.prop] = item.label
})
download(
'/api/admin/users/study',
'get', {
export_fields: _export,
name: this.select.name,
mobile: this.select.mobile,
company_name: this.select.company_name,
company_position: this.select.company_position,
company_area: this.select.company_area,
company_type: this.select.company_type,
company_industry: this.select.company_industry,
is_vip: this.select.is_vip,
courses_end_date: this.select.courses_end_date,
education: this.select.education,
type: this.select.type,
is_export: 1,
page: 1,
page_size: 999
},
`学员信息.xlsx`)
}
}
}
</script>
<style lang="scss" scoped>
.txl {
display: flex;
align-items: center;
margin-bottom: 10px;
font-size: 18px;
&>div {
margin-right: 15px;
}
<style lang="scss" scoped>
.txl {
display: flex;
align-items: center;
margin-bottom: 10px;
font-size: 18px;
&>div {
margin-right: 15px;
}
}
.searchwrap {
display: flex;
align-items: center;
@ -326,11 +330,12 @@
flex-wrap: wrap;
&>div {
margin-right: 10px;
margin-bottom: 10px;
width: 150px;
&:last-child {
width:auto
margin-right: 10px;
margin-bottom: 10px;
width: 150px;
&:last-child {
width: auto
}
}

Loading…
Cancel
Save