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
be7a4d41
Commit
be7a4d41
authored
Jun 25, 2019
by
罗超
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/superman
parents
c3557d3d
7b961029
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
3819 additions
and
54 deletions
+3819
-54
App.vue
src/App.vue
+1
-1
Details.vue
src/components/Details.vue
+6
-0
roomReservationsDetails.vue
src/components/Hotel/roomReservationsDetails.vue
+22
-5
leaderReimbursement.vue
src/components/LeaderManagement/leaderReimbursement.vue
+37
-22
bookDinnerStatisticsDetails.vue
src/components/Restaurant/bookDinnerStatisticsDetails.vue
+3
-3
productQuery.vue
src/components/SalesModule/productQuery.vue
+1
-1
VisaShouSun.vue
src/components/SalesVisa/VisaShouSun.vue
+931
-0
TicketShouSun.vue
src/components/Ticketing/TicketShouSun.vue
+931
-0
AmoebaDetail.vue
src/components/TravelManager/TravelList/AmoebaDetail.vue
+105
-0
TravelControlList.vue
...components/TravelManager/TravelList/TravelControlList.vue
+2
-2
VoucherInquiry.vue
src/components/administrative/VoucherInquiry.vue
+410
-0
VoucherInquiryAdd.vue
src/components/administrative/VoucherInquiryAdd.vue
+117
-0
typeModel.vue
src/components/administrative/model/typeModel.vue
+33
-0
busStatistics.vue
src/components/busManagement/busStatistics.vue
+5
-2
commonHotelInfo.vue
src/components/commonPage/commonHotelInfo.vue
+6
-2
commonShouSun.vue
src/components/commonPage/commonShouSun.vue
+168
-0
dmcShouSun.vue
src/components/dmc/manager/dmcShouSun.vue
+930
-0
dmcTotalTable.vue
src/components/dmc/manager/dmcTotalTable.vue
+64
-15
config.js
src/router/config.js
+47
-1
No files found.
src/App.vue
View file @
be7a4d41
...
...
@@ -113,7 +113,7 @@ export default {
}
</
script
>
<
style
>
@import
"//at.alicdn.com/t/font_635492_
ea4o8lkzm2b
.css"
;
@import
"//at.alicdn.com/t/font_635492_
ztxwijjubn
.css"
;
@import
"./assets/css/Semibold.css"
;
@import
"./assets/css/global/config.css"
;
@import
"./assets/css/fileIcon.css"
;
...
...
src/components/Details.vue
View file @
be7a4d41
...
...
@@ -545,6 +545,9 @@ export default {
case
"/addIntegralMall"
:
//新增商品
path
=
"/IntegralMall"
;
break
;
case
"/VoucherInquiryAdd"
:
//新增调查
path
=
"/VoucherInquiry"
;
break
;
}
//找到Root
...
...
@@ -762,6 +765,9 @@ export default {
case
"/addIntegralMall"
:
//新增商品
path
=
"/IntegralMall"
;
break
;
case
"/VoucherInquiryAdd"
:
//新增调查
path
=
"/VoucherInquiry"
;
break
;
}
//找到Root
...
...
src/components/Hotel/roomReservationsDetails.vue
View file @
be7a4d41
...
...
@@ -208,9 +208,8 @@
<!--返佣-->
<td>
<p
class=
"pHouseStyle link"
@
input=
"calculationPrice(subItem)"
>
<span
class=
"spanlink"
v-if=
'childItem.IsRebateRatio==0 '
@
click=
"goUrl('HotelInfo',childItem,'酒店管理')"
>
设置
</span>
<span
v-if=
'childItem.IsRebateRatio!=0'
>
{{
childItem
.
RebateRatio
}}
</span>
<span
v-if=
'childItem.RebateRatio>0'
>
{{
childItem
.
RebateRatio
}}
%
</span>
<span
class=
"spanlink"
v-else
@
click=
"goUrl('HotelInfo',childItem,'酒店管理')"
>
设置
</span>
</p>
</td>
<!-- 金额总计 -->
...
...
@@ -233,10 +232,19 @@
<tr>
<td
colspan=
"2"
style=
"height:5px;"
></td>
</tr>
<tr>
<td
width=
"70"
style=
"text-align:right;"
>
确认时间:
</td>
<td>
<el-date-picker
v-model=
'subItem.SureTime'
class=
'w135'
value-format=
"yyyy-MM-dd"
type=
"date"
></el-date-picker>
</td>
</tr>
<tr>
<td
colspan=
"2"
style=
"height:5px;"
></td>
</tr>
<tr>
<td
width=
"70"
style=
"text-align:right;"
>
税入/税别
</td>
<td>
<el-select
class=
'w135 sel'
v-model=
'subItem.TaxType'
:placeholder=
"$t('pub.pleaseSel')"
>
<el-select
class=
'w135 sel'
v-model=
'subItem.TaxType'
:placeholder=
"$t('pub.pleaseSel')"
@
change=
"calculationPrice(subItem)"
>
<el-option
label=
'请选择'
:value=
'0'
></el-option>
<el-option
label=
'税入'
:value=
'1'
></el-option>
<el-option
label=
'税别'
:value=
'2'
></el-option>
...
...
@@ -542,6 +550,7 @@
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
IsOperation
=
res
.
data
.
data
.
IsOperation
;
let
list
=
res
.
data
.
data
.
HotelOrderListReport
;
this
.
CreateBy
=
res
.
data
.
data
.
CreateBy
;
this
.
CreateByPhoto
=
res
.
data
.
data
.
CreateByPhoto
;
this
.
CreateByAccount
=
res
.
data
.
data
.
CreateByAccount
;
...
...
@@ -577,7 +586,15 @@
calculationPrice
(
obj
)
{
let
totalPrice
=
0
;
obj
.
OrderDetailsList
.
forEach
(
item
=>
{
totalPrice
+=
item
.
UnitPrice
*
(
item
.
BookNum
-
item
.
HotelDiscount
)
*
(
1
-
item
.
RebateRatio
/
100
);
//税别
if
(
obj
.
TaxType
==
2
)
{
totalPrice
+=
item
.
UnitPrice
*
(
item
.
BookNum
-
item
.
HotelDiscount
)
*
(
1
+
0.08
-
item
.
RebateRatio
/
100
);
}
else
{
totalPrice
+=
item
.
UnitPrice
*
(
item
.
BookNum
-
item
.
HotelDiscount
)
*
(
1
-
item
.
RebateRatio
/
100
);
}
})
obj
.
TotalPrice
=
totalPrice
.
toFixed
(
2
);
this
.
$forceUpdate
();
...
...
src/components/LeaderManagement/leaderReimbursement.vue
View file @
be7a4d41
...
...
@@ -119,7 +119,7 @@
</table>
<table
class=
"leaderReimbursementTable"
border=
"0"
cellspacing=
"1"
cellpadding=
"0"
>
<tr>
<th
colspan=
"1
4
"
class=
"bgwhite"
>
酒店使用
</th>
<th
colspan=
"1
5
"
class=
"bgwhite"
>
酒店使用
</th>
</tr>
<tr
class=
"title"
>
<th
width=
"100"
>
使用时间
</th>
...
...
@@ -133,6 +133,7 @@
<th
width=
""
>
单价/人
</th>
<th
width=
""
>
金额小计
</th>
<th
width=
""
>
返佣
</th>
<th
width=
""
>
税入/税别
</th>
<th
width=
""
>
总金额
</th>
<th
width=
""
>
付款方式
</th>
<th
width=
"100"
>
备注
</th>
...
...
@@ -179,10 +180,18 @@
{{
moneyFormat
(
childItem
.
UnitPrice
*
(
childItem
.
BookNum
-
childItem
.
HotelDiscount
))
}}
</td>
<td>
{{
childItem
.
RebateRatio
}}
%
{{
childItem
.
RebateRatio
}}
%
</td>
<td>
<template
v-if=
"childItem.TaxType==1"
>
税入
</
template
>
<
template
v-if=
"childItem.TaxType==2"
>
税别
</
template
>
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"5"
>
{{
hotelTotalPrice
(
subItem
.
OrderDetailsList
)
}}
{{hotelTotalPrice(subItem.OrderDetailsList
,subItem
)}}
</td>
<td
v-if=
"childIndex==0"
:rowspan=
"5"
>
<span
v-if=
"subItem.PayStyle === 1"
>
现付
</span>
...
...
@@ -202,7 +211,7 @@
</template>
<tr
v-if=
"TotalNav.reimburseTotalPrice"
>
<td>
总金额
</td>
<td
colspan=
"1
4
"
>
<td
colspan=
"1
5
"
>
{{moneyFormat(TotalNav.reimburseTotalPrice.ExpendTotalPrice)}}
</td>
<!-- <td>签单/预付/抵扣总金额</td>
...
...
@@ -422,9 +431,7 @@
@
click=
"goFncUrl('DebitNote', subItem.FinanceId)"
>
借支单
</span></p>
</td>
<td
width=
"80"
class=
"_zhidan"
>
<input
type=
"button"
value=
"制单"
class=
"normalBtn"
@
click=
"goZhiDan(item)"
/>
<input
type=
"button"
value=
"制单"
class=
"normalBtn"
@
click=
"goZhiDan(item)"
/>
</td>
</tr>
</table>
...
...
@@ -542,15 +549,15 @@
goZhiDan
:
function
(
obj
)
{
if
(
this
.
list
.
hotelNoSureInfo
!==
''
)
{
this
.
$confirm
(
`
${
this
.
list
.
hotelNoSureInfo
}
,是否去制单?`
,
this
.
$t
(
'tips.tips'
),
{
confirmButtonText
:
this
.
$t
(
'pub.sureBtn'
),
cancelButtonText
:
this
.
$t
(
'pub.cancelBtn'
),
type
:
'warning'
confirmButtonText
:
this
.
$t
(
'pub.sureBtn'
),
cancelButtonText
:
this
.
$t
(
'pub.cancelBtn'
),
type
:
'warning'
}).
then
(()
=>
{
this
.
goZhiDan2
(
obj
)
this
.
goZhiDan2
(
obj
)
}).
catch
(()
=>
{
return
false
return
false
});
}
else
{
}
else
{
this
.
goZhiDan2
(
obj
)
}
},
...
...
@@ -622,13 +629,21 @@
})
return
this
.
moneyFormat
(
totalPrice
)
},
hotelTotalPrice
(
obj
)
{
hotelTotalPrice
(
obj
,
subItem
)
{
let
totalPrice
=
0
obj
.
forEach
(
x
=>
{
if
(
x
.
PayStyle
===
1
)
{
totalPrice
+=
x
.
UnitPrice
*
(
x
.
BookNum
-
x
.
HotelDiscount
)
*
(
1
-
x
.
RebateRatio
/
100
)
if
(
subItem
.
TaxType
==
2
)
{
if
(
x
.
PayStyle
===
1
)
{
totalPrice
+=
x
.
UnitPrice
*
(
x
.
BookNum
-
x
.
HotelDiscount
)
*
(
1
+
0.08
-
x
.
RebateRatio
/
100
)
}
else
{
totalPrice
+=
0
}
}
else
{
totalPrice
+=
0
if
(
x
.
PayStyle
===
1
)
{
totalPrice
+=
x
.
UnitPrice
*
(
x
.
BookNum
-
x
.
HotelDiscount
)
*
(
1
-
x
.
RebateRatio
/
100
)
}
else
{
totalPrice
+=
0
}
}
})
return
this
.
moneyFormat
(
totalPrice
)
...
...
@@ -683,11 +698,11 @@
this
.
picIsShow
=
true
},
peopleStrToWord
(
str
)
{
if
(
str
==
'1'
)
return
'
成
人'
if
(
str
==
'2'
)
return
'
儿童
'
if
(
str
==
'3'
)
if
(
str
==
1
)
return
'
大
人'
if
(
str
==
2
)
return
'
中人
'
if
(
str
==
3
)
return
'小人'
},
UseDinnerTypeToWord
(
str
)
{
...
...
src/components/Restaurant/bookDinnerStatisticsDetails.vue
View file @
be7a4d41
...
...
@@ -222,12 +222,12 @@
});
},
personStrToWord
(
str
)
{
if
(
str
==
1
)
if
(
str
==
1
)
return
'大人'
if
(
str
==
2
)
return
'
儿童
'
return
'
中人
'
if
(
str
==
3
)
return
'
婴儿
'
return
'
小人
'
},
getList
()
{
this
.
loading
=
true
;
...
...
src/components/SalesModule/productQuery.vue
View file @
be7a4d41
...
...
@@ -144,7 +144,7 @@
.PQ_detail
tr
th
,
.v-table-title-cell
{
background
:
#E6E6E6
;
height
:
40px
;
font-size
:
14px
;
border-right
:
1px
solid
#e6e6e6
;
color
:
#333
;}
.PQ_detail
tr
{
background
:
#fff
;
text-align
:
center
;
height
:
40px
;}
.PQ_detail
tr
td
{
font-size
:
12px
;
border
:
1px
solid
#E5E5E5
;}
.TC_HotelPop
>
div
{
.TC_HotelPop
{
overflow
:
auto
;
max-height
:
350px
;
}
...
...
src/components/SalesVisa/VisaShouSun.vue
0 → 100644
View file @
be7a4d41
This diff is collapsed.
Click to expand it.
src/components/Ticketing/TicketShouSun.vue
0 → 100644
View file @
be7a4d41
This diff is collapsed.
Click to expand it.
src/components/TravelManager/TravelList/AmoebaDetail.vue
0 → 100644
View file @
be7a4d41
<
style
>
.AmoebaTitle
{
font-size
:
14px
;
margin-bottom
:
20px
;
}
.AmoebaTCNUM
{
color
:
blue
;
}
.AmobaTable
{
width
:
800px
;
}
.AmobaTable
tr
th
{
border-right
:
1px
solid
#d1d1d1
;
}
.biaoTou
{
position
:
relative
;
margin
:
auto
;
width
:
150px
;
height
:
40px
;
box-sizing
:
border-box
;
text-indent
:
5px
;
background
:
linear-gradient
(
15deg
,
transparent
49.5%
,
#d1d1d1
49.5%
,
#d1d1d1
50.5%
,
transparent
50.5%
);
}
.biaoTou
em
:first-child
{
position
:
absolute
;
top
:
17px
;
left
:
20px
;
}
.biaoTou
em
:last-child
{
position
:
absolute
;
top
:
3px
;
right
:
20px
;
}
</
style
>
<
template
>
<div
class=
"flexOne AmoebaDetail"
>
<div
class=
"AmoebaTitle"
>
<span
class=
"AmoebaTCNUM"
>
{{
LtName
}}
{{
TCNUM
}}
</span>
阿米巴结算表
</div>
<table
class=
"singeRowTable AmobaTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
<tr>
<th
width=
"150"
>
<div
class=
"biaoTou"
>
<em>
项目
</em>
<em>
部门
</em>
</div>
</th>
<th>
票务
</th>
<th>
签证
</th>
<th>
日本地接部
</th>
</tr>
<tr
v-for=
"(item,index) in dataList"
>
<td>
{{
item
.
Name
}}
</td>
<td>
{{
item
.
Ticket
}}
</td>
<td>
{{
item
.
Visa
}}
</td>
<td>
{{
item
.
JapDiJie
}}
</td>
</tr>
</table>
</div>
</
template
>
<
script
>
export
default
{
data
()
{
return
{
msg
:
{
TCID
:
''
},
LtName
:
''
,
TCNUM
:
''
,
dataList
:
[],
};
},
methods
:
{
getList
()
{
//获取现有线路列表
this
.
loading
=
true
;
this
.
apipost
(
"sellorder_post_GetTravelSettlement"
,
this
.
msg
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
console
.
log
(
res
,
'resssss'
);
this
.
dataList
=
res
.
data
.
data
.
List
;
}
else
{
this
.
loading
=
false
;
}
},
err
=>
{}
);
},
},
mounted
()
{
this
.
LtName
=
this
.
$route
.
query
.
LtName
;
this
.
TCNUM
=
this
.
$route
.
query
.
TCNUM
;
this
.
msg
.
TCID
=
this
.
$route
.
query
.
TCID
;
this
.
getList
();
}
};
</
script
>
src/components/TravelManager/TravelList/TravelControlList.vue
View file @
be7a4d41
...
...
@@ -82,7 +82,7 @@
height
:
auto
;
}
.TC_HotelPop
>
div
{
.TC_HotelPop
{
overflow
:
auto
;
max-height
:
350px
;
}
...
...
@@ -490,7 +490,7 @@
<span
class=
"TCL-greenType"
>
{{
item
.
ClearOrderHour
}}
小时
</span>
</p>
<p
v-if=
"item.LineID==14 && item.HotelOrderListReports && item.HotelOrderListReports.length>0 "
>
<el-popover
width=
"7
0
0"
trigger=
"click"
popper-class=
"TC_HotelPop"
>
<el-popover
width=
"7
5
0"
trigger=
"click"
popper-class=
"TC_HotelPop"
>
<commonHotelInfo
:HotelObj=
"item.HotelOrderListReports"
:showHotelObj=
"showHotelObj"
></commonHotelInfo>
<span
slot=
"reference"
class=
"price"
style=
"cursor:pointer;text-decoration:underline;"
>
酒店预订状况
</span>
...
...
src/components/administrative/VoucherInquiry.vue
0 → 100644
View file @
be7a4d41
This diff is collapsed.
Click to expand it.
src/components/administrative/VoucherInquiryAdd.vue
0 → 100644
View file @
be7a4d41
<
style
>
.VoucherInquiryAdd
{
padding
:
25px
0
;
box-sizing
:
border-box
;
height
:
100%
;
/* background-color: #ffffff; */
}
.VoucherInquiryAdd
>
.el-col.left
{
box-shadow
:
1px
2px
4px
-1px
#cccccc
;
transition
:
all
linear
.5s
;
padding-top
:
20px
;
padding-bottom
:
20px
;
}
.VoucherInquiryAdd
>
.el-col.left
:hover
{
box-shadow
:
1px
2px
4px
-1px
#888888
;
}
.VoucherInquiryAdd
>
.el-col
{
height
:
100%
;
}
.VoucherInquiryAdd
.resource-lititle
span
{
display
:
block
;
border-left
:
4px
solid
#e95252
;
padding-left
:
10px
;
margin-bottom
:
20px
;
}
.VoucherInquiryAdd
>
.el-col
.type-item
{
color
:
#707070
;
font-size
:
12px
;
padding
:
1px
;
border
:
solid
1px
#d8d8d8
;
border-radius
:
2px
;
margin
:
0
6px
6px
0
;
cursor
:
pointer
;
padding
:
1px
8px
;
display
:
flex
;
align-items
:
center
;
}
.VoucherInquiryAdd
>
.el-col
.type-item
:hover
{
padding
:
0px
8px
;
border
:
solid
2px
#2672ff
;
color
:
#2672ff
;
}
.VoucherInquiryAdd
>
.el-col
.type-item
i
.iconfont
{
display
:
inline-block
;
margin-right
:
5px
;
}
</
style
>
<
template
>
<el-row
class=
"VoucherInquiryAdd"
:gutter=
"35"
>
<el-col
:span=
"4"
class=
"left"
>
<el-row
class=
"resource-lititle"
>
<span>
题目类型:
</span>
</el-row>
<el-row
:gutter=
"5"
>
<el-col
:span=
"12"
v-for=
"(item, index) in typeList"
:key=
"index"
>
<div
class=
"type-item"
@
click=
"creatItem(item)"
>
<i
class=
"iconfont"
:class=
"[item.icon]"
></i>
<span>
{{
item
.
name
}}
</span>
</div>
</el-col>
</el-row>
</el-col>
<el-col
:span=
"20"
>
<template
v-for=
"(item, index) in list"
>
<Type-Model
:itemIndex=
"itemIndex"
:type=
"type"
:itemData=
"item"
/>
</
template
>
</el-col>
</el-row>
</template>
<
script
>
import
typeModel
from
'./model/typeModel'
export
default
{
components
:
{
'Type-Model'
:
typeModel
,
},
data
()
{
return
{
typeList
:
[
{
type
:
2
,
icon
:
'icon-radio-checked'
,
name
:
'单选'
},
{
type
:
4
,
icon
:
'icon-duoxuan'
,
name
:
'多选'
},
{
type
:
1
,
icon
:
'icon-ge_xingji'
,
name
:
'评分'
},
{
type
:
4
,
icon
:
'icon-shuru'
,
name
:
'输入'
}
],
list
:
[],
type
:
-
1
,
childItem
:
{}
};
},
mounted
()
{
},
methods
:
{
creatItem
:
function
(
item
)
{
this
.
type
=
item
.
type
this
.
list
.
pueh
({
})
}
}
};
</
script
>
src/components/administrative/model/typeModel.vue
0 → 100644
View file @
be7a4d41
<
style
>
</
style
>
<
template
>
<div
class=
"model"
>
<!-- "1", "Name":"打分" -->
<div
v-if=
"type === 1"
>
</div>
<!-- "2", "Name":"单选" -->
<div
v-if=
"type === 2"
>
</div>
<!-- "3", "Name":"多选" -->
<div
v-if=
"type === 3"
>
</div>
<!-- "4", "Name":"文本" -->
<div
v-if=
"type === 4"
>
</div>
</div>
</
template
>
<
script
>
export
default
{
props
:
[
'type'
,
'itemIndex'
,
'itemData'
],
data
(){
return
{
}
}
}
</
script
>
src/components/busManagement/busStatistics.vue
View file @
be7a4d41
...
...
@@ -76,7 +76,7 @@
</div>
</td>
<td>
<el-popover
width=
"7
0
0"
trigger=
"click"
popper-class=
"TC_HotelPop"
>
<el-popover
width=
"7
5
0"
trigger=
"click"
popper-class=
"TC_HotelPop"
>
<commonHotelInfo
:HotelObj=
"item.CommonReport.PriceHotelResult"
:showHotelObj=
"showHotelObj"
></commonHotelInfo>
<div
slot=
"reference"
class=
"w80"
style=
"cursor:pointer;text-decoration:underline;"
>
酒店信息
</div>
</el-popover>
...
...
@@ -538,5 +538,8 @@
.busStatistics_tripDetails
table
tr
._color_666
th
{
padding
:
9px
15px
;
}
.TC_HotelPop
{
overflow
:
auto
;
max-height
:
350px
;
}
</
style
>
src/components/commonPage/commonHotelInfo.vue
View file @
be7a4d41
...
...
@@ -8,6 +8,7 @@
<th
style=
"width:150px;"
v-if=
"showHotelObj.showPrice"
>
使用数量/价格
</th>
<th
style=
"width:100px;"
v-if=
"showHotelObj.showPay"
>
付款方式
</th>
<th
style=
"width:120px"
v-if=
"showHotelObj.showZhan"
>
占房时间
</th>
<th
style=
"width:100px"
v-if=
"showHotelObj.showZhan"
>
确认时间
</th>
</tr>
<template
v-for=
"hotelItem in HotelObj"
>
<tr
v-for=
"(hotelSubItem,hotelSubIndex) in hotelItem.SubList"
>
...
...
@@ -52,14 +53,17 @@
{{
hotelSubItem
.
CreateDateStr
}}
</
template
>
</td>
<td
v-if=
"showHotelObj.showZhan"
>
{{hotelSubItem.SureTimeStr}}
</td>
</tr>
</template>
<tfoot
v-if=
"showHotelObj.showBtnList"
>
<tr>
<td
colspan=
"
7
"
style=
"padding:10px 0"
>
<td
colspan=
"
8
"
style=
"padding:10px 0"
>
<input
type=
"button"
class=
"normalBtn"
value=
"确定"
style=
"display:none;"
/>
<input
type=
"button"
class=
"normalBtn"
value=
"暂定"
style=
"display:none;"
/>
<input
type=
"button"
class=
"normalBtn"
value=
"下载"
style=
"display:none;"
@
click=
"DownLoadShouPeiShu()"
/>
<input
type=
"button"
class=
"normalBtn"
value=
"下载"
@
click=
"DownLoadShouPeiShu()"
/>
</td>
</tr>
</tfoot>
...
...
src/components/commonPage/commonShouSun.vue
0 → 100644
View file @
be7a4d41
<
style
>
.SnotSet
,
.TotalShouSun
{
color
:
#E95252
;
}
.totalShouSan
{
position
:
absolute
;
right
:
60px
;
font-size
:
14px
;
top
:
15px
;
}
</
style
>
<
template
>
<div>
<table
width=
"100%"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
class=
"singeRowTable"
>
<tr>
<td
colspan=
"4"
>
op收损设置人数:
<template
v-if=
"Type==1"
>
<el-input
class=
"w180"
placeholder=
"请输入"
@
keyup
.
native=
"checkInteger(dataList,'OpSetLossPeople')"
v-model=
"dataList.OpSetLossPeople"
type=
"text"
></el-input>
</
template
>
<
template
v-else
>
{{
dataList
.
OpSetLossPeople
}}
</
template
>
</td>
</tr>
<tr>
<td>
票务收损金额
</td>
<td>
签证收损金额
</td>
<td>
地接收损金额
</td>
<td>
op补充金额
</td>
</tr>
<tr>
<td>
<
template
v-if=
"Type==2"
>
<el-input
class=
"w135"
v-model=
"dataList.LossTicketMoney"
@
keyup
.
native=
"checkPrice(dataList,'LossTicketMoney'),getTotalSun(dataList)"
placeholder=
"请输入"
type=
"text"
></el-input>
</
template
>
<
template
v-else
>
<span
v-if=
"dataList.TicketIsSet==1"
>
{{
dataList
.
LossTicketMoney
}}
</span>
<span
class=
"SnotSet"
v-else
>
未设置
</span>
</
template
>
</td>
<td>
<
template
v-if=
"Type==3"
>
<el-input
class=
"w135"
v-model=
"dataList.LossVisaMoney"
@
keyup
.
native=
"checkPrice(dataList,'LossVisaMoney'),getTotalSun(dataList)"
placeholder=
"请输入"
type=
"text"
></el-input>
</
template
>
<
template
v-else
>
<span
v-if=
"dataList.VisaIsSet==1"
>
{{
dataList
.
LossVisaMoney
}}
</span>
<span
class=
"SnotSet"
v-else
>
未设置
</span>
</
template
>
</td>
<td>
<
template
v-if=
"Type==4"
>
<el-input
class=
"w135"
v-model=
"dataList.LossDiJieMoney"
@
keyup
.
native=
"checkPrice(dataList,'LossDiJieMoney'),getTotalSun(dataList)"
placeholder=
"请输入"
type=
"text"
></el-input>
</
template
>
<
template
v-else
>
<span
v-if=
"dataList.DiJieIsSet==1"
>
{{
dataList
.
LossDiJieMoney
}}
</span>
<span
class=
"SnotSet"
v-else
>
未设置
</span>
</
template
>
</td>
<td>
<
template
v-if=
"Type==1"
>
<el-input
class=
"w135"
v-model=
"dataList.LossOPMoney"
@
keyup
.
native=
"checkPrice(dataList,'LossOPMoney'),getTotalSun(dataList)"
placeholder=
"请输入"
type=
"text"
></el-input>
</
template
>
<
template
v-else
>
<span
v-if=
"dataList.OPIsSet==1"
>
{{
dataList
.
LossOPMoney
}}
</span>
<span
class=
"SnotSet"
v-else
>
未设置
</span>
</
template
>
</td>
</tr>
<tfoot>
<tr>
<td
style=
"padding:10px 0;position:relative;"
colspan=
"4"
>
<input
type=
"button"
class=
"normalBtn"
@
click=
"closeDialog()"
value=
"取消"
/>
<input
type=
"button"
class=
"normalBtn"
@
click=
"setShouSun()"
value=
"保存"
/>
<span
class=
"totalShouSan"
>
收损总额:
<span
class=
"TotalShouSun"
>
{{totalSun}}
</span>
</span>
</td>
</tr>
</tfoot>
</table>
</div>
</template>
<
script
>
export
default
{
props
:
[
"Type"
],
data
()
{
return
{
dataList
:[],
OrderId
:
0
,
totalSun
:
0
};
},
methods
:
{
getShouSunList
(
OrderId
)
{
this
.
OrderId
=
OrderId
;
let
msg
=
{
OrderId
:
OrderId
}
this
.
apipost
(
"sellorder_post_GetTravelSetLossMoneyInfo"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
dataList
=
res
.
data
.
data
;
this
.
getTotalSun
(
this
.
dataList
);
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
//计算收损总额
getTotalSun
(
dataList
){
if
(
dataList
!=
undefined
){
this
.
totalSun
=
parseFloat
(
dataList
.
LossOPMoney
)
+
parseFloat
(
dataList
.
LossTicketMoney
)
+
parseFloat
(
dataList
.
LossVisaMoney
)
+
parseFloat
(
dataList
.
LossDiJieMoney
);
}
},
//关闭窗口
closeDialog
()
{
this
.
$emit
(
"closeShouSun"
);
},
//保存
setShouSun
(){
let
msg
=
{
OrderId
:
this
.
OrderId
,
Type
:
this
.
Type
,
PeopleNum
:
this
.
dataList
.
OpSetLossPeople
,
LossMoney
:
0
}
switch
(
this
.
Type
){
case
1
:
msg
.
LossMoney
=
this
.
dataList
.
LossOPMoney
break
;
case
2
:
msg
.
LossMoney
=
this
.
dataList
.
LossTicketMoney
break
;
case
3
:
msg
.
LossMoney
=
this
.
dataList
.
LossVisaMoney
break
;
case
4
:
msg
.
LossMoney
=
this
.
dataList
.
LossDiJieMoney
break
;
}
this
.
apipost
(
"sellorder_post_SetOrderRevenueLossNew"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
Success
(
res
.
data
.
message
);
this
.
closeDialog
();
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
}
},
mounted
()
{
}
};
</
script
>
src/components/dmc/manager/dmcShouSun.vue
0 → 100644
View file @
be7a4d41
This diff is collapsed.
Click to expand it.
src/components/dmc/manager/dmcTotalTable.vue
View file @
be7a4d41
...
...
@@ -95,7 +95,32 @@
</el-select>
</span>
</li>
<li>
<span>
<em>
领队类型
</em>
<el-select
v-model=
"msg.LeaderType"
class=
"multiple_input"
:placeholder=
"$t('pub.pleaseSel')"
@
change=
"GetLeaderList()"
>
<el-option
label=
'请选择'
:value=
'0'
:key=
'0'
>
</el-option>
<el-option
label=
'领队'
:value=
'1'
:key=
'1'
>
</el-option>
<el-option
label=
'领兼导'
:value=
'2'
:key=
'2'
>
</el-option>
<el-option
label=
'导游'
:value=
'3'
:key=
'3'
>
</el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>
领队/导游
</em>
<el-select
v-model=
"msg.QLeaderId"
filterable
class=
"multiple_input"
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
:value=
"0"
>
</el-option>
<el-option
v-for=
"item in LeaderList"
:label=
'item.Name'
:value=
'item.ID'
:key=
'item.ID'
>
</el-option>
</el-select>
</span>
</li>
<li>
<input
type=
"button"
class=
"normalBtn"
value=
"查询"
@
click=
"getList();resetPageIndex()"
/>
</li>
...
...
@@ -237,7 +262,7 @@
<div
class=
"fz16 fbold linkspan"
>
<span
@
click=
"toTrip(item)"
style=
"color: #4BCA81;"
v-if=
"item.ResultReport.LetterDeparture==1"
>
√
</span>
<span
class=
"colorE95252"
v-else
>
{{
item
.
ResultReport
.
LetterDeparture
==
'-1'
?
"x"
:
"O"
}}
</span>
<span
class=
"colorE95252"
@
click=
"toTrip(item)"
v-else
>
{{
item
.
ResultReport
.
LetterDeparture
==
'-1'
?
"x"
:
"O"
}}
</span>
</div>
</td>
<td>
...
...
@@ -265,8 +290,9 @@
</div>
<p
v-if=
"item.LineId==14 && item.CommonReport.PriceHotelResult && item.CommonReport.PriceHotelResult.length>0"
>
<el-popover
width=
"700"
trigger=
"click"
popper-class=
"TC_HotelPop"
>
<commonHotelInfo
:HotelObj=
"item.CommonReport.PriceHotelResult"
:showHotelObj=
"showHotelObj"
:TCID=
"item.TCID"
:DMCNum=
"item.DMCNum"
:TCNUM=
"item.TCNUMS"
></commonHotelInfo>
<el-popover
width=
"750"
trigger=
"click"
popper-class=
"TC_HotelPop"
>
<commonHotelInfo
:HotelObj=
"item.CommonReport.PriceHotelResult"
:showHotelObj=
"showHotelObj"
:TCID=
"item.TCID"
:DMCNum=
"item.DMCNum"
:TCNUM=
"item.TCNUMS"
></commonHotelInfo>
<span
slot=
"reference"
class=
"price"
style=
"cursor:pointer;text-decoration:underline;"
>
酒店信息
</span>
</el-popover>
</p>
...
...
@@ -423,7 +449,7 @@
地接对供应商备注:
{{
outItem
.
StaticsReportList
[
index
].
SupplierRemarks
}}
</div>
<div
v-show=
"outItem.StaticsReportList[0].SupplierToDmcRemarks!=''"
class=
"colorE95252"
<div
v-show=
"outItem.StaticsReportList[0].SupplierToDmcRemarks!=''"
class=
"colorE95252"
style=
"padding-top:5px;padding-bottom:4px;"
>
供应商对地接备注:
{{
outItem
.
StaticsReportList
[
index
].
SupplierToDmcRemarks
}}
</div>
...
...
@@ -466,12 +492,14 @@
CombinationNum
:
""
,
//出团公司
OutBranchIds
:
[],
LineId
:
0
,
LineId
:
14
,
PlaceID
:
0
,
LineteamId
:
0
,
//航空公司
AirLineId
:
0
,
CreateBy
:
0
,
LeaderType
:
0
,
//领队导游类型
QLeaderId
:
0
,
//领队导游编号
},
CheckedVaule
:
1
,
UnCheckedVaule
:
0
,
...
...
@@ -493,7 +521,7 @@
TCIDs
:
""
,
remarkString
:
''
,
SupplierRemarks
:
''
,
IsBookTeam
:
0
,
IsBookTeam
:
0
,
},
queryCommonData
:
{
//公司数据
...
...
@@ -511,11 +539,12 @@
cityId
:
0
,
orderId
:
0
},
showHotelObj
:{
showPrice
:
true
,
showPay
:
true
,
showZhan
:
true
,
showBtnList
:
false
LeaderList
:
[],
showHotelObj
:
{
showPrice
:
true
,
showPay
:
true
,
showZhan
:
true
,
showBtnList
:
true
},
pickerBeginDateBefore
:
{
disabledDate
:
time
=>
{
...
...
@@ -568,7 +597,7 @@
this
.
NumObj
.
remarkString
=
obj
.
DMCRemark
;
this
.
NumObj
.
DMCNum
=
obj
.
DMCNum
;
this
.
NumObj
.
SupplierRemarks
=
obj
.
SupplierRemarks
;
this
.
NumObj
.
IsBookTeam
=
obj
.
IsBookTeam
;
this
.
NumObj
.
IsBookTeam
=
obj
.
IsBookTeam
;
},
saveRemark
()
{
this
.
apipost
(
'dmcstatistics_post_SetDMCRemark'
,
this
.
NumObj
,
res
=>
{
...
...
@@ -831,7 +860,24 @@
},
hideTripDown
()
{
this
.
travelControlTripLayerShow
=
false
;
}
},
//获取领队和导游
GetLeaderList
()
{
this
.
LeaderList
=
[];
this
.
msg
.
QLeaderId
=
0
;
let
msg
=
{
Type
:
this
.
msg
.
LeaderType
,
}
this
.
apipost
(
'leader_post_GetList'
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
LeaderList
=
res
.
data
.
data
;
}
},
err
=>
{}
)
},
},
mounted
()
{
let
myDate
=
new
Date
();
...
...
@@ -987,5 +1033,8 @@
.dmcSetTable
tr
{
height
:
50px
;
}
.TC_HotelPop
{
overflow
:
auto
;
max-height
:
350px
;
}
</
style
>
src/router/config.js
View file @
be7a4d41
...
...
@@ -390,6 +390,22 @@ export default {
title
:
'公告管理'
},
},
{
path
:
'/VoucherInquiry'
,
//问券调查
name
:
'VoucherInquiry'
,
component
:
resolve
=>
require
([
'@/components/administrative/VoucherInquiry'
],
resolve
),
meta
:
{
title
:
'问券调查'
},
},
{
path
:
'/VoucherInquiryAdd'
,
//问券调查添加
name
:
'VoucherInquiryAdd'
,
component
:
resolve
=>
require
([
'@/components/administrative/VoucherInquiryAdd'
],
resolve
),
meta
:
{
title
:
'问券调查添加'
},
},
{
path
:
'/Attendance'
,
//考勤
name
:
'Attendance'
,
...
...
@@ -801,6 +817,14 @@ export default {
title
:
'机票业绩'
},
},
{
path
:
'/TicketShouSun'
,
//机票->收损订单
name
:
'TicketShouSun'
,
component
:
resolve
=>
require
([
'@/components/Ticketing/TicketShouSun'
],
resolve
),
meta
:
{
title
:
'收损订单'
},
},
{
path
:
'/flightChild'
,
//航班子表管理
name
:
'flightChild'
,
...
...
@@ -1669,6 +1693,13 @@ export default {
meta
:
{
title
:
'团队收支'
},
},
{
path
:
'/AmoebaDetail'
,
//阿米巴结算详情
name
:
'AmoebaDetail'
,
component
:
resolve
=>
require
([
'@/components/TravelManager/TravelList/AmoebaDetail'
],
resolve
),
meta
:
{
title
:
'团队收支'
},
},
{
path
:
'/BasicTravelControlList'
,
//团控列表2
name
:
'BasicTravelControlList'
,
...
...
@@ -2892,7 +2923,14 @@ export default {
meta
:
{
title
:
'签证总表'
},
},
{
// 签证 个签办理
},
{
//签证 收损订单
path
:
'/VisaShouSun'
,
name
:
'VisaShouSun'
,
component
:
resolve
=>
require
([
'@/components/SalesVisa/VisaShouSun'
],
resolve
),
meta
:
{
title
:
'收损订单'
},
},{
// 签证 个签办理
path
:
'/signatureHandle'
,
name
:
'signatureHandle'
,
component
:
resolve
=>
require
([
'@/components/SalesVisa/signatureHandle'
],
resolve
),
...
...
@@ -3105,6 +3143,14 @@ export default {
title
:
'地接总表'
}
},
{
path
:
'/dmcShouSun'
,
//地接->收损订单
name
:
'dmcShouSun'
,
component
:
resolve
=>
require
([
'@/components/dmc/manager/dmcShouSun'
],
resolve
),
meta
:
{
title
:
'收损订单'
}
},
{
path
:
'/teamRevenueExpenditure'
,
//地接总表
name
:
'teamRevenueExpenditure'
,
...
...
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