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
a586d66d
Commit
a586d66d
authored
Jun 03, 2021
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
页面修改
parent
d1fea8fc
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
939 additions
and
162 deletions
+939
-162
flightManagement.vue
src/components/Ticketing/flightManagement.vue
+6
-3
trainManagement.vue
src/components/Ticketing/trainManagement.vue
+687
-0
DistributionTransport.vue
...onents/TravelManager/TravelList/DistributionTransport.vue
+153
-85
TravelControlList.vue
...components/TravelManager/TravelList/TravelControlList.vue
+0
-2
TravelPriceFlightList.vue
...ravelmanager/TravelGroupControl/TravelPriceFlightList.vue
+85
-72
config.js
src/router/config.js
+8
-0
No files found.
src/components/Ticketing/flightManagement.vue
View file @
a586d66d
...
...
@@ -406,7 +406,8 @@
Stopover_airport
:
"0"
,
Arrival_city
:
"0"
,
Arrival_airport
:
"0"
,
Status
:
"0"
Status
:
"0"
,
TrafficType
:
1
},
addMsg
:
{
ID
:
0
,
...
...
@@ -427,7 +428,8 @@
//是否同步
synchronization
:
0
,
StartDate
:
""
,
EndDate
:
""
EndDate
:
""
,
TrafficType
:
1
,
},
SeasonTypeList
:
[],
DataList
:
[],
...
...
@@ -587,7 +589,8 @@
SeasonType
:
0
,
synchronization
:
0
,
StartDate
:
""
,
EndDate
:
""
EndDate
:
""
,
TrafficType
:
1
,
};
this
.
addMsg
=
newMsg
;
},
...
...
src/components/Ticketing/trainManagement.vue
0 → 100644
View file @
a586d66d
<
style
>
.clearfix
:after
{
content
:
"\0020"
;
display
:
block
;
height
:
0
;
clear
:
both
;
}
.trainMg
.addCompany
{
width
:
440px
;
max-height
:
600px
;
}
.trainMg
.addCompany
.el-dialog__body
{
height
:
486px
;
overflow
:
auto
;
}
.trainMg
.addCompany
input
{
width
:
208px
;
height
:
34px
;
border-radius
:
17px
;
}
.trainMg
.name_input
.el-form-item__content
,
.other_input
.el-form-item__content
.el-input
input
{
width
:
208px
;
}
.trainMg
.name_input
.el-form-item__content
.el-input
input
{
border-radius
:
0
;
}
.trainMg
.name_input
.el-form-item__content
.el-input
:first-child
input
{
border-top-left-radius
:
17px
;
border-bottom-left-radius
:
17px
;
border-right
:
0
;
}
.trainMg
.cn_name
.el-form-item
:nth-child
(
2
)
.el-form-item__content
.el-input
:last-child
input
,
.is-error
.el-form-item__content
{
border-top-right-radius
:
17px
;
border-bottom-right-radius
:
17px
;
}
.trainMg
.el-form-item__content
.el-textarea
{
width
:
208px
;
}
.trainMg
.cn_name
.el-form-item
:nth-child
(
1
)
{
width
:
55%
;
float
:
left
;
}
.trainMg
.cn_name
.el-form-item
:nth-child
(
2
)
{
width
:
45%
;
float
:
left
;
}
.trainMg
.cn_name
.el-form-item
:nth-child
(
2
)
.el-form-item__content
{
margin
:
0
!important
;
}
.trainMg
.cn_name
.el-form-item
:nth-child
(
2
)
.el-form-item__content
input
{
border-radius
:
0
;
border-top-right-radius
:
17px
;
border-bottom-right-radius
:
17px
;
}
.trainMg
.trainMg
.cn_name
.name_input
.el-form-item__content
,
.cn_name
.name_input
.el-form-item__content
.el-input
input
{
width
:
108.5px
;
}
.trainMg
.el-dialog__header
{
background-color
:
#e95252
;
}
.trainMg
.el-dialog__header
.el-dialog__title
{
color
:
white
;
font-size
:
14px
;
}
.trainMg
.el-dialog__header
.el-dialog__close
{
color
:
#d23131
;
}
.trainMg
.el-pagination
{
text-align
:
center
;
padding-top
:
10px
;
}
.trainMg
.el-pagination.is-background
.el-pager
li
:not
(
.disabled
)
.active
{
background-color
:
#e95252
;
color
:
#fff
;
}
.flightMg_info
{
margin-bottom
:
0
;
}
.flightMg_info_tips
{
color
:
#999999
;
font-size
:
12px
;
text-align
:
center
;
}
.flightMg_delete_icon
.el-input__suffix
{
right
:
15px
;
}
.trainMg
.time
.el-input--prefix
.el-input__inner
{
padding-left
:
30px
;
}
.trainMg
.query-box
li
label
{
display
:
inline-block
;
min-width
:
80px
;
text-align
:
right
;
font-style
:
normal
;
margin
:
0
20px
0
0
;
}
</
style
>
<
template
>
<div
class=
"flexOne trainMg"
>
<div
class=
"query-box"
>
<ul>
<li>
<label>
火车编号
</label>
<el-input
v-model=
"msg.Flight_number"
placeholder=
""
@
keyup
.
native
.
enter=
"getList"
class=
"w210"
></el-input>
</li>
<li>
<label>
{{
$t
(
'system.query_flightCity'
)
}}
</label>
<el-select
v-model=
"msg.Departure_city"
filterable
:placeholder=
"$t('system.ph_buxian')"
@
change=
"getaAirport(msg.Departure_city,false)"
class=
"w210"
>
<el-option
:label=
'$t("system.ph_buxian")'
value=
'0'
></el-option>
<el-option
v-for=
'item in cityList'
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-select>
</li>
<li>
<label>
{{
$t
(
'system.query_arrivalCity'
)
}}
</label>
<el-select
v-model=
"msg.Arrival_city"
filterable
:placeholder=
"$t('system.ph_buxian')"
@
change=
"getaArrivalAirport(msg.Arrival_city,false)"
class=
"w210"
>
<el-option
:label=
'$t("system.ph_buxian")'
value=
'0'
></el-option>
<el-option
v-for=
'item in cityList'
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-select>
</li>
<li>
<label>
{{
$t
(
'admin.admin_status'
)
}}
</label>
<el-select
v-model=
"msg.Status"
filterable
:placeholder=
"$t('system.ph_buxian')"
class=
"w210"
>
<el-option
:label=
"$t('system.ph_buxian')"
value=
'-1'
></el-option>
<el-option
:label=
"$t('system.ph_zhengchang')"
value=
'0'
></el-option>
<el-option
:label=
"$t('system.ph_shanchu')"
value=
'1'
></el-option>
</el-select>
</li>
<li>
<input
type=
"button"
class=
"hollowFixedBtn"
:value=
"$t('pub.searchBtn')"
@
click=
"resetPageIndex(),getList()"
/>
<input
type=
"button"
class=
"normalBtn"
:value=
"$t('pub.addBtn')"
@
click=
"outerVisible = true,dialogTitle='新增动车',initAddMsg()"
/>
</li>
</ul>
</div>
<table
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
"loading"
>
<tr>
<th
width=
""
>
动车号
</th>
<th
width=
""
>
出发城市
</th>
<th>
出发时间
</th>
<th>
到达城市
</th>
<th>
到达时间
</th>
<th>
{{
$t
(
"admin.admin_czPerson"
)
}}
</th>
<th>
{{
$t
(
"hotel.table_operattime"
)
}}
</th>
<th
width=
"200"
>
{{
$t
(
"admin.admin_operate"
)
}}
</th>
</tr>
<tr
v-for=
"(item,index) in DataList"
:key=
"index"
>
<td>
{{
item
.
Flight_number
}}
</td>
<td>
{{
item
.
DepartureCityName
}}
</td>
<td>
{{
item
.
Departure_time
}}
</td>
<td>
{{
item
.
ArrivalCityName
}}
</td>
<td>
{{
item
.
Arrival_time
}}
</td>
<td>
{{
item
.
emName
}}
</td>
<td>
{{
item
.
UpdateDate
}}
</td>
<td
style=
"position: relative;"
>
<el-row>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('system.table_edit')"
placement=
"top-start"
>
<el-button
type=
"primary"
icon=
"el-icon-edit"
circle
@
click=
"outerVisible = true,dialogTitle='修改航班',updateData(item.ID)"
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('pub.revoke')"
placement=
"top-start"
v-if=
"item.Status==1"
>
<el-button
type=
"danger"
icon=
"iconfont icon-web-icon-revoke"
circle
@
click=
"deletelist(index,2)"
>
</el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('system.table_delete')"
placement=
"top-start"
v-else
>
<el-button
type=
"danger"
icon=
"el-icon-delete"
circle
@
click=
"deletelist(index,1)"
></el-button>
</el-tooltip>
</el-row>
</td>
</tr>
</table>
<div
class=
"noData"
v-show=
"noData"
>
{{
$t
(
'system.content_noData'
)
}}
</div>
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"currentPage"
layout=
"total,prev, pager, next, jumper"
:page-size=
"msg.pageSize"
:total=
"total"
>
</el-pagination>
<el-dialog
custom-class=
'addCompany'
:title=
"dialogTitle"
:visible
.
sync=
"outerVisible"
center
:before-close=
"closeChangeMachie"
>
<el-form
:model=
"addMsg"
:rules=
"rules"
ref=
"addMsg"
label-width=
"120px"
>
<el-form-item
label=
"动车号"
prop=
"Flight_number"
class=
"other_input"
>
<el-input
v-model=
"addMsg.Flight_number"
placeholder=
"请填写动车号"
></el-input>
</el-form-item>
<el-form-item
label=
"出发城市"
prop=
"Departure_city"
>
<el-select
v-model=
"addMsg.Departure_city"
filterable
:placeholder=
"$t('system.ph_flightCity')"
>
<el-option
v-for=
'item in cityList'
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"出发时间"
prop=
"Departure_time"
class=
'flightMg_delete_icon time'
>
<el-input
type=
"text"
v-model=
"addMsg.Departure_time"
@
keyup
.
native=
"checkTime(addMsg,'Departure_time')"
maxlength=
"5"
:placeholder=
"$t('system.ph_time')"
></el-input>
</el-form-item>
<el-form-item
label=
"到达城市"
prop=
"Arrival_city"
>
<el-select
v-model=
"addMsg.Arrival_city"
filterable
:placeholder=
"$t('system.ph_flightCity')"
>
<el-option
v-for=
'item in cityList'
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"到达时间"
prop=
"Arrival_time"
class=
'flightMg_delete_icon time'
>
<el-input
type=
"text"
v-model=
"addMsg.Arrival_time"
@
keyup
.
native=
"checkTime(addMsg,'Arrival_time')"
maxlength=
"5"
:placeholder=
"$t('system.ph_time')"
></el-input>
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
class=
"normalBtn"
type=
"primary"
@
click=
"submitForm('addMsg')"
>
{{
$t
(
'pub.saveBtn'
)
}}
</button>
<button
class=
"hollowFixedBtn"
@
click=
"outerVisible = false,resetForm('addMsg')"
>
{{
$t
(
'pub.cancelBtn'
)
}}
</button>
</div>
</el-dialog>
</div>
</
template
>
<
script
>
export
default
{
data
()
{
let
validateFlightNum
=
(
rule
,
value
,
callback
)
=>
{
var
reg
=
/^
[
a-zA-Z
]
+$/
;
var
reg2
=
/^
[
0-9
]
+$/
;
var
reg3
=
/^
[
0-9a-zA-Z
]
*$/g
;
if
(
value
===
""
)
{
callback
(
new
Error
(
"请输入航班号"
));
}
else
if
(
!
reg3
.
test
(
value
))
{
callback
(
new
Error
(
"请输入数字或字母"
));
}
else
if
(
!
reg2
.
test
(
value
.
charAt
(
value
.
length
-
1
)))
{
callback
(
new
Error
(
"尾数必须为数字"
));
}
else
{
callback
();
}
}
return
{
checked
:
false
,
outerVisible
:
false
,
msg
:
{
//请求数据参数
pageIndex
:
1
,
pageSize
:
15
,
airlineID
:
"0"
,
Flight_number
:
""
,
Type
:
"0"
,
Departure_city
:
"0"
,
Departure_airport
:
"0"
,
Stopover_city
:
"0"
,
Stopover_airport
:
"0"
,
Arrival_city
:
"0"
,
Arrival_airport
:
"0"
,
Status
:
"0"
,
TrafficType
:
2
,
},
addMsg
:
{
ID
:
0
,
Flight_number
:
""
,
Departure_city
:
""
,
Arrival_city
:
""
,
Departure_airport
:
""
,
Arrival_airport
:
""
,
Departure_time
:
""
,
Arrival_time
:
""
,
Type
:
""
,
AirlineID
:
""
,
Stopover_city
:
""
,
Stopover_airport
:
""
,
Arrival_stopover_time
:
""
,
Departure_stopover_time
:
""
,
SeasonType
:
0
,
//是否同步
synchronization
:
0
,
StartDate
:
""
,
EndDate
:
""
,
TrafficType
:
2
},
SeasonTypeList
:
[],
DataList
:
[],
chosenIndex
:
-
1
,
total
:
0
,
currentPage
:
1
,
airlineList
:
[],
Departure_airport
:
[],
layer_Departure_airport
:
[],
Stopover_airport
:
[],
layer_Stopover_airport
:
[],
Arrival_airport
:
[],
layer_Arrival_airport
:
[],
cityList
:
[],
stopShow
:
false
,
dialogTitle
:
""
,
insideDialogTxt
:
"保存成功!"
,
loading
:
true
,
noData
:
false
,
rules
:
{
//表单必填验证
AirlineID
:
[{
required
:
true
,
message
:
"请选择航空公司"
,
trigger
:
"change"
}],
Flight_number
:
[{
validator
:
validateFlightNum
,
trigger
:
"blur"
,
}],
Type
:
[{
required
:
true
,
message
:
"请选择类型"
,
trigger
:
"change"
}],
Departure_city
:
[{
required
:
true
,
message
:
"请选择起飞城市"
,
trigger
:
"change"
}],
Departure_airport
:
[{
required
:
true
,
message
:
"请选择起飞机场"
,
trigger
:
"change"
}],
Departure_time
:
[{
required
:
true
,
message
:
"请填写起飞时间"
,
trigger
:
"change"
}],
Arrival_time
:
[{
required
:
true
,
message
:
"请填写到达时间"
,
trigger
:
"change"
}],
Stopover_city
:
[{
required
:
true
,
message
:
"请选择经停城市"
,
trigger
:
"change"
}],
Stopover_airport
:
[{
required
:
true
,
message
:
"请选择起飞机场"
,
trigger
:
"change"
}],
Arrival_stopover_time
:
[{
required
:
true
,
message
:
"请填写经停到达时间"
,
trigger
:
"change"
}],
Departure_stopover_time
:
[{
required
:
true
,
message
:
"请填写经停起飞时间"
,
trigger
:
"change"
}],
Arrival_city
:
[{
required
:
true
,
message
:
"请选择到达城市"
,
trigger
:
"change"
}],
Arrival_airport
:
[{
required
:
true
,
message
:
"请选择到达机场"
,
trigger
:
"change"
}]
}
};
},
methods
:
{
//获取列表数据
getList
()
{
this
.
loading
=
true
;
this
.
apipost
(
"flight_post_GetPageList"
,
this
.
msg
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
total
=
res
.
data
.
data
.
count
;
this
.
noData
=
!
this
.
total
>
0
;
this
.
DataList
=
res
.
data
.
data
.
pageData
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
//获取城市列表
getDepartureCityList
()
{
this
.
apipost
(
"dict_post_Destination_GetCityList"
,
{},
res
=>
{
this
.
cityList
=
res
.
data
.
data
;
},
err
=>
{}
);
},
getaAirport
(
ID
,
blo
)
{
//根据城市获取起飞机场
let
msg
=
{
City_id
:
ID
};
this
.
apipost
(
"airport_post_GetList"
,
msg
,
res
=>
{
if
(
this
.
outerVisible
)
{
if
(
!
blo
)
{
this
.
addMsg
.
Departure_airport
=
""
;
}
this
.
layer_Departure_airport
=
res
.
data
.
data
;
}
else
{
this
.
msg
.
Departure_airport
=
"0"
;
this
.
Departure_airport
=
res
.
data
.
data
;
}
},
err
=>
{}
);
},
initAddMsg
()
{
let
newMsg
=
{
ID
:
0
,
Flight_number
:
""
,
Departure_city
:
""
,
Arrival_city
:
""
,
Departure_airport
:
""
,
Arrival_airport
:
""
,
Departure_time
:
""
,
Arrival_time
:
""
,
Type
:
""
,
AirlineID
:
""
,
Stopover_city
:
""
,
Stopover_airport
:
""
,
Arrival_stopover_time
:
""
,
Departure_stopover_time
:
""
,
SeasonType
:
0
,
synchronization
:
0
,
StartDate
:
""
,
EndDate
:
""
,
TrafficType
:
2
,
};
this
.
addMsg
=
newMsg
;
},
//根据城市获取经停机场
getaStopAirport
(
ID
,
blo
)
{
this
.
apipost
(
"airport_post_GetList"
,
{
City_id
:
ID
},
res
=>
{
if
(
this
.
outerVisible
)
{
if
(
!
blo
)
{
this
.
addMsg
.
Stopover_airport
=
""
;
}
this
.
layer_Stopover_airport
=
res
.
data
.
data
;
}
else
{
this
.
msg
.
Stopover_airport
=
"0"
;
this
.
Stopover_airport
=
res
.
data
.
data
;
}
},
err
=>
{}
);
},
getaArrivalAirport
(
ID
,
blo
)
{
//根据城市获取到达机场
let
msg
=
{
City_id
:
ID
};
this
.
apipost
(
"airport_post_GetList"
,
msg
,
res
=>
{
if
(
this
.
outerVisible
)
{
if
(
!
blo
)
{
this
.
addMsg
.
Arrival_airport
=
""
;
}
this
.
layer_Arrival_airport
=
res
.
data
.
data
;
}
else
{
this
.
msg
.
Arrival_airport
=
"0"
;
this
.
Arrival_airport
=
res
.
data
.
data
;
}
},
err
=>
{}
);
},
//获取航空公司*
getAirlineList
()
{
this
.
apipost
(
"airline_post_GetList"
,
{},
res
=>
{
this
.
airlineList
=
res
.
data
.
data
;
},
err
=>
{}
);
},
//添加
addGroupGuide
()
{
if
(
this
.
checked
)
{
this
.
addMsg
.
synchronization
=
1
;
}
else
{
this
.
addMsg
.
synchronization
=
0
;
}
this
.
checkIsRightTime
(
this
.
addMsg
.
Departure_time
,
1
);
this
.
checkIsRightTime
(
this
.
addMsg
.
Arrival_time
,
2
);
this
.
apipost
(
"flight_post_Set"
,
this
.
addMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
Success
(
"保存成功"
);
this
.
getList
();
this
.
outerVisible
=
false
;
this
.
resetForm
(
"addMsg"
);
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
checkIsRightTime
(
time
,
type
)
{
let
arrTime
=
time
.
split
(
':'
);
if
(
arrTime
[
0
]
>=
24
||
arrTime
[
1
]
>=
60
)
{
if
(
type
==
1
)
{
this
.
Error
(
'请输入正确的起飞时间格式!'
);
}
if
(
type
==
2
)
{
this
.
Error
(
'请输入正确的到达时间格式!'
);
}
}
},
//提交创建、修改表单
submitForm
(
addMsg
)
{
this
.
$refs
[
addMsg
].
validate
(
valid
=>
{
if
(
valid
)
{
this
.
addGroupGuide
();
}
else
{
return
false
;
}
});
},
deletelist
(
index
,
type
)
{
//删除
var
text
=
""
;
var
text2
=
""
;
if
(
type
==
1
)
{
text
=
"是否删除?"
;
text2
=
"删除成功"
;
}
else
{
text
=
"是否恢复?"
;
text2
=
"恢复成功"
;
}
this
.
$confirm
(
text
,
"提示"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
})
.
then
(()
=>
{
this
.
$message
({
type
:
"success"
,
message
:
text2
});
this
.
deleteFligt
(
index
);
})
.
catch
(()
=>
{
this
.
$message
({
type
:
"info"
,
message
:
"已取消删除"
});
});
},
//删除
deleteFligt
(
index
)
{
let
msg
=
{
ID
:
this
.
DataList
[
index
].
ID
};
this
.
apipost
(
"flight_post_Remove"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
getList
();
}
},
err
=>
{}
);
},
//显示功能操作按钮
menuShow
(
index
)
{
this
.
chosenIndex
=
this
.
chosenIndex
==
index
?
-
1
:
index
;
},
//翻页功能按钮
handleCurrentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
},
//查询初始化页码
resetPageIndex
()
{
this
.
msg
.
pageIndex
=
1
;
this
.
currentPage
=
1
;
},
//修改
updateData
(
ID
)
{
let
msg
=
{
ID
:
ID
};
this
.
apipost
(
"flight_post_Get"
,
msg
,
res
=>
{
var
newMsg
=
res
.
data
.
data
;
this
.
getaAirport
(
newMsg
.
Departure_city
,
true
);
if
(
newMsg
.
Stopover_city
)
{
this
.
getaStopAirport
(
newMsg
.
Stopover_city
,
true
);
}
this
.
getaArrivalAirport
(
newMsg
.
Arrival_city
,
true
);
this
.
addMsg
=
res
.
data
.
data
;
},
err
=>
{}
);
},
closeChangeMachie
(
done
)
{
//弹出框关闭初始化弹框内表单
done
();
this
.
resetForm
(
"addMsg"
);
},
resetForm
(
formName
)
{
//弹出框取消 初始化谈框内表单
this
.
$refs
[
formName
].
clearValidate
();
},
//获取季节类型枚举列表
getSeasonTypeList
()
{
this
.
apipost
(
"flight_get_GetSeasonTypeList"
,
{},
res
=>
{
this
.
SeasonTypeList
=
res
.
data
.
data
;
},
err
=>
{}
);
},
//跳转到子项
gotoChild
(
item
)
{
this
.
$router
.
push
({
name
:
"flightChild"
,
query
:
{
id
:
item
.
ID
,
blank
:
'y'
,
tab
:
"航班有效期维护"
}
})
},
},
mounted
()
{
this
.
getSeasonTypeList
()
this
.
getList
();
this
.
getAirlineList
();
this
.
getDepartureCityList
();
},
};
</
script
>
src/components/TravelManager/TravelList/DistributionTransport.vue
View file @
a586d66d
<
style
>
@import
"../../../assets/css/newTravelManager.css"
;
.DT_rightList
{
float
:
left
;
font-size
:
12px
;
width
:
100%
;
margin-top
:
10px
;
}
.DT_rightList
._Checked
{
padding
:
5px
10px
;
border-radius
:
3px
;
margin-left
:
10px
;
}
/*未选中的状态*/
.DT_rightList
.NoChecked
{
cursor
:
pointer
;
background-color
:
#c0ebd1
;
}
/*选中的状态*/
.DT_rightList
.YesChecked
{
cursor
:
pointer
;
background-color
:
#E95252
;
color
:
#fff
;
}
.DT_rightList
{
float
:
left
;
font-size
:
12px
;
width
:
100%
;
margin-top
:
10px
;
}
.DT_rightList
.DT_Table
{
width
:
100%
;
border-collapse
:
collapse
;
}
.DT_rightList
._Checked
{
padding
:
5px
10px
;
border-radius
:
3px
;
margin-left
:
10px
;
}
.DT_rightList
.DT_Table
tr
td
{
border
:
1px
solid
#e5e5e5
;
}
/*未选中的状态*/
.DT_rightList
.NoChecked
{
cursor
:
pointer
;
background-color
:
#c0ebd1
;
}
.DT_rightList
.TMTitle
{
margin-bottom
:
20px
;
}
/*选中的状态*/
.DT_rightList
.YesChecked
{
cursor
:
pointer
;
background-color
:
#E95252
;
color
:
#fff
;
}
.DT_rightList
.DT_Table
{
width
:
100%
;
border-collapse
:
collapse
;
}
.DT_rightList
.DT_Table
tr
td
{
border
:
1px
solid
#e5e5e5
;
}
.DT_rightList
.TMTitle
{
margin-bottom
:
20px
;
}
.DT_rightList
.singeRowTable
tr
:hover
{
background-color
:
#fff
!important
;
}
.DT_rightList
.singeRowTable
tr
:nth-child
(
2n
+
1
)
{
background-color
:
#fff
!important
;
}
.DT_rightList
.el-button.is-circle
{
padding
:
3px
;
}
.DT_ConbinBtn
{
margin
:
10px
0
0
0
;
padding
:
0
10px
;
height
:
25px
;
}
.DT_saveBtn
{
margin
:
10px
0
0
165px
;
}
.Distri_TeamDayList
{
display
:
inline-block
;
}
.DT_rightList
.singeRowTable
tr
:hover
{
background-color
:
#fff
!important
;
}
.DT_rightList
.singeRowTable
tr
:nth-child
(
2n
+
1
)
{
background-color
:
#fff
!important
;
}
.DT_rightList
.el-button.is-circle
{
padding
:
3px
;
}
.DT_ConbinBtn
{
margin
:
10px
0
0
0
;
padding
:
0
10px
;
height
:
25px
;
}
.DT_saveBtn
{
margin
:
10px
0
0
165px
;
}
.Distri_TeamDayList
{
display
:
inline-block
;
}
</
style
>
<
template
>
<div
class=
"clearfix"
>
...
...
@@ -70,8 +79,10 @@
<td
width=
"120"
>
选择团期
</td>
<td
align=
"left"
>
<ul>
<li
v-for=
"item in PriceDataList"
class=
"Distri_TeamDayList"
><span
@
click=
"clickedDay(item)"
class=
"_Checked"
:class=
"
{NoChecked:item.checkState===ShowStatusList.NoChecked,YesChecked:item.checkState===ShowStatusList.Checked}">
{{
item
.
StartDate
}}
</span></li>
<li
v-for=
"item in PriceDataList"
class=
"Distri_TeamDayList"
><span
@
click=
"clickedDay(item)"
class=
"_Checked"
:class=
"
{NoChecked:item.checkState===ShowStatusList.NoChecked,YesChecked:item.checkState===ShowStatusList.Checked}">
{{
item
.
StartDate
}}
</span>
</li>
</ul>
</td>
</tr>
...
...
@@ -92,11 +103,14 @@
<th
width=
"110"
>
出发日期
</th>
<th
width=
"200"
>
类型
</th>
<th
width=
"200"
>
航空公司
</th>
<th
width=
"200"
>
航班
航班
/动车
</th>
<th
width=
"70"
>
是否住宿
...
...
@@ -141,16 +155,26 @@
</el-select>
</td>
<td>
<el-select
class=
"w180"
filterable
v-model=
"item.AirLineId"
@
change=
"airLineSelectChange(item,item.AirLineId,1)"
>
<el-select
class=
"w120"
:placeholder=
"$t('pub.pleaseSel')"
filterable
v-model=
"item.GoTrafficType"
@
change=
"getTrafficType1(item,1)"
>
<el-option
label=
"航班"
:value=
"1"
></el-option>
<el-option
label=
"火车"
:value=
"2"
></el-option>
</el-select>
</td>
<td>
<el-select
class=
"w180"
filterable
v-model=
"item.AirLineId"
v-if=
"item.GoTrafficType==1"
@
change=
"airLineSelectChange(item,1)"
>
<el-option
label=
'请选择'
:value=
"selectDefauleValue"
></el-option>
<el-option
v-for=
"subItem in AirlineList"
:label=
'subItem.AlName'
:value=
'subItem.AirLineId'
:key=
"subItem.subCode"
>
<el-option
v-for=
"subItem in AirlineList"
:label=
'subItem.AlName'
:value=
'subItem.AirLineId'
:key=
"subItem.subCode"
>
</el-option>
</el-select>
</td>
<td>
<el-select
class=
"w200"
filterable
v-model=
"item.FlightId"
>
<el-option
label=
'请选择'
:value=
"selectDefauleValue"
></el-option>
<el-option
v-for=
"subItem in item.FlightList"
:label=
'subItem.Flight_number'
:value=
'subItem.ID'
:key=
"subItem.subCode"
>
<el-option
v-for=
"subItem in item.FlightList"
:label=
'subItem.Flight_number'
:value=
'subItem.ID'
:key=
"subItem.subCode"
>
</el-option>
</el-select>
</td>
...
...
@@ -163,13 +187,13 @@
<span
v-else
>
{{
item
.
GoEvaluatePrice
}}
</span>
</td>
<td>
<el-input
class=
"w95"
v-model=
"item.GoAddPrice"
@
keyup
.
native=
"checkPrice(item,'GoAddPrice',true)"
></el-input>
<el-input
class=
"w95"
v-model=
"item.GoAddPrice"
@
keyup
.
native=
"checkPrice(item,'GoAddPrice',true)"
>
</el-input>
</td>
<td
rowspan=
"2"
>
<el-input
class=
"w150"
v-model=
"item.GatherAddress"
></el-input>
</td>
<td
rowspan=
"2"
>
<!--
<el-button
type=
"primary"
icon=
"iconfont icon-Edit"
circle
@
click=
"AddItem(item,index)"
></el-button>
-->
<el-button
type=
"danger"
icon=
"iconfont icon-guanbi"
circle
@
click=
"DeleteUnion(item,index)"
></el-button>
<el-popover
width=
"400"
trigger=
"click"
>
<div>
...
...
@@ -184,7 +208,8 @@
<tr
v-for=
"subItem in item.List"
>
<td>
<label>
<input
:value=
"subItem.OrderId"
style=
"vertical-align: middle;"
v-model=
"ArrList"
type=
"checkbox"
/>
<input
:value=
"subItem.OrderId"
style=
"vertical-align: middle;"
v-model=
"ArrList"
type=
"checkbox"
/>
</label>
</td>
<td>
{{
item
.
GroupTypeName
}}
</td>
...
...
@@ -195,8 +220,8 @@
</table>
<input
type=
"button"
class=
"normalBtn DT_saveBtn"
value=
"保存"
@
click=
"SavePriceUnionOrder(item)"
/>
</div>
<el-button
title=
"关联订单"
v-if=
"item.ID>0"
slot=
"reference"
type=
"primary"
style=
"margin-left:10px;"
icon=
"iconfont icon-guanlian"
circle
@
click=
"ArrList=item.ArrList,getOrderList()"
></el-button>
<el-button
title=
"关联订单"
v-if=
"item.ID>0"
slot=
"reference"
type=
"primary"
style=
"margin-left:10px;"
icon=
"iconfont icon-guanlian"
circle
@
click=
"ArrList=item.ArrList,getOrderList()"
></el-button>
</el-popover>
</td>
</tr>
...
...
@@ -209,9 +234,18 @@
</el-select>
</td>
<td>
<el-select
class=
"w180"
filterable
v-model=
"item.BackAirlineId"
@
change=
"airLineSelectChange(item,item.BackAirlineId,2)"
>
<el-select
class=
"w120"
:placeholder=
"$t('pub.pleaseSel')"
filterable
v-model=
"item.BackTrafficType"
@
change=
"getTrafficType2(item,2)"
>
<el-option
label=
"航班"
:value=
"1"
></el-option>
<el-option
label=
"火车"
:value=
"2"
></el-option>
</el-select>
</td>
<td>
<el-select
class=
"w180"
filterable
v-model=
"item.BackAirlineId"
v-if=
"item.BackTrafficType==1"
@
change=
"airLineSelectChange(item,2)"
>
<el-option
label=
'请选择'
:value=
"selectDefauleValue"
></el-option>
<el-option
v-for=
"subItem in AirlineList"
:label=
'subItem.AlName'
:value=
'subItem.AirLineId'
:key=
"subItem.subCode"
>
<el-option
v-for=
"subItem in AirlineList"
:label=
'subItem.AlName'
:value=
'subItem.AirLineId'
:key=
"subItem.subCode"
>
</el-option>
</el-select>
</td>
...
...
@@ -228,14 +262,16 @@
<span
v-else
>
{{
item
.
BackEvaluatePrice
}}
</span>
</td>
<td>
<el-input
class=
"w95"
v-model=
"item.BackAddPrice"
@
keyup
.
native=
"checkPrice(item,'BackAddPrice',true)"
></el-input>
<el-input
class=
"w95"
v-model=
"item.BackAddPrice"
@
keyup
.
native=
"checkPrice(item,'BackAddPrice',true)"
>
</el-input>
</td>
</tr>
</tbody>
<tfoot>
<tr>
<td
colspan=
"11"
>
<input
v-if=
"ChoosrPriceArray!=null && ChoosrPriceArray.length>0"
type=
'button'
class=
"normalBtn"
@
click=
"AddItem()"
value=
"新增"
></input>
<td
colspan=
"12"
>
<input
v-if=
"ChoosrPriceArray!=null && ChoosrPriceArray.length>0"
type=
'button'
class=
"normalBtn"
@
click=
"AddItem()"
value=
"新增"
></input>
</td>
</tr>
</tfoot>
...
...
@@ -251,7 +287,7 @@
cityList
:
[],
CompanyList
:
[],
ConfigId
:
0
,
defaultBranchId
:
-
1
,
defaultBranchId
:
-
1
,
//下拉框默认值
selectDefauleValue
:
0
,
CheckedVaule
:
1
,
...
...
@@ -302,6 +338,21 @@
};
},
methods
:
{
//交通类型切换
getTrafficType1
(
item
,
type
)
{
item
.
FlightList
=
[];
item
.
AirLineId
=
0
;
if
(
item
.
GoTrafficType
==
2
)
{
this
.
airLineSelectChange
(
item
,
type
);
}
},
getTrafficType2
(
item
,
type
)
{
item
.
BackFlightList
=
[];
item
.
BackAirlineId
=
0
;
if
(
item
.
BackTrafficType
==
2
)
{
this
.
airLineSelectChange
(
item
,
type
);
}
},
getCityList
()
{
this
.
apipost
(
"Destination_get_GetCityListByCountryId"
,
{
...
...
@@ -367,16 +418,16 @@
var
array
=
res
.
data
.
data
;
if
(
array
!=
null
&&
array
.
length
>
0
)
{
array
.
forEach
(
item
=>
{
this
.
airLineSelectChange
(
item
,
item
.
AirLineId
,
1
);
this
.
airLineSelectChange
(
item
,
item
.
BackAirlineId
,
2
);
this
.
DayList
.
forEach
(
subItem
=>
{
if
(
subItem
.
ID
==
item
.
DayNum
)
{
item
.
DayStr
=
subItem
.
Name
;
}
if
(
subItem
.
ID
==
item
.
BackDayNum
)
{
item
.
BackDayStr
=
subItem
.
Name
;
}
});
this
.
airLineSelectChange
(
item
,
1
);
this
.
airLineSelectChange
(
item
,
2
);
this
.
DayList
.
forEach
(
subItem
=>
{
if
(
subItem
.
ID
==
item
.
DayNum
)
{
item
.
DayStr
=
subItem
.
Name
;
}
if
(
subItem
.
ID
==
item
.
BackDayNum
)
{
item
.
BackDayStr
=
subItem
.
Name
;
}
});
});
}
this
.
UnionList
=
array
;
...
...
@@ -436,18 +487,33 @@
);
},
//航空公司切换
airLineSelectChange
(
item
,
AirLineId
,
type
)
{
airLineSelectChange
(
item
,
type
)
{
let
qMsg
=
{
AirlineID
:
AirLineId
,
AirlineID
:
0
,
Arrival_city
:
0
,
Departure_city
:
0
Departure_city
:
0
,
TrafficType
:
0
};
if
(
type
==
1
)
{
qMsg
.
Departure_city
=
item
.
UnionCityId
;
qMsg
.
Arrival_city
=
0
;
qMsg
.
TrafficType
=
item
.
GoTrafficType
;
if
(
item
.
GoTrafficType
==
1
)
{
qMsg
.
AirlineID
=
item
.
AirLineId
;
}
else
{
qMsg
.
AirlineID
=
0
;
}
}
else
if
(
type
==
2
)
{
qMsg
.
Arrival_city
=
item
.
UnionCityId
;
qMsg
.
Departure_city
=
0
;
qMsg
.
TrafficType
=
item
.
BackTrafficType
;
if
(
item
.
BackTrafficType
==
1
)
{
qMsg
.
AirlineID
=
item
.
BackAirlineId
;
}
else
{
qMsg
.
AirlineID
=
0
;
}
}
console
.
log
(
"qmsg"
,
qMsg
);
this
.
apipost
(
"flight_post_GetAirportNameList"
,
qMsg
,
...
...
@@ -467,12 +533,12 @@
Flight_number
:
str
});
});
console
.
log
(
"tempArray"
,
tempArray
);
if
(
type
==
1
)
{
item
.
FlightList
=
tempArray
;
}
else
{
item
.
BackFlightList
=
tempArray
;
}
}
else
{
this
.
Warning
(
res
.
data
.
message
);
}
...
...
@@ -502,7 +568,9 @@
UnionTicketPriceList
:
[],
GatherAddress
:
""
,
//选中的订单数组
ArrList
:
[]
ArrList
:
[],
GoTrafficType
:
1
,
//去程交通类型
BackTrafficType
:
1
,
//回程交通类型
});
},
//保存联运信息数据
...
...
src/components/TravelManager/TravelList/TravelControlList.vue
View file @
a586d66d
...
...
@@ -482,8 +482,6 @@
</span>
</div>
</
template
>
</div>
</el-popover>
</div>
...
...
src/components/newTravelmanager/TravelGroupControl/TravelPriceFlightList.vue
View file @
a586d66d
...
...
@@ -24,6 +24,7 @@
.TFTable
.el-input--prefix
.el-input__inner
{
padding-right
:
0
;
}
</
style
>
<
template
>
...
...
@@ -32,11 +33,12 @@
<el-form
label-width=
"0"
>
<table
class=
"TFTable"
>
<tr>
<th>
类型
</th>
<th>
{{
$t
(
'sm.hangkonggs'
)
}}
</th>
<th>
{{
$t
(
'visa.v_hangban'
)
}}
</th>
<th>
{{
$t
(
'system.query_flightAir'
)
}}
</th>
<th>
{{
$t
(
'visa.v_hangban'
)
}}
/动车
</th>
<th>
{{
$t
(
'system.query_flightAir'
)
}}
/出发城市
</th>
<th>
{{
$t
(
'system.ph_flightTime'
)
}}
</th>
<th>
{{
$t
(
'system.query_arrivalAir'
)
}}
</th>
<th>
{{
$t
(
'system.query_arrivalAir'
)
}}
/到达城市
</th>
<th>
{{
$t
(
'system.query_arrivalTime'
)
}}
</th>
<th>
{{
$t
(
'Airticket.Air_StartTime'
)
}}
</th>
<th>
{{
$t
(
'Airticket.Air_TicketType'
)
}}
</th>
...
...
@@ -44,87 +46,93 @@
</tr>
<tr
v-for=
"(priceFlight,index) in priceFlightList"
:key=
"priceFlight.code"
>
<td>
<el-select
v-if=
"priceFlight.IsShow"
class=
"w120"
:placeholder=
"$t('pub.pleaseSel')"
filterable
v-model=
"priceFlight.AirLineId"
@
change=
"airLineSelectChange(priceFlight.AirLineId,priceFlight)"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
:value=
"defaultSelectValue"
></el-option>
<el-option
v-for=
"item in airLineList"
:label=
"item.AlName"
:value=
"item.AirLineId"
:key=
"item.AirLineId"
></el-option>
<el-select
class=
"w120"
:placeholder=
"$t('pub.pleaseSel')"
filterable
v-model=
"priceFlight.TrafficType"
@
change=
"getTrafficType(priceFlight)"
>
<el-option
label=
"航班"
:value=
"1"
></el-option>
<el-option
label=
"火车"
:value=
"2"
></el-option>
</el-select>
<span
v-else
>
{{
priceFlight
.
AlName
}}
</span>
</td>
<td>
<template
v-if=
"priceFlight.TrafficType==1"
>
<el-select
v-if=
"priceFlight.IsShow"
class=
"w120"
:placeholder=
"$t('pub.pleaseSel')"
filterable
v-model=
"priceFlight.AirLineId"
@
change=
"airLineSelectChange(priceFlight.AirLineId,priceFlight)"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
:value=
"defaultSelectValue"
></el-option>
<el-option
v-for=
"item in airLineList"
:label=
"item.AlName"
:value=
"item.AirLineId"
:key=
"item.AirLineId"
></el-option>
</el-select>
<span
v-else
>
{{
priceFlight
.
AlName
}}
</span>
</
template
>
</td>
<td>
<el-select
v-if=
"priceFlight.IsShow"
class=
"w120"
:placeholder=
"$t('pub.pleaseSel')"
filterable
v-model=
"priceFlight.FlightId"
@
change=
"flightSelectChange(priceFlight.FlightId,priceFlight)"
>
v-model=
"priceFlight.FlightId"
@
change=
"flightSelectChange(priceFlight.FlightId,priceFlight)"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
:value=
"defaultSelectValue"
></el-option>
<el-option
v-for=
"item in priceFlight.airportNameList"
:label=
"item.Flight_number"
:value=
"item.ID"
:key=
"item.ID"
></el-option>
:key=
"item.ID"
></el-option>
</el-select>
<span
v-else
>
{{priceFlight.FlightNumber}}
</span>
</td>
<td>
{{priceFlight.DepartureAirPortName}}
</td>
<td>
<el-input
v-if=
"priceFlight.IsShowTime||priceFlight.IsShow"
:placeholder=
"$t('system.ph_flightTime')"
class=
"w120"
v-model=
"priceFlight.DepartureTime"
>
<el-input
v-if=
"priceFlight.IsShowTime||priceFlight.IsShow"
:placeholder=
"$t('system.ph_flightTime')"
class=
"w120"
v-model=
"priceFlight.DepartureTime"
>
</el-input>
<span
v-else
>
{{priceFlight.DepartureTime}}
</span>
</td>
<td>
{{priceFlight.ArrivalAirPortName}}
</td>
<td>
<el-input
v-if=
"priceFlight.IsShowTime||priceFlight.IsShow"
placeholder=
"到达时间"
class=
"w120"
v-model=
"priceFlight.ArrivalTime"
>
v-model=
"priceFlight.ArrivalTime"
>
</el-input>
<span
v-else
>
{{priceFlight.ArrivalTime}}
</span>
</td>
<td>
<el-date-picker
v-if=
"priceFlight.IsShow"
class=
"w110"
:clearable=
"false"
v-model=
"priceFlight.StartDate"
type=
"date"
value-format=
"yyyy-MM-dd"
></el-date-picker>
type=
"date"
value-format=
"yyyy-MM-dd"
></el-date-picker>
<span
v-else
>
{{priceFlight.StartDate}}
</span>
</td>
<td>
<el-select
v-if=
"priceFlight.IsShow"
class=
"w80"
:placeholder=
"$t('pub.pleaseSel')"
v-model=
"priceFlight.TicketType"
>
<el-option
v-for=
"item in ticketTypeList"
:label=
"item.Name"
:value=
"item.Id"
:key=
"item.Id"
>
</el-option>
v-model=
"priceFlight.TicketType"
>
<el-option
v-for=
"item in ticketTypeList"
:label=
"item.Name"
:value=
"item.Id"
:key=
"item.Id"
>
</el-option>
</el-select>
<span
v-else
>
{{priceFlight.TicketType==1? $t('Airticket.Air_go'):$t('Airticket.Air_returnTrip')}}
</span>
</td>
<td>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('sm.xiugaishijian')"
placement=
"top-start"
v-if=
"!priceFlight.IsShowTime"
>
v-if=
"!priceFlight.IsShowTime"
>
<el-button
v-if=
"IsBindFlight"
type=
"primary"
icon=
"el-icon-edit"
@
click=
"TimeStatusChange(priceFlight)"
circle
></el-button>
circle
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('sm.baocunshijian')"
placement=
"top-start"
v-if=
"priceFlight.IsShowTime"
>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('sm.baocunshijian')"
placement=
"top-start"
v-if=
"priceFlight.IsShowTime"
>
<el-button
v-if=
"IsBindFlight"
type=
"primary"
icon=
"iconfont icon-baocun"
@
click=
"saveAirticketFlightTime(priceFlight)"
circle
></el-button>
@
click=
"saveAirticketFlightTime(priceFlight)"
circle
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('pub.updateMsg')"
placement=
"top-start"
v-if=
"!priceFlight.IsShow"
>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('pub.updateMsg')"
placement=
"top-start"
v-if=
"!priceFlight.IsShow"
>
<el-button
v-if=
"!IsBindFlight"
type=
"primary"
icon=
"el-icon-edit"
@
click=
"StatusChange(priceFlight)"
circle
></el-button>
circle
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('pub.saveBtn')"
placement=
"top-start"
v-if=
"priceFlight.IsShow"
>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('pub.saveBtn')"
placement=
"top-start"
v-if=
"priceFlight.IsShow"
>
<el-button
v-if=
"!IsBindFlight"
type=
"primary"
icon=
"iconfont icon-baocun"
@
click=
"savePriceFlight(priceFlight)"
circle
></el-button>
@
click=
"savePriceFlight(priceFlight)"
circle
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('system.table_delete')"
placement=
"top-start"
>
<el-button
v-if=
"!IsBindFlight"
type=
"danger"
icon=
"el-icon-delete"
@
click=
"removePriceFlight(index,priceFlight,1)"
circle
></el-button>
@
click=
"removePriceFlight(index,priceFlight,1)"
circle
></el-button>
</el-tooltip>
<el-tooltip
v-if=
"!isShowFlight(priceFlight)"
class=
"item"
effect=
"dark"
:content=
"$t('system.table_isShows')"
placement=
"top-start"
>
<el-button
type=
"danger"
icon=
"el-icon-remove-outline"
@
click=
"showPriceFlight(priceFlight)"
circle
>
</el-button>
<el-tooltip
v-if=
"!isShowFlight(priceFlight)"
class=
"item"
effect=
"dark"
:content=
"$t('system.table_isShows')"
placement=
"top-start"
>
<el-button
type=
"danger"
icon=
"el-icon-remove-outline"
@
click=
"showPriceFlight(priceFlight)"
circle
>
</el-button>
</el-tooltip>
<el-tooltip
v-if=
"isShowFlight(priceFlight)"
class=
"item"
effect=
"dark"
:content=
"$t('Operation.Op_hide')"
placement=
"top-start"
>
placement=
"top-start"
>
<el-button
type=
"danger"
icon=
"iconfont icon-xianshi"
@
click=
"removePriceFlight(index,priceFlight,2)"
circle
></el-button>
circle
></el-button>
</el-tooltip>
</td>
</tr>
...
...
@@ -139,7 +147,7 @@
<
script
>
export
default
{
props
:
[
'priceData'
,
'AirTicketId'
,
'selectFilghtList'
,
'DeleteAirticketIds'
],
data
()
{
data
()
{
var
AirLineIdValidate
=
(
rule
,
value
,
callback
)
=>
{
if
(
value
===
0
)
{
callback
(
new
Error
(
this
.
$t
(
'system.ph_choiceAir'
)))
...
...
@@ -171,9 +179,9 @@
IsBindFlight
:
false
,
//类型
ticketTypeList
:
[{
Id
:
1
,
Name
:
this
.
$t
(
'Airticket.Air_go'
)
},
Id
:
1
,
Name
:
this
.
$t
(
'Airticket.Air_go'
)
},
{
Id
:
2
,
Name
:
this
.
$t
(
'Airticket.Air_returnTrip'
)
...
...
@@ -205,15 +213,15 @@
},
methods
:
{
//状态切换
StatusChange
(
item
)
{
StatusChange
(
item
)
{
item
.
IsShow
=
!
item
.
IsShow
},
//状态切换
TimeStatusChange
(
item
)
{
TimeStatusChange
(
item
)
{
item
.
IsShowTime
=
!
item
.
IsShowTime
},
//初始化航空公司下拉
initAirlines
()
{
initAirlines
()
{
this
.
apipost
(
'airline_post_GetList'
,
{},
res
=>
{
...
...
@@ -221,12 +229,17 @@
this
.
airLineList
=
res
.
data
.
data
}
},
err
=>
{
}
err
=>
{}
)
},
//交通类型切换
getTrafficType
(
item
)
{
if
(
item
.
TrafficType
==
2
)
{
this
.
airLineSelectChange
(
0
,
item
);
}
},
//航空公司下拉
airLineSelectChange
(
airLineId
,
item
)
{
airLineSelectChange
(
airLineId
,
item
)
{
item
.
AirLineId
=
airLineId
this
.
airLineList
.
forEach
(
x
=>
{
if
(
x
.
AirLineId
==
airLineId
)
{
...
...
@@ -237,7 +250,8 @@
item
.
DepartureAirPortName
=
''
item
.
ArrivalAirPortName
=
''
let
msg
=
{
airlineID
:
airLineId
airlineID
:
airLineId
,
TrafficType
:
item
.
TrafficType
}
this
.
apipost
(
'flight_post_GetAirportNameList'
,
...
...
@@ -247,12 +261,11 @@
item
.
airportNameList
=
res
.
data
.
data
}
},
err
=>
{
}
err
=>
{}
)
},
//航班改变
flightSelectChange
(
flightId
,
item
)
{
flightSelectChange
(
flightId
,
item
)
{
item
.
airportNameList
.
forEach
(
x
=>
{
if
(
x
.
ID
==
flightId
)
{
item
.
FlightNumber
=
x
.
Flight_number
...
...
@@ -263,10 +276,9 @@
}
})
},
initFlightList
(
AirTicketId
)
{
initFlightList
(
AirTicketId
)
{
let
msg
=
{
AirTicketId
:
AirTicketId
,
//DeleteAirticketIds:this.DeleteAirticketIds
DeleteAirticketIds
:
''
}
this
.
apipost
(
...
...
@@ -285,12 +297,11 @@
this
.
Warning
(
res
.
data
.
message
)
}
},
err
=>
{
}
err
=>
{}
)
},
//新增航班
addFlight
()
{
addFlight
()
{
var
obj
=
{
AlName
:
''
,
AirLineId
:
0
,
...
...
@@ -304,13 +315,14 @@
IsTransfer
:
0
,
//航班下拉列表
airportNameList
:
[],
TrafficType
:
1
,
//1-航班,2-火车
//是否显示
IsShow
:
true
}
this
.
priceFlightList
.
push
(
obj
)
},
//保存航班信息
savePriceFlight
(
item
)
{
savePriceFlight
(
item
)
{
item
.
IsShow
=
false
this
.
priceFlightList
.
forEach
((
x
,
index
)
=>
{
if
(
index
==
0
)
{
...
...
@@ -330,7 +342,7 @@
this
.
headCallBack
()
},
//保存时间信息
saveAirticketFlightTime
(
item
)
{
saveAirticketFlightTime
(
item
)
{
item
.
IsShowTime
=
false
let
msg
=
{
id
:
item
.
ID
,
...
...
@@ -338,17 +350,15 @@
arriveTime
:
item
.
ArrivalTime
,
}
this
.
apipost
(
'travel_post_ModifyAirticketFlightTimeById'
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
}
else
{
if
(
res
.
data
.
resultCode
==
1
)
{}
else
{
this
.
Warning
(
res
.
data
.
message
)
}
},
err
=>
{
}
err
=>
{}
)
},
//删除航班信息
removePriceFlight
(
index
,
item
,
type
)
{
removePriceFlight
(
index
,
item
,
type
)
{
var
that
=
this
var
msg
=
that
.
$t
(
'sm.shanchuhangbbnhf'
)
if
(
type
==
2
)
{
...
...
@@ -366,7 +376,7 @@
})
},
//显示航班
showPriceFlight
(
item
)
{
showPriceFlight
(
item
)
{
let
airticketIdArr
=
[]
this
.
DeleteAirticketIdArray
.
forEach
(
x
=>
{
if
(
x
!=
item
.
ID
&&
x
!=
0
)
{
...
...
@@ -377,7 +387,7 @@
this
.
headCallBack
()
},
//判断显示隐藏航班
isShowFlight
(
item
)
{
isShowFlight
(
item
)
{
let
isShow
=
true
this
.
DeleteAirticketIdArray
.
forEach
(
x
=>
{
if
(
x
==
item
.
ID
)
{
...
...
@@ -387,7 +397,7 @@
return
isShow
},
//初始化航班数据
initPriceFlight
()
{
initPriceFlight
()
{
this
.
priceFlight
.
AlName
=
''
this
.
priceFlight
.
AirLineId
=
0
this
.
priceFlight
.
FlightNumber
=
''
...
...
@@ -400,12 +410,15 @@
this
.
priceFlight
.
IsTransfer
=
0
this
.
priceFlightList
.
airportNameList
=
[]
},
headCallBack
()
{
var
obj
=
{
priceFlight
:
this
.
priceFlightList
,
DeleteAirticketIdArray
:
this
.
DeleteAirticketIdArray
}
headCallBack
()
{
var
obj
=
{
priceFlight
:
this
.
priceFlightList
,
DeleteAirticketIdArray
:
this
.
DeleteAirticketIdArray
}
this
.
$emit
(
'headCallBack'
,
obj
)
},
//初始化
init
()
{
init
()
{
this
.
postData
=
this
.
priceData
if
(
this
.
postData
.
AirTicketId
!=
0
&&
this
.
postData
.
PriceFlight
==
null
)
{
this
.
initFlightList
(
this
.
postData
.
AirTicketId
)
...
...
@@ -427,7 +440,7 @@
}
}
},
mounted
()
{
mounted
()
{
this
.
initAirlines
()
this
.
init
()
},
...
...
src/router/config.js
View file @
a586d66d
...
...
@@ -1052,6 +1052,14 @@ export default {
title
:
'航班管理'
},
},
{
path
:
'/trainManagement'
,
//动车管理
name
:
'trainManagement'
,
component
:
resolve
=>
require
([
'@/components/Ticketing/trainManagement'
],
resolve
),
meta
:
{
title
:
'动车管理'
},
},
{
path
:
'/flightPerformance'
,
//机票业绩
name
:
'flightPerformance'
,
...
...
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