Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
confucius
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
罗超
confucius
Commits
e70f343a
Commit
e70f343a
authored
Mar 18, 2021
by
zhengke
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改
parent
fdfa13d3
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
290 additions
and
0 deletions
+290
-0
studyAbroad-form2.vue
src/components/studyAbroad/studyAbroad-form2.vue
+276
-0
studyabroad.vue
src/pages/studyAbroad/studyabroad.vue
+14
-0
No files found.
src/components/studyAbroad/studyAbroad-form2.vue
0 → 100644
View file @
e70f343a
<
template
>
<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"
>
设置留学价格
</div>
</q-card-section>
<q-card-section
class=
"q-pt-none scroll"
style=
"max-height: 70vh"
>
<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 || '请填写基础收费']"
/>
</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 || '请填写卖价']"
/>
</div>
<div
class=
"row wrap"
>
<div
class=
"col-12"
>
<q-btn
color=
"accent"
size=
"sm"
icon=
"add"
label=
"上传供应商合同"
/>
</div>
</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>
</
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
>
</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-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-card-actions>
</q-card>
</q-dialog>
</template>
<
script
>
import
{
saveCoursePreferential
,
queryCoursePreferentialList
,
queryCourseInfo
,
queryCoursePreferentialType
}
from
"../../api/course/index"
;
export
default
{
components
:
{},
props
:
{
saveObj
:
{
type
:
Object
,
default
:
null
}
},
data
()
{
return
{
persistent
:
true
,
optionTitle
:
""
,
saveCourseLoading
:
false
,
//价格对象
priceObj
:
{
courseObj
:
{
CourseId
:
0
,
//课程编号
OriginalPrice
:
0
,
//原价
SellPrice
:
0
//售价
},
priceList
:
[]
//价格列表
},
priceTypeList
:
[]
//优惠类型列表
};
},
created
()
{
this
.
getTypeList
();
},
mounted
()
{
this
.
initObj
();
},
methods
:
{
//获取优惠类型列表
getTypeList
()
{
queryCoursePreferentialType
().
then
(
res
=>
{
this
.
priceTypeList
=
res
.
Data
;
});
},
//新增价格
addPrice
()
{
var
currentObj
=
{
Id
:
0
,
//主键编号
CourseId
:
0
,
//课程编号
PreferentialTerms
:
""
,
//优惠条件
SaleCommissionType
:
0
,
//销售返佣类型(0-百分比,1-固定金额)
SaleCommissionMoney
:
0
,
//销售返佣
B2BCommissionType
:
0
,
//同行返佣类型(0-百分比,1-固定金额)
B2BCommissionMoney
:
0
,
//同行返佣
PriceDiscountType
:
0
,
//课程价格优惠类型(见枚举)
BuyNum
:
0
,
//购买人数
SendNum
:
0
,
//赠送人数
PriceType
:
0
,
//优惠价格类型(0-百分比,1-固定金额)
PriceMoney
:
0
//优惠金额
};
this
.
priceObj
.
priceList
.
push
(
currentObj
);
},
//删除价格
delPrice
(
index
)
{
this
.
priceObj
.
priceList
.
splice
(
index
,
1
);
},
//初始化表单
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
}).
then
(
res
=>
{
if
(
res
.
Code
==
1
&&
res
.
Data
)
{
this
.
priceObj
.
priceList
=
res
.
Data
;
}
});
this
.
optionTitle
=
"修改课程优惠信息"
;
}
else
{
this
.
optionTitle
=
"新增课程优惠信息"
;
this
.
priceObj
.
courseObj
.
CourseId
=
0
;
this
.
priceObj
.
courseObj
.
OriginalPrice
=
0
;
this
.
priceObj
.
courseObj
.
SellPrice
=
0
;
}
},
//关闭弹窗
closeCourseForm
()
{
this
.
$emit
(
"close"
);
this
.
persistent
=
false
;
},
//保存菜单
saveCourse
()
{
this
.
saveCourseLoading
=
true
;
if
(
this
.
priceObj
.
priceList
&&
this
.
priceObj
.
priceList
.
length
>
0
)
{
this
.
priceObj
.
priceList
.
forEach
(
item
=>
{
if
(
item
.
BuyNum
==
""
)
{
item
.
BuyNum
=
0
;
}
if
(
item
.
SendNum
==
""
)
{
item
.
SendNum
=
0
;
}
if
(
item
.
PriceMoney
==
""
)
{
item
.
PriceMoney
=
0
;
}
if
(
item
.
B2BCommissionMoney
==
""
)
{
item
.
B2BCommissionMoney
=
0
;
}
if
(
item
.
SaleCommissionMoney
==
""
)
{
item
.
SaleCommissionMoney
=
0
;
}
});
}
saveCoursePreferential
(
this
.
priceObj
)
.
then
(
res
=>
{
this
.
saveCourseLoading
=
false
;
this
.
$q
.
notify
({
icon
:
"iconfont icon-chenggong"
,
color
:
"accent"
,
timeout
:
2000
,
message
:
"数据保存成功!"
,
position
:
"top"
});
this
.
$emit
(
"success"
);
this
.
closeSaveForm
();
})
.
catch
(()
=>
{
this
.
saveCourseLoading
=
false
;
});
}
}
};
</
script
>
src/pages/studyAbroad/studyabroad.vue
View file @
e70f343a
...
...
@@ -16,6 +16,7 @@
<q-space
/>
<div
class=
"page-option"
>
<q-btn
color=
"accent"
size=
"sm"
class=
"q-mr-md"
icon=
"add"
label=
"新增留学"
@
click=
"EditStudy(null)"
/>
<q-btn
color=
"accent"
size=
"sm"
class=
"q-mr-md"
icon=
"add"
label=
"新增留学2"
@
click=
"isShowStudy2=true"
/>
</div>
</
template
>
<
template
v-slot:body-cell-Id=
"props"
>
...
...
@@ -31,6 +32,8 @@
</q-table>
<studyAbroad-form
v-if=
"isShowStudy"
:save-obj=
"studyObj"
@
close=
"closeStudyForm"
@
success=
"refreshPage"
>
</studyAbroad-form>
<studyAbroad-form2
v-if=
"isShowStudy2"
:save-obj=
"studyObj"
@
close=
"closeStudyForm2"
@
success=
"refreshPage"
>
</studyAbroad-form2>
</div>
</div>
</template>
...
...
@@ -40,6 +43,7 @@
queryStudyAbroadPage
}
from
'../../api/studyabroad/index'
import
studyAbroadForm
from
'../../components/studyAbroad/studyAbroad-form'
import
studyAbroadForm2
from
'../../components/studyAbroad/studyAbroad-form2'
export
default
{
meta
:
{
...
...
@@ -47,6 +51,7 @@
},
components
:
{
studyAbroadForm
,
studyAbroadForm2
},
data
()
{
return
{
...
...
@@ -164,6 +169,8 @@
PageCount
:
0
,
isShowStudy
:
false
,
//是否显示留学弹窗
studyObj
:
{},
//留学对象
isShowStudy2
:
false
,
}
},
mounted
()
{
...
...
@@ -198,6 +205,13 @@
closeStudyForm
()
{
this
.
isShowStudy
=
false
},
//关闭弹窗2号
closeStudyForm2
(){
this
.
isShowStudy2
=
false
},
//刷新页面
refreshPage
()
{
this
.
getList
();
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment