Commit a203cd99 authored by zhengke's avatar zhengke
parents a10830ac d42d4dc7
<template>
<q-dialog
v-model="persistent"
persistent
content-class="bg-grey-1"
transition-show="scale"
transition-hide="scale"
>
<q-dialog v-model="persistent" persistent content-class="bg-grey-1" transition-show="scale" transition-hide="scale">
<q-card style="width: 800px;max-width:900px;">
<q-card-section>
<div class="text-h6">
......@@ -15,290 +9,130 @@
<q-card-section class="q-pt-none scroll" style="max-height: 70vh">
<div class="text-caption q-mb-lg q-px-md text-grey-6">基本设置</div>
<div class="row wrap">
<q-input
filled
stack-label
:dense="false"
v-model="objOption.CourseName"
ref="CourseName"
class="col-6 q-pr-lg q-pb-lg"
label="课程名称"
:rules="[val => !!val || '请填写课程名称']"
/>
<q-input filled stack-label :dense="false" v-model="objOption.CourseName" ref="CourseName"
class="col-6 q-pr-lg q-pb-lg" label="课程名称" :rules="[val => !!val || '请填写课程名称']" />
<q-select
filled
stack-label
option-value="TId"
option-label="TeacherName"
v-model="chooseTeacher"
ref="Teacher_Id"
:options="TeacherList"
label="教师团队"
:dense="false"
class="col-6 q-pr-lg q-pb-lg"
emit-value
map-options
multiple
/>
<q-select filled stack-label option-value="TId" option-label="TeacherName" v-model="chooseTeacher"
ref="Teacher_Id" :options="TeacherList" label="教师团队" :dense="false" class="col-6 q-pr-lg q-pb-lg" emit-value
map-options multiple />
</div>
<div class="row wrap">
<div class="col-6 q-pb-lg q-pr-lg">
<q-uploader
:style="{ backgroundImage: 'url(' + objOption.CoverImg + ')' }"
style="width:auto;height:139px"
flat
hide-upload-btn
max-files="1"
label="课程封面"
accept=".jpg, image/*"
:factory="uploadFile"
auto-upload
>
<q-uploader :style="{ backgroundImage: 'url(' + objOption.CoverImg + ')' }" style="width:auto;height:139px"
flat hide-upload-btn max-files="1" label="课程封面" accept=".jpg, image/*" :factory="uploadFile" auto-upload>
</q-uploader>
</div>
<div class="col-6 q-pr-lg q-pb-lg">
<q-input
v-model="objOption.CourseFeature"
filled
type="textarea"
placeholder="课程特色"
/>
<q-input v-model="objOption.CourseFeature" filled type="textarea" placeholder="课程特色" />
</div>
</div>
<div
class="text-caption q-mb-lg q-px-md text-grey-6"
v-if="isShowPrice == 1"
>
<div class="text-caption q-mb-lg q-px-md text-grey-6" v-if="isShowPrice == 1">
价格设置
<q-toggle
style="float:right;"
size="md"
left-label
label="阶梯定价"
color="primary"
:false-value="0"
:true-value="1"
v-model="objOption.IsOpenStepPrice"
/>
<q-toggle style="float:right;" size="md" left-label label="阶梯定价" color="primary" :false-value="0"
:true-value="1" v-model="objOption.IsOpenStepPrice" />
</div>
<div class="row wrap" v-if="isShowPrice == 1">
<div class="col-6">
<q-input
filled
stack-label
:dense="false"
v-model="objOption.OriginalPrice"
ref="OriginalPrice"
class="col-6 q-pr-lg q-pb-lg"
label="原价"
@keyup.native="checkPrice(objOption, 'OriginalPrice')"
:rules="[val => !!val || '请填写原价']"
/>
<q-input filled stack-label :dense="false" v-model="objOption.OriginalPrice" ref="OriginalPrice"
class="col-6 q-pr-lg q-pb-lg" label="原价" @keyup.native="checkPrice(objOption, 'OriginalPrice')"
:rules="[val => !!val || '请填写原价']" />
</div>
<div class="col-6">
<q-input
filled
stack-label
:dense="false"
v-model="objOption.SellPrice"
ref="SellPrice"
class="col-6 q-pr-lg q-pb-lg"
label="卖价"
@keyup.native="checkPrice(objOption, 'SellPrice')"
:rules="[val => !!val || '请填写卖价']"
/>
<q-input filled stack-label :dense="false" v-model="objOption.SellPrice" ref="SellPrice"
class="col-6 q-pr-lg q-pb-lg" label="卖价" @keyup.native="checkPrice(objOption, 'SellPrice')"
:rules="[val => !!val || '请填写卖价']" />
</div>
</div>
<div class="row wrap" style="margin:20px 0;" v-if="isShowPrice == 1">
<div class="col-6">
<q-btn
v-if="objOption.IsOpenStepPrice == 1"
size="10px"
@click="addStepPrice()"
round
color="primary"
icon="iconfont icon-img_haha"
/>
<q-btn v-if="objOption.IsOpenStepPrice == 1" size="10px" @click="addStepPrice()" round color="primary"
icon="iconfont icon-img_haha" />
</div>
</div>
<template v-if="objOption.IsOpenStepPrice == 1 && isShowPrice == 1">
<div
class="row wrap"
v-for="(item, index) in ladderPriceList"
:key="index"
>
<div class="row wrap" v-for="(item, index) in ladderPriceList" :key="index">
<div class="col-6">
<q-input
filled
stack-label
v-model="item.PersionNum"
@keyup.native="checkInteger(item, 'PersionNum')"
:dense="false"
class="col-6 q-pr-lg q-pb-lg"
label="人"
/>
<q-input filled stack-label v-model="item.PersionNum" @keyup.native="checkInteger(item, 'PersionNum')"
:dense="false" class="col-6 q-pr-lg q-pb-lg" label="人" />
</div>
<div class="col-6" style="position:relative;">
<q-input
filled
stack-label
v-model="item.PersionPrice"
@keyup.native="checkPrice(item, 'PersionPrice')"
:dense="false"
class="col-6 q-pr-lg q-pb-lg"
label="价格"
/>
<q-btn
style="position:absolute;right:-5px;top:20px;"
size="6px"
@click="delStepPrice(index)"
round
color="red"
icon="iconfont icon-guanbi1"
/>
<q-input filled stack-label v-model="item.PersionPrice" @keyup.native="checkPrice(item, 'PersionPrice')"
:dense="false" class="col-6 q-pr-lg q-pb-lg" label="价格" />
<q-btn style="position:absolute;right:-5px;top:20px;" size="6px" @click="delStepPrice(index)" round
color="red" icon="iconfont icon-guanbi1" />
</div>
</div>
</template>
<div
class="text-caption q-mb-lg q-px-md text-grey-6"
v-if="isShowPrice == 1"
>
<div class="text-caption q-mb-lg q-px-md text-grey-6" v-if="isShowPrice == 1">
可续费课程
<q-toggle
style="float:right;"
size="md"
left-label
label="可续费课程"
color="primary"
:false-value="0"
:true-value="1"
v-model="objOption.IsRenew"
/>
<q-toggle style="float:right;" size="md" left-label label="可续费课程" color="primary" :false-value="0"
:true-value="1" v-model="objOption.IsRenew" />
</div>
<div class="row wrap" v-if="objOption.IsRenew == 1 && isShowPrice == 1">
<div class="col-6">
<q-input
filled
stack-label
:dense="false"
v-model="objOption.RenewOgPrice"
ref="RenewOgPrice"
class="col-6 q-pr-lg q-pb-lg"
label="续费原价"
@keyup.native="checkPrice(objOption, 'RenewOgPrice')"
:rules="[val => !!val || '请填写续费原价']"
/>
<q-input filled stack-label :dense="false" v-model="objOption.RenewOgPrice" ref="RenewOgPrice"
class="col-6 q-pr-lg q-pb-lg" label="续费原价" @keyup.native="checkPrice(objOption, 'RenewOgPrice')"
:rules="[val => !!val || '请填写续费原价']" />
</div>
<div class="col-6">
<q-input
filled
stack-label
:dense="false"
v-model="objOption.RenewSlPrice"
ref="RenewSlPrice"
class="col-6 q-pr-lg q-pb-lg"
label="续费售价"
@keyup.native="checkPrice(objOption, 'RenewSlPrice')"
:rules="[val => !!val || '请填写续费售价']"
/>
<q-input filled stack-label :dense="false" v-model="objOption.RenewSlPrice" ref="RenewSlPrice"
class="col-6 q-pr-lg q-pb-lg" label="续费售价" @keyup.native="checkPrice(objOption, 'RenewSlPrice')"
:rules="[val => !!val || '请填写续费售价']" />
</div>
</div>
<div class="row wrap">
<div class="col-6">
<q-input
filled
stack-label
@keyup.native="checkPrice(objOption, 'ClassHours')"
reverse-fill-mask
v-model="objOption.ClassHours"
ref="ClassHours"
class="col-6 q-pr-lg q-pb-lg"
label="课时数量"
:rules="[val => !!val || '请填写课时信息']"
/>
<q-input filled stack-label @keyup.native="checkPrice(objOption, 'ClassHours')" reverse-fill-mask
v-model="objOption.ClassHours" ref="ClassHours" class="col-6 q-pr-lg q-pb-lg" label="课时数量"
:rules="[val => !!val || '请填写课时信息']" />
</div>
<div class="col-6">
<q-select
filled
stack-label
option-value="CateId"
option-label="CateName"
v-model="chosenCateId"
ref="CateId"
:options="TreeCategoryList"
label="所属系列"
class="col-6 q-pr-lg q-pb-lg"
emit-value
map-options
:rules="[val => !!val || '请选择课程所属系列']"
/>
<q-select filled stack-label option-value="CateId" option-label="CateName" v-model="objOption.CateId"
ref="CateId" :options="TreeCategoryList" label="所属系列" class="col-6 q-pr-lg q-pb-lg" emit-value map-options
:rules="[val => !!val || '请选择课程所属系列']" />
</div>
</div>
<div class="text-caption q-my-md q-px-xs text-grey-6">课程介绍</div>
<ext-editor
:defaultMsg="objOption.CourseIntro"
classStr="col-12"
@getEditValue="getEditValue"
></ext-editor>
<ext-editor :defaultMsg="objOption.CourseIntro" classStr="col-12" @getEditValue="getEditValue"></ext-editor>
<div class="row wrap">
<div class="col-6">
<span>上架端口:</span>
<template v-for="(item, index) in SaleplatList">
<q-checkbox
v-model="choosePlat"
:label="item.Name"
:val="item.Id"
/>
<q-checkbox v-model="choosePlat" :label="item.Name" :val="item.Id" />
</template>
</div>
<div class="col-6">
<q-toggle
style="float:right;"
size="md"
left-label
label="K12课程"
color="primary"
:false-value="0"
:true-value="1"
v-model="objOption.IsKCourse"
/>
<q-toggle style="float:right;" size="md" left-label label="K12课程" color="primary" :false-value="0"
:true-value="1" v-model="objOption.IsKCourse" />
</div>
</div>
</q-card-section>
<q-separator />
<q-card-actions align="right" class="bg-white">
<q-btn
label="取消"
flat
color="grey-10"
style="font-weight:400 !important"
@click="closeCourseForm"
/>
<q-btn
label="立即提交"
color="accent q-px-md"
style="font-weight:400 !important"
:loading="saveCourseLoading"
@click="saveCourse"
/>
<q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="closeCourseForm" />
<q-btn label="立即提交" color="accent q-px-md" style="font-weight:400 !important" :loading="saveCourseLoading"
@click="saveCourse" />
</q-card-actions>
</q-card>
</q-dialog>
</template>
<script>
import {
import {
queryCourseCategoryTree,
saveCourseInfo,
queryCourseInfo,
querySaleplatList
} from "../../api/course/index";
import { getTeacherDropDownList } from "../../api/school/index";
import { UploadSelfFile } from "../../api/common/common";
import selectTree from "../common/select-tree";
import extEditor from "../common/ext-editor";
export default {
} from "../../api/course/index";
import {
getTeacherDropDownList
} from "../../api/school/index";
import {
UploadSelfFile
} from "../../api/common/common";
import selectTree from "../common/select-tree";
import extEditor from "../common/ext-editor";
export default {
components: {
selectTree,
extEditor
......@@ -340,7 +174,7 @@ export default {
SaleplatList: [], //销售端口
choosePlat: [], //选择的平台
chooseTeacher: [], //选择老师
chosenCateId: null,
isShowPrice: 0 //是否显示价格【hk2021-03-05新增】
};
},
......@@ -391,11 +225,7 @@ export default {
var qMsg = {};
queryCourseCategoryTree(qMsg).then(res => {
this.TreeCategoryList = res.Data;
this.TreeCategoryList.forEach(x=>{
if(x.CateId==this.objOption.CateId){
this.chosenCateId=x
}
})
});
},
//新增阶梯定价
......@@ -509,7 +339,7 @@ export default {
this.objOption.Teacher_Ids = Teacher_Ids;
this.objOption.Saleplat = salePlat;
this.objOption.CateId=this.chosenCateId
saveCourseInfo(this.objOption)
.then(res => {
this.saveCourseLoading = false;
......@@ -529,5 +359,6 @@ export default {
}
}
}
};
};
</script>
......@@ -138,7 +138,8 @@
rowsPerPage: 10,
Name: "",
IsQPrice: 1,
SaleState: 2 //销售状态
SaleState: 2, //销售状态
AuditType: 0, //审核类型(1-部门主管审核,2-部门负责人审核)
},
dataList: [],
loading: true,
......@@ -237,7 +238,9 @@
let StudyAbroadObj = userInfo.StudyAbroadObj;
StudyAbroadObj.forEach((x,index)=>{
if (x.Id === userInfo.Id) {
console.log("index", index)
this.AuditType = index + 1;
console.log("this.AuditType", this.AuditType)
}
})
},
......@@ -250,11 +253,11 @@
//获取留学分页列表
getList() {
this.loading = true;
this.msg.AuditType=1;
queryStudyAbroadPage(this.msg).then(res => {
this.loading = false;
this.dataList = res.Data.PageData;
this.PageCount = res.Data.PageCount;
console.log(res, '数据');
})
.catch(() => {
this.loading = false;
......
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