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
bd7d0171
Commit
bd7d0171
authored
Dec 12, 2019
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
页面修改
parent
77428188
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
1948 additions
and
1880 deletions
+1948
-1880
DomesticTravelcontract.vue
src/components/DomesticTravelcontract.vue
+1
-1
SingleContract.vue
src/components/SingleContract.vue
+1943
-1873
onedayTripContract.vue
src/components/onedayTripContract.vue
+4
-6
No files found.
src/components/DomesticTravelcontract.vue
View file @
bd7d0171
...
...
@@ -947,7 +947,7 @@
<th
width=
"12%"
>
旅游者签名同意
</th>
<th
width=
"100"
>
操作
</th>
</tr>
<tr
v-for=
"(item, index) in CtObj.ContractShopList"
>
<tr
v-for=
"(item, index) in CtObj.ContractShopList"
:key=
"index"
>
<td>
{{
index
+
1
}}
</td>
...
...
src/components/SingleContract.vue
View file @
bd7d0171
<
style
>
*
{
margin
:
0
;
padding
:
0
;
*
{
margin
:
0
;
padding
:
0
;
}
.TC-MainContent
{
.TC-MainContent
{
/* min-height: 650px; */
background
:
url(../assets/img/bodyBg.png)
;
padding-top
:
10px
;
font
:
normal
13px
'Microsoft Yahei'
;
color
:
#555
;
height
:
auto
!important
;
color
:
#555
;
height
:
auto
!important
;
}
.TC-MainContent
.fixedMenu
{
position
:
fixed
;
left
:
20px
;
...
...
@@ -18,14 +20,16 @@
margin
:
0
;
padding-top
:
10px
;
}
.TC-MainContent
.fixedMenu
li
{
padding
:
5px
15px
;
position
:
relative
;
border-right
:
2px
solid
#e2e2e2
;
cursor
:
pointer
;
list-style
:
none
;
font-size
:
13px
;
font-size
:
13px
;
}
.TC-MainContent
.fixedMenu
li
:after
{
content
:
''
;
display
:
block
;
...
...
@@ -37,10 +41,11 @@
right
:
-12px
;
top
:
11px
;
}
.TC-MainContent
.contractTit
{
position
:
fixed
;
left
:
0
;
top
:
0
;
top
:
0
;
width
:
100%
;
z-index
:
1000
;
padding
:
15px
20px
12px
;
...
...
@@ -50,28 +55,34 @@
font-size
:
18px
;
color
:
#555
;
}
.TC-MainContent
.contractTit
span
{
.TC-MainContent
.contractTit
span
{
font-size
:
21px
;
font-weight
:
bold
;
}
.TC-MainContent
.block
{
border
:
1px
solid
#cdcdcd
;
background
:
#f9f9f9
;
position
:
relative
;
margin-bottom
:
20px
;
}
.TC-MainContent
.container-fluid
{
padding-right
:
20px
;
padding-left
:
20px
;
*
zoom
:
1
;
}
.TC-MainContent
.mtop15
{
margin-top
:
15px
;
.TC-MainContent
.mtop15
{
margin-top
:
15px
;
}
.TC-MainContent
.blockTitle
{
border-bottom
:
1px
solid
#cdcdcd
;
background-color
:
#efefef
;
}
.TC-MainContent
.blockTitle
span
.icon
{
border-right
:
1px
solid
#CDCDCD
;
position
:
absolute
;
...
...
@@ -80,6 +91,7 @@
padding-right
:
10px
;
padding-top
:
8px
;
}
.TC-MainContent
.blockTitle
h2
{
font-size
:
15px
;
min-height
:
40px
;
...
...
@@ -90,6 +102,7 @@
padding-left
:
48px
;
line-height
:
40px
;
}
.TC-MainContent
.blockTitle
h2
{
font-size
:
15px
;
min-height
:
40px
;
...
...
@@ -99,78 +112,120 @@
padding-right
:
15px
;
padding-left
:
48px
;
}
.TC-MainContent
.block
em
{
font-style
:
normal
;
}
.TC-MainContent
.createTableTitle
{
padding
:
10px
0
;
margin
:
5px
30px
0
;
border-bottom
:
1px
dashed
#ccc
;
font
:
normal
15px
'microsoft yahei'
;
}
.TC-MainContent
.createTable
{
.TC-MainContent
.createTable
{
background-color
:
#f9f9f9
;
width
:
100%
;
width
:
100%
;
}
.TC-MainContent
.el-form-item
{
margin-bottom
:
10px
;
}
.TC-MainContent
.w300
{
width
:
300px
!important
;
}
.TC-MainContent
.w200
{
width
:
200px
!important
;
}
.TC-MainContent
.w150
{
width
:
150px
!important
;
}
.TC-MainContent
.el-form-item
{
margin-bottom
:
10px
;
.TC-MainContent
.w180
{
width
:
180px
!important
;
}
.TC-MainContent
.w300
{
width
:
300px
!important
;
.TC-MainContent
.w600
{
width
:
600px
!important
;
}
.TC-MainContent
.w200
{
width
:
200px
!important
;
.TC-MainContent
.singeRowTable
{
width
:
100%
;
border-collapse
:
collapse
;
}
.TC-MainContent
.w150
{
width
:
150px
!important
;
.TC-MainContent
.singeRowTable
tr
th
,
.v-table-title-cell
{
background
:
#E6E6E6
;
height
:
40px
;
font-size
:
14px
;
color
:
#333
;
}
.TC-MainContent
.w180
{
width
:
180px
!important
;
.TC-MainContent
.singeRowTable
tr
{
background
:
#fff
;
text-align
:
center
;
height
:
40px
;
}
.TC-MainContent
.w600
{
width
:
600px
!important
;
.TC-MainContent
.singeRowTable
tr
:nth-child
(
2n
+
1
)
{
background
:
#fafafa
;
}
.TC-MainContent
.singeRowTable
{
width
:
100%
;
border-collapse
:
collapse
;}
.TC-MainContent
.singeRowTable
tr
th
,
.v-table-title-cell
{
background
:
#E6E6E6
;
height
:
40px
;
font-size
:
14px
;
color
:
#333
;}
.TC-MainContent
.singeRowTable
tr
{
background
:
#fff
;
text-align
:
center
;
height
:
40px
;}
.TC-MainContent
.singeRowTable
tr
:nth-child
(
2n
+
1
)
{
background
:
#fafafa
;
}
.TC-MainContent
.singeRowTable
tr
:hover
{
background
:
#f2f2f2
;}
.TC-MainContent
.singeRowTable
tr
td
{
font-size
:
12px
;
border
:
1px
solid
#E5E5E5
;}
.TC-MainContent
.TC_NewAddBtn
{
.TC-MainContent
.singeRowTable
tr
:hover
{
background
:
#f2f2f2
;
}
.TC-MainContent
.singeRowTable
tr
td
{
font-size
:
12px
;
border
:
1px
solid
#E5E5E5
;
}
.TC-MainContent
.TC_NewAddBtn
{
background-color
:
#006dcc
;
width
:
83px
;
height
:
26px
;
color
:
#fff
;
border
:
none
;
width
:
83px
;
height
:
26px
;
color
:
#fff
;
border
:
none
;
margin-right
:
5px
;
cursor
:
pointer
;
}
.TC-MainContent
.singeRowTable
.el-button.is-circle
{
padding
:
5px
;
.TC-MainContent
.singeRowTable
.el-button.is-circle
{
padding
:
5px
;
}
.TC-MainContent
.TcNewTable
td
{
padding
:
5px
;
.TC-MainContent
.TcNewTable
td
{
padding
:
5px
;
}
.TcNewTable
tr
:hover
{
background-color
:
transparent
!important
;
.TcNewTable
tr
:hover
{
background-color
:
transparent
!important
;
}
.TC-MainContent
.fixedMenu
li
.active
{
background
:
#90b7ec
;
color
:
#fff
;
border-right-color
:
#5882bb
;
}
.TC-MainContent
.fixedMenu
li
.active
:after
{
border-left-color
:
#5882bb
;
}
.TC-MainContent
.pull-right
{
float
:
right
;
.TC-MainContent
.pull-right
{
float
:
right
;
}
.TC-MainContent
.TC_disabled
{
color
:
#57a3f3
;
cursor
:
not-allowed
!important
;
.TC-MainContent
.TC_disabled
{
color
:
#57a3f3
;
cursor
:
not-allowed
!important
;
}
.TC-MainContent
.TCbtn-info
{
color
:
#ffffff
;
text-shadow
:
0
-1px
0
rgba
(
0
,
0
,
0
,
0.25
);
...
...
@@ -185,12 +240,13 @@
border-color
:
rgba
(
0
,
0
,
0
,
0.1
)
rgba
(
0
,
0
,
0
,
0.1
)
rgba
(
0
,
0
,
0
,
0.25
);
filter
:
progid
:
DXImageTransform
.
Microsoft
.
gradient
(
startColorstr
=
'#ff5bc0de'
,
endColorstr
=
'#ff2f96b4'
,
GradientType
=
0
);
filter
:
progid
:
DXImageTransform
.
Microsoft
.
gradient
(
enabled
=
false
);
padding
:
10px
19px
;
border
:
none
;
padding
:
10px
19px
;
border
:
none
;
outline
:
none
;
cursor
:
pointer
;
}
.TC-MainContent
.btn-warning
{
.TC-MainContent
.btn-warning
{
color
:
#ffffff
;
text-shadow
:
0
-1px
0
rgba
(
0
,
0
,
0
,
0.25
);
background-color
:
#faa732
;
...
...
@@ -205,49 +261,58 @@
border-color
:
rgba
(
0
,
0
,
0
,
0.1
)
rgba
(
0
,
0
,
0
,
0.1
)
rgba
(
0
,
0
,
0
,
0.25
);
filter
:
progid
:
DXImageTransform
.
Microsoft
.
gradient
(
startColorstr
=
'#fffbb450'
,
endColorstr
=
'#fff89406'
,
GradientType
=
0
);
filter
:
progid
:
DXImageTransform
.
Microsoft
.
gradient
(
enabled
=
false
);
padding
:
10px
19px
;
padding
:
10px
19px
;
outline
:
none
;
border
:
none
;
border
:
none
;
cursor
:
pointer
;
}
.TCbtn-info
:hover
,
.btn-warning
:hover
{
.TCbtn-info
:hover
,
.btn-warning
:hover
{
color
:
#ffffff
;
opacity
:
0.8
;
}
.TcTravel_Table
{
.TcTravel_Table
{
width
:
100%
;
border
:
none
;
border-collapse
:
collapse
;
border-spacing
:
0
;
}
.TcTravel_Table
td
{
.TcTravel_Table
td
{
border
:
1px
solid
rgb
(
0
,
0
,
0
);
word-break
:
break-all
;
padding
:
5px
;
padding
:
5px
;
line-height
:
2
;
}
.TC_LASTTD
div
{
margin-bottom
:
10px
;
.TC_LASTTD
div
{
margin-bottom
:
10px
;
}
.feeJisuan
.el-form-item__label
{
margin-top
:
5px
;
.feeJisuan
.el-form-item__label
{
margin-top
:
5px
;
}
.TC-MainContent
.ql-editor
{
.TC-MainContent
.ql-editor
{
min-height
:
200px
;
}
</
style
>
<
template
>
<div
class=
"TC-MainContent"
>
<!-- 内容开始 -->
<ul
class=
"fixedMenu"
id=
"fixedMenu"
>
<li
v-for=
"(item,index) in menuArr"
:class=
"
{'active':index==ckedIndex}" @click="ckedIndex=index,goAnchor('#anchor-'+index)">
{{
item
}}
</li>
<li
v-for=
"(item,index) in menuArr"
:class=
"
{'active':index==ckedIndex}"
@click="ckedIndex=index,goAnchor('#anchor-'+index)" :key="index">
{{
item
}}
</li>
</ul>
<div
class=
"contractTit"
>
<span>
单项委托协议
</span>
<div
class=
"pull-right"
>
<input
type=
"button"
class=
"btn-warning"
@
click=
"submitForm('CtObj')"
value=
"保存"
/>
<input
type=
"button"
class=
"btn-warning"
@
click=
"submitForm('CtObj')"
value=
"保存"
/>
</div>
</div>
<el-form
label-width=
"180px"
:model=
"CtObj"
:rules=
"rules"
ref=
"CtObj"
>
...
...
@@ -316,14 +381,16 @@
<tr>
<td>
<el-form-item
label=
"紧急情况联系人姓名"
prop=
"Tourists_EmergencyLinkMan"
>
<el-input
type=
"text"
maxlength=
"100"
v-model=
"CtObj.Tourists_EmergencyLinkMan"
class=
"w300"
></el-input>
<el-input
type=
"text"
maxlength=
"100"
v-model=
"CtObj.Tourists_EmergencyLinkMan"
class=
"w300"
>
</el-input>
</el-form-item>
</td>
</tr>
<tr>
<td>
<el-form-item
label=
"紧急情况联系人电话"
prop=
"Tourists_EmergencyLinkTel"
>
<el-input
type=
"text"
maxlength=
"100"
v-model=
"CtObj.Tourists_EmergencyLinkTel"
class=
"w300"
></el-input>
<el-input
type=
"text"
maxlength=
"100"
v-model=
"CtObj.Tourists_EmergencyLinkTel"
class=
"w300"
>
</el-input>
</el-form-item>
</td>
</tr>
...
...
@@ -335,7 +402,8 @@
<tr>
<td>
<el-form-item
label=
"名称"
>
<el-input
type=
"text"
v-model=
"CtObj.TravelAgency_Name"
:disabled=
"true"
class=
"w300"
maxlength=
"70"
></el-input>
<el-input
type=
"text"
v-model=
"CtObj.TravelAgency_Name"
:disabled=
"true"
class=
"w300"
maxlength=
"70"
></el-input>
</el-form-item>
</td>
</tr>
...
...
@@ -400,7 +468,8 @@
<td>
<div
style=
"margin:0 0 10px 50px"
>
a.折扣机票出票后不得退票、不改签。不可变更姓名、证件号码、日期和航班,一般在合同签订后
<el-form-item
style=
"display:inline-block;"
label-width=
"0"
>
<el-input
type=
"text"
class=
"w150"
v-model=
"CtObj.C_TicketDayNum"
@
keyup
.
native=
"checkInteger(CtObj,'C_TicketDayNum')"
maxlength=
"2"
></el-input>
日内出票
<el-input
type=
"text"
class=
"w150"
v-model=
"CtObj.C_TicketDayNum"
@
keyup
.
native=
"checkInteger(CtObj,'C_TicketDayNum')"
maxlength=
"2"
></el-input>
日内出票
</el-form-item>
</div>
</td>
...
...
@@ -414,7 +483,8 @@
<td>
<div
style=
"margin:0 0 20px 50px"
>
旅行社代旅游者预订酒店,一般合同签订后
<el-form-item
style=
"display:inline-block;margin-bottom:0;"
label-width=
"0"
>
<el-input
type=
"text"
class=
"w150"
v-model=
"CtObj.C_OrderDayNum"
@
keyup
.
native=
"checkInteger(CtObj,'C_OrderDayNum')"
maxlength=
"2"
></el-input>
<el-input
type=
"text"
class=
"w150"
v-model=
"CtObj.C_OrderDayNum"
@
keyup
.
native=
"checkInteger(CtObj,'C_OrderDayNum')"
maxlength=
"2"
></el-input>
</el-form-item>
日内旅行社将为旅游者下订单,并以短信的方式通知旅游者,酒店一经预定并由旅行社通知到旅游者即完成合同代理义务。因酒店服务质量、退改房等引起的纠纷旅行社不承担责任,但应协助旅游者与酒店协商解决。
</div>
...
...
@@ -427,9 +497,11 @@
<tbody>
<tr>
<td>
<div
style=
"margin:20px 0 10px 50px"
>
旅游者委托旅行社代办旅游签证的,旅行社需收取一定数额的出境押金用于旅游者违反旅游行程时间滞留境外或逾期回国时,旅游者应当向旅行社承担由此造成损失,包括旅行社信誉或被停签的损失,一旦发生滞留境外或逾期回国、不配合旅行社销签的,旅行社将该押金用于赔偿损失,不予退还。该押金应于旅行社交付旅游者签证前
<div
style=
"margin:20px 0 10px 50px"
>
旅游者委托旅行社代办旅游签证的,旅行社需收取一定数额的出境押金用于旅游者违反旅游行程时间滞留境外或逾期回国时,旅游者应当向旅行社承担由此造成损失,包括旅行社信誉或被停签的损失,一旦发生滞留境外或逾期回国、不配合旅行社销签的,旅行社将该押金用于赔偿损失,不予退还。该押金应于旅行社交付旅游者签证前
<el-form-item
style=
"display:inline-block;margin-bottom:0;"
label-width=
"0"
>
<el-input
type=
"text"
class=
"w150"
v-model=
"CtObj.C_PayDayNum"
@
keyup
.
native=
"checkInteger(CtObj,'C_PayDayNum')"
maxlength=
"2"
></el-input>
<el-input
type=
"text"
class=
"w150"
v-model=
"CtObj.C_PayDayNum"
@
keyup
.
native=
"checkInteger(CtObj,'C_PayDayNum')"
maxlength=
"2"
></el-input>
</el-form-item>
日内全额交纳。如未按时交纳该押金,旅行社有权停止交付旅游者签证并办理注销,费用不退还;如旅游者按期回国并销签后凭记载有入境记录的护照和登机牌向旅行社领回该押金。如未收取押金旅游者发生滞留、晚归或不配合销签的,旅行社有权向旅游者追偿由此造成的损失。
</div>
...
...
@@ -439,7 +511,7 @@
<td>
<div
style=
"margin:0 0 10px 50px"
>
旅游者同意选择下列第
<el-form-item
style=
"display:inline-block;margin-bottom:0;"
label-width=
"0"
>
<el-input
type=
"text"
class=
"w150"
v-model=
"CtObj.C_SignType"
maxlength=
"1"
></el-input>
<el-input
type=
"text"
class=
"w150"
v-model=
"CtObj.C_SignType"
maxlength=
"1"
></el-input>
</el-form-item>
种方式交付办理签证的材料及领取签证。
</div>
...
...
@@ -457,7 +529,9 @@
</tr>
<tr>
<td>
<div
style=
"margin:0 0 10px 50px"
>
C、旅游者通过中国邮政EMS快递专递形式领取,费用由旅游者承担。如旅游者采取该方式领取的,旅行社将签证交付邮政部门即完成代理义务。因快递发生延误、丢失、毁损、灭失等风险,均由旅游者自行承担责任。
</div>
<div
style=
"margin:0 0 10px 50px"
>
C、旅游者通过中国邮政EMS快递专递形式领取,费用由旅游者承担。如旅游者采取该方式领取的,旅行社将签证交付邮政部门即完成代理义务。因快递发生延误、丢失、毁损、灭失等风险,均由旅游者自行承担责任。
</div>
</td>
</tr>
</tbody>
...
...
@@ -478,7 +552,9 @@
<td>
<div
style=
"margin:20px 0 10px 50px"
>
<el-form-item
style=
"display:inline-block;"
label=
"费用总额(小写)人民币"
prop=
"C_TotalPrice"
>
<el-input
type=
"text"
class=
"w300"
v-model=
"CtObj.C_TotalPrice"
@
keyup
.
native=
"checkPrice(CtObj,'C_TotalPrice'),number_chinese(CtObj.C_TotalPrice)"
maxlength=
"10"
></el-input>
元
<el-input
type=
"text"
class=
"w300"
v-model=
"CtObj.C_TotalPrice"
@
keyup
.
native=
"checkPrice(CtObj,'C_TotalPrice'),number_chinese(CtObj.C_TotalPrice)"
maxlength=
"10"
></el-input>
元
</el-form-item>
<el-form-item
style=
"display:inline-block;"
label=
"(大写)人民币"
label-width=
"120px"
>
<el-input
type=
"text"
class=
"w300"
maxlength=
"50"
v-model=
"AmountMoney"
></el-input>
元
...
...
@@ -513,12 +589,7 @@
<td>
{{
index
+
1
}}
</td>
<td>
<span
v-if=
"item.IsShow == 0"
>
{{
item
.
CGuestName
}}
</span>
<el-input
type=
"text"
class=
"w150"
v-model=
"item.CGuestName"
v-else
></el-input>
<el-input
type=
"text"
class=
"w150"
v-model=
"item.CGuestName"
v-else
></el-input>
</td>
<td>
<span
v-if=
"item.IsShow == 0"
>
{{
item
.
CGuestSex
}}
</span>
...
...
@@ -543,82 +614,32 @@
<span
v-if=
"item.IsShow == 0"
>
{{
item
.
CGuestCertificateNum
}}
</span>
<el-input
type=
"text"
v-model=
"item.CGuestCertificateNum"
v-else
></el-input>
<el-input
type=
"text"
v-model=
"item.CGuestCertificateNum"
v-else
></el-input>
</td>
<td>
<span
v-if=
"item.IsShow == 0"
>
{{
item
.
CGuestTel
}}
</span>
<el-input
type=
"text"
@
keyup
.
native=
"checkInteger(item,'CGuestTel')"
v-model=
"item.CGuestTel"
v-else
></el-input>
<el-input
type=
"text"
@
keyup
.
native=
"checkInteger(item,'CGuestTel')"
v-model=
"item.CGuestTel"
v-else
>
</el-input>
</td>
<td>
<span
v-if=
"item.IsShow == 0"
>
{{
item
.
CGuestHealth
}}
</span>
<el-input
type=
"text"
placeholder=
"健康"
v-model=
"item.CGuestHealth"
v-else
></el-input>
</td>
<td>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"修改"
v-if=
"item.IsShow == 0"
placement=
"top-start"
>
<el-button
type=
"primary"
icon=
"el-icon-edit"
circle
@
click=
"commonUpdate(item)"
></el-button>
<el-input
type=
"text"
placeholder=
"健康"
v-model=
"item.CGuestHealth"
v-else
></el-input>
</td>
<td>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"修改"
v-if=
"item.IsShow == 0"
placement=
"top-start"
>
<el-button
type=
"primary"
icon=
"el-icon-edit"
circle
@
click=
"commonUpdate(item)"
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"保存"
v-if=
"item.IsShow == 1"
placement=
"top-start"
>
<el-button
type=
"primary"
icon=
"iconfont icon-baocun"
@
click=
"commonSave(item)"
circle
></el-button>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"保存"
v-if=
"item.IsShow == 1"
placement=
"top-start"
>
<el-button
type=
"primary"
icon=
"iconfont icon-baocun"
@
click=
"commonSave(item)"
circle
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"删除"
placement=
"top-start"
>
<el-button
type=
"danger"
icon=
"el-icon-delete"
circle
@
click=
"delTouristArr(index)"
></el-button>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"删除"
placement=
"top-start"
>
<el-button
type=
"danger"
icon=
"el-icon-delete"
circle
@
click=
"delTouristArr(index)"
></el-button>
</el-tooltip>
</td>
</tr>
<tr>
<td
colspan=
"9"
style=
"text-align:right;"
>
<input
type=
"button"
class=
"TC_NewAddBtn"
@
click=
"addTourist()"
value=
"+添加游客"
/>
<input
type=
"button"
class=
"TC_NewAddBtn"
@
click=
"addTourist()"
value=
"+添加游客"
/>
</td>
</tr>
</table>
...
...
@@ -645,11 +666,12 @@
<th
width=
"12%"
>
定金(元/张)
</th>
<th
width=
"100"
>
操作
</th>
</tr>
<tr
v-for=
"(item,index) in CtObj.ContractTicketList
"
>
<tr
v-for=
"(item,index) in CtObj.ContractTicketList"
:key=
"index
"
>
<td>
{{
index
+
1
}}
</td>
<td>
<span
v-if=
"item.IsShow == 0"
>
{{
item
.
TicketTime
}}
</span>
<el-date-picker
v-else
class=
"w200"
v-model=
"item.TicketTime"
type=
"datetime"
format=
"yyyy-MM-dd HH:mm"
placeholder=
''
></el-date-picker>
<el-date-picker
v-else
class=
"w200"
v-model=
"item.TicketTime"
type=
"datetime"
format=
"yyyy-MM-dd HH:mm"
placeholder=
''
></el-date-picker>
</td>
<td>
<span
v-if=
"item.IsShow == 0"
>
{{
item
.
StartPlace
}}
</span>
...
...
@@ -665,15 +687,18 @@
</td>
<td>
<span
v-if=
"item.IsShow == 0"
>
{{
item
.
TicketPrice
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'TicketPrice')"
v-model=
"item.TicketPrice"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'TicketPrice')"
v-model=
"item.TicketPrice"
></el-input>
</td>
<td>
<span
v-if=
"item.IsShow == 0"
>
{{
item
.
AirportPirce
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'AirportPirce')"
v-model=
"item.AirportPirce"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'AirportPirce')"
v-model=
"item.AirportPirce"
></el-input>
</td>
<td>
<span
v-if=
"item.IsShow == 0"
>
{{
item
.
DepositPrice
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'DepositPrice')"
v-model=
"item.DepositPrice"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'DepositPrice')"
v-model=
"item.DepositPrice"
></el-input>
</td>
<td>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"修改"
placement=
"top-start"
v-if=
"item.IsShow == 0"
>
...
...
@@ -683,7 +708,7 @@
<el-button
type=
"primary"
icon=
"iconfont icon-baocun"
@
click=
"commonSave(item)"
circle
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"删除"
placement=
"top-start"
>
<el-button
type=
"danger"
icon=
"el-icon-delete"
@
click=
"delTicket(index)"
circle
></el-button>
<el-button
type=
"danger"
icon=
"el-icon-delete"
@
click=
"delTicket(index)"
circle
></el-button>
</el-tooltip>
</td>
</tr>
...
...
@@ -696,10 +721,12 @@
<td
colspan=
"9"
style=
"text-align:left;"
>
<div
style=
"margin:20px 0 10px 50px"
>
<el-form-item
style=
"display:inline-block;"
label=
"共计:"
label-width=
"60px"
>
<el-input
type=
"text"
class=
"w150"
@
keyup
.
native=
"checkInteger(CtObj,'TicketTotalNum')"
v-model=
"CtObj.TicketTotalNum"
></el-input>
<el-input
type=
"text"
class=
"w150"
@
keyup
.
native=
"checkInteger(CtObj,'TicketTotalNum')"
v-model=
"CtObj.TicketTotalNum"
></el-input>
</el-form-item>
<el-form-item
style=
"display:inline-block;"
label=
"张机票合同签订后"
label-width=
"130px"
>
<el-input
type=
"text"
class=
"w150"
@
keyup
.
native=
"checkInteger(CtObj,'TicketOutDayNum')"
v-model=
"CtObj.TicketOutDayNum"
></el-input>
日内出票,
<el-input
type=
"text"
class=
"w150"
@
keyup
.
native=
"checkInteger(CtObj,'TicketOutDayNum')"
v-model=
"CtObj.TicketOutDayNum"
></el-input>
日内出票,
</el-form-item>
</div>
<div
style=
"margin:0 0 20px 50px"
>
...
...
@@ -707,7 +734,8 @@
</div>
<div
style=
"margin-left:50px"
>
<el-form-item
label=
"机票预定费用总额:"
label-width=
"140px"
>
<el-input
type=
"text"
class=
"w150"
@
keyup
.
native=
"checkPrice(CtObj,'TicketTotalDepositPrice')"
v-model=
"CtObj.TicketTotalDepositPrice"
></el-input>
元
<el-input
type=
"text"
class=
"w150"
@
keyup
.
native=
"checkPrice(CtObj,'TicketTotalDepositPrice')"
v-model=
"CtObj.TicketTotalDepositPrice"
></el-input>
元
</el-form-item>
</div>
</td>
...
...
@@ -749,7 +777,7 @@
<th>
离店日期
</th>
<th
width=
"100"
>
操作
</th>
</tr>
<tr
v-for=
"(item,index) in CtObj.ContractHotelList
"
>
<tr
v-for=
"(item,index) in CtObj.ContractHotelList"
:key=
"index
"
>
<td>
{{
index
+
1
}}
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
HotelName
}}
</span>
...
...
@@ -757,39 +785,48 @@
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
DoubleRoom
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'DoubleRoom')"
v-model=
"item.DoubleRoom"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'DoubleRoom')"
v-model=
"item.DoubleRoom"
></el-input>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
SingleRoom
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'SingleRoom')"
v-model=
"item.SingleRoom"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'SingleRoom')"
v-model=
"item.SingleRoom"
></el-input>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
ThirdRoom
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'ThirdRoom')"
v-model=
"item.ThirdRoom"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'ThirdRoom')"
v-model=
"item.ThirdRoom"
>
</el-input>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
AdultNum
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'AdultNum')"
v-model=
"item.AdultNum"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'AdultNum')"
v-model=
"item.AdultNum"
>
</el-input>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
ChildrenNum
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'ChildrenNum')"
v-model=
"item.ChildrenNum"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'ChildrenNum')"
v-model=
"item.ChildrenNum"
></el-input>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
RoomPrice
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'RoomPrice')"
v-model=
"item.RoomPrice"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'RoomPrice')"
v-model=
"item.RoomPrice"
>
</el-input>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
DepositPrice
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'DepositPrice')"
v-model=
"item.DepositPrice"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'DepositPrice')"
v-model=
"item.DepositPrice"
></el-input>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
CheckInDate
}}
</span>
<el-date-picker
v-else
class=
"w150"
type=
"date"
v-model=
"item.CheckInDate"
value-format=
"yyyy-MM-dd"
placeholder=
''
></el-date-picker>
<el-date-picker
v-else
class=
"w150"
type=
"date"
v-model=
"item.CheckInDate"
value-format=
"yyyy-MM-dd"
placeholder=
''
></el-date-picker>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
OutDate
}}
</span>
<el-date-picker
v-else
class=
"w150"
type=
"date"
v-model=
"item.OutDate"
value-format=
"yyyy-MM-dd"
placeholder=
''
></el-date-picker>
<el-date-picker
v-else
class=
"w150"
type=
"date"
v-model=
"item.OutDate"
value-format=
"yyyy-MM-dd"
placeholder=
''
></el-date-picker>
</td>
<td>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"修改"
v-if=
"item.IsShow==0"
placement=
"top-start"
>
...
...
@@ -799,7 +836,7 @@
<el-button
type=
"primary"
icon=
"iconfont icon-baocun"
circle
@
click=
"commonSave(item)"
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"删除"
placement=
"top-start"
>
<el-button
type=
"danger"
icon=
"el-icon-delete"
circle
@
click=
"delHotelList(index)"
></el-button>
<el-button
type=
"danger"
icon=
"el-icon-delete"
circle
@
click=
"delHotelList(index)"
></el-button>
</el-tooltip>
</td>
</tr>
...
...
@@ -812,7 +849,8 @@
<td
colspan=
"12"
style=
"text-align:left;"
>
<div
style=
"margin:20px 0 0 50px"
>
<el-form-item
style=
"display:inline-block;"
label=
"共计:"
label-width=
"60px"
>
<el-input
type=
"text"
class=
"w180"
@
keyup
.
native=
"checkInteger(CtObj,'HotelTotal')"
v-model=
"CtObj.HotelTotal"
></el-input>
间、晚
<el-input
type=
"text"
class=
"w180"
@
keyup
.
native=
"checkInteger(CtObj,'HotelTotal')"
v-model=
"CtObj.HotelTotal"
></el-input>
间、晚
</el-form-item>
</div>
<div
style=
"margin:10px 0 10px 50px"
>
...
...
@@ -830,7 +868,8 @@
</div>
<div>
<el-form-item
style=
"display:inline-block;"
label=
"费用共计:"
label-width=
"140px"
>
<el-input
type=
"text"
class=
"w180"
@
keyup
.
native=
"checkPrice(CtObj,'HotelTotalPrice')"
v-model=
"CtObj.HotelTotalPrice"
></el-input>
元
<el-input
type=
"text"
class=
"w180"
@
keyup
.
native=
"checkPrice(CtObj,'HotelTotalPrice')"
v-model=
"CtObj.HotelTotalPrice"
></el-input>
元
</el-form-item>
</div>
</td>
...
...
@@ -858,15 +897,17 @@
<th>
类型
</th>
<th
width=
"100"
>
操作
</th>
</tr>
<tr
v-for=
"(item,index) in CtObj.ContractPickUpList
"
>
<tr
v-for=
"(item,index) in CtObj.ContractPickUpList"
:key=
"index
"
>
<td>
{{
index
+
1
}}
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
UseTime
}}
</span>
<el-date-picker
v-else
class=
"w150"
v-model=
"item.UseTime"
type=
"date"
value-format=
"yyyy-MM-dd"
placeholder=
''
></el-date-picker>
<el-date-picker
v-else
class=
"w150"
v-model=
"item.UseTime"
type=
"date"
value-format=
"yyyy-MM-dd"
placeholder=
''
></el-date-picker>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
UseNum
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'UseNum')"
v-model=
"item.UseNum"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'UseNum')"
v-model=
"item.UseNum"
>
</el-input>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
StartPlace
}}
</span>
...
...
@@ -891,7 +932,7 @@
<el-button
type=
"primary"
icon=
"iconfont icon-baocun"
circle
@
click=
"commonSave(item)"
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"删除"
placement=
"top-start"
>
<el-button
type=
"danger"
icon=
"el-icon-delete"
circle
@
click=
"delJieSong(index)"
></el-button>
<el-button
type=
"danger"
icon=
"el-icon-delete"
circle
@
click=
"delJieSong(index)"
></el-button>
</el-tooltip>
</td>
</tr>
...
...
@@ -904,7 +945,8 @@
<td
colspan=
"12"
style=
"text-align:left;"
>
<div
style=
"margin:20px 0 0 50px"
>
<el-form-item
style=
"display:inline-block;"
label=
"费用共计:"
label-width=
"90px"
>
<el-input
type=
"text"
class=
"w180"
@
keyup
.
native=
"checkPrice(CtObj,'PickUpTotalPrice')"
v-model=
"CtObj.PickUpTotalPrice"
></el-input>
元
<el-input
type=
"text"
class=
"w180"
@
keyup
.
native=
"checkPrice(CtObj,'PickUpTotalPrice')"
v-model=
"CtObj.PickUpTotalPrice"
></el-input>
元
</el-form-item>
</div>
</td>
...
...
@@ -931,7 +973,7 @@
<th>
交付保证金(元/个)
</th>
<th
width=
"100"
>
操作
</th>
</tr>
<tr
v-for=
"(item,index) in CtObj.ContractVisaList
"
>
<tr
v-for=
"(item,index) in CtObj.ContractVisaList"
:key=
"index
"
>
<td>
{{
index
+
1
}}
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
Country
}}
</span>
...
...
@@ -943,11 +985,13 @@
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
VisaPrice
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'VisaPrice')"
v-model=
"item.VisaPrice"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'VisaPrice')"
v-model=
"item.VisaPrice"
>
</el-input>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
DepositPrice
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'DepositPrice')"
v-model=
"item.DepositPrice"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'DepositPrice')"
v-model=
"item.DepositPrice"
></el-input>
</td>
<td>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"修改"
placement=
"top-start"
v-if=
"item.IsShow==0"
>
...
...
@@ -970,7 +1014,8 @@
<td
colspan=
"12"
style=
"text-align:left;"
>
<div
style=
"margin:20px 0 0 50px"
>
<el-form-item
style=
"display:inline-block;"
label=
"合计金额:"
label-width=
"90px"
>
<el-input
type=
"text"
class=
"w180"
@
keyup
.
native=
"checkPrice(CtObj,'VisaTotalPrice')"
v-model=
"CtObj.VisaTotalPrice"
></el-input>
元
<el-input
type=
"text"
class=
"w180"
@
keyup
.
native=
"checkPrice(CtObj,'VisaTotalPrice')"
v-model=
"CtObj.VisaTotalPrice"
></el-input>
元
</el-form-item>
</div>
</td>
...
...
@@ -1001,11 +1046,12 @@
<th>
机场建设费(元/张)
</th>
<th
width=
"100"
>
操作
</th>
</tr>
<tr
v-for=
"(item,index) in CtObj.ContractTicketAndHotel.ContractTickets
"
>
<tr
v-for=
"(item,index) in CtObj.ContractTicketAndHotel.ContractTickets"
:key=
"index
"
>
<td>
{{
index
+
1
}}
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
TicketTime
}}
</span>
<el-date-picker
v-else
v-model=
"item.TicketTime"
class=
"w150"
type=
"date"
value-format=
"yyyy-MM-dd"
placeholder=
''
></el-date-picker>
<el-date-picker
v-else
v-model=
"item.TicketTime"
class=
"w150"
type=
"date"
value-format=
"yyyy-MM-dd"
placeholder=
''
></el-date-picker>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
StartPlace
}}
</span>
...
...
@@ -1029,11 +1075,13 @@
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
TicketPrice
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'TicketPrice')"
v-model=
"item.TicketPrice"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'TicketPrice')"
v-model=
"item.TicketPrice"
></el-input>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
AirportPirce
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'AirportPirce')"
v-model=
"item.AirportPirce"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'AirportPirce')"
v-model=
"item.AirportPirce"
></el-input>
</td>
<td>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"修改"
placement=
"top-start"
v-if=
"item.IsShow==0"
>
...
...
@@ -1069,7 +1117,7 @@
<th>
儿童费用
</th>
<th
width=
"100"
>
操作
</th>
</tr>
<tr
v-for=
"(item,index) in CtObj.ContractTicketAndHotel.ContractHotels
"
>
<tr
v-for=
"(item,index) in CtObj.ContractTicketAndHotel.ContractHotels"
:key=
"index
"
>
<td>
{{
index
+
1
}}
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
HotelName
}}
</span>
...
...
@@ -1077,31 +1125,38 @@
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
DoubleRoom
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'DoubleRoom')"
v-model=
"item.DoubleRoom"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'DoubleRoom')"
v-model=
"item.DoubleRoom"
></el-input>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
SingleRoom
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'SingleRoom')"
v-model=
"item.SingleRoom"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'SingleRoom')"
v-model=
"item.SingleRoom"
></el-input>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
ThirdRoom
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'ThirdRoom')"
v-model=
"item.ThirdRoom"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkInteger(item,'ThirdRoom')"
v-model=
"item.ThirdRoom"
>
</el-input>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
CheckInDate
}}
</span>
<el-date-picker
v-else
class=
"w150"
v-model=
"item.CheckInDate"
type=
"date"
value-format=
"yyyy-MM-dd"
placeholder=
''
></el-date-picker>
<el-date-picker
v-else
class=
"w150"
v-model=
"item.CheckInDate"
type=
"date"
value-format=
"yyyy-MM-dd"
placeholder=
''
></el-date-picker>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
OutDate
}}
</span>
<el-date-picker
v-else
class=
"w150"
v-model=
"item.OutDate"
type=
"date"
value-format=
"yyyy-MM-dd"
placeholder=
''
></el-date-picker>
<el-date-picker
v-else
class=
"w150"
v-model=
"item.OutDate"
type=
"date"
value-format=
"yyyy-MM-dd"
placeholder=
''
></el-date-picker>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
AdultPrice
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'AdultPrice')"
v-model=
"item.AdultPrice"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'AdultPrice')"
v-model=
"item.AdultPrice"
>
</el-input>
</td>
<td>
<span
v-if=
"item.IsShow==0"
>
{{
item
.
ChildrenPrice
}}
</span>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'ChildrenPrice')"
v-model=
"item.ChildrenPrice"
></el-input>
<el-input
v-else
type=
"text"
@
keyup
.
native=
"checkPrice(item,'ChildrenPrice')"
v-model=
"item.ChildrenPrice"
></el-input>
</td>
<td>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"修改"
placement=
"top-start"
v-if=
"item.IsShow==0"
>
...
...
@@ -1124,7 +1179,8 @@
<td
colspan=
"12"
style=
"text-align:left;"
>
<div
style=
"margin:20px 0 0 50px"
>
<el-form-item
style=
"display:inline-block;"
label=
"合计金额:"
label-width=
"90px"
>
<el-input
type=
"text"
class=
"w180"
@
keyup
.
native=
"checkPrice(CtObj,'TicketAndHotelTotalPrice')"
v-model=
"CtObj.TicketAndHotelTotalPrice"
></el-input>
元
<el-input
type=
"text"
class=
"w180"
@
keyup
.
native=
"checkPrice(CtObj,'TicketAndHotelTotalPrice')"
v-model=
"CtObj.TicketAndHotelTotalPrice"
></el-input>
元
</el-form-item>
</div>
</td>
...
...
@@ -1144,15 +1200,14 @@
<div>
<div
style=
"margin:20px 0 0 50px"
>
<el-form-item
style=
"display:inline-block;"
label=
"其他服务费用合计:"
label-width=
"140px"
>
<el-input
type=
"text"
class=
"w180"
@
keyup
.
native=
"checkPrice(CtObj,'OtherConventionPrice')"
v-model=
"CtObj.OtherConventionPrice"
></el-input>
元
<el-input
type=
"text"
class=
"w180"
@
keyup
.
native=
"checkPrice(CtObj,'OtherConventionPrice')"
v-model=
"CtObj.OtherConventionPrice"
></el-input>
元
</el-form-item>
</div>
</div>
<div>
<el-form-item
label-width=
"0"
>
<quill-editor
v-model=
"CtObj.OtherConvention"
></quill-editor>
<!--
<quill-editor
:options=
"editorOption"
v-model=
"CtObj.OtherConvention"
></quill-editor>
<el-input
type=
"textarea"
resize=
"none"
v-model=
"CtObj.OtherConvention"
rows=
"13"
></el-input>
-->
</el-form-item>
</div>
</div>
...
...
@@ -1167,12 +1222,12 @@
data
()
{
return
{
//选中切换
cked
:
1
,
cked
:
1
,
//查询参数
msg
:{
TCID
:
0
,
orderID
:
0
,
guestId
:
0
msg
:
{
TCID
:
0
,
orderID
:
0
,
guestId
:
0
},
addMsg
:
{
Country
:
0
,
...
...
@@ -1180,8 +1235,8 @@
City
:
0
},
//参数
CtObj
:{
CType
:
1
,
//合同类型:(1-单项委托协议[平台版2018],2大陆境内旅游合同2014,3-全国版国内旅游一日游旅游合同示范文本[2015版])
CtObj
:
{
CType
:
1
,
//合同类型:(1-单项委托协议[平台版2018],2大陆境内旅游合同2014,3-全国版国内旅游一日游旅游合同示范文本[2015版])
Tourists_Name
:
""
,
Tourists_IDNum
:
""
,
Tourists_Addres
:
""
,
...
...
@@ -1200,7 +1255,7 @@
TravelAgency_Fax
:
""
,
TravelAgency_PostNum
:
""
,
TravelAgency_Email
:
""
,
TravelAgency_Scope
:
"出境游/境内游"
,
//旅行社经营范围
TravelAgency_Scope
:
"出境游/境内游"
,
//旅行社经营范围
TravelAgency_SignAddress
:
""
,
Guide_Name
:
""
,
Guide_Num
:
""
,
...
...
@@ -1219,7 +1274,7 @@
C_TotalPrice
:
""
,
C_PayDate
:
""
,
C_PayType
:
1
,
// 旅游费用支付方式(1-现金,2-支票,3-信用卡,4-其他,5-转账)
C_PayTypeRemark
:
""
,
//转账填写转账账号和备注
C_PayTypeRemark
:
""
,
//转账填写转账账号和备注
C_InsuranceType
:
1
,
// 旅游者保险购买方式(1-委托旅行社购买,2-自行购买,3-放弃购买)
C_InsuranceName
:
""
,
C_LowNum
:
""
,
...
...
@@ -1286,54 +1341,66 @@
ContractShopList
:
[],
//自愿购物活动补充协议
ContractGuestList
:
[],
//旅客名单
ContractTripList
:
[],
//行程列表
ContractSelfFeeList
:
[],
//自愿付费项目补充协议
ContractTicketList
:[],
//机票预订
ContractHotelList
:[],
//酒店预订列表
ContractPickUpList
:
[],
//接送服务列表
ContractVisaList
:[],
//代办签证列表
ContractTicketAndHotel
:{
// 机票和酒店组合信息
ContractTickets
:
[],
ContractHotels
:
[]
ContractSelfFeeList
:
[],
//自愿付费项目补充协议
ContractTicketList
:
[],
//机票预订
ContractHotelList
:
[],
//酒店预订列表
ContractPickUpList
:
[],
//接送服务列表
ContractVisaList
:
[],
//代办签证列表
ContractTicketAndHotel
:
{
// 机票和酒店组合信息
ContractTickets
:
[],
ContractHotels
:
[]
}
},
rules
:
{
Tourists_Name
:
[
{
required
:
true
,
message
:
"请输入客户名称"
,
trigger
:
"blur"
}
],
Tourists_Tel
:
[
{
required
:
true
,
message
:
"请输入联系电话"
,
trigger
:
"blur"
}
],
Tourists_EmergencyLinkMan
:
[
{
required
:
true
,
message
:
"请输入紧急联系人姓名"
,
trigger
:
"blur"
}
],
Tourists_EmergencyLinkTel
:
[
{
required
:
true
,
message
:
"请输入紧急联系人电话"
,
trigger
:
"blur"
}
],
TravelAgency_DealMan
:
[
{
required
:
true
,
message
:
"请输入经办人"
,
trigger
:
"blur"
}
],
C_TotalPrice
:
[
{
required
:
true
,
message
:
"请输入费用总额"
,
trigger
:
"blur"
}
]
Tourists_Name
:
[{
required
:
true
,
message
:
"请输入客户名称"
,
trigger
:
"blur"
}],
Tourists_Tel
:
[{
required
:
true
,
message
:
"请输入联系电话"
,
trigger
:
"blur"
}],
Tourists_EmergencyLinkMan
:
[{
required
:
true
,
message
:
"请输入紧急联系人姓名"
,
trigger
:
"blur"
}],
Tourists_EmergencyLinkTel
:
[{
required
:
true
,
message
:
"请输入紧急联系人电话"
,
trigger
:
"blur"
}],
TravelAgency_DealMan
:
[{
required
:
true
,
message
:
"请输入经办人"
,
trigger
:
"blur"
}],
C_TotalPrice
:
[{
required
:
true
,
message
:
"请输入费用总额"
,
trigger
:
"blur"
}]
},
//菜单列表
menuArr
:
[
'合同基本信息'
,
'相关告知及提示'
,
'费用计算'
,
'游客信息'
,
'机票预订'
,
'酒店预订'
,
'接送服务'
,
'代办签证'
,
'服务组合(机票与酒店)'
,
'其他单项服务事宜'
],
ckedIndex
:
0
,
ckedAll
:
false
,
menuArr
:
[
'合同基本信息'
,
'相关告知及提示'
,
'费用计算'
,
'游客信息'
,
'机票预订'
,
'酒店预订'
,
'接送服务'
,
'代办签证'
,
'服务组合(机票与酒店)'
,
'其他单项服务事宜'
],
ckedIndex
:
0
,
ckedAll
:
false
,
//旅客信息
touristList
:[],
editorOption
:{
modules
:
{
toolbar
:
[
touristList
:
[],
editorOption
:
{
modules
:
{
toolbar
:
[
[
'bold'
,
'italic'
,
'underline'
,
'strike'
],
// toggled buttons
[
'blockquote'
,
'code-block'
,
'align'
]
[
'blockquote'
,
'code-block'
,
'align'
]
]
}
},
//大写金额
AmountMoney
:
''
AmountMoney
:
''
};
},
...
...
@@ -1341,10 +1408,10 @@
//跳转锚点
goAnchor
(
selector
)
{
var
anchor
=
this
.
$el
.
querySelector
(
selector
)
document
.
documentElement
.
scrollTop
=
anchor
.
offsetTop
-
70
document
.
documentElement
.
scrollTop
=
anchor
.
offsetTop
-
70
},
//提交数据
SaveMsg
()
{
SaveMsg
()
{
this
.
apipost
(
"travelcontract_post_SetTravelContractService"
,
this
.
CtObj
,
...
...
@@ -1361,12 +1428,12 @@
);
},
//跳转至预览
goUrl
()
{
goUrl
()
{
this
.
$router
.
push
({
name
:
'TravelContractDetail'
,
query
:
{
TCID
:
this
.
$route
.
query
.
TCID
,
guestId
:
this
.
CtObj
.
guestId
,
guestId
:
this
.
CtObj
.
guestId
,
orderID
:
this
.
$route
.
query
.
orderID
,
blank
:
"y"
,
}
...
...
@@ -1405,137 +1472,137 @@
this
.
CtObj
.
ContractGuestList
.
splice
(
index
,
1
);
},
//添加机票
addTickets
()
{
addTickets
()
{
this
.
CtObj
.
ContractTicketList
.
forEach
((
x
,
index
)
=>
{
x
.
IsShow
=
0
;
});
let
obj
=
{
TicketTime
:
""
,
// 时间
StartPlace
:
""
,
// 出发地
ArrivePlace
:
''
,
// 目的地
FlightNum
:
''
,
// 航班号
TicketPrice
:
''
,
// 机票金额
AirportPirce
:
''
,
// 机场建设费
DepositPrice
:
''
,
// 定金
ArrivePlace
:
''
,
// 目的地
FlightNum
:
''
,
// 航班号
TicketPrice
:
''
,
// 机票金额
AirportPirce
:
''
,
// 机场建设费
DepositPrice
:
''
,
// 定金
IsShow
:
1
};
this
.
CtObj
.
ContractTicketList
.
push
(
obj
);
},
//删除机票
delTicket
(
index
)
{
delTicket
(
index
)
{
this
.
CtObj
.
ContractTicketList
.
splice
(
index
,
1
);
},
//添加酒店
addHotelList
()
{
addHotelList
()
{
this
.
CtObj
.
ContractHotelList
.
forEach
((
x
,
index
)
=>
{
x
.
IsShow
=
0
;
});
let
obj
=
{
HotelName
:
""
,
// 酒店名称
DoubleRoom
:
''
,
//标准间
SingleRoom
:
''
,
//单间
ThirdRoom
:
''
,
//三人间
AdultNum
:
''
,
//成人人数
AdultPrice
:
''
,
//成人费用
ChildrenNum
:
''
,
//儿童人数
ChildrenPrice
:
''
,
//儿童费用
RoomPrice
:
''
,
//房费/晚
DepositPrice
:
''
,
// 定金/晚
CheckInDate
:
''
,
//入住日期
OutDate
:
''
,
//离店日期
DoubleRoom
:
''
,
//标准间
SingleRoom
:
''
,
//单间
ThirdRoom
:
''
,
//三人间
AdultNum
:
''
,
//成人人数
AdultPrice
:
''
,
//成人费用
ChildrenNum
:
''
,
//儿童人数
ChildrenPrice
:
''
,
//儿童费用
RoomPrice
:
''
,
//房费/晚
DepositPrice
:
''
,
// 定金/晚
CheckInDate
:
''
,
//入住日期
OutDate
:
''
,
//离店日期
IsShow
:
1
};
this
.
CtObj
.
ContractHotelList
.
push
(
obj
);
},
//删除酒店
delHotelList
(
index
)
{
delHotelList
(
index
)
{
this
.
CtObj
.
ContractHotelList
.
splice
(
index
,
1
);
},
//添加接送服务
addJieSong
()
{
addJieSong
()
{
this
.
CtObj
.
ContractPickUpList
.
forEach
((
x
,
index
)
=>
{
x
.
IsShow
=
0
;
});
let
obj
=
{
UseTime
:
''
,
//用车日期
UseNum
:
''
,
//用车人数
StartPlace
:
''
,
//出发地
ArrivePlace
:
''
,
//目的地
UseBusType
:
'单程'
,
UseTime
:
''
,
//用车日期
UseNum
:
''
,
//用车人数
StartPlace
:
''
,
//出发地
ArrivePlace
:
''
,
//目的地
UseBusType
:
'单程'
,
IsShow
:
1
};
this
.
CtObj
.
ContractPickUpList
.
push
(
obj
);
},
//删除接送服务
delJieSong
(
index
)
{
delJieSong
(
index
)
{
this
.
CtObj
.
ContractPickUpList
.
splice
(
index
,
1
);
},
//添加代办签证
addVisaList
()
{
addVisaList
()
{
this
.
CtObj
.
ContractVisaList
.
forEach
((
x
,
index
)
=>
{
x
.
IsShow
=
0
;
});
let
obj
=
{
Country
:
''
,
//国家
StopTime
:
''
,
//停留时间
VisaPrice
:
''
,
//代办签证费用(元/个)
DepositPrice
:
''
,
// 保证金(元/个)
Country
:
''
,
//国家
StopTime
:
''
,
//停留时间
VisaPrice
:
''
,
//代办签证费用(元/个)
DepositPrice
:
''
,
// 保证金(元/个)
IsShow
:
1
};
this
.
CtObj
.
ContractVisaList
.
push
(
obj
);
},
//删除代办签证
delVisaList
(
index
)
{
delVisaList
(
index
)
{
this
.
CtObj
.
ContractVisaList
.
splice
(
index
,
1
);
},
//添加机票加酒店服务组合的机票
addZuheTicket
()
{
addZuheTicket
()
{
this
.
CtObj
.
ContractTicketAndHotel
.
ContractTickets
.
forEach
((
x
,
index
)
=>
{
x
.
IsShow
=
0
;
});
let
obj
=
{
TicketTime
:
""
,
// 时间
StartPlace
:
""
,
// 出发地
ArrivePlace
:
''
,
// 目的地
FlightNum
:
''
,
// 航班号
TicketSpace
:
'普通舱'
,
// 舱位
TicketPrice
:
''
,
// 机票金额
AirportPirce
:
''
,
// 机场建设费
ArrivePlace
:
''
,
// 目的地
FlightNum
:
''
,
// 航班号
TicketSpace
:
'普通舱'
,
// 舱位
TicketPrice
:
''
,
// 机票金额
AirportPirce
:
''
,
// 机场建设费
IsShow
:
1
};
this
.
CtObj
.
ContractTicketAndHotel
.
ContractTickets
.
push
(
obj
);
},
//删除机票加酒店服务组合的机票
delZuheTicket
(
index
)
{
delZuheTicket
(
index
)
{
this
.
CtObj
.
ContractTicketAndHotel
.
ContractTickets
.
splice
(
index
,
1
);
},
//添加机票加酒店服务组合的机票
addZuheHotel
()
{
addZuheHotel
()
{
this
.
CtObj
.
ContractTicketAndHotel
.
ContractHotels
.
forEach
((
x
,
index
)
=>
{
x
.
IsShow
=
0
;
});
let
obj
=
{
HotelName
:
""
,
// 酒店名称
DoubleRoom
:
''
,
//标准间
SingleRoom
:
''
,
//单间
ThirdRoom
:
''
,
//三人间
CheckInDate
:
''
,
//入住日期
OutDate
:
''
,
//离店日期
AdultPrice
:
''
,
//成人费用
ChildrenPrice
:
''
,
//儿童费用
DoubleRoom
:
''
,
//标准间
SingleRoom
:
''
,
//单间
ThirdRoom
:
''
,
//三人间
CheckInDate
:
''
,
//入住日期
OutDate
:
''
,
//离店日期
AdultPrice
:
''
,
//成人费用
ChildrenPrice
:
''
,
//儿童费用
IsShow
:
1
};
this
.
CtObj
.
ContractTicketAndHotel
.
ContractHotels
.
push
(
obj
);
},
//删除机票加酒店服务组合的机票
delZuheHotel
(
index
)
{
delZuheHotel
(
index
)
{
this
.
CtObj
.
ContractTicketAndHotel
.
ContractHotels
.
splice
(
index
,
1
);
},
//滚动条滚动选中tab
menu
()
{
var
_self
=
this
;
_self
.
scroll
=
(
document
.
documentElement
.
scrollTop
||
document
.
body
.
scrollTop
)
+
70
;
_self
.
scroll
=
(
document
.
documentElement
.
scrollTop
||
document
.
body
.
scrollTop
)
+
70
;
//滑动到指定位置相应菜单高亮
var
a_0
=
this
.
$refs
.
anchor0
.
offsetTop
;
var
a_1
=
this
.
$refs
.
anchor1
.
offsetTop
;
...
...
@@ -1549,33 +1616,34 @@
var
a_9
=
this
.
$refs
.
anchor7
.
offsetTop
;
if
(
_self
.
scroll
<
a_0
)
{
this
.
ckedIndex
=
0
}
else
if
(
_self
.
scroll
>
a_0
&&
_self
.
scroll
<
a_1
)
{
}
else
if
(
_self
.
scroll
>
a_0
&&
_self
.
scroll
<
a_1
)
{
this
.
ckedIndex
=
1
}
else
if
(
_self
.
scroll
>
a_2
&&
_self
.
scroll
<
a_3
)
{
}
else
if
(
_self
.
scroll
>
a_2
&&
_self
.
scroll
<
a_3
)
{
this
.
ckedIndex
=
2
}
else
if
(
_self
.
scroll
>
a_3
&&
_self
.
scroll
<
a_4
)
{
}
else
if
(
_self
.
scroll
>
a_3
&&
_self
.
scroll
<
a_4
)
{
this
.
ckedIndex
=
3
}
else
if
(
_self
.
scroll
>
a_4
&&
_self
.
scroll
<
a_5
)
{
}
else
if
(
_self
.
scroll
>
a_4
&&
_self
.
scroll
<
a_5
)
{
this
.
ckedIndex
=
4
}
else
if
(
_self
.
scroll
>
a_5
&&
_self
.
scroll
<
a_6
)
{
}
else
if
(
_self
.
scroll
>
a_5
&&
_self
.
scroll
<
a_6
)
{
this
.
ckedIndex
=
5
}
else
if
(
_self
.
scroll
>
a_6
&&
_self
.
scroll
<
a_7
)
{
}
else
if
(
_self
.
scroll
>
a_6
&&
_self
.
scroll
<
a_7
)
{
this
.
ckedIndex
=
6
}
else
if
(
_self
.
scroll
>
a_7
&&
_self
.
scroll
<
a_8
)
{
}
else
if
(
_self
.
scroll
>
a_7
&&
_self
.
scroll
<
a_8
)
{
this
.
ckedIndex
=
7
}
else
if
(
_self
.
scroll
>
a_8
&&
_self
.
scroll
<
a_9
)
{
}
else
if
(
_self
.
scroll
>
a_8
&&
_self
.
scroll
<
a_9
)
{
this
.
ckedIndex
=
8
}
},
GetData
()
{
this
.
apipost
(
"travelcontract_get_GetTravelContractService"
,
{
ID
:
this
.
CtObj
.
ID
},
"travelcontract_get_GetTravelContractService"
,
{
ID
:
this
.
CtObj
.
ID
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
var
tempObj
=
res
.
data
.
data
;
console
.
log
(
"temp"
,
tempObj
);
console
.
log
(
"temp"
,
tempObj
);
this
.
CtObj
.
ID
=
tempObj
.
ID
;
this
.
CtObj
.
CType
=
tempObj
.
CType
;
this
.
CtObj
.
T_ContractNum
=
tempObj
.
T_ContractNum
;
...
...
@@ -1874,7 +1942,7 @@
});
}
if
(
this
.
CtObj
.
C_TotalPrice
&&
this
.
CtObj
.
ContractTicketAndHotel
.
ContractHotels
!=
null
)
{
if
(
this
.
CtObj
.
C_TotalPrice
&&
this
.
CtObj
.
ContractTicketAndHotel
.
ContractHotels
!=
null
)
{
this
.
number_chinese
(
this
.
CtObj
.
C_TotalPrice
);
}
...
...
@@ -1887,13 +1955,13 @@
},
//公用休改
commonUpdate
(
item
)
{
item
.
IsShow
=
1
;
commonUpdate
(
item
)
{
item
.
IsShow
=
1
;
this
.
$forceUpdate
();
},
//公用保存
commonSave
(
item
)
{
item
.
IsShow
=
0
;
commonSave
(
item
)
{
item
.
IsShow
=
0
;
this
.
$forceUpdate
();
},
//小写金额转大写
...
...
@@ -1903,14 +1971,15 @@
strUnit
=
'仟佰拾亿仟佰拾万仟佰拾元角分'
;
num
+=
"00"
;
var
intPos
=
num
.
indexOf
(
'.'
);
if
(
intPos
>=
0
)
{
if
(
intPos
>=
0
)
{
num
=
num
.
substring
(
0
,
intPos
)
+
num
.
substr
(
intPos
+
1
,
2
);
}
strUnit
=
strUnit
.
substr
(
strUnit
.
length
-
num
.
length
);
for
(
var
i
=
0
;
i
<
num
.
length
;
i
++
)
{
strOutput
+=
'零壹贰叁肆伍陆柒捌玖'
.
substr
(
num
.
substr
(
i
,
1
),
1
)
+
strUnit
.
substr
(
i
,
1
);
for
(
var
i
=
0
;
i
<
num
.
length
;
i
++
)
{
strOutput
+=
'零壹贰叁肆伍陆柒捌玖'
.
substr
(
num
.
substr
(
i
,
1
),
1
)
+
strUnit
.
substr
(
i
,
1
);
}
this
.
AmountMoney
=
strOutput
.
replace
(
/零角零分$/
,
'整'
).
replace
(
/零
[
仟佰拾
]
/g
,
'零'
).
replace
(
/零
{2,}
/g
,
'零'
).
replace
(
/零
([
亿|万
])
/g
,
'$1'
).
replace
(
/零+元/
,
'元'
).
replace
(
/亿零
{0,3}
万/
,
'亿'
).
replace
(
/^元/
,
"零元"
)
this
.
AmountMoney
=
strOutput
.
replace
(
/零角零分$/
,
'整'
).
replace
(
/零
[
仟佰拾
]
/g
,
'零'
).
replace
(
/零
{2,}
/g
,
'零'
).
replace
(
/零
([
亿|万
])
/g
,
'$1'
).
replace
(
/零+元/
,
'元'
).
replace
(
/亿零
{0,3}
万/
,
'亿'
).
replace
(
/^元/
,
"零元"
)
}
},
...
...
@@ -1925,4 +1994,5 @@
});
}
};
</
script
>
src/components/onedayTripContract.vue
View file @
bd7d0171
...
...
@@ -1023,7 +1023,7 @@
return
{
//选中切换
cked
:
1
,
IsLoad
:
0
,
//是加载行程信息
IsLoad
:
0
,
//是加载行程信息
//参数
CtObj
:
{
ID
:
0
,
...
...
@@ -1452,7 +1452,7 @@
}
else
{
this
.
CtObj
.
ContractTripList
=
[];
}
this
.
IsLoad
=
1
;
this
.
IsLoad
=
1
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
...
...
@@ -1489,10 +1489,8 @@
if
(
this
.
$route
.
query
.
id
&&
this
.
$route
.
query
.
id
>
0
)
{
this
.
CtObj
.
ID
=
this
.
$route
.
query
.
id
;
this
.
GetData
();
}
else
{
this
.
IsLoad
=
1
;
}
else
{
this
.
IsLoad
=
1
;
}
this
.
$nextTick
(
function
()
{
//滚动监听事件
...
...
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