Commit 41ab270f authored by 黄奎's avatar 黄奎

页面修改

parent 0f87234e
......@@ -8,123 +8,122 @@
<div class="text-caption q-mb-lg text-grey-6">基础价格设置</div>
<div class="row wrap">
<div class="col-6">
<q-input filled stack-label maxlength="8" :dense="false" v-model="priceObj.courseObj.OriginalPrice"
ref="OriginalPrice" class="col-6 q-pr-lg q-pb-lg" label="卖价"
@keyup.native="checkPrice(priceObj.courseObj, 'OriginalPrice')" :rules="[val => !!val || '请填写基础收费']" />
<q-input filled stack-label maxlength="8" :dense="false" v-model="priceObj.studyAbroadObj.SuggestPrice"
ref="SuggestPrice" class="col-6 q-pr-lg q-pb-lg" label="合同建议卖价"
@keyup.native="checkPrice(priceObj.studyAbroadObj, 'SuggestPrice')" :rules="[val => !!val || '合同建议卖价']" />
</div>
<div class="col-6">
<q-input filled stack-label maxlength="8" :dense="false" v-model="priceObj.courseObj.SellPrice"
ref="SellPrice" class="col-6 q-pr-lg q-pb-lg" label="成本"
@keyup.native="checkPrice(priceObj.courseObj, 'SellPrice')" :rules="[val => !!val || '请填写卖价']" />
<q-input filled stack-label maxlength="8" :dense="false" v-model="priceObj.studyAbroadObj.SellPrice"
ref="SellPrice" class="col-6 q-pr-lg q-pb-lg" label="实际卖价"
@keyup.native="checkPrice(priceObj.studyAbroadObj, 'SellPrice')" :rules="[val => !!val || '请填写实际卖价']" />
</div>
</div>
<div class="q-pt-none scroll" style="max-height:60hv">
<table>
<thead>
<tr style="height:60px;">
<td colspan="5" style="text-align:right;">
<q-btn color="accent" size="sm" icon="add" label="新增优惠" @click="addPrice()" />
</td>
</tr>
<tr>
<td style="width:200px">
优惠类型
</td>
<td style="width:200px">
优惠条件
</td>
<td style="width:140px">
同行返佣
</td>
<td style="width:140px">
销售返佣
</td>
<td>
操作
</td>
</tr>
</thead>
<tbody v-for="(item, index) in priceObj.priceList">
<tr>
<td style="height:50px">
<q-select filled stack-label option-value="Id" option-label="Name" v-model="item.PriceDiscountType"
ref="PriceDiscountType_Id" :options="priceTypeList" label="优惠类型" style="width:160px" dense
emit-value map-options />
</td>
<td>
<!--买送-->
<template v-if="item.PriceDiscountType == 1">
<q-input filled stack-label dense v-model="item.BuyNum" ref="BuyNum" label="买"
@keyup.native="checkPrice(item, 'BuyNum')" style="width:80px;display:inline-block;" suffix="" />
<q-input filled stack-label class="q-ml-xs" v-model="item.SendNum" ref="SendNum" dense label="送"
@keyup.native="checkPrice(item, 'SendNum')" style="width:80px;display:inline-block;" suffix="">
</q-input>
</div>
<div class="q-pt-none scroll" style="max-height:60hv">
<table>
<thead>
<tr style="height:60px;">
<td colspan="5" style="text-align:right;">
<q-btn color="accent" size="sm" icon="add" label="新增优惠" @click="addPrice()" />
</td>
</tr>
<tr>
<td style="width:200px">
优惠类型
</td>
<td style="width:200px">
优惠条件
</td>
<td style="width:140px">
同行返佣
</td>
<td style="width:140px">
销售返佣
</td>
<td>
操作
</td>
</tr>
</thead>
<tbody v-for="(item, index) in priceObj.priceList">
<tr>
<td style="height:50px">
<q-select filled stack-label option-value="Id" option-label="Name" v-model="item.PriceDiscountType"
ref="PriceDiscountType_Id" :options="priceTypeList" label="优惠类型" style="width:160px" dense
emit-value map-options />
</td>
<td>
<!--买送-->
<template v-if="item.PriceDiscountType == 1">
<q-input filled stack-label dense v-model="item.BuyNum" ref="BuyNum" label="买"
@keyup.native="checkPrice(item, 'BuyNum')" style="width:80px;display:inline-block;" suffix="" />
<q-input filled stack-label class="q-ml-xs" v-model="item.SendNum" ref="SendNum" dense label="送"
@keyup.native="checkPrice(item, 'SendNum')" style="width:80px;display:inline-block;" suffix="">
</q-input>
</template>
<!--刷卡分期-->
<template v-else-if="item.PriceDiscountType == 5"> </template>
<template v-else>
<q-input filled stack-label dense v-model="item.PriceMoney" ref="PriceMoney" label="优惠"
@keyup.native="checkPrice(item, 'PriceMoney')" style="width:165px" suffix="%" />
</template>
</td>
<td>
<q-input filled stack-label dense v-model="item.B2BCommissionMoney" ref="B2BCommissionMoney"
label="同行返佣" @keyup.native="checkPrice(item, 'B2BCommissionMoney')" style="width:100px">
<template v-slot:append>
<div class="text-dark text-center text-dark cursor-pointer"
style="width:30px;margin-right:-12px;height:100%;font-size:14px;border-left:1px solid #ddd;padding-top:15px;">
<span>{{item.B2BCommissionType==0?'%':'¥'}}</span>
<q-menu auto-close>
<q-list>
<q-item clickable v-close-popup @click="item.B2BCommissionType=0">
<q-item-section>按百分比(%)</q-item-section>
</q-item>
<q-item clickable v-close-popup @click="item.B2BCommissionType=1">
<q-item-section>按固定额度(¥)</q-item-section>
</q-item>
</q-list>
</q-menu>
</div>
</template>
<!--刷卡分期-->
<template v-else-if="item.PriceDiscountType == 5"> </template>
<template v-else>
<q-input filled stack-label dense v-model="item.PriceMoney" ref="PriceMoney" label="优惠"
@keyup.native="checkPrice(item, 'PriceMoney')" style="width:165px" suffix="%" />
</q-input>
</td>
<td>
<q-input filled stack-label dense v-model="item.SaleCommissionMoney" ref="SaleCommissionMoney"
label="销售返佣" @keyup.native="checkPrice(item, 'SaleCommissionMoney')" class="q-pr-none"
style="width:100px">
<template v-slot:append>
<div class="text-dark text-center text-dark cursor-pointer"
style="width:30px;margin-right:-12px;height:100%;font-size:14px;border-left:1px solid #ddd;padding-top:15px;">
<span>{{item.SaleCommissionType==0?'%':'¥'}}</span>
<q-menu auto-close>
<q-list>
<q-item clickable v-close-popup @click="item.SaleCommissionType=0">
<q-item-section>按百分比(%)</q-item-section>
</q-item>
<q-item clickable v-close-popup @click="item.SaleCommissionType=1">
<q-item-section>按固定额度(¥)</q-item-section>
</q-item>
</q-list>
</q-menu>
</div>
</template>
</td>
<td>
<q-input filled stack-label dense v-model="item.B2BCommissionMoney" ref="B2BCommissionMoney"
label="同行返佣" @keyup.native="checkPrice(item, 'B2BCommissionMoney')" style="width:100px">
<template v-slot:append>
<div class="text-dark text-center text-dark cursor-pointer"
style="width:30px;margin-right:-12px;height:100%;font-size:14px;border-left:1px solid #ddd;padding-top:15px;">
<span>{{item.B2BCommissionType==0?'%':'¥'}}</span>
<q-menu auto-close>
<q-list>
<q-item clickable v-close-popup @click="item.B2BCommissionType=0">
<q-item-section>按百分比(%)</q-item-section>
</q-item>
<q-item clickable v-close-popup @click="item.B2BCommissionType=1">
<q-item-section>按固定额度(¥)</q-item-section>
</q-item>
</q-list>
</q-menu>
</div>
</template>
</q-input>
</td>
<td>
<q-input filled stack-label dense v-model="item.SaleCommissionMoney" ref="SaleCommissionMoney"
label="销售返佣" @keyup.native="checkPrice(item, 'SaleCommissionMoney')" class="q-pr-none"
style="width:100px">
<template v-slot:append>
<div class="text-dark text-center text-dark cursor-pointer"
style="width:30px;margin-right:-12px;height:100%;font-size:14px;border-left:1px solid #ddd;padding-top:15px;">
<span>{{item.SaleCommissionType==0?'%':'¥'}}</span>
<q-menu auto-close>
<q-list>
<q-item clickable v-close-popup @click="item.SaleCommissionType=0">
<q-item-section>按百分比(%)</q-item-section>
</q-item>
<q-item clickable v-close-popup @click="item.SaleCommissionType=1">
<q-item-section>按固定额度(¥)</q-item-section>
</q-item>
</q-list>
</q-menu>
</div>
</template>
</q-input>
</td>
<td>
<q-btn flat size="xs" icon="iconfont icon-shanchu" title="删除" color="negative"
style="font-weight:400" class="q-mr-xs" label="" @click="delPrice(index)" />
</td>
</tr>
</tbody>
</table>
</div>
</q-input>
</td>
<td>
<q-btn flat size="xs" icon="iconfont icon-shanchu" title="删除" color="negative" style="font-weight:400"
class="q-mr-xs" label="" @click="delPrice(index)" />
</td>
</tr>
</tbody>
</table>
</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="立即提交" color="accent q-px-md" style="font-weight:400 !important" :loading="saveStudyAbroadLoading"
@click="saveStudyAbroad" />
</q-card-actions>
</q-card>
</q-dialog>
......@@ -132,11 +131,13 @@
<script>
import {
saveCoursePreferential,
queryCoursePreferentialList,
queryCourseInfo,
queryCoursePreferentialType
} from "../../api/course/index";
import {
queryStudyAbroadInfo,
saveBatchStudyAbroad,
} from "../../api/studyabroad/index";
export default {
components: {},
props: {
......@@ -149,13 +150,13 @@
return {
persistent: true,
optionTitle: "",
saveCourseLoading: false,
saveStudyAbroadLoading: false,
//价格对象
priceObj: {
studyAbroadObj: {
CourseId: 0, //课程编号
OriginalPrice: 0, //原
SellPrice: 0 //
Id: 0, //留学就业编号
SuggestPrice: 0, //建议卖
SellPrice: 0 //实际卖
},
priceList: [] //价格列表
},
......@@ -199,27 +200,24 @@
},
//初始化表单
initObj() {
if (this.saveObj && this.saveObj.CourseId > 0) {
queryCourseInfo({
CourseId: this.saveObj.CourseId
}).then(res => {
this.priceObj.courseObj.CourseId = res.Data.CourseId;
this.priceObj.courseObj.OriginalPrice = res.Data.OriginalPrice;
this.priceObj.courseObj.SellPrice = res.Data.SellPrice;
});
queryCoursePreferentialList({
CourseId: this.saveObj.CourseId
if (this.saveObj && this.saveObj.Id > 0) {
queryStudyAbroadInfo({
Id: this.saveObj.Id,
IsGetPrice: 1
}).then(res => {
if (res.Code == 1 && res.Data) {
this.priceObj.priceList = res.Data;
this.priceObj.studyAbroadObj.Id = res.Data.Id;
this.priceObj.studyAbroadObj.SuggestPrice = res.Data.SuggestPrice;
this.priceObj.studyAbroadObj.SellPrice = res.Data.SellPrice;
if (res.Data.PreferentialList && res.Data.PreferentialList.length > 0) {
this.priceObj.priceList = res.Data.PreferentialList;
}
});
this.optionTitle = "修改课程优惠信息";
this.optionTitle = "修改留学优惠信息";
} else {
this.optionTitle = "新增课程优惠信息";
this.priceObj.courseObj.CourseId = 0;
this.priceObj.courseObj.OriginalPrice = 0;
this.priceObj.courseObj.SellPrice = 0;
this.optionTitle = "新增留学优惠信息";
this.priceObj.studyAbroadObj.CourseId = 0;
this.priceObj.studyAbroadObj.SuggestPrice = 0;
this.priceObj.studyAbroadObj.SellPrice = 0;
}
},
//关闭弹窗
......@@ -228,8 +226,8 @@
this.persistent = false;
},
//保存菜单
saveCourse() {
this.saveCourseLoading = true;
saveStudyAbroad() {
this.saveStudyAbroadLoading = true;
if (this.priceObj.priceList && this.priceObj.priceList.length > 0) {
this.priceObj.priceList.forEach(item => {
if (item.BuyNum == "") {
......@@ -249,9 +247,9 @@
}
});
}
saveCoursePreferential(this.priceObj)
saveBatchStudyAbroad(this.priceObj)
.then(res => {
this.saveCourseLoading = false;
this.saveStudyAbroadLoading = false;
this.$q.notify({
icon: "iconfont icon-chenggong",
color: "accent",
......@@ -263,7 +261,7 @@
this.closeSaveForm();
})
.catch(() => {
this.saveCourseLoading = false;
this.saveStudyAbroadLoading = false;
});
}
}
......
......@@ -33,7 +33,7 @@
</q-table>
<studyAbroad-form v-if="isShowStudy" :save-obj="studyObj" @close="closeStudyForm" @success="refreshPage">
</studyAbroad-form>
<studyAbroadprice-form v-if="closeStudyForm" :save-obj="studyObj" @close="closeStudyForm" @success="refreshPage">
<studyAbroadprice-form v-if="isShowStudyPrice" :save-obj="studyObj" @close="closeStudyForm" @success="refreshPage">
</studyAbroadprice-form>
</div>
</div>
......@@ -170,7 +170,6 @@
PageCount: 0,
isShowStudy: false, //是否显示留学弹窗
studyObj: {}, //留学对象
isShowStudyPrice: false, //是否显示价格设置
}
},
......@@ -206,6 +205,7 @@
closeStudyForm() {
this.isShowStudy = false;
this.isShowStudyPrice = false;
this.refreshPage();
},
//刷新页面
refreshPage() {
......
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