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
44cad6c2
Commit
44cad6c2
authored
Jan 30, 2019
by
华国豪
🙄
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
‘财务报表新增联运收入页面@@@@@@’
parent
697b3d40
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
1767 additions
and
1 deletion
+1767
-1
CombinedRevenueReport.vue
...ents/FinancialModule/ReportForm/CombinedRevenueReport.vue
+1758
-0
TeamRevenueReport.vue
...mponents/FinancialModule/ReportForm/TeamRevenueReport.vue
+2
-1
config.js
src/router/config.js
+7
-0
No files found.
src/components/FinancialModule/ReportForm/CombinedRevenueReport.vue
0 → 100644
View file @
44cad6c2
<
style
scoped
>
.page_fnDm
{
background-color
:
white
;
}
.query-box
{
overflow
:
inherit
;
padding-bottom
:
0
;
}
._nav
{
margin
:
20px
0
0
0
;
background-color
:
#f5f5f5
;
}
._nav
li
{
float
:
left
;
font-size
:
14px
;
color
:
#666666
;
padding
:
15px
20px
;
cursor
:
pointer
;
position
:
relative
;
background-color
:
#f1f1f1
;
margin-right
:
5px
;
}
._nav
li
._active
{
background-color
:
#ffffff
;
color
:
#333333
;
}
._nav
li
._active
::after
{
content
:
""
;
width
:
20px
;
height
:
3px
;
background-color
:
#e95252
;
display
:
inline-block
;
position
:
absolute
;
bottom
:
0
;
left
:
38%
;
}
.el-range-editor.el-input__inner
{
border-radius
:
0
;
}
.query-box
{
border
:
none
;
}
.hight_query
{
position
:
relative
;
}
.hight_query
span
{
height
:
34px
;
line-height
:
34px
;
color
:
#e95252
;
}
.hight_query
span
.icon-gengduo
{
font-size
:
12px
;
}
.hight_query
span
em
{
text-decoration
:
underline
;
cursor
:
pointer
;
}
.hight_query_box
{
position
:
absolute
;
background-color
:
white
;
z-index
:
2000
;
right
:
200px
;
width
:
800px
;
}
._hqb_shadow
{
box-shadow
:
3px
2px
10px
rgb
(
204
,
203
,
203
);
border
:
1px
solid
#ececec
;
}
.query-box
ul
{
overflow
:
initial
;
}
.hqb_t
{
padding
:
10px
20px
;
font-size
:
16px
;
background-color
:
#e95252
;
border
:
1px
solid
#e95252
;
color
:
#fff
;
text-align
:
center
;
margin-bottom
:
15px
;
}
.query-box
li
:last-child
{
float
:
left
;
}
.query-box
>
ul
>
li
:last-child
{
float
:
right
;
}
.query-box
.hight_query
ul
.el-input
{
width
:
inherit
;
}
.hight_query_box
ul
li
{
margin-top
:
0
;
float
:
left
;
margin-right
:
15px
;
}
.hight_query_box
ul
li
label
{
font-size
:
14px
;
}
.hight_query_box
.el-form
{
padding
:
0
20px
;
}
.hight_query_box
ul
li
._hqb_btn
{
float
:
right
;
margin-right
:
25px
;
padding-top
:
5px
;
position
:
inherit
;
}
.Receipt_box
{
padding
:
15px
;
color
:
#c94052
;
width
:
614px
;
background-color
:
rgba
(
242
,
242
,
242
,
1
);
border
:
1px
solid
rgba
(
228
,
228
,
228
,
1
);
}
.Receipt_box.color_blur
{
color
:
#106baf
;
}
.Receipt_box.color_blur
.rb_stit
span
{
display
:
inline-block
;
border-bottom
:
2px
solid
#106baf
;
padding
:
0
20px
;
}
.rb_tit
{
font-size
:
18px
;
text-align
:
center
;
}
.rb_stit
{
font-size
:
14px
;
text-align
:
center
;
}
.rb_stit
span
{
display
:
inline-block
;
border-bottom
:
2px
solid
#c94052
;
padding
:
0
20px
;
}
.rb_top_row
{
display
:
flex
;
justify-content
:
space-between
;
font-size
:
12px
;
}
.rb_top_row
span
._r_name
{
color
:
#333333
;
}
.rb_top_row
span
._r_bold
{
font-weight
:
bold
;
}
.rb_top_row
._r_time
span
{
color
:
#333333
;
}
._r_mb5
{
margin-bottom
:
5px
;
}
.Receipt_table
{
width
:
100%
;
font-size
:
14px
;
text-align
:
center
;
}
.Receipt_table
.th
{
font-weight
:
200
!important
;
}
._r_mt10
{
margin-top
:
10px
;
}
._bg__
{
display
:
inline-block
;
padding
:
2px
8px
;
color
:
white
;
border-radius
:
4px
;
}
._bg_red
{
background-color
:
#e95252
;
}
._bg_green
{
background-color
:
#2bb87c
;
}
.text_d
{
text-decoration
:
underline
;
cursor
:
pointer
;
}
.PingFangSC
{
font-weight
:
bold
;
}
.Bill_par
{
position
:
relative
;
}
tr
th
,
tr
td
{
text-align
:
left
;
padding-left
:
20px
;
}
tr
._item_list
{
border-bottom
:
1px
solid
#e5e5e5
;
height
:
78px
;
}
tr
._item_list
td
{
border-bottom
:
1px
solid
#e5e5e5
;
padding
:
10px
;
}
/* tr._t_head th{border-top: 1px solid #e5e5e5;} */
tr
._item_list
td
:first-child
{
border-left
:
1px
solid
#e5e5e5
;
}
tr
._item_list
td
:last-child
{
border-right
:
1px
solid
#e5e5e5
;
}
._head_img
{
width
:
28px
;
height
:
28px
;
border-radius
:
50%
;
vertical-align
:
middle
;
}
._btn_group
{
font-size
:
14px
;
}
.icon-daiqueren
{
color
:
#4bca81
;
}
.icon-yiqueren
{
color
:
#4bca81
;
}
.icon-yiquxiao
{
color
:
#959595
;
}
.icon-shenhebohui
{
color
:
#e95252
;
}
.icon-icon-zancun
{
color
:
#ff9c01
;
}
.singeRowTable
tr
:hover
{
background-color
:
white
;
}
._TradeWayList
{
padding
:
5px
10px
;
background-color
:
#eeeeee
;
border-radius
:
4px
;
margin
:
10px
0
;
width
:
190px
;
}
._bold
{
font-weight
:
bold
;
}
._bank_name
,
._bank_type
{
display
:
inline-block
;
background-color
:
#333333
;
color
:
white
;
padding
:
2px
4px
;
border-radius
:
4px
;
margin-left
:
10px
;
}
._bank_name
{
margin-left
:
10px
;
}
._bank_type
{
background-color
:
#2aaef2
;
}
._bank_type2
{
background-color
:
#ff9c01
;
}
._font_init
{
color
:
#333333
;
font-size
:
12px
;
vertical-align
:
top
;
}
.InfoChangeLog
{
height
:
auto
;
max-height
:
220px
;
background-color
:
#ffffff
;
}
.changLogList
{
padding-left
:
20px
;
max-height
:
180px
;
overflow
:
auto
;
}
.changLogList_l
{
border-left
:
1px
solid
#e9e9e9
;
position
:
relative
;
padding-bottom
:
10px
;
padding-left
:
20px
;
padding-top
:
10px
;
}
._radius_green
{
background-color
:
#47bf8c
;
width
:
7px
;
height
:
7px
;
border-radius
:
50%
;
display
:
inline-block
;
position
:
absolute
;
left
:
-4px
;
top
:
19px
;
}
.changLog_time
{
color
:
#666666
;
font-size
:
12px
;
display
:
inline-block
;
padding-right
:
10px
;
}
._icon_btn
i
{
width
:
30px
;
height
:
30px
;
display
:
inline-block
;
color
:
white
!important
;
border-radius
:
50%
;
text-align
:
center
;
line-height
:
30px
;
margin-right
:
10px
;
cursor
:
pointer
;
outline
:
none
;
}
._icon_btn
i
.edit
{
background-color
:
#00c6ff
;
font-size
:
16px
;
}
._icon_btn
i
.edit
:hover
{
background-color
:
#59daff
;
}
._icon_btn
i
.edit
:active
{
background-color
:
#00b8ec
;
}
._icon_btn
i
.icon-sousuo
{
background-color
:
#47bf8c
;
}
._icon_btn
i
.icon-sousuo
:hover
{
background-color
:
#66bb97
;
}
._icon_btn
i
.icon-sousuo
:active
{
background-color
:
#35ab79
;
}
._icon_btn
i
.icon-ico_commodity_defaul
{
background-color
:
#f16c3c
;
}
._icon_btn
i
.icon-ico_commodity_defaul
:hover
{
background-color
:
#e87c54
;
}
._icon_btn
i
.icon-ico_commodity_defaul
:active
{
background-color
:
#f76630
;
}
._icon_btn
i
.icon-quxiao1
{
background-color
:
#e95252
;
}
._icon_btn
i
.icon-quxiao1
:hover
{
background-color
:
#ea6d6d
;
}
._icon_btn
i
.icon-quxiao1
:active
{
background-color
:
#e42d2d
;
}
._icon_btn
i
.icon-zhuanjiao1
{
background-color
:
#e6a014
;
font-size
:
16px
;
}
._icon_btn
i
.icon-zhuanjiao1
:hover
{
background-color
:
rgb
(
235
,
184
,
84
);
}
._icon_btn
i
.icon-zhuanjiao1
:active
{
background-color
:
rgb
(
223
,
150
,
6
);
}
._tag_span
{
background-color
:
rgba
(
64
,
158
,
255
,
0.1
);
display
:
inline-block
;
padding
:
0
5px
;
height
:
22px
;
line-height
:
20px
;
font-size
:
12px
;
color
:
#409eff
;
border-radius
:
4px
;
box-sizing
:
border-box
;
border
:
1px
solid
rgba
(
64
,
158
,
255
,
0.2
);
white-space
:
nowrap
;
margin-bottom
:
4px
;
}
._tag_span._tag_warr
{
background-color
:
rgba
(
103
,
194
,
58
,
0.1
);
border-color
:
rgba
(
103
,
194
,
58
,
0.2
);
color
:
#67c23a
;
}
._fex_cen
{
display
:
flex
;
align-items
:
center
;
}
._pad5
{
padding
:
5px
10px
;
}
._color_gar
{
color
:
gray
;
}
._TCIDAndTCNUMList
{
display
:
flex
;
}
</
style
>
<
template
>
<div
class=
"page_fnDm page_RecPayQuery"
>
<div
class=
"query-box"
>
<el-form
class=
"_info_box clearfix"
label-width=
"110px"
>
<el-row
style=
"padding:15px 20px 0 0;"
>
<el-col
:span=
"4"
>
<el-form-item
label=
"出团公司:"
>
<el-select
filterable
v-model=
"msg.OutBranchId"
class
>
<el-option
:value=
"-1"
label=
"不限"
></el-option>
<el-option
v-for=
"item in CompanyList"
:label=
"item.BName"
:value=
"item.Id"
:key=
"item.Id"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"4"
>
<el-form-item
label=
"出发城市:"
>
<el-select
filterable
v-model=
"msg.StartCityId"
class
>
<el-option
:value=
"0"
label=
"不限"
></el-option>
<el-option
v-for=
"item in startCityList1"
:label=
"item.startCityName"
:value=
"item.ID"
:key=
"item.ID"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"4"
>
<el-form-item
label=
"线路:"
>
<el-select
filterable
v-model=
"msg.LineId"
@
change=
"getLineTeamList(msg.LineId)"
>
<el-option
:value=
"0"
label=
"不限"
></el-option>
<el-option
v-for=
"item in LineList"
:label=
"item.LineName"
:value=
"item.LineID"
:key=
"item.LineID"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"4"
>
<el-form-item
label=
"系列:"
>
<el-select
filterable
v-model=
"msg.LineTeamId"
class
>
<el-option
:value=
"0"
label=
"不限"
></el-option>
<el-option
v-for=
"item in LineTeamList"
:label=
"item.LtName"
:value=
"item.LtID"
:key=
"item.LtID"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"4"
>
<el-form-item
label=
"团号:"
>
<el-input
v-model=
"msg.TCNUM"
class
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"4"
>
<el-form-item
label=
"团队编号:"
>
<el-input
v-model=
"msg.TCID"
class
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"发团日期:"
>
<el-date-picker
class=
"h34"
@
change=
"timeAdd(1)"
v-model=
"productionDate"
type=
"daterange"
value-format=
"yyyy-MM-dd"
:picker-options=
"pickerOptions"
range-separator=
"至"
></el-date-picker>
</el-form-item>
</el-col>
</el-row>
</el-form>
<ul
class=
"clearfix"
>
<li
class=
"hight_query"
>
<!--
<button
class=
"normalBtn"
@
click=
"openKaiQiZzBox('一键开启')"
>
一键开启
</button>
<button
class=
"hollowFixedBtn"
@
click=
"openKaiQiZzBox('一键关闭')"
>
一键关闭
</button>
-->
<button
class=
"normalBtn"
@
click=
"resetPageIndex(),getPageList()"
>
{{
$t
(
'pub.searchBtn'
)
}}
</button>
<button
class=
"hollowFixedBtn"
@
click=
"method5()"
>
导出
</button>
<!--
<button
class=
"hollowFixedBtn"
@
click=
"exportExcelCurrentPage"
>
导出2
</button>
-->
</li>
</ul>
</div>
<div
class=
"_fnDm_content"
v-loading=
"loading"
>
<v-table
is-horizontal-resize
column-width-drag
:show-vertical-border=
"true"
style=
"width:100%"
:columns=
"columns"
:table-data=
"DataList"
:filter-method=
"filterMethod"
:total=
"total"
:pageSize=
"msg.pageSize"
:pageIndex=
"msg.pageIndex"
:handleCurrentChange=
"handleCurrentChanges"
:row-height=
"30"
:column-cell-class-name=
"columnCellClass"
@
on-custom-comp=
"customCompFunc"
@
sort-change=
"sortChange"
:footer=
"footer"
:footer-row-height=
"33"
:multiple-sort=
"multipleSort"
>
<!-- 多个排序 -->
</v-table>
</div>
<el-dialog
custom-class=
"w750"
:title=
"kaiqiZzTitle"
:visible
.
sync=
"kaiqiZzBox"
center
:before-close=
"initKaiqiZzBox"
v-loading=
"kaiqiZzLoading"
>
<div
style=
"text-align: center"
>
<label>
发团日期:
</label>
<el-date-picker
class=
"h34"
@
change=
"timeAdd(2)"
v-model=
"KaiqiZzTime"
type=
"daterange"
value-format=
"yyyy-MM-dd"
:picker-options=
"pickerOptions2"
range-separator=
"至"
></el-date-picker>
</div>
<div
slot=
"footer"
style=
"text-align: right;margin-top: 15px;"
class=
"dialog-footer"
>
<button
class=
"normalBtn"
type=
"primary"
@
click=
"submitKaiqiZzBox"
>
确定
</button>
<button
class=
"hollowFixedBtn"
@
click=
"initKaiqiZzBox"
>
{{
$t
(
'pub.cancelBtn'
)
}}
</button>
</div>
</el-dialog>
</div>
</
template
>
<
script
>
import
Vue
from
"vue"
;
import
XLSX
from
"xlsx"
;
import
downloadExcelEasy
from
"../../../assets/utils/downloadExcelEasy"
;
import
{
setTimeout
}
from
"timers"
;
Vue
.
component
(
"TCIDJump"
,
{
// 团队跳转
template
:
`<span style="cursor: pointer" @click="goUrl('TeamBalancePayment',rowData.TCID)">{{rowData.TCID}}</span>`
,
props
:
{
rowData
:
{
type
:
Object
},
field
:
{
type
:
String
},
index
:
{
type
:
Number
}
},
methods
:
{
goUrl
(
path
,
id
)
{
this
.
$router
.
push
({
path
:
"/"
+
path
,
query
:
{
id
:
id
,
blank
:
"y"
}
});
}
}
});
Vue
.
component
(
"TCNUMJump"
,
{
// 团队跳转
template
:
`<span style="cursor: pointer" @click="goUrl('TravelControlList',rowData.TCNUM)">{{rowData.TCNUM}}</span>`
,
props
:
{
rowData
:
{
type
:
Object
},
field
:
{
type
:
String
},
index
:
{
type
:
Number
}
},
methods
:
{
goUrl
(
path
,
id
)
{
this
.
$router
.
push
({
path
:
"/"
+
path
,
query
:
{
tcmun
:
id
,
blank
:
"y"
}
});
}
}
});
Vue
.
component
(
"GuestNum"
,
{
// 人数
template
:
`<span>{{rowData.GuestNum}}+{{rowData.LeaderNum}}</span>`
,
props
:
{
rowData
:
{
type
:
Object
},
field
:
{
type
:
String
},
index
:
{
type
:
Number
}
}
});
// Vue.component("Transport", {
// // 是否联运团
// template: `
<
span
><
span
v
-
if
=
"rowData.Is_Transport==='是'"
style
=
"color: red;"
>
{{
rowData
.
Is_Transport
}}
<
/span><span v-else>{{rowData.Is_Transport}}</
span
><
/span>`
,
// props: {
// rowData: {
// type: Object
// },
// field: {
// type: String
// },
// index: {
// type: Number
// }
// }
// });
export
default
{
data
()
{
return
{
showID
:
false
,
active
:
1
,
userId
:
0
,
msg
:
{
pageIndex
:
1
,
pageSize
:
18
,
OutBranchId
:
""
,
StartCityId
:
""
,
LineId
:
""
,
LineTeamId
:
""
,
TCID
:
""
,
startDate
:
""
,
endDate
:
""
,
Type
:
2
,
},
getCompanyMsg
:
{
// 公司
RB_Group_Id
:
"0"
,
Status
:
"0"
},
DataList
:
[],
CompanyList
:
[],
productionDate
:
[],
loading
:
false
,
currentPage
:
1
,
total
:
0
,
tableData
:
[],
LineList
:
[],
LineTeamList
:
[],
startCityList1
:
[],
multipleSort
:
false
,
kaiqiZzBox
:
false
,
KaiqiZzTime
:
[],
kaiqiZzTitle
:
""
,
kaiqiZzLoading
:
false
,
kaiqiZzMsg
:
{
QStartDate
:
""
,
QEndDate
:
""
,
Is_Open
:
""
},
defaultMonth
:
[],
pickerOptions
:
{
onPick
:
({
maxDate
,
minDate
})
=>
{
this
.
choiceDate
=
minDate
.
getTime
();
if
(
maxDate
)
{
this
.
choiceDate
=
""
;
}
},
disabledDate
:
time
=>
{
if
(
time
<
new
Date
(
"2018-12-31"
)){
return
true
;
}
else
{
if
(
this
.
choiceDate
)
{
const
one
=
365
*
24
*
3600
*
1000
;
const
minTime
=
this
.
choiceDate
-
one
;
const
maxTime
=
this
.
choiceDate
+
one
;
return
time
.
getTime
()
<
minTime
||
time
.
getTime
()
>
maxTime
;
}
}
}
},
pickerOptions2
:
{
onPick
:
({
maxDate
,
minDate
})
=>
{
this
.
choiceDate
=
minDate
.
getTime
();
if
(
maxDate
)
{
this
.
choiceDate
=
""
;
}
},
disabledDate
:
time
=>
{
if
(
this
.
choiceDate
)
{
const
one
=
30
*
24
*
3600
*
1000
;
const
minTime
=
this
.
choiceDate
-
one
;
const
maxTime
=
this
.
choiceDate
+
one
;
return
time
.
getTime
()
<
minTime
||
time
.
getTime
()
>
maxTime
;
}
}
},
columns
:
[
// 团队编号、团号 点击跳转团控列表
{
field
:
"LineName"
,
title
:
"线路"
,
width
:
80
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
,
result
:
[],
type
:
"select"
,
isFrozen
:
true
},
{
field
:
"TCID"
,
title
:
"团队编号"
,
width
:
80
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
,
isFrozen
:
true
,
componentName
:
"TCIDJump"
},
{
field
:
"TCNUM"
,
title
:
"团号"
,
width
:
150
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
,
result
:
""
,
filterMultiple
:
false
,
type
:
"text"
,
isFrozen
:
true
,
componentName
:
"TCNUMJump"
},
{
field
:
"TransportBranchName"
,
title
:
"联运公司"
,
width
:
80
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
,
isFrozen
:
true
,
},
{
field
:
"YingShou"
,
formatter
:
this
.
moneyFormat
,
title
:
"应收金额"
,
width
:
100
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
//,orderBy:''
{
field
:
"ShiShou"
,
formatter
:
this
.
moneyFormat
,
title
:
"实收金额"
,
width
:
100
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"TuiKuan"
,
formatter
:
this
.
moneyFormat
,
title
:
"退款"
,
width
:
100
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"PingTaiShuiJin"
,
formatter
:
this
.
moneyFormat
,
title
:
"平台税金"
,
width
:
100
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"ZaiTu"
,
formatter
:
this
.
moneyFormat
,
title
:
"在途"
,
width
:
100
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
,
},
{
field
:
"DaiShou"
,
formatter
:
this
.
moneyFormat
,
title
:
"待收金额"
,
width
:
100
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"YiShou"
,
formatter
:
this
.
moneyFormat
,
title
:
"溢收金额"
,
width
:
100
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"GuestNum"
,
title
:
"人数"
,
width
:
50
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
,
componentName
:
"GuestNum"
},
{
field
:
"YaoQingHan"
,
formatter
:
this
.
moneyFormat
,
title
:
"邀请函"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"CheZi"
,
formatter
:
this
.
moneyFormat
,
title
:
"车资"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"JiPiao"
,
formatter
:
this
.
moneyFormat
,
title
:
"机票款"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"GuoNeiLianYunJiPiao"
,
formatter
:
this
.
moneyFormat
,
title
:
"国内联运机票"
,
width
:
120
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
// {field: 'Money11', title: '房费',width: 90, titleAlign: 'left',columnAlign:'left',isResize:true},
{
field
:
"Visa"
,
formatter
:
this
.
moneyFormat
,
title
:
"签证"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
title
:
"提成"
,
width
:
100
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
,
formatter
(
rowData
,
rowIndex
,
pagingIndex
,
field
)
{
return
0
}
},
{
field
:
"QiTa"
,
formatter
:
this
.
moneyFormat
,
title
:
"其他"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"DiJieZhiChu"
,
formatter
:
this
.
moneyFormat
,
title
:
"地接款支出"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"DiJieShouRu"
,
formatter
:
this
.
moneyFormat
,
title
:
"地接款收入"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"ZiFei"
,
formatter
:
this
.
moneyFormat
,
title
:
"自费收入"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"XiaoFeiShouRu"
,
formatter
:
this
.
moneyFormat
,
title
:
"小费收入"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"YongJinShouRu"
,
formatter
:
this
.
moneyFormat
,
title
:
"佣金收入"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"YingFu"
,
formatter
:
this
.
moneyFormat
,
title
:
"应付金额"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"MaoLi"
,
formatter
:
this
.
moneyFormat
,
title
:
"毛利"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"MaoLiRate"
,
formatter
:
this
.
moneyFormat
,
title
:
"毛利率"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"ShiJiLiRun"
,
formatter
:
this
.
moneyFormat
,
title
:
"实际利润"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"Remark"
,
formatter
:
this
.
moneyFormat
,
title
:
"备注"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"BName"
,
title
:
"公司别"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"TransportCD"
,
title
:
"成都"
,
width
:
50
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"TransportKM"
,
title
:
"昆明"
,
width
:
50
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"TransportCQ"
,
title
:
"重庆"
,
width
:
50
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"TransportWH"
,
title
:
"武汉"
,
width
:
50
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"TransportXA"
,
title
:
"西安"
,
width
:
50
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"TransportCS"
,
title
:
"长沙"
,
width
:
50
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"TransportGY"
,
title
:
"贵阳"
,
width
:
50
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"TransportNC"
,
title
:
"南昌"
,
width
:
50
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"TransportXM"
,
title
:
"厦门"
,
width
:
50
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"TransportLZ"
,
title
:
"兰州"
,
width
:
50
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"TransportNJ"
,
title
:
"南京"
,
width
:
50
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"TransportWT"
,
title
:
"微途"
,
width
:
50
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"TransportHF"
,
title
:
"合肥"
,
width
:
50
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"TransportNN"
,
title
:
"南宁"
,
width
:
50
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"TransportCost"
,
formatter
:
this
.
moneyFormat
,
title
:
"联运成本"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"YingYeE"
,
formatter
:
this
.
moneyFormat
,
title
:
"联运营业额"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"RealIncome"
,
formatter
:
this
.
moneyFormat
,
title
:
"实际营业额"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"GRPNum"
,
title
:
"GRP"
,
width
:
60
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"TKTNum"
,
title
:
"TKT"
,
width
:
60
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"VisaNum"
,
title
:
"VISA"
,
width
:
60
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"ZiYouXingNum"
,
title
:
"自由行"
,
width
:
60
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"DiJieNum"
,
title
:
"地接"
,
width
:
60
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"HotelNum"
,
title
:
"酒店"
,
width
:
60
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"DanTuanNum"
,
title
:
"单团"
,
width
:
60
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"HuZhaoNum"
,
title
:
"护照"
,
width
:
60
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"AverageIncome"
,
formatter
:
this
.
moneyFormat
,
title
:
"平均收入"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"AverageCost"
,
formatter
:
this
.
moneyFormat
,
title
:
"平均成本"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
},
{
field
:
"AverageProfit"
,
formatter
:
this
.
moneyFormat
,
title
:
"平均利润"
,
width
:
90
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
isResize
:
true
}
],
footer
:
[],
pageSize
:
6
,
pageIndex
:
1
};
},
created
()
{},
components
:
{},
mounted
()
{
let
allH
,
allW
,
cH
,
cW
;
allH
=
document
.
documentElement
.
clientHeight
;
allW
=
document
.
documentElement
.
clientWidth
;
cW
=
allW
-
90
;
cH
=
allH
-
350
;
this
.
msg
.
pageSize
=
parseInt
(
cH
/
30
)
-
1
;
let
userInfo
=
this
.
getLocalStorage
();
this
.
getCompanyMsg
.
RB_Group_Id
=
userInfo
.
RB_Group_id
;
//集团ID
this
.
userId
=
userInfo
.
EmployeeId
;
this
.
getCompanyList
();
this
.
getPageList
();
this
.
getLineList
();
this
.
getStartList1
();
},
methods
:
{
submitKaiqiZzBox
:
function
()
{
// 开关闸提交
if
(
this
.
kaiqiZzMsg
.
QStartDate
===
""
||
this
.
kaiqiZzMsg
.
QEndDate
===
""
)
{
return
this
.
$message
.
error
(
"请选择发团日期"
);
}
this
.
kaiqiZzLoading
=
true
;
this
.
apipost
(
"travel_post_UpdateBatchBrakeAccountStatus"
,
this
.
kaiqiZzMsg
,
r
=>
{
if
(
r
.
data
.
resultCode
===
1
)
{
this
.
getPageList
();
this
.
initKaiqiZzBox
();
this
.
kaiqiZzLoading
=
false
;
this
.
$message
.
success
(
r
.
data
.
message
);
}
else
{
this
.
kaiqiZzLoading
=
false
;
}
},
null
);
},
openKaiQiZzBox
:
function
(
text
)
{
// 打开开关闸弹窗
this
.
kaiqiZzMsg
.
Is_Open
=
text
===
"一键开启"
?
0
:
1
;
this
.
kaiqiZzTitle
=
text
;
this
.
kaiqiZzBox
=
true
;
},
initKaiqiZzBox
:
function
()
{
// 初始化开关闸信息
this
.
KaiqiZzTime
=
[];
this
.
kaiqiZzMsg
=
{
QStartDate
:
""
,
QEndDate
:
""
,
Is_Open
:
""
};
this
.
kaiqiZzBox
=
false
;
},
method5
:
function
()
{
let
msg
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
msg
));
delete
msg
.
pageIndex
;
delete
msg
.
pageSize
;
msg
.
EmployeeId
=
this
.
userId
;
this
.
GetLocalFile
(
"financestatistics_post_OutToExcelRevenueReportList"
,
msg
,
"营收报表.xls"
);
},
exportExcelCurrentPage
()
{
//待实现
// 导出文件名
let
xlsxName
=
"团队营收报表"
;
// 数据源
let
dataSource
=
this
.
DataList
;
let
data
=
[];
// 创建表头数据
data
.
push
([
"线路"
,
"团队编号"
,
"团号"
,
"是否有联运支出"
,
"应收金额"
,
"实收金额"
,
"退款"
,
"平台税金"
,
"待收金额"
,
"溢收金额"
,
"人数"
,
"邀请函"
,
"车资"
,
"机票款"
,
"国内联运机票"
,
"签证"
,
"其他"
,
"地接款支出"
,
"地接款收入"
,
"自费收入"
,
"小费收入"
,
"佣金收入"
,
"应付金额"
,
"毛利"
,
"毛利率"
,
"实际利润"
,
"备注"
,
"公司别"
,
"成都"
,
"昆明"
,
"重庆"
,
"武汉"
,
"西安"
,
"长沙"
,
"贵阳"
,
"南昌"
,
"厦门"
,
"兰州"
,
"南京"
,
"微途"
,
"合肥"
,
"南宁"
,
"联运成本"
,
"营业额"
,
"GRP"
,
"TKT"
,
"VISA"
,
"自由行"
,
"地接"
,
"酒店"
,
"单团"
,
"护照"
,
"平均收入"
,
"平均成本"
,
"平均利润"
]);
downloadExcelEasy
.
downLoad
(
data
[
0
],
dataSource
,
this
.
footer
);
return
;
let
wscols
=
{};
// 每列的宽度
wscols
=
[];
// 组装表格内容
dataSource
.
forEach
((
x
,
index
)
=>
{
console
.
log
(
index
);
let
obj
=
[];
obj
.
push
(
x
.
FrID
+
" "
);
obj
.
push
(
x
.
TCNUM
);
obj
.
push
(
x
.
TCID
);
obj
.
push
(
"否"
);
for
(
let
i
=
0
;
i
<=
data
[
0
].
length
-
5
;
i
++
)
{
obj
.
push
(
Math
.
random
()
*
9999
);
}
data
.
push
(
obj
);
if
(
index
===
dataSource
.
length
-
1
)
{
let
obj
=
[];
this
.
footer
[
0
].
forEach
(
x
=>
{
obj
.
push
(
x
);
});
data
.
push
(
obj
);
}
});
let
colName
=
[
"A"
,
"B"
,
"C"
,
"D"
,
"E"
,
"F"
,
"G"
,
"H"
,
"I"
,
"J"
,
"K"
,
"L"
,
"M"
,
"N"
,
"O"
,
"P"
,
"Q"
,
"R"
,
"S"
,
"T"
,
"U"
,
"V"
,
"W"
,
"X"
,
"Y"
,
"Z"
,
"AA"
,
"AB"
,
"AC"
,
"AD"
,
"AE"
,
"AF"
,
"AG"
,
"AH"
,
"AI"
,
"AJ"
,
"AK"
,
"AL"
,
"AM"
,
"AN"
,
"AO"
,
"AP"
,
"AQ"
,
"AR"
,
"AS"
,
"AT"
,
"AU"
,
"AV"
,
"AW"
,
"AX"
,
"AY"
,
"AZ"
,
"BA"
,
"BB"
,
"BC"
,
"BD"
,
"BE"
,
"BF"
];
const
ws
=
XLSX
.
utils
.
aoa_to_sheet
(
data
);
ws
[
"!cols"
]
=
wscols
;
ws
[
"!rows"
]
=
[];
// colName.forEach((x,index)=>{
// wscols.push({wpx: 100})
// });
// dataSource.forEach((x,index)=>{
// if(index===dataSource.length)
// ws['!rows'].push({ hpx:30 });
// else
// ws['!rows'].push({});
// });
const
wb
=
XLSX
.
utils
.
book_new
();
XLSX
.
utils
.
book_append_sheet
(
wb
,
ws
,
xlsxName
);
var
dataInfo
=
wb
.
Sheets
[
wb
.
SheetNames
[
0
]];
console
.
log
(
data
[
0
].
length
);
console
.
log
(
colName
.
length
);
// return
data
[
0
].
forEach
((
x
,
i
)
=>
{
dataInfo
[
colName
[
i
]
+
"1"
].
s
=
{
fill
:
{
fgColor
:
{
rgb
:
"#ffff00"
}
},
font
:
{
name
:
"微软雅黑"
,
sz
:
32
,
color
:
{
rgb
:
"#ffff00"
},
bold
:
true
,
italic
:
true
,
underline
:
true
},
alignment
:
{
horizontal
:
"center"
,
vertical
:
"center"
}
};
});
console
.
log
(
dataInfo
);
// return
XLSX
.
writeFile
(
wb
,
xlsxName
+
".xlsx"
);
},
moneyFormat
(
rowData
,
rowIndex
,
pagingIndex
,
field
)
{
if
(
field
===
"YingShou"
)
return
this
.
priceFormat
(
rowData
.
YingShou
);
if
(
field
===
"ShiShou"
)
return
this
.
priceFormat
(
rowData
.
ShiShou
);
if
(
field
===
"TuiKuan"
)
return
this
.
priceFormat
(
rowData
.
TuiKuan
);
if
(
field
===
"PingTaiShuiJin"
)
return
this
.
priceFormat
(
rowData
.
PingTaiShuiJin
);
if
(
field
===
"DaiShou"
)
return
this
.
priceFormat
(
rowData
.
DaiShou
);
if
(
field
===
"ZaiTu"
)
return
this
.
priceFormat
(
rowData
.
ZaiTu
);
if
(
field
===
"RealIncome"
)
return
this
.
priceFormat
(
rowData
.
RealIncome
);
if
(
field
===
"YiShou"
)
return
this
.
priceFormat
(
rowData
.
YiShou
);
if
(
field
===
"YaoQingHan"
)
return
this
.
priceFormat
(
rowData
.
YaoQingHan
);
if
(
field
===
"CheZi"
)
return
this
.
priceFormat
(
rowData
.
CheZi
);
if
(
field
===
"JiPiao"
)
return
this
.
priceFormat
(
rowData
.
JiPiao
);
if
(
field
===
"GuoNeiLianYunJiPiao"
)
return
this
.
priceFormat
(
rowData
.
GuoNeiLianYunJiPiao
);
if
(
field
===
"Visa"
)
return
this
.
priceFormat
(
rowData
.
Visa
);
if
(
field
===
"QiTa"
)
return
this
.
priceFormat
(
rowData
.
QiTa
);
if
(
field
===
"DiJieZhiChu"
)
return
this
.
priceFormat
(
rowData
.
DiJieZhiChu
);
if
(
field
===
"DiJieShouRu"
)
return
this
.
priceFormat
(
rowData
.
DiJieShouRu
);
if
(
field
===
"ZiFei"
)
return
this
.
priceFormat
(
rowData
.
ZiFei
);
if
(
field
===
"MianShuiDian"
)
return
this
.
priceFormat
(
rowData
.
MianShuiDian
);
if
(
field
===
"XiaoFeiShouRu"
)
return
this
.
priceFormat
(
rowData
.
XiaoFeiShouRu
);
if
(
field
===
"YongJinShouRu"
)
return
this
.
priceFormat
(
rowData
.
YongJinShouRu
);
if
(
field
===
"YingFu"
)
return
this
.
priceFormat
(
rowData
.
YingFu
);
if
(
field
===
"MaoLi"
)
return
this
.
priceFormat
(
rowData
.
MaoLi
);
if
(
field
===
"MaoLiRate"
)
return
this
.
priceFormat
(
rowData
.
MaoLiRate
);
if
(
field
===
"ShiJiLiRun"
)
return
this
.
priceFormat
(
rowData
.
ShiJiLiRun
);
if
(
field
===
"TransportCost"
)
return
this
.
priceFormat
(
rowData
.
TransportCost
);
if
(
field
===
"YingYeE"
)
return
this
.
priceFormat
(
rowData
.
YingYeE
);
if
(
field
===
"AverageIncome"
)
return
this
.
priceFormat
(
rowData
.
AverageIncome
);
if
(
field
===
"AverageCost"
)
return
this
.
priceFormat
(
rowData
.
AverageCost
);
if
(
field
===
"AverageProfit"
)
return
this
.
priceFormat
(
rowData
.
AverageProfit
);
},
setFooterCellClass
(
rowIndex
,
colIndex
,
value
)
{
if
(
colIndex
===
0
)
{
return
"footer-cell-class-name-title"
;
}
else
{
return
"footer-cell-class-name-normal"
;
}
},
priceFormat
(
value
)
{
if
(
value
==
null
)
{
return
0.0
;
}
let
nStr
=
value
.
toFixed
(
2
);
nStr
+=
""
;
let
x
=
nStr
.
split
(
"."
);
let
x1
=
x
[
0
];
let
x2
=
x
.
length
>
1
?
"."
+
x
[
1
]
:
""
;
var
rgx
=
/
(\d
+
)(\d{3})
/
;
while
(
rgx
.
test
(
x1
))
{
x1
=
x1
.
replace
(
rgx
,
"$1"
+
","
+
"$2"
);
}
return
x1
+
x2
;
},
columnCellClass
(
rowIndex
,
columnName
,
rowData
)
{
// 给三行column为‘hobby’的列设置className
if
(
columnName
===
"LineName"
)
{
return
"column-cell-class-name-test"
;
}
if
(
columnName
===
"TCNUM"
)
{
return
"column-cell-class-name-test2"
;
}
if
(
columnName
===
"TCID"
)
{
return
"column-cell-class-name-test3"
;
}
if
(
columnName
===
"islianyun"
)
{
return
"column-cell-class-name-test4"
;
}
if
(
rowIndex
===
18
)
{
return
"column-cell-class-name-test-row"
;
}
},
getStartList1
()
{
// 获取出发城市
this
.
apipost
(
"city_post_GetList"
,
{
isDefault
:
-
1
,
priceType
:
-
1
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
startCityList1
=
res
.
data
.
data
;
}
else
{
console
.
log
(
res
.
data
);
}
}
);
},
getLineTeamList
(
lineId
)
{
//获取系列列表
this
.
LineTeamList
=
[];
this
.
apipost
(
"team_post_GetList"
,
{
lineID
:
lineId
,
isTOOP
:
1
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
msg
.
LineTeamId
=
"-1"
;
this
.
LineTeamList
=
res
.
data
.
data
;
}
}
);
},
getLineList
()
{
// 获取线路
this
.
apipost
(
"line_post_GetAllList"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
LineList
=
res
.
data
.
data
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
});
},
customCompFunc
(
param
)
{
console
.
log
(
param
);
},
compare
(
property
,
type
)
{
// 升序 t 1升 2降
if
(
type
===
1
)
{
return
function
(
a
,
b
)
{
let
value1
=
a
[
property
];
let
value2
=
b
[
property
];
return
value1
-
value2
;
};
}
else
{
return
function
(
a
,
b
)
{
let
value1
=
a
[
property
];
let
value2
=
b
[
property
];
return
value2
-
value1
;
};
}
},
sortChange
(
param
)
{
console
.
log
(
param
);
if
(
param
.
YingShou
===
"asc"
)
{
this
.
DataList
.
sort
(
this
.
compare
(
"YingShou"
,
1
));
}
else
if
(
param
.
YingShou
===
"desc"
)
{
this
.
DataList
.
sort
(
this
.
compare
(
"YingShou"
,
2
));
}
else
{
}
//自己写实现
//{gender:"",name:"asc"}
},
// 数据筛选
filterMethod
(
filters
)
{
console
.
log
(
filters
);
// let tableData = this.DataList;
// if (filters.FrID && filters.FrID.length>0){
// tableData = tableData.filter(item => filters.FrID.indexOf(item.FrID)!=-1)
// }
// if (filters.name!='' && filters.name!='-1'){
// if(!Array.isArray(filters.name))
// tableData = tableData.filter(item => filters.name==item.id);
// else
// tableData = tableData.filter(item => filters.name==item.id);
// }
// if (filters.hobby!=''){
// tableData = tableData.filter(item => item.hobby.indexOf(filters.hobby)!=-1);
// }
// if(filters.dateRange.beginDate){
// tableData = tableData.filter(item => new Date(filters.dateRange.beginDate).getTime()
<=
new
Date
(
item
.
dateRange
).
getTime
());
// }
// if(filters.dateRange.endDate){
// tableData = tableData.filter(item => new Date(filters.dateRange.endDate).getTime()>=new Date(item.dateRange).getTime());
// }
// this.pageIndex = 1
this
.
total
=
tableData
.
length
;
// this.tableData = tableData.filter((item,index)=>index==0);
},
handleCurrentChanges
(
val
)
{
this
.
pageIndex
=
this
.
msg
.
pageIndex
=
val
;
this
.
getPageList
();
},
getPageList
()
{
// 获取列表数据
this
.
loading
=
true
;
if
(
!
this
.
msg
.
OutBranchId
&&
this
.
msg
.
OutBranchId
!==
0
)
this
.
msg
.
OutBranchId
=
-
1
;
if
(
!
this
.
msg
.
StartCityId
)
this
.
msg
.
StartCityId
=
0
;
if
(
!
this
.
msg
.
LineId
)
this
.
msg
.
LineId
=
0
;
if
(
!
this
.
msg
.
LineTeamId
)
this
.
msg
.
LineTeamId
=
0
;
if
(
!
this
.
msg
.
TCID
)
this
.
msg
.
TCID
=
0
;
if
(
this
.
msg
.
startDate
==
""
)
this
.
msg
.
startDate
=
"2019-01-01"
;
this
.
apipost
(
"financestatistics_post_GetPageList"
,
this
.
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
let
data
=
res
.
data
.
data
.
pageData
;
// res.data.data.TotalRevenue
this
.
total
=
res
.
data
.
data
.
count
;
if
(
this
.
total
==
0
)
{
this
.
DataList
=
[];
}
else
{
let
newData
=
[];
data
.
forEach
((
x
,
index
)
=>
{
if
(
index
!==
data
.
length
-
1
)
{
x
.
Is_Transport
=
x
.
Is_Transport
===
0
?
"否"
:
"是"
;
newData
.
push
(
x
);
}
else
{
x
.
MaoLiRate
=
this
.
total
===
0
?
0
:
parseFloat
(
x
.
MaoLiRate
/
this
.
total
);
x
.
AverageIncome
=
this
.
total
===
0
?
0
:
parseFloat
(
x
.
AverageIncome
/
this
.
total
);
x
.
AverageCost
=
this
.
total
===
0
?
0
:
parseFloat
(
x
.
AverageCost
/
this
.
total
);
x
.
AverageProfit
=
this
.
total
===
0
?
0
:
parseFloat
(
x
.
AverageProfit
/
this
.
total
);
x
.
LineName
=
"合计"
;
x
.
TCID
=
""
;
x
.
TCNUM
=
""
;
x
.
Is_Transport
=
""
;
x
.
BName
=
""
;
newData
.
push
(
x
);
}
});
this
.
DataList
=
newData
;
// this.footer.push(data[data.length-1])
}
this
.
loading
=
false
;
}
else
{
this
.
loading
=
false
;
this
.
$message
.
error
(
res
.
data
.
message
);
}
if
((
this
.
msg
.
OutBranchId
=
-
1
))
this
.
msg
.
OutBranchId
=
-
1
;
if
(
!
this
.
msg
.
StartCityId
)
this
.
msg
.
StartCityId
=
0
;
if
(
!
this
.
msg
.
LineId
)
this
.
msg
.
LineId
=
0
;
if
(
!
this
.
msg
.
LineTeamId
)
this
.
msg
.
LineTeamId
=
0
;
if
(
!
this
.
msg
.
TCID
)
this
.
msg
.
TCID
=
""
;
},
err
=>
{}
);
},
getCompanyList
()
{
//获取公司列表
this
.
apipost
(
"admin_get_BranchGetList"
,
this
.
getCompanyMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
CompanyList
=
res
.
data
.
data
;
}
else
{
}
},
err
=>
{}
);
},
timeAdd
(
type
)
{
// 日期格式
if
(
type
===
1
)
{
if
(
!
this
.
productionDate
)
{
this
.
msg
.
startDate
=
""
;
this
.
msg
.
endDate
=
""
;
return
;
}
this
.
msg
.
startDate
=
this
.
productionDate
[
0
];
this
.
msg
.
endDate
=
this
.
productionDate
[
1
];
}
if
(
type
===
2
)
{
if
(
!
this
.
KaiqiZzTime
)
{
this
.
kaiqiZzMsg
.
QStartDate
=
""
;
this
.
kaiqiZzMsg
.
QEndDate
=
""
;
return
;
}
this
.
kaiqiZzMsg
.
QStartDate
=
this
.
KaiqiZzTime
[
0
];
this
.
kaiqiZzMsg
.
QEndDate
=
this
.
KaiqiZzTime
[
1
];
}
},
handleCurrentChange
(
val
)
{
//翻页
this
.
msg
.
pageIndex
=
val
;
this
.
getPageList
();
},
resetPageIndex
()
{
// 重置页码
this
.
msg
.
pageIndex
=
1
;
this
.
currentPage
=
1
;
}
}
};
</
script
>
src/components/FinancialModule/ReportForm/TeamRevenueReport.vue
View file @
44cad6c2
...
...
@@ -627,7 +627,8 @@ export default {
LineTeamId
:
""
,
TCID
:
""
,
startDate
:
""
,
endDate
:
""
endDate
:
""
,
Type
:
1
,
},
getCompanyMsg
:
{
// 公司
...
...
src/router/config.js
View file @
44cad6c2
...
...
@@ -2245,6 +2245,13 @@ export default {
meta
:
{
title
:
'团队营收变更报表'
},
},
{
//财务 报表 联运报表
path
:
'/CombinedRevenueReport'
,
name
:
'CombinedRevenueReport'
,
component
:
resolve
=>
require
([
'@/components/FinancialModule/ReportForm/CombinedRevenueReport'
],
resolve
),
meta
:
{
title
:
'团队营收变更报表'
},
},
{
// 销售 制作广告
path
:
'/advert'
,
name
:
'advert'
,
...
...
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