Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
SuperMan
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
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
罗超
SuperMan
Commits
584f5007
Commit
584f5007
authored
Jul 23, 2019
by
华国豪
🙄
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/superman
parents
e7b424b3
263c8da2
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
1297 additions
and
51 deletions
+1297
-51
AirTicketApp.vue
src/components/FinancialModule/AirTicketApp.vue
+104
-0
BasicDocuments.vue
src/components/FinancialModule/BasicDocuments.vue
+4
-2
FinancialDocumentsDetail.vue
src/components/FinancialModule/FinancialDocumentsDetail.vue
+5
-1
AirTicketLoss.vue
src/components/FinancialModule/ReportForm/AirTicketLoss.vue
+127
-0
AirTicketLossDetail.vue
...onents/FinancialModule/ReportForm/AirTicketLossDetail.vue
+682
-0
leaderReimbursement.vue
src/components/LeaderManagement/leaderReimbursement.vue
+2
-2
bookDinnerStatisticsDetails.vue
src/components/Restaurant/bookDinnerStatisticsDetails.vue
+17
-12
airTicketRules.vue
src/components/Ticketing/airTicketRules.vue
+60
-15
PassengerFeedback.vue
...components/TravelManager/TravelList/PassengerFeedback.vue
+19
-3
AirticketCommission.vue
src/components/administrative/AirticketCommission.vue
+114
-0
AirticketCommissionDetail.vue
src/components/administrative/AirticketCommissionDetail.vue
+71
-0
dmcTotalTable.vue
src/components/dmc/manager/dmcTotalTable.vue
+49
-13
config.js
src/router/config.js
+43
-3
No files found.
src/components/FinancialModule/AirTicketApp.vue
0 → 100644
View file @
584f5007
<
style
>
</
style
>
<
template
>
<div
class=
"AirTicketApp"
>
<table
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
"loading"
>
<tr>
<th
v-for=
"(item,index) in ColNameList"
:key=
"index"
>
{{
item
}}
</th>
</tr>
<tr
v-for=
"(item,index) in Rlist"
:key=
"index"
>
<td>
{{
item
.
BranchName
}}
</td>
<td
v-for=
"(cl,index) in item.CList"
:key=
"index"
>
{{
cl
.
LossRatio
}}
<el-button
@
click=
"Edit(item,cl)"
style=
"padding:4px;margin-left:10px"
type=
"primary"
icon=
"el-icon-edit"
circle
></el-button>
</td>
</tr>
</table>
<el-dialog
title=
"修改"
:visible
.
sync=
"dialogVisible"
width=
"300px"
>
<div>
<el-form
ref=
"form"
:model=
"changeMsg"
label-width=
"80px"
>
<el-form-item
label=
"公司"
>
<span>
{{
changeMsg
.
BranchName
}}
</span>
</el-form-item>
<el-form-item
label=
"比例"
prop=
"LossRatio"
>
<el-input
@
keyup
.
native=
"checkInteger(changeMsg,'LossRatio')"
v-model=
"changeMsg.Ratio"
></el-input>
</el-form-item>
</el-form>
</div>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
size=
"small"
@
click=
"dialogVisible = false"
>
取 消
</el-button>
<el-button
type=
"danger"
size=
"small"
@
click=
"Ok"
>
确 定
</el-button>
</span>
</el-dialog>
</div>
</
template
>
<
script
>
export
default
{
data
(){
return
{
loading
:
false
,
ColNameList
:[],
Rlist
:[],
dialogVisible
:
false
,
changeMsg
:{
Ratio
:
0
,
},
rules
:{
Ratio
:
[{
required
:
true
,
message
:
"请输入比例"
,
trigger
:
"blur"
}],
},
}
},
created
(){
},
methods
:{
Ok
(){
if
(
this
.
changeMsg
.
Ratio
>=
0
&&
this
.
changeMsg
.
Ratio
<=
100
){
this
.
apipost
(
'ticket_post_SetAirTicketBranchRatio'
,
this
.
changeMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
getList
();
this
.
dialogVisible
=
false
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
this
.
loading
=
false
;
},
err
=>
{})
}
else
{
this
.
Error
(
"请输入正确的比例"
)
}
},
Edit
(
item
,
cl
){
this
.
dialogVisible
=
true
;
this
.
changeMsg
.
BranchName
=
item
.
BranchName
;
this
.
changeMsg
.
Ratio
=
cl
.
LossRatio
;
this
.
changeMsg
.
BranchId
=
cl
.
BranchId
;
this
.
changeMsg
.
LossType
=
cl
.
LossTypeCode
;
this
.
changeMsg
.
AirLossId
=
cl
.
LossConfigId
;
},
getList
(){
this
.
loading
=
true
;
this
.
apipost
(
'ticket_post_SetAirTicketLossManagement'
,{},
res
=>
{
console
.
log
(
res
)
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
ColNameList
=
res
.
data
.
data
.
ColNameList
;
this
.
Rlist
=
res
.
data
.
data
.
Rlist
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
this
.
loading
=
false
;
},
err
=>
{})
},
},
mounted
(){
this
.
getList
();
}
}
</
script
>
src/components/FinancialModule/BasicDocuments.vue
View file @
584f5007
...
...
@@ -319,7 +319,10 @@
<p>
附加说明:
<span
class=
"fr"
v-if=
"GetDetail.ComplainID > 0"
@
click=
"goUrl('ComplaintsDetail', GetDetail.ComplainID,GetDetail.OrderID)"
>
<span
style=
"color:#000"
>
投诉单号:
</span>
<span
class=
"cursorpointer text-decoration"
>
{{GetDetail.ComplainID}}
</span></span></p>
<table
border=
"1"
bordercolor=
"#D2D2D2"
style=
"border-collapse:collapse;margin-top:15px;"
width=
"100%"
v-if=
"GetDetail.TCIDAndTCNUMList.length>0"
>
<tr
v-for=
"(o,ox) in GetDetail.TCIDAndTCNUMList"
class=
"_fujiashuoming_tr"
>
<td
:colspan=
"4"
>
{{o.TCNUM}}({{o.TCID}})
</td>
<td
:colspan=
"3"
>
{{o.TCNUM}}({{o.TCID}})
<span
v-if=
"GetDetail.IsShowPlanUrl === 1"
style=
"margin-left:20px;"
>
旅客意见/{{o.GuestSurveyNum}}份
</span>
</td>
<td
@
click=
"jumpPage('TravelControlList',o.TCNUM,1)"
>
<span
class=
"_jump_page _font_bold"
>
查看团队
</span>
</td>
<td
@
click=
"jumpPage('RegistrationList',o.TCID,7)"
>
<span
class=
"_jump_page _font_bold"
>
查看报名
</span>
</td>
<td
@
click=
"GetDetail.TCIDAndTCNUMList.length==1?jumpPage('TeamBalancePayment',o.TCID,5):jumpPage('TeamBalancePayment',o.TCID,6)"
>
<span
class=
"_jump_page _font_bold"
>
团队收支
</span>
</td>
...
...
@@ -2265,7 +2268,6 @@ export default {
this
.
GetDetail
=
data
;
this
.
showModel
=
true
this
.
FrID
=
data
.
FrID
console
.
log
(
this
.
GetDetail
,
'GetDetail.OrderId'
);
this
.
ChongDiMsg
.
Types
=
''
this
.
ChongDiMsg
.
ClientType
=
data
.
Type
===
2
?
data
.
ClientType
:
''
this
.
ChongDiMsg
.
ClientID
=
data
.
Type
===
2
?
data
.
ClientID
:
''
...
...
src/components/FinancialModule/FinancialDocumentsDetail.vue
View file @
584f5007
...
...
@@ -383,7 +383,10 @@
<table
border=
"1"
bordercolor=
"#D2D2D2"
style=
"border-collapse:collapse;margin-top:15px;"
width=
"100%"
v-if=
"GetDetail.TCIDAndTCNUMList.length>0"
>
<tr
v-for=
"(o,ox) in GetDetail.TCIDAndTCNUMList"
class=
"_fujiashuoming_tr"
>
<td
:colspan=
"4"
v-if=
"GetDetail.Is_Merge===1"
>
单据号:
{{
o
.
FinanceId
}}
</td>
<td
:colspan=
"4"
>
{{
o
.
TCNUM
}}
(
{{
o
.
TCID
}}
)
</td>
<td
:colspan=
"3"
>
{{
o
.
TCNUM
}}
(
{{
o
.
TCID
}}
)
<span
v-if=
"GetDetail.IsShowPlanUrl === 1"
style=
"margin-left:20px;"
>
旅客意见/
{{
o
.
GuestSurveyNum
}}
份
</span>
</td>
<td
@
click=
"jumpPage('TravelControlList',o.TCNUM,1)"
>
<span
class=
"_jump_page _font_bold"
>
查看团队
</span>
</td>
<td
@
click=
"jumpPage('RegistrationList',o.TCID,7)"
>
<span
class=
"_jump_page _font_bold"
>
查看报名
</span>
</td>
<td
@
click=
"GetDetail.TCIDAndTCNUMList.length==1?jumpPage('TeamBalancePayment',o.TCID,5):jumpPage('TeamBalancePayment',o.TCID,6)"
>
<span
class=
"_jump_page _font_bold"
>
团队收支
</span>
</td>
...
...
@@ -1303,6 +1306,7 @@ export default {
this
.
FrID
=
this
.
GetDetail
.
FrID
;
this
.
SourceID
=
this
.
GetDetail
.
SourceID
;
this
.
Callback
=
this
.
GetDetail
.
Callback
;
// 拼接团号显示团信息
let
str
=
''
;
if
(
data
.
TCIDList
.
length
>
0
){
...
...
src/components/FinancialModule/ReportForm/AirTicketLoss.vue
0 → 100644
View file @
584f5007
<
style
>
.AirClick
{
text-decoration
:
underline
;
cursor
:
pointer
;
}
</
style
>
<
template
>
<div
class=
"AirTicketApp"
>
<div
class=
"Header"
>
<el-col
:span=
"8"
style=
"margin:10px 0"
>
<el-date-picker
v-model=
"value1"
type=
"daterange"
value-format=
"yyyy-MM-dd"
range-separator=
"至"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
</el-date-picker>
</el-col>
<button
style=
"margin-top:15px"
class=
"normalBtn"
@
click=
"getList"
>
查询
</button>
<button
style=
"margin-top:15px"
class=
"hollowFixedBtn"
@
click=
"Export"
>
导出
</button>
</div>
<table
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
"loading"
>
<tr>
<th
v-if=
"index==0"
v-for=
"(item,index) in ColNameList"
:key=
"index"
>
{{
item
}}
</th>
<th
v-if=
"index!=0 && index!=ColNameList.length"
colspan=
"2"
v-for=
"(item,index) in ColNameList"
:key=
"index"
>
{{
item
}}
</th>
<th
v-if=
"index==ColNameList.length"
v-for=
"(item,index) in ColNameList"
:key=
"index"
>
{{
item
}}
</th>
</tr>
<tr>
<td></td>
<td
v-for=
"item in LossList"
:class=
"
{'AirClick':item.Value!='损失占比'}" @click="goToDetail(item)">
{{
item
.
Value
}}
</td>
<td>
{{
SunMoney
}}
</td>
</tr>
<tr
v-for=
"(item,index) in Rlist"
:key=
"index"
>
<td>
{{
item
.
BranchName
}}
</td>
<td
v-for=
"(cl,index) in item.LossTL"
:key=
"index"
>
{{
cl
}}
</td>
<td>
{{
item
.
TotalMoney
}}
</td>
</tr>
</table>
</div>
</
template
>
<
script
>
export
default
{
data
(){
return
{
loading
:
false
,
ColNameList
:[],
LossList
:[],
SunMoney
:
0
,
Rlist
:[],
value1
:[],
msg
:{
StartTime
:
""
,
EndTime
:
""
,
},
userInfo
:{},
}
},
created
(){
this
.
userInfo
=
this
.
getLocalStorage
();
},
methods
:{
Export
(){
let
msg
=
this
.
msg
;
msg
.
EmployeeId
=
this
.
userInfo
.
EmployeeId
;
var
fileName
=
"机票损失分摊.xls"
;
this
.
GetLocalFile
(
"financestatistics_post_OutToExcelGetCompamyAirTicketRatioList"
,
msg
,
fileName
);
},
getList
(){
if
(
this
.
value1
){
this
.
msg
.
StartTime
=
this
.
value1
[
0
];
this
.
msg
.
EndTime
=
this
.
value1
[
1
];
}
else
{
this
.
msg
.
StartTime
=
""
;
this
.
msg
.
EndTime
=
""
;
}
this
.
loading
=
true
;
this
.
apipost
(
'financestatistics_post_GetCompamyAirTicketRatioList'
,
this
.
msg
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
ColNameList
=
res
.
data
.
data
.
ColNameList
;
this
.
Rlist
=
res
.
data
.
data
.
Rlist
;
this
.
LossList
=
res
.
data
.
data
.
LossList
[
0
].
LossTL
;
this
.
SunMoney
=
res
.
data
.
data
.
LossList
[
0
].
TotalMoney
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
this
.
loading
=
false
;
},
err
=>
{})
},
//跳转至详情
goToDetail
(
item
){
if
(
item
.
Value
!=
'损失占比'
){
this
.
$router
.
push
({
name
:
'AirTicketLossDetail'
,
query
:
{
msg
:
JSON
.
stringify
(
item
),
blank
:
"y"
,
}
});
}
}
},
mounted
(){
//默认查询当月第一个到最后一天日期
var
now
=
new
Date
();
var
month
=
now
.
getMonth
()
+
1
;
//js获取到的是月份是 0-11 所以要加1
var
year
=
now
.
getFullYear
();
var
nextMonthFirstDay
=
new
Date
([
year
,
month
+
1
,
1
].
join
(
'-'
)).
getTime
();
var
oneDay
=
1000
*
24
*
60
*
60
;
var
monthLast
=
new
Date
(
nextMonthFirstDay
-
oneDay
).
getDate
()
if
(
month
<
10
){
month
=
'0'
+
month
;
}
var
startDate
=
[
year
,
month
,
1
].
join
(
'-'
);
var
endDate
=
[
year
,
month
,
monthLast
].
join
(
'-'
);
this
.
value1
.
push
(
startDate
,
endDate
);
this
.
getList
();
}
}
</
script
>
src/components/FinancialModule/ReportForm/AirTicketLossDetail.vue
0 → 100644
View file @
584f5007
This diff is collapsed.
Click to expand it.
src/components/LeaderManagement/leaderReimbursement.vue
View file @
584f5007
...
...
@@ -393,7 +393,7 @@
<span
v-show=
"subItem.PayStyle==6"
>
付款团号:
{{
subItem
.
PayTypeTCNUM
}}
</span>
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"3"
>
{{
i
tem
.
Remarks
}}
{{
subI
tem
.
Remarks
}}
</td>
</tr>
</
template
>
...
...
@@ -465,7 +465,7 @@
<span
v-show=
"subItem.PayStyle==6"
>
付款团号:
{{
subItem
.
PayTypeTCNUM
}}
</span>
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"3"
>
{{
i
tem
.
Remarks
}}
{{
subI
tem
.
Remarks
}}
</td>
</tr>
</
template
>
...
...
src/components/Restaurant/bookDinnerStatisticsDetails.vue
View file @
584f5007
...
...
@@ -3,8 +3,14 @@
<div
class=
"query-box"
style=
"border-bottom: none;"
>
<ul>
<li>
<input
v-if=
"IsOperation != 1"
type=
"button"
class=
"fr normalBtn mb30"
value=
"保存"
@
click=
"saveList(1)"
/>
<input
v-if=
"IsOperation != 1"
type=
"button"
class=
"fr normalBtn mb30"
value=
"保存草稿"
@
click=
"saveList(0)"
/>
<template
v-if=
"IsOperation != 1"
>
<input
v-if=
"IsOperation != 1"
type=
"button"
class=
"fr normalBtn mb30"
value=
"保存"
@
click=
"saveList(1)"
/>
<input
v-if=
"IsOperation != 1"
type=
"button"
class=
"fr normalBtn mb30"
value=
"保存草稿"
@
click=
"saveList(0)"
/>
</
template
>
<
template
v-else
>
<span
v-if=
"IsOperation==1"
style=
"color:red;font-size:14px;"
>
已制单,不能在修改!
</span>
</
template
>
<input
type=
"button"
class=
"fr normalBtn mb30"
style=
"display:none;"
value=
"保存"
@
click=
"saveList(1)"
/>
</li>
</ul>
</div>
...
...
@@ -130,7 +136,7 @@
<el-option
label=
'公司合团支付'
:value=
'6'
></el-option>
</el-select>
</td>
</td>
</tr>
<tr>
<td
width=
"60"
style=
"text-align:right;"
>
...
...
@@ -158,7 +164,7 @@
订团号:
</td>
<td
style=
"text-align:left;"
>
<el-input
class=
'w135 tcenter'
v-model=
'subItem.ReserveNo'
></el-input>
<el-input
class=
'w135 tcenter'
v-model=
'subItem.ReserveNo'
></el-input>
</td>
</tr>
</table>
...
...
@@ -185,7 +191,7 @@
flightTotal
:
0
,
GuestNum
:
0
,
loading
:
false
,
IsOperation
:
''
,
IsOperation
:
''
,
};
},
methods
:
{
...
...
@@ -222,7 +228,7 @@
});
},
personStrToWord
(
str
)
{
if
(
str
==
1
)
if
(
str
==
1
)
return
'大人'
if
(
str
==
2
)
return
'中人'
...
...
@@ -245,10 +251,9 @@
item
.
DiningSummaryList
.
forEach
(
x
=>
{
x
.
DiningReserveType
=
x
.
DiningReserveType
.
toString
();
this
.
calculationPrice
(
x
);
var
str
=
x
.
NewDiningName
;
if
(
x
.
RealName
)
{
str
=
x
.
RealName
;
var
str
=
x
.
NewDiningName
;
if
(
x
.
RealName
)
{
str
=
x
.
RealName
;
}
item
.
DinnerList
.
push
({
RealName
:
str
,
...
...
@@ -331,8 +336,8 @@
if
(
subItem
.
NewDiningID
==
x
.
ID
)
{
subItem
.
Address
=
x
.
Address
;
subItem
.
Tel
=
x
.
Tel
;
subItem
.
PayStyle
=
x
.
PayStyle
;
subItem
.
PayStyleExt
=
x
.
PayStyle
;
subItem
.
PayStyle
=
x
.
PayStyle
;
subItem
.
PayStyleExt
=
x
.
PayStyle
;
}
})
},
...
...
src/components/Ticketing/airTicketRules.vue
View file @
584f5007
...
...
@@ -443,21 +443,39 @@
<div
class=
"combottomTitle"
>
{{
divTitle
}}
</div>
<div
class=
""
>
<el-form
:model=
"addMsg"
ref=
"addMsg"
label-width=
"130px"
>
<el-col
:span=
"5"
>
<el-form-item
label=
"年"
>
<el-select
v-model=
"addMsg.YearStr"
size=
"mini"
class=
"_month_input"
>
<el-option
:key=
"DefaultValue"
label=
"请选择"
:value=
"DefaultValue"
></el-option>
<el-option
v-for=
"item in YearList"
:key=
"item"
:label=
"item"
:value=
"item"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"5"
>
<el-form-item
label=
"月"
>
<el-select
v-model=
"addMsg.MonthStr"
size=
"mini"
class=
"_month_input"
>
<el-option
v-for=
"item in MonthList"
:key=
"item"
:label=
"item"
:value=
"item"
></el-option>
</el-select>
</el-form-item>
</el-col>
<template
v-if=
"addMsg.ID==0"
>
<el-col
:span=
"5"
>
<el-form-item
label=
"开始月份"
>
<el-date-picker
v-model=
"addMsg.MonthRangeStart"
type=
"month"
value-format=
"yyyy-MM"
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col
:span=
"5"
>
<el-form-item
label=
"结束月份"
>
<el-date-picker
v-model=
"addMsg.MonthRangeEnd"
type=
"month"
value-format=
"yyyy-MM"
>
</el-date-picker>
</el-form-item>
</el-col>
</
template
>
<
template
v-else
>
<el-col
:span=
"5"
>
<el-form-item
label=
"年"
>
<el-select
v-model=
"addMsg.YearStr"
size=
"mini"
class=
"_month_input"
>
<el-option
:key=
"DefaultValue"
label=
"请选择"
:value=
"DefaultValue"
></el-option>
<el-option
v-for=
"item in YearList"
:key=
"item"
:label=
"item"
:value=
"item"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"5"
>
<el-form-item
label=
"月"
>
<el-select
v-model=
"addMsg.MonthStr"
size=
"mini"
class=
"_month_input"
>
<el-option
:key=
"DefaultValue"
label=
"请选择"
:value=
"DefaultValue"
></el-option>
<el-option
v-for=
"item in MonthList"
:key=
"item"
:label=
"item"
:value=
"item"
></el-option>
</el-select>
</el-form-item>
</el-col>
</
template
>
<el-col
:span=
"5"
>
<el-form-item
label=
"单价/人"
>
<el-input
v-model=
"addMsg.UnitPrice"
maxlength=
"5"
@
keyup
.
native=
"checkPrice(addMsg,'UnitPrice')"
>
...
...
@@ -491,6 +509,8 @@
YearStr
:
0
,
//年份
MonthStr
:
0
,
//月份
UnitPrice
:
0
,
//单价每人
MonthRangeStart
:
""
,
//开始月份【2019-01到2019-12】
MonthRangeEnd
:
""
,
//结束月份【2019-01到2019-12】
},
DefaultValue
:
0
,
//默认值
YearList
:
[],
...
...
@@ -534,9 +554,34 @@
this
.
addMsg
.
YearStr
=
0
;
this
.
addMsg
.
MonthStr
=
0
;
this
.
addMsg
.
UnitPrice
=
0
;
this
.
addMsg
.
MonthRangeEnd
=
""
;
this
.
addMsg
.
MonthRangeStart
=
""
;
},
//保存信息
SaveAirticketRules
()
{
if
(
this
.
addMsg
.
ID
>
0
)
{
if
(
this
.
addMsg
.
YearStr
==
0
)
{
this
.
Info
(
"请选择年份!"
);
return
;
}
if
(
this
.
addMsg
.
MonthStr
==
0
)
{
this
.
Info
(
"请选择月份!"
);
return
;
}
}
else
{
if
(
this
.
addMsg
.
MonthRangeStart
==
""
)
{
this
.
Info
(
"请选择开始月份!"
);
return
;
}
if
(
this
.
addMsg
.
MonthRangeEnd
==
""
)
{
this
.
Info
(
"请选择结束月份!"
);
return
;
}
}
if
(
this
.
addMsg
.
UnitPrice
==
0
)
{
this
.
Info
(
"请输入提成金额!"
);
return
;
}
this
.
apipost
(
"AirTicketRules_post_SetAirticketRule"
,
this
.
addMsg
,
...
...
src/components/TravelManager/TravelList/PassengerFeedback.vue
View file @
584f5007
...
...
@@ -69,11 +69,22 @@
<td>
{{
item
.
start
}}
</td>
<td>
{{
item
.
tCNUM
}}
</td>
<td>
<span
v-if=
"fields.length>0"
>
{{
(
item
.
sumScore
/
fields
.
length
).
toFixed
(
1
)
}}
</span>
<span
v-else
>
{{
item
.
sumScore
}}
</span>
<span
v-if=
"fields.length>0"
>
<span
v-if=
"item.sumScore/fields.length>3.5"
>
{{
(
item
.
sumScore
/
fields
.
length
).
toFixed
(
1
)
}}
</span>
<span
v-else
style=
"color:red"
>
{{
(
item
.
sumScore
/
fields
.
length
).
toFixed
(
1
)
}}
</span>
</span>
<span
v-else
>
<span
v-if=
"item.sumScore>3.5"
>
{{
item
.
sumScore
}}
</span>
<span
v-else
style=
"color:red"
>
{{
item
.
sumScore
}}
</span>
</span>
</td>
<td
v-for=
"(c,childIndex) in fields"
:key=
"childIndex"
>
{{
item
[
c
]?
item
[
c
]:
0
}}
</td>
<td
v-for=
"(c,childIndex) in fields"
:key=
"childIndex"
>
<span
v-if=
"item[c]&&item[c]>3.5"
>
{{
item
[
c
]?
item
[
c
]:
0
}}
</span>
<span
v-else
style=
"color:red"
>
{{
item
[
c
]?
item
[
c
]:
0
}}
</span>
</td>
<td>
<span
style=
"cursor:pointer"
@
click=
"chaKan(item)"
>
明细
</span>
...
...
@@ -128,6 +139,11 @@ export default {
}
}
},
created
(){
this
.
dateList
[
0
]
=
moment
().
subtract
(
6
,
"month"
).
format
(
"YYYY-MM-DD"
);
this
.
dateList
[
1
]
=
moment
().
format
(
"YYYY-MM-DD"
);
// console.log("this.dateList",this.dateList)
},
mounted
(){
this
.
getLineList
();
this
.
getList
();
...
...
src/components/administrative/AirticketCommission.vue
0 → 100644
View file @
584f5007
<
style
>
.CM_look
{
padding
:
4px
!important
;
position
:
relative
;
top
:
1px
;
}
</
style
>
<
template
>
<div
class=
"flexOne"
>
<div
class=
"query-box"
>
<ul>
<li>
<input
type=
"button"
class=
"normalBtn"
@
click=
"CreateAirticketCommission()"
value=
"生成提成报表"
/>
</li>
</ul>
</div>
<table
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
"loading"
>
<tr>
<th>
期数
</th>
<th>
提成总金额
</th>
<th>
{{
$t
(
'admin.admin_czPerson'
)
}}
</th>
<th>
日期
</th>
<th>
{{
$t
(
'system.table_operation'
)
}}
</th>
</tr>
<tr
v-for=
"item in dataList"
>
<td>
{{
item
.
Periods
}}
</td>
<td>
{{
item
.
SumPrice
}}
</td>
<td>
{{
item
.
CreateByName
}}
</td>
<td>
{{
item
.
CreateTimeStr
}}
</td>
<td>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"查看"
placement=
"top"
>
<el-button
type=
"primary"
class=
"CM_look"
@
click=
"goUrl('AirticketCommissionDetail',item.ID)"
icon=
"iconfont icon-chakan"
circle
></el-button>
</el-tooltip>
</td>
</tr>
</table>
<!-- 分页 -->
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"currentPage"
layout=
"total,prev, pager, next, jumper"
:page-size=
'msg.PageSize'
:total=
'total'
>
</el-pagination>
</div>
</
template
>
<
script
>
export
default
{
data
()
{
return
{
msg
:
{
PageIndex
:
1
,
PageSize
:
20
},
loading
:
false
,
//数据源
dataList
:
[],
total
:
0
,
currentPage
:
1
,
}
},
mounted
()
{
this
.
getList
();
},
methods
:
{
handleCurrentChange
(
val
)
{
this
.
msg
.
PageIndex
=
val
;
this
.
getList
();
},
goUrl
(
path
,
id
)
{
this
.
$router
.
push
({
path
:
path
,
query
:
{
ID
:
id
,
blank
:
'y'
,
tab
:
'票务业绩详情'
}
});
},
//获取数据
getList
()
{
this
.
loading
=
true
;
this
.
apipost
(
"AirTicketRules_post_GetAirticketCommissionPageList"
,
this
.
msg
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
dataList
=
res
.
data
.
data
.
pageData
;
this
.
total
=
res
.
data
.
data
.
count
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
//生成票务提成报表
CreateAirticketCommission
()
{
this
.
apipost
(
"AirTicketRules_post_CreateAirticketCommissionService"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
getList
();
this
.
Success
(
'报表生成成功'
)
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
}
}
}
</
script
>
\ No newline at end of file
src/components/administrative/AirticketCommissionDetail.vue
0 → 100644
View file @
584f5007
<
style
>
.CM_look
{
padding
:
4px
!important
;
position
:
relative
;
top
:
1px
;
}
</
style
>
<
template
>
<div
class=
"flexOne"
>
<table
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
"loading"
>
<tr>
<th>
公司
</th>
<th>
部门
</th>
<th>
姓名
</th>
<th>
总人数
</th>
<th>
提成金额
</th>
<th>
期数
</th>
</tr>
<tr
v-for=
"item in dataList"
>
<td>
{{
item
.
BName
}}
</td>
<td>
{{
item
.
DName
}}
</td>
<td>
{{
item
.
UName
}}
</td>
<td>
{{
item
.
TotalPersion
}}
</td>
<td>
{{
item
.
CommissionMoney
}}
</td>
<td>
{{
item
.
Periods
}}
</td>
</tr>
</table>
</div>
</
template
>
<
script
>
export
default
{
data
()
{
return
{
msg
:
{
MainId
:
0
},
loading
:
false
,
//数据源
dataList
:
[],
}
},
mounted
()
{
this
.
msg
.
MainId
=
this
.
$route
.
query
.
ID
;
this
.
getList
();
},
methods
:
{
//获取数据
getList
()
{
this
.
loading
=
true
;
this
.
apipost
(
"AirTicketRules_post_GetAirticketCommissionDetails"
,
this
.
msg
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
dataList
=
res
.
data
.
data
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
}
}
</
script
>
src/components/dmc/manager/dmcTotalTable.vue
View file @
584f5007
...
...
@@ -347,7 +347,8 @@
<th>
金额
</th>
</tr>
<tr
v-for=
"(fnc, findex) in outItem.FinanceIds"
>
<td
class=
"cursorpointer text-decoration"
@
click=
"goFncUrl('FinancialDocumentsDetail', fnc.FinanceId)"
>
{{
fnc
.
FinanceId
}}
</td>
<td
class=
"cursorpointer text-decoration"
@
click=
"goFncUrl('FinancialDocumentsDetail', fnc.FinanceId)"
>
{{
fnc
.
FinanceId
}}
</td>
<td>
{{
moneyFormat
(
fnc
.
OriginalMoney
)
}}
</td>
</tr>
</table>
...
...
@@ -459,6 +460,25 @@
style=
"background:green; border-color:green"
></el-button>
</el-popover>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
" 领队/导游配置"
placement=
"top-start"
v-if=
"item.LineId==14&&outItem.PriceCommonList.length>1"
style=
"display:none;"
>
<el-popover
placement=
"bottom"
width=
"450"
trigger=
"click"
>
<table
class=
"dmcSetTable"
>
<tr>
<template
v-for=
"(hItem,hIndex) in TeamHotelList"
>
<td>
{{
hItem
.
TCNUM
}}
(
{{
hItem
.
TCID
}}
)
</td>
</
template
>
</tr>
<
template
v-if=
"TeamHotelList&&TeamHotelList.length>0"
>
<template
v-for=
"(hItem,hIndex) in TeamHotelList"
>
</
template
>
</template>
</table>
<el-button
@
click=
"GetTeamHotelList(outItem.TCIDS)"
slot=
"reference"
icon=
"iconfont icon-suo1"
type=
"primary"
style=
"background:green; border-color:green"
></el-button>
</el-popover>
</el-tooltip>
</el-button-group>
</div>
</td>
...
...
@@ -580,17 +600,19 @@
cityId
:
0
,
orderId
:
0
},
//合团团酒店列表
TeamHotelList
:
[],
LeaderList
:
[],
showHotelObj
:
{
showPrice
:
true
,
//是否显示价格
showPay
:
true
,
//是否显示支付方式
showZhan
:
true
,
//占房时间
showBtnList
:
true
,
//是否下载、确认按钮
showPrice
:
true
,
//是否显示价格
showPay
:
true
,
//是否显示支付方式
showZhan
:
true
,
//占房时间
showBtnList
:
true
,
//是否下载、确认按钮
ShowTaxType
:
true
,
//显示税入税别
ShowRebateRatio
:
true
,
//显示返佣比列
ShowSupplier
:
true
,
//是否显示供应商
showCaozuoTime
:
true
,
//操作时间
colspanLength
:
6
//跨行
ShowSupplier
:
true
,
//是否显示供应商
showCaozuoTime
:
true
,
//操作时间
colspanLength
:
6
//跨行
},
pickerBeginDateBefore
:
{
disabledDate
:
time
=>
{
...
...
@@ -759,12 +781,12 @@
})
window
.
open
(
routeData
.
href
,
'_blank'
);
},
goFncUrl
:
function
(
path
,
id
)
{
goFncUrl
:
function
(
path
,
id
)
{
this
.
$router
.
push
({
name
:
path
,
query
:
{
id
:
id
,
blank
:
'y'
,
blank
:
'y'
,
}
})
},
...
...
@@ -798,8 +820,8 @@
'flightTotal'
:
obj
.
TotalSeat
,
'GuestNum'
:
obj
.
OrderGuestNum
,
'NewCombinationNum'
:
outItem
.
NewCombinationNum
,
'LeaderName'
:
obj
.
LeaderName
,
'GuideName'
:
obj
.
GuideName
,
'LeaderName'
:
obj
.
LeaderName
,
'GuideName'
:
obj
.
GuideName
,
blank
:
'y'
,
tab
:
title
}
...
...
@@ -960,7 +982,19 @@
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
err
=>
{})
}
},
GetTeamHotelList
(
tcids
)
{
this
.
apipost
(
'dmcstatistics_get_GetTeamHotelListService'
,
{
TCIDs
:
tcids
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
TeamHotelList
=
res
.
data
.
data
;
//console.log("TeamHotelList", this.TeamHotelList);
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
err
=>
{})
},
},
mounted
()
{
let
myDate
=
new
Date
();
...
...
@@ -971,6 +1005,8 @@
"-"
+
myDate
.
getDate
();
this
.
msg
.
StartDate
=
nowDate
;
//this.msg.CombinationNum='JVS0723OTC-MUC';
//this.msg.CombinationNum = 'JVS0617OTC-MUA';
this
.
getLineList
();
this
.
getList
();
this
.
getCompanyList
();
...
...
src/router/config.js
View file @
584f5007
...
...
@@ -326,6 +326,22 @@ export default {
title
:
'提成管理'
},
},
{
path
:
'/AirticketCommission'
,
//票务提成
name
:
'AirticketCommission'
,
component
:
resolve
=>
require
([
'@/components/administrative/AirticketCommission'
],
resolve
),
meta
:
{
title
:
'票务提成'
},
},
{
path
:
'/AirticketCommissionDetail'
,
//票务提成详情
name
:
'AirticketCommissionDetail'
,
component
:
resolve
=>
require
([
'@/components/administrative/AirticketCommissionDetail'
],
resolve
),
meta
:
{
title
:
'票务提成详情'
},
},
{
path
:
'/CommissionDetail'
,
//提成详情
name
:
'CommissionDetail'
,
...
...
@@ -1630,11 +1646,11 @@ export default {
name
:
'PassengerFeedback'
,
component
:
resolve
=>
require
([
'@/components/TravelManager/TravelList/PassengerFeedback'
],
resolve
),
meta
:
{
title
:
'
一键
调查统计'
title
:
'
意见
调查统计'
},
},
{
path
:
'/FeedbackChart'
,
//
一键
调查统计
path
:
'/FeedbackChart'
,
//
意见
调查统计
name
:
'FeedbackChart'
,
component
:
resolve
=>
require
([
'@/components/TravelManager/TravelList/FeedbackChart'
],
resolve
),
meta
:
{
...
...
@@ -2548,7 +2564,15 @@ export default {
meta
:
{
title
:
'线控配置'
},
},
{
//财务 资金调拨 新增
},
{
//财务 机票分摊比例
path
:
'/AirTicketApp'
,
name
:
'AirTicketApp'
,
component
:
resolve
=>
require
([
'@/components/FinancialModule/AirTicketApp'
],
resolve
),
meta
:
{
title
:
'机票分摊比例'
},
},{
//财务 资金调拨 新增
path
:
'/addCapitalAllocation'
,
name
:
'addCapitalAllocation'
,
component
:
resolve
=>
require
([
'@/components/FinancialModule/addCapitalAllocation'
],
resolve
),
...
...
@@ -2945,6 +2969,22 @@ export default {
title
:
'年度排名统计'
},
},
{
//财务 报表 机票损失分摊
path
:
'/AirTicketLoss'
,
name
:
'AirTicketLoss'
,
component
:
resolve
=>
require
([
'@/components/FinancialModule/ReportForm/AirTicketLoss'
],
resolve
),
meta
:
{
title
:
'机票损失分摊'
},
},
{
//财务 机票损失分摊详情
path
:
'/AirTicketLossDetail'
,
name
:
'AirTicketLossDetail'
,
component
:
resolve
=>
require
([
'@/components/FinancialModule/ReportForm/AirTicketLossDetail'
],
resolve
),
meta
:
{
title
:
'机票损失分摊详情'
},
},
{
//财务 报表 团队人数统计
path
:
'/NumberStatistics'
,
name
:
'NumberStatistics'
,
...
...
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