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
3c555ae2
Commit
3c555ae2
authored
May 10, 2019
by
huangyuanyuan
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/superman
parents
53918b86
6e9e0381
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
506 additions
and
110 deletions
+506
-110
tripIndex.css
src/assets/css/tripIndex.css
+1
-0
addReceivablesDocuments.vue
src/components/FinancialModule/addReceivablesDocuments.vue
+6
-3
invoicesManager.vue
src/components/FinancialModule/invoicesManager.vue
+4
-3
invoicesManagerAdd.vue
src/components/FinancialModule/invoicesManagerAdd.vue
+34
-2
invoicesManagerDetail.vue
src/components/FinancialModule/invoicesManagerDetail.vue
+11
-2
SaleTripList.vue
src/components/TravelManager/TravelList/SaleTripList.vue
+1
-1
TeamBalancePayment.vue
...omponents/TravelManager/TravelList/TeamBalancePayment.vue
+41
-14
TravelControlList.vue
...components/TravelManager/TravelList/TravelControlList.vue
+4
-0
ExaminationStatistics.vue
src/components/administrative/ExaminationStatistics.vue
+6
-6
busHandBook.vue
src/components/busManagement/busHandBook.vue
+164
-61
twoday.vue
src/components/commonPage/twoday.vue
+2
-2
index.vue
src/components/index.vue
+7
-4
TravelManager2.vue
...ts/newTravelmanager/TravelGroupControl/TravelManager2.vue
+0
-1
TravelPrice.vue
...nents/newTravelmanager/TravelGroupControl/TravelPrice.vue
+40
-8
TravelManager5.vue
...newTravelmanager/oldTravelGroupControl/TravelManager5.vue
+39
-3
TravelMap.vue
...ents/newTravelmanager/oldTravelGroupControl/TravelMap.vue
+146
-0
No files found.
src/assets/css/tripIndex.css
View file @
3c555ae2
...
@@ -192,6 +192,7 @@
...
@@ -192,6 +192,7 @@
overflow
:
hidden
;
overflow
:
hidden
;
}
}
.trip-block
.block-item
.item
.up
img
{
.trip-block
.block-item
.item
.up
img
{
width
:
490px
;
/* width: 100%; */
/* width: 100%; */
/* zk新增 */
/* zk新增 */
position
:
relative
;
position
:
relative
;
...
...
src/components/FinancialModule/addReceivablesDocuments.vue
View file @
3c555ae2
...
@@ -799,13 +799,16 @@ export default {
...
@@ -799,13 +799,16 @@ export default {
var
zhifu
=
[];
var
zhifu
=
[];
wechat
=
OcrStr
.
match
(
/商户单号.
\d
+/
);
wechat
=
OcrStr
.
match
(
/商户单号.
\d
+/
);
zhifu
=
OcrStr
.
match
(
/商家可扫码退款或查询交易.
\d
+/
);
zhifu
=
OcrStr
.
match
(
/商家可扫码退款或查询交易.
\d
+/
);
if
(
wechat
==
null
&&
zhifu
==
null
){
let
barcode
=
x
.
data
.
Barcode
;
if
(
wechat
==
null
&&
zhifu
==
null
&&
barcode
==
""
){
return
;
return
;
}
}
if
(
zhifu
==
null
&&
wechat
.
length
>
0
){
if
(
zhifu
==
null
&&
wechat
!=
null
&&
wechat
.
length
>
2
0
){
this
.
setCode
=
wechat
[
wechat
.
length
-
1
].
replace
(
'商户单号'
,
''
);
this
.
setCode
=
wechat
[
wechat
.
length
-
1
].
replace
(
'商户单号'
,
''
);
}
else
if
(
wechat
==
null
&&
zhifu
.
length
>
0
){
}
else
if
(
wechat
==
null
&&
zhifu
!=
null
&&
zhifu
.
length
>
2
0
){
this
.
setCode
=
zhifu
[
zhifu
.
length
-
1
].
replace
(
'商家可扫码退款或查询交易'
,
''
);
this
.
setCode
=
zhifu
[
zhifu
.
length
-
1
].
replace
(
'商家可扫码退款或查询交易'
,
''
);
}
else
if
(
barcode
!=
""
){
this
.
setCode
=
barcode
;
}
}
this
.
$confirm
(
'匹配到交易流水号是否替换?'
,
'提示'
,
{
this
.
$confirm
(
'匹配到交易流水号是否替换?'
,
'提示'
,
{
confirmButtonText
:
'确定'
,
confirmButtonText
:
'确定'
,
...
...
src/components/FinancialModule/invoicesManager.vue
View file @
3c555ae2
...
@@ -150,7 +150,7 @@
...
@@ -150,7 +150,7 @@
</li>
</li>
</ul>
</ul>
</div>
</div>
<table
class=
"singeRowTable"
style=
"border:1px solid #E6E6E6;"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
"loading"
>
<table
class=
"singeRowTable"
style=
"border:1px solid #E6E6E6;"
cellspacing=
"0"
cellpadding=
"0"
>
<tr>
<tr>
<th
width=
"180"
>
团号
</th>
<th
width=
"180"
>
团号
</th>
<th>
订单号
</th>
<th>
订单号
</th>
...
@@ -191,7 +191,7 @@
...
@@ -191,7 +191,7 @@
</el-tooltip>
</el-tooltip>
</td>
</td>
</tr>
</tr>
<tr
v-for=
"(item2, index2) in item.InvoiceApplyList"
:key=
"index2"
v-if=
"index2!==0"
>
<tr
v-for=
"(item2, index2) in item.InvoiceApplyList"
v-if=
"index2!==0"
>
<td>
{{
item2
.
CreateDate
.
replace
(
'T'
,
' '
)
}}
</td>
<td>
{{
item2
.
CreateDate
.
replace
(
'T'
,
' '
)
}}
</td>
<td>
<td>
<span
v-if=
"item2.InvoiceApplyState === 1"
class=
"status_Application"
>
申请中
</span>
<span
v-if=
"item2.InvoiceApplyState === 1"
class=
"status_Application"
>
申请中
</span>
...
@@ -293,11 +293,12 @@ export default {
...
@@ -293,11 +293,12 @@ export default {
this
.
msg
.
OrderId
=
0
this
.
msg
.
OrderId
=
0
}
}
this
.
apipost
(
'InvoiceApply_get_GetGroupByInvoiceApplyList'
,
this
.
msg
,
res
=>
{
this
.
apipost
(
'InvoiceApply_get_GetGroupByInvoiceApplyList'
,
this
.
msg
,
res
=>
{
this
.
loading
=
false
if
(
res
.
data
.
resultCode
==
1
)
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
total
=
res
.
data
.
data
.
count
;
this
.
total
=
res
.
data
.
data
.
count
;
this
.
dataList
=
res
.
data
.
data
.
pageData
this
.
dataList
=
res
.
data
.
data
.
pageData
}
}
this
.
loading
=
false
if
(
this
.
msg
.
OrderId
===
0
)
{
if
(
this
.
msg
.
OrderId
===
0
)
{
this
.
msg
.
OrderId
=
''
this
.
msg
.
OrderId
=
''
}
}
...
...
src/components/FinancialModule/invoicesManagerAdd.vue
View file @
3c555ae2
...
@@ -288,6 +288,7 @@ export default {
...
@@ -288,6 +288,7 @@ export default {
CustomerId
:
0
,
CustomerId
:
0
,
IsDefaultInfo
:
1
,
IsDefaultInfo
:
1
,
ApplyPics
:
[],
ApplyPics
:
[],
ID
:
0
,
},
},
DepartName
:
""
,
DepartName
:
""
,
emName
:
""
,
emName
:
""
,
...
@@ -313,7 +314,7 @@ export default {
...
@@ -313,7 +314,7 @@ export default {
this
.
$viewer
=
viewer
this
.
$viewer
=
viewer
},
},
showImg
(
src
){
showImg
(
src
){
src
=
this
.
domainManager
().
ViittoFileUrl
+
src
;
src
=
src
.
indexOf
(
'http'
)
!=
-
1
?
src
:
this
.
domainManager
().
ViittoFileUrl
+
src
;
let
isExsit
=
false
let
isExsit
=
false
this
.
images
.
forEach
(
x
=>
{
this
.
images
.
forEach
(
x
=>
{
if
(
x
==
src
)
if
(
x
==
src
)
...
@@ -468,7 +469,34 @@ export default {
...
@@ -468,7 +469,34 @@ export default {
},
},
null
null
);
);
}
},
getDetail
:
function
(
id
)
{
// 获取详情
this
.
apipost
(
'InvoiceApply_get_GetDetails'
,
{
ID
:
id
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
let
detail
=
res
.
data
.
data
console
.
log
(
detail
)
this
.
isChang
=
2
this
.
msg
.
DutyParagraph
=
detail
.
DutyParagraph
;
this
.
msg
.
CompanyName
=
detail
.
CompanyName
;
this
.
msg
.
Address
=
detail
.
Address
;
this
.
msg
.
BankNo
=
detail
.
BankNo
;
this
.
msg
.
CompanyPhone
=
detail
.
CompanyPhone
;
this
.
msg
.
OpeningBank
=
detail
.
OpeningBank
;
this
.
msg
.
ApplyMoney
=
detail
.
ApplyMoney
;
if
(
detail
.
ApplyPics
&&
detail
.
ApplyPics
.
length
>
0
){
detail
.
ApplyPics
.
forEach
(
x
=>
{
this
.
saveMsg
.
push
({
Content
:
x
.
Url
,
Type
:
x
.
Type
,
Url
:
x
.
Url
});
})
}
this
.
getOrderDetail
();
}
this
.
loading
=
false
},
null
)
},
},
},
mounted
()
{
mounted
()
{
let
userInfo
=
this
.
getLocalStorage
();
let
userInfo
=
this
.
getLocalStorage
();
...
@@ -480,6 +508,10 @@ export default {
...
@@ -480,6 +508,10 @@ export default {
this
.
getAccountList
();
this
.
getAccountList
();
this
.
getOrderDetail
();
this
.
getOrderDetail
();
this
.
getCustomerInvoiceList
();
this
.
getCustomerInvoiceList
();
if
(
this
.
$route
.
query
.
edit
)
{
this
.
msg
.
ID
=
this
.
$route
.
query
.
id
this
.
getDetail
(
this
.
$route
.
query
.
id
)
}
}
}
};
};
</
script
>
</
script
>
src/components/FinancialModule/invoicesManagerDetail.vue
View file @
3c555ae2
...
@@ -346,6 +346,9 @@
...
@@ -346,6 +346,9 @@
</div>
</div>
</el-dialog>
</el-dialog>
<div
style=
"padding:20px 0"
>
<div
style=
"padding:20px 0"
>
<el-row
v-if=
"detail.InvoiceApplyState === 4"
>
拒绝说明:{{detail.RefuseRemarks}}
</el-row>
<el-row
v-if=
"detail.InvoiceNo"
>
<el-row
v-if=
"detail.InvoiceNo"
>
{{$t('ios.shuihao2')}}{{detail.InvoiceNo}}
{{$t('ios.shuihao2')}}{{detail.InvoiceNo}}
</el-row>
</el-row>
...
@@ -358,6 +361,8 @@
...
@@ -358,6 +361,8 @@
<button
class=
"normalBtn"
@
click=
"setStatus(2)"
>
{{$t('pub.cancelBtn')}}
</button>
<button
class=
"normalBtn"
@
click=
"setStatus(2)"
>
{{$t('pub.cancelBtn')}}
</button>
</div>
</div>
<div
class=
"imd_img_box"
>
<div
class=
"imd_img_box"
>
<!-- v-show="EmployeeId === detail.CreateById && detail.InvoiceApplyState === 4" -->
<button
class=
"normalBtn"
v-show=
"EmployeeId === detail.CreateById && detail.InvoiceApplyState === 4"
@
click=
"goEdit()"
>
修改
</button>
<div
class=
"_fujian_box"
>
<div
class=
"_fujian_box"
>
<div
v-if=
"detail.ApplyPics&&detail.ApplyPics.length>0"
>
<div
v-if=
"detail.ApplyPics&&detail.ApplyPics.length>0"
>
<div
class=
"_fujian_zhankai cursorpointer"
v-if=
"!fujianShow"
@
click=
"fujianShow = true"
>
<div
class=
"_fujian_zhankai cursorpointer"
v-if=
"!fujianShow"
@
click=
"fujianShow = true"
>
...
@@ -388,7 +393,7 @@
...
@@ -388,7 +393,7 @@
</div>
</div>
</div>
</div>
</div>
</div>
<div
v-else-if=
"!detail.ApplyPics && EmployeeId === detail.CreateBy"
>
<div
v-else-if=
"!detail.ApplyPics && EmployeeId === detail.CreateBy
Id
"
>
<div
class=
"_addUpload_box _addUpload_box_btm clearfix"
>
<div
class=
"_addUpload_box _addUpload_box_btm clearfix"
>
<
template
v-for=
"(file,fIndex) in saveMsg"
>
<
template
v-for=
"(file,fIndex) in saveMsg"
>
<div
v-if=
"file.Type==3"
>
<div
v-if=
"file.Type==3"
>
...
@@ -417,7 +422,7 @@
...
@@ -417,7 +422,7 @@
</div>
</div>
<div
class=
"shangchuanfujian"
><button
class=
"hollowFixedBtn"
@
click=
"upLoadFuJian"
>
上传附件
</button></div>
<div
class=
"shangchuanfujian"
><button
class=
"hollowFixedBtn"
@
click=
"upLoadFuJian"
>
上传附件
</button></div>
</div>
</div>
</div>
</div>
<div
class=
"querenhan"
>
<div
class=
"querenhan"
>
<p
>
确认函
</p>
<p
>
确认函
</p>
<div
style=
"width:100%;"
>
<div
style=
"width:100%;"
>
...
@@ -483,6 +488,10 @@ export default {
...
@@ -483,6 +488,10 @@ export default {
};
};
},
},
methods
:
{
methods
:
{
// 修改
goEdit
:
function
()
{
this
.
$router
.
push
({
name
:
'invoicesManagerAdd'
,
query
:{
id
:
this
.
detail
.
ID
,
OrderId
:
this
.
detail
.
OrderId
,
TCID
:
this
.
detail
.
TCID
,
CustomerId
:
this
.
detail
.
CustomerId
,
edit
:
1
,
blank
:
'y'
,
tab
:
'修改发票单据'
}
})
},
uploadFileBtn
(
file
)
{
//上传
uploadFileBtn
(
file
)
{
//上传
if
(
file
.
file
.
size
>
1024
*
1024
*
10
)
{
if
(
file
.
file
.
size
>
1024
*
1024
*
10
)
{
this
.
$message
.
warning
(
'文件大小不能超过10M!'
)
this
.
$message
.
warning
(
'文件大小不能超过10M!'
)
...
...
src/components/TravelManager/TravelList/SaleTripList.vue
View file @
3c555ae2
...
@@ -92,7 +92,7 @@
...
@@ -92,7 +92,7 @@
</div>
</div>
<div
class=
"el-col"
>
<div
class=
"el-col"
>
<div
class=
"d7"
>
<div
class=
"d7"
>
<el-button
v-if=
"item.CreateBy==CurrentUserId"
@
click=
"goToOpenTravel('TravelManager
3
',item.ID)"
type=
"primary"
>
行程修改
</el-button>
<el-button
v-if=
"item.CreateBy==CurrentUserId"
@
click=
"goToOpenTravel('TravelManager
5
',item.ID)"
type=
"primary"
>
行程修改
</el-button>
<el-button
@
click=
"copyTravelInfo(item.ID)"
type=
"primary"
>
行程复制
</el-button>
<el-button
@
click=
"copyTravelInfo(item.ID)"
type=
"primary"
>
行程复制
</el-button>
<el-button
v-if=
"item.TCNUMS==''&&item.CreateBy==CurrentUserId"
@
click=
"delConfig(item.ID)"
type=
"primary"
>
删除
</el-button>
<el-button
v-if=
"item.TCNUMS==''&&item.CreateBy==CurrentUserId"
@
click=
"delConfig(item.ID)"
type=
"primary"
>
删除
</el-button>
</div>
</div>
...
...
src/components/TravelManager/TravelList/TeamBalancePayment.vue
View file @
3c555ae2
...
@@ -102,7 +102,7 @@
...
@@ -102,7 +102,7 @@
}
}
.Team_Incontent
{
.Team_Incontent
{
margin-left
:
35px
;
margin-left
:
35px
;
}
}
.Team_firstTitle
span
{
.Team_firstTitle
span
{
...
@@ -224,13 +224,13 @@
...
@@ -224,13 +224,13 @@
</div>
</div>
<div
class=
"Team_Incontent"
style=
"height:80px;overflow:auto;"
>
<div
class=
"Team_Incontent"
style=
"height:80px;overflow:auto;"
>
<div>
<div>
<div>
提
成
</div>
<div>
提
成
</div>
<div
style=
"margin-bottom:6px;"
>
<div
style=
"margin-bottom:6px;"
>
<template
v-for=
"subItem in DataList.ExpectedCutList"
>
<template
v-for=
"subItem in DataList.ExpectedCutList"
>
<div
style=
"margin-bottom:10px;"
>
{{
subItem
.
BranchName
}}
¥
{{
subItem
.
expectedCut
}}
</div>
<div
style=
"margin-bottom:10px;"
>
{{
subItem
.
BranchName
}}
¥
{{
subItem
.
expectedCut
}}
</div>
</
template
>
</
template
>
</div>
</div>
</div>
</div>
<div>
联运成本
<span>
¥{{DataList.LYCB}}
</span></div>
<div>
联运成本
<span>
¥{{DataList.LYCB}}
</span></div>
</div>
</div>
<div
class=
"Team_firstTitle"
>
<div
class=
"Team_firstTitle"
>
...
@@ -263,8 +263,10 @@
...
@@ -263,8 +263,10 @@
<div
class=
"Team_collection"
v-loading=
"loading"
>
<div
class=
"Team_collection"
v-loading=
"loading"
>
<div
class=
"clearfix TB_PrintDiv"
>
<div
class=
"clearfix TB_PrintDiv"
>
<div
class=
"TB_comtitle TB-Title"
>
收入
</div>
<div
class=
"TB_comtitle TB-Title"
>
收入
</div>
<input
type=
"button"
value=
"新增"
class=
"hollowFixedBtn TeamAddBtn"
v-show=
"ishowBtn"
<
template
v-if=
"IsHaveAuth"
>
<input
type=
"button"
value=
"新增"
class=
"hollowFixedBtn TeamAddBtn"
v-show=
"ishowBtn"
@
click=
"AddIncomeDetail"
/>
@
click=
"AddIncomeDetail"
/>
</
template
>
</div>
</div>
<div
class=
"clearfix TB_PrintDiv"
>
<div
class=
"clearfix TB_PrintDiv"
>
<div
class=
"TB_comtitle TB-Title"
>
团费收入:
<div
class=
"TB_comtitle TB-Title"
>
团费收入:
...
@@ -575,7 +577,9 @@
...
@@ -575,7 +577,9 @@
<div
class=
"Team_collection"
v-loading=
"loading"
>
<div
class=
"Team_collection"
v-loading=
"loading"
>
<div
class=
"clearfix TB_PrintDiv"
>
<div
class=
"clearfix TB_PrintDiv"
>
<div
class=
"TB_comtitle TB-Title"
>
成本
</div>
<div
class=
"TB_comtitle TB-Title"
>
成本
</div>
<input
type=
"button"
value=
"新增"
class=
"hollowFixedBtn TeamAddBtn"
v-show=
"ishowBtn"
@
click=
"AddOutDetail"
/>
<
template
v-if=
"IsHaveAuth"
>
<input
type=
"button"
value=
"新增"
class=
"hollowFixedBtn TeamAddBtn"
v-show=
"ishowBtn"
@
click=
"AddOutDetail"
/>
</
template
>
</div>
</div>
<div
class=
"clearfix TB_PrintDiv"
>
<div
class=
"clearfix TB_PrintDiv"
>
<div
class=
"TB_comtitle TB-Title"
>
邀请函:
<div
class=
"TB_comtitle TB-Title"
>
邀请函:
...
@@ -1057,7 +1061,10 @@
...
@@ -1057,7 +1061,10 @@
<div
class=
"Team_collection"
v-loading=
"loading"
>
<div
class=
"Team_collection"
v-loading=
"loading"
>
<div
class=
"clearfix TB_PrintDiv"
>
<div
class=
"clearfix TB_PrintDiv"
>
<div
class=
"TB_comtitle TB-Title"
>
非成本
</div>
<div
class=
"TB_comtitle TB-Title"
>
非成本
</div>
<input
type=
"button"
value=
"新增"
class=
"hollowFixedBtn TeamAddBtn"
v-show=
"ishowBtn"
@
click=
"AddOutDetail"
/>
<
template
v-if=
"IsHaveAuth"
>
<input
type=
"button"
value=
"新增"
class=
"hollowFixedBtn TeamAddBtn"
v-show=
"ishowBtn"
@
click=
"AddOutDetail"
/>
</
template
>
</div>
</div>
<div
class=
"clearfix TB_PrintDiv"
>
<div
class=
"clearfix TB_PrintDiv"
>
<div
class=
"TB_comtitle TB-Title"
>
领队佣金:
<div
class=
"TB_comtitle TB-Title"
>
领队佣金:
...
@@ -1261,12 +1268,12 @@
...
@@ -1261,12 +1268,12 @@
</table>
</table>
</div>
</div>
</div>
</div>
<div
class=
"Team_BtnList"
>
<div
class=
"Team_BtnList"
v-if=
"IsHaveAuth"
>
<input
type=
"button"
@
click=
"zhaunBox"
value=
"单据转团"
class=
"hollowFixedBtn"
/>
<input
type=
"button"
@
click=
"zhaunBox"
value=
"单据转团"
class=
"hollowFixedBtn"
/>
<input
type=
"button"
v-if=
"!CloseIncomeBtn"
@
click=
"UpdateBrakeAccountStatus"
<input
type=
"button"
v-if=
"!CloseIncomeBtn"
@
click=
"UpdateBrakeAccountStatus"
:value=
"(DataList&&DataList.TeamBalance&&DataList.TeamBalance.BrakeAccountStatus === 0) ? '关闭收支操作' : '开启收支操作'"
:value=
"(DataList&&DataList.TeamBalance&&DataList.TeamBalance.BrakeAccountStatus === 0) ? '关闭收支操作' : '开启收支操作'"
class=
"hollowFixedBtn"
/>
class=
"hollowFixedBtn"
/>
<input
type=
"button"
value=
"导出"
@
click=
"ExportExcle"
class=
"normalBtn"
/>
<input
type=
"button"
value=
"导出"
@
click=
"ExportExcle"
class=
"normalBtn"
/>
<input
type=
"button"
value=
"打印"
@
click
.
prevent=
"doPrint"
class=
"normalBtn"
/>
<input
type=
"button"
value=
"打印"
@
click
.
prevent=
"doPrint"
class=
"normalBtn"
/>
</div>
</div>
<el-dialog
custom-class=
'w350'
title=
"合并单据"
:visible
.
sync=
"zhuanLoading"
center
:before-close=
"initZhuanMsg"
>
<el-dialog
custom-class=
'w350'
title=
"合并单据"
:visible
.
sync=
"zhuanLoading"
center
:before-close=
"initZhuanMsg"
>
...
@@ -1299,6 +1306,7 @@
...
@@ -1299,6 +1306,7 @@
TCNUM
:
''
,
TCNUM
:
''
,
FrIds
:
''
,
FrIds
:
''
,
},
},
IsHaveAuth
:
false
,
//权限判断按钮是否显示
zhuanLoading
:
false
,
zhuanLoading
:
false
,
moneyAll
:
{
moneyAll
:
{
Moneyall
:
0
,
Moneyall
:
0
,
...
@@ -1582,7 +1590,7 @@
...
@@ -1582,7 +1590,7 @@
}
}
// 地接
// 地接
if
((
that
.
isExists
(
item
.
CostTypeList
,
'地接费(领取)'
)
||
(
that
.
isExists
(
item
.
CostTypeList
,
if
((
that
.
isExists
(
item
.
CostTypeList
,
'地接费(领取)'
)
||
(
that
.
isExists
(
item
.
CostTypeList
,
'地接费(结算)'
)))
&&
item
.
Type
==
2
)
{
'地接费(结算)'
)))
&&
item
.
Type
==
2
)
{
this
.
moneyAll
.
dijieyf
+=
item
.
Money
;
this
.
moneyAll
.
dijieyf
+=
item
.
Money
;
this
.
moneyAll
.
dijiesf
+=
item
.
PayMoney
;
this
.
moneyAll
.
dijiesf
+=
item
.
PayMoney
;
...
@@ -1713,12 +1721,31 @@
...
@@ -1713,12 +1721,31 @@
},
},
err
=>
{}
err
=>
{}
)
)
},
//权限验证
checkHasAuth
()
{
this
.
apipost
(
'travel_get_CheckBalancePaymentAuth'
,
{
TCID
:
this
.
TCID
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
IsHaveAuth
=
true
;
}
else
{
this
.
IsHaveAuth
=
false
;
}
},
err
=>
{}
)
}
}
},
},
mounted
()
{
mounted
()
{
this
.
TCID
=
this
.
$route
.
query
.
id
;
this
.
TCID
=
this
.
$route
.
query
.
id
;
this
.
OutBranchId
=
this
.
$route
.
query
.
OutBranchId
this
.
OutBranchId
=
this
.
$route
.
query
.
OutBranchId
;
this
.
CloseIncomeBtn
=
this
.
$route
.
query
.
CloseIncomeBtn
this
.
CloseIncomeBtn
=
this
.
$route
.
query
.
CloseIncomeBtn
;
this
.
checkHasAuth
();
this
.
getList
();
this
.
getList
();
this
.
getAllCont
();
this
.
getAllCont
();
this
.
getHangingAccountByTCIDList
();
this
.
getHangingAccountByTCIDList
();
...
...
src/components/TravelManager/TravelList/TravelControlList.vue
View file @
3c555ae2
...
@@ -792,6 +792,10 @@
...
@@ -792,6 +792,10 @@
<div
class=
"TCL_remarkTitle"
>
{{$t('Operation.Op_duineiRemark')}}:
</div>
<div
class=
"TCL_remarkTitle"
>
{{$t('Operation.Op_duineiRemark')}}:
</div>
<div
class=
"TCL_Content"
>
{{item.OPInnerRemark}}
</div>
<div
class=
"TCL_Content"
>
{{item.OPInnerRemark}}
</div>
</div>
</div>
<div
class=
"clearfix TCL-redType"
v-if=
"item.DMCNum"
>
<div
class=
"TCL_remarkTitle"
>
地接备注团号:
</div>
<div
class=
"TCL_Content"
>
{{item.DMCNum}}
</div>
</div>
<div
class=
"clearfix TCL-redType"
<div
class=
"clearfix TCL-redType"
v-if=
"item.DmcRemarkLast || item.HotelDiningBus.HotelChangeState>0 || item.HotelDiningBus.DiningChangeState>0 || item.HotelDiningBus.ResultBusTypeStr!='' "
>
v-if=
"item.DmcRemarkLast || item.HotelDiningBus.HotelChangeState>0 || item.HotelDiningBus.DiningChangeState>0 || item.HotelDiningBus.ResultBusTypeStr!='' "
>
<div
class=
"TCL_remarkTitle"
>
{{$t('Operation.Op_dijieRemark')}}:
</div>
<div
class=
"TCL_remarkTitle"
>
{{$t('Operation.Op_dijieRemark')}}:
</div>
...
...
src/components/administrative/ExaminationStatistics.vue
View file @
3c555ae2
...
@@ -116,8 +116,8 @@ export default {
...
@@ -116,8 +116,8 @@ export default {
if
(
filters
.
emName
&&
filters
.
emName
!=
''
){
if
(
filters
.
emName
&&
filters
.
emName
!=
''
){
data
=
data
.
filter
(
item
=>
item
.
emName
.
indexOf
(
filters
.
emName
)
!=-
1
);
data
=
data
.
filter
(
item
=>
item
.
emName
.
indexOf
(
filters
.
emName
)
!=-
1
);
}
}
if
(
filters
.
periods
&&
filters
.
periods
!=
''
){
if
(
filters
.
periods
&&
filters
.
periods
!=
''
&&
filters
.
periods
!=
'__all__'
){
this
.
msg
.
Periods
=
filters
.
periods
[
0
]
this
.
msg
.
Periods
=
filters
.
periods
this
.
getList
();
this
.
getList
();
}
else
{
}
else
{
this
.
msg
.
Periods
=
''
this
.
msg
.
Periods
=
''
...
@@ -311,7 +311,7 @@ export default {
...
@@ -311,7 +311,7 @@ export default {
}
}
};
};
let
LllegalModifyRemarkCount
=
{
let
LllegalModifyRemarkCount
=
{
field
:
"
L
llegalModifyRemarkCount"
,
field
:
"
l
llegalModifyRemarkCount"
,
title
:
"结团后修改备注"
,
title
:
"结团后修改备注"
,
titleAlign
:
"left"
,
titleAlign
:
"left"
,
columnAlign
:
"left"
,
columnAlign
:
"left"
,
...
@@ -319,7 +319,7 @@ export default {
...
@@ -319,7 +319,7 @@ export default {
width
:
80
,
width
:
80
,
orderBy
:
""
,
orderBy
:
""
,
formatter
:
function
(
rowData
,
rowIndex
,
pagingIndex
,
field
)
{
formatter
:
function
(
rowData
,
rowIndex
,
pagingIndex
,
field
)
{
return
`<span>
${
rowData
.
LllegalModifyRemarkCount
<=
0
?
''
:
rowData
.
L
llegalModifyRemarkCount
}
</span>`
return
`<span>
${
rowData
.
lllegalModifyRemarkCount
<=
0
?
''
:
rowData
.
l
llegalModifyRemarkCount
}
</span>`
}
}
};
};
let
discountPrice
=
{
let
discountPrice
=
{
...
@@ -449,7 +449,7 @@ export default {
...
@@ -449,7 +449,7 @@ export default {
this
.
msg
.
pageSize
=
10000
;
//不分页
this
.
msg
.
pageSize
=
10000
;
//不分页
this
.
msg
.
ParentId
=
this
.
$route
.
query
.
ParentId
;
this
.
msg
.
ParentId
=
this
.
$route
.
query
.
ParentId
;
let
dt
=
new
Date
()
let
dt
=
new
Date
()
this
.
stringPerons
=
(
dt
.
getMonth
()
==
0
?(
dt
.
getFullYear
()
-
1
):
dt
.
getFullYear
())
+
''
+
(
dt
.
getMonth
().
toString
().
length
<
2
?
'0'
:
''
)
+
(
dt
.
getMonth
()
==
0
?
12
:
dt
.
getMonth
());
this
.
stringPerons
=
(
dt
.
getMonth
()
==
0
?(
dt
.
getFullYear
()
-
1
):
dt
.
getFullYear
())
+
''
+
(
dt
.
getMonth
().
toString
().
length
<
2
?
'0'
:
''
)
+
(
dt
.
getMonth
()
==
0
?
12
:
dt
.
getMonth
()
+
1
);
let
cont
=
dt
.
getMonth
()
let
cont
=
dt
.
getMonth
()
for
(
let
i
=
1
;
i
<=
cont
;
i
++
){
for
(
let
i
=
1
;
i
<=
cont
;
i
++
){
...
@@ -459,7 +459,7 @@ export default {
...
@@ -459,7 +459,7 @@ export default {
value
:
`2019
${
o
}
`
,
value
:
`2019
${
o
}
`
,
})
})
}
}
this
.
msg
.
Periods
=
dt
.
getFullYear
()
+
(
dt
.
getMonth
()
>
9
?
dt
.
getMonth
():
"0"
+
dt
.
getMonth
())
this
.
getList
();
this
.
getList
();
this
.
getCompanyList
();
this
.
getCompanyList
();
},
},
...
...
src/components/busManagement/busHandBook.vue
View file @
3c555ae2
<
style
>
<
style
>
.busManagerTalbe
{
.busManagerTalbe
{
background
:
#ccc
;
background
:
#ccc
;
font-size
:
12px
;
font-size
:
12px
;
}
}
.busManagerTalbe
tr
{
.busManagerTalbe
tr
{
background
:
#fff
;
background
:
#fff
;
text-align
:
center
;
text-align
:
center
;
height
:
40px
;
height
:
40px
;
}
}
.commonBackColor
{
.commonBackColor
{
background-color
:
#E6E6E6
;
background-color
:
#E6E6E6
;
color
:
#333
;
color
:
#333
;
}
}
.comTextAlign
{
text-align
:
left
;
.comTextAlign
{
padding-left
:
20px
;
text-align
:
left
;
padding-left
:
20px
;
}
}
</
style
>
</
style
>
<
template
>
<
template
>
<div>
<div>
<table
border=
"0"
cellspacing=
"1"
cellpadding=
"0"
class=
"busManagerTalbe"
style=
"width: 100%;"
>
<table
border=
"0"
cellspacing=
"1"
cellpadding=
"0"
class=
"busManagerTalbe"
style=
"width: 100%;"
v-loading=
'loading'
>
<tr>
<tr>
<td
colspan=
"6"
>
印象ジャパンバス手配依頼書
</td>
<td
colspan=
"6"
>
印象ジャパンバス手配依頼書
</td>
</tr>
</tr>
<tr>
<tr>
<td
class=
"commonBackColor"
>
団 體 名:
</td>
<td
class=
"commonBackColor"
>
団 體 名:
</td>
<td
colspan=
"5"
class=
"comTextAlign"
>
HP20190428A1
</td>
<td
colspan=
"5"
class=
"comTextAlign"
>
</tr>
<el-input
type=
"text"
v-model=
"DataObj.TeamNum"
/>
<tr>
</td>
<td
class=
"commonBackColor"
>
ガイド名前:
</td>
</tr>
<td
class=
"comTextAlign"
>
张三丰
</td>
<tr>
<td
class=
"commonBackColor"
>
攜帯番號:
</td>
<td
class=
"commonBackColor"
>
ガイド名前:
</td>
<td
colspan=
"3"
class=
"comTextAlign"
>
123456789
</td>
<td
class=
"comTextAlign"
>
</tr>
<el-input
type=
"text"
v-model=
"DataObj.GuideName"
/>
<tr>
</td>
<td
class=
"commonBackColor"
>
人 數:
</td>
<td
class=
"commonBackColor"
>
攜帯番號:
</td>
<td
colspan=
"5"
class=
"comTextAlign"
>
25+1
</td>
<td
colspan=
"3"
class=
"comTextAlign"
>
</tr>
<el-input
type=
"text"
v-model=
"DataObj.GuideTel"
/>
<tr>
</td>
<td
class=
"commonBackColor"
>
バス 種類:
</td>
</tr>
<td
colspan=
"5"
class=
"comTextAlign"
>
1
</td>
<tr>
</tr>
<td
class=
"commonBackColor"
>
人 數:
</td>
<tr>
<td
colspan=
"5"
class=
"comTextAlign"
>
<td
class=
"commonBackColor"
>
スケジュール:
</td>
<el-input
type=
"text"
v-model=
"DataObj.PeopleNum"
/>
<td
colspan=
"5"
class=
"comTextAlign"
></td>
</td>
</tr>
</tr>
<tr>
<tr>
<td
class=
"commonBackColor"
>
日付
</td>
<td
class=
"commonBackColor"
>
バス 種類:
</td>
<td
class=
"commonBackColor"
>
用車状況
</td>
<td
colspan=
"5"
class=
"comTextAlign"
>
<td
class=
"commonBackColor"
>
便名
</td>
<el-input
type=
"text"
v-model=
"DataObj.BusType"
/>
<td
class=
"commonBackColor"
>
スケジュール內容
</td>
</td>
<td
class=
"commonBackColor"
>
ホテル
</td>
</tr>
<td
class=
"commonBackColor"
>
ホテルTEL
</td>
<tr>
</tr>
<td
class=
"commonBackColor"
>
スケジュール:
</td>
<tr>
<td
colspan=
"5"
class=
"comTextAlign"
></td>
<td></td>
</tr>
<td></td>
<tr>
<td></td>
<td
class=
"commonBackColor"
>
日付
</td>
<td></td>
<td
class=
"commonBackColor"
>
用車状況
</td>
<td></td>
<td
class=
"commonBackColor"
>
便名
</td>
<td></td>
<td
class=
"commonBackColor"
>
スケジュール內容
</td>
</tr>
<td
class=
"commonBackColor"
>
ホテル
</td>
<tr>
<td
class=
"commonBackColor"
>
ホテルTEL
</td>
<td>
備考欄:
</td>
</tr>
<td
colspan=
"5"
class=
"comTextAlign"
>
04/28日接机+0天+05/04日东京成田国际机场送机,订房号:HP20190428A1
</td>
<tr
v-for=
"subItem in DataObj.Details_Extends"
>
</tr>
<td>
<tr>
{{
subItem
.
UseDate
}}
<td
colspan=
"6"
class=
"comTextAlign"
>
*迎えや送りは必要・不要となることは、必ず標記してください。
</td>
</td>
</tr>
<td>
<tr>
<el-input
type=
"text"
v-model=
"subItem.BusType"
/>
<td
colspan=
"6"
class=
"comTextAlign"
>
*直接バス會社へ送付するので、必ず日本語でご記入ください。
</td>
</td>
</tr>
<td>
</table>
<el-input
type=
"text"
v-model=
"subItem.FlightNum"
/>
</div>
</td>
<td>
<el-input
type=
"text"
v-model=
"subItem.BusContent"
/>
</td>
<td>
<el-input
type=
"text"
v-model=
"subItem.HotelName"
/>
</td>
<td>
<el-input
type=
"text"
v-model=
"subItem.HotelTel"
/>
</td>
</tr>
<tr>
<td>
備考欄:
</td>
<td
colspan=
"5"
class=
"comTextAlign"
>
<el-input
type=
"text"
v-model=
"DataObj.Remarks"
/>
</td>
</tr>
<tr>
<td
colspan=
"6"
class=
"comTextAlign"
>
*迎えや送りは必要・不要となることは、必ず標記してください。
</td>
</tr>
<tr>
<td
colspan=
"6"
class=
"comTextAlign"
>
*直接バス會社へ送付するので、必ず日本語でご記入ください。
</td>
</tr>
<tfoot>
<tr>
<td
colspan=
"6"
>
<input
type=
"button"
class=
"normalBtn"
@
click=
"SaveData()"
value=
"保存"
/>
<input
type=
"button"
class=
"normalBtn"
@
click=
"DownLoadFile()"
value=
"下载"
/>
</td>
</tr>
</tfoot>
</table>
</div>
</
template
>
</
template
>
<
script
>
export
default
{
data
()
{
return
{
loading
:
false
,
DataObj
:
{
Id
:
0
,
TCIDS
:
""
,
TeamNum
:
""
,
GuideName
:
""
,
GuideTel
:
""
,
PeopleNum
:
""
,
BusType
:
""
,
DayNight
:
""
,
Remarks
:
""
,
Details_Extends
:
[]
},
TCIDS
:
""
}
},
methods
:
{
DownLoadFile
(
item
)
{
let
msg
=
{
TCIDS
:
this
.
TCIDS
};
this
.
loading
=
true
;
var
fileName
=
"バス手配依頼書"
+
this
.
DataObj
.
TeamNum
+
".xls"
;
this
.
GetLocalFile
(
"bus_get_DownLoadBusConfig"
,
msg
,
fileName
,
res
=>
{
this
.
loading
=
false
;
});
},
GetData
()
{
this
.
loading
=
true
;
this
.
apipost
(
'bus_Get_GetBusDownLoadData'
,
{
TCIDs
:
this
.
TCIDS
},
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
DataObj
=
res
.
data
.
data
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{})
},
SaveData
()
{
this
.
DataObj
.
TCIDS
=
this
.
TCIDS
;
this
.
apipost
(
'bus_Post_SaveBusDownLoadData'
,
this
.
DataObj
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
Success
(
"操作成功"
);
this
.
GetData
();
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{})
}
},
mounted
()
{
//this.TCIDS = this.$route.query.TCID;
this
.
TCIDS
=
"2126,2405"
;
this
.
GetData
();
},
}
</
script
>
src/components/commonPage/twoday.vue
View file @
3c555ae2
...
@@ -22,8 +22,8 @@
...
@@ -22,8 +22,8 @@
<div
class=
"twoday_item"
v-for=
"item in day.details"
:key=
"item.dayNum"
>
<div
class=
"twoday_item"
v-for=
"item in day.details"
:key=
"item.dayNum"
>
<div
class=
"item"
>
<div
class=
"item"
>
<div
class=
"up"
>
<div
class=
"up"
>
<img
v-if=
"item.img!=''&& item.scenicJson"
:style=
"
{'top':item.scenicJson.y+'px'}" :src='compressImg(item.img, "filt", 663,
325
)'/>
<img
v-if=
"item.img!=''&& item.scenicJson"
:style=
"
{'top':item.scenicJson.y+'px'}" :src='compressImg(item.img, "filt", 663,
""
)'/>
<img
v-else
:src=
'compressImg(item.img, "filt", 663,
325
)'
/>
<img
v-else
:src=
'compressImg(item.img, "filt", 663,
""
)'
/>
</div>
</div>
<div
class=
"down"
style=
'padding:22px 0;'
>
<div
class=
"down"
style=
'padding:22px 0;'
>
<h4
v-if=
'item.title!=""'
v-html=
"item.title"
@
click
.
stop=
"goUrl(item.url)"
style=
"cursor: pointer"
></h4>
<h4
v-if=
'item.title!=""'
v-html=
"item.title"
@
click
.
stop=
"goUrl(item.url)"
style=
"cursor: pointer"
></h4>
...
...
src/components/index.vue
View file @
3c555ae2
...
@@ -605,7 +605,7 @@
...
@@ -605,7 +605,7 @@
<div
class=
"inlogs_Content"
v-html=
"versionList[0].UpdateContent"
>
<div
class=
"inlogs_Content"
v-html=
"versionList[0].UpdateContent"
>
</div>
</div>
<input
type=
"button"
value=
"我知道了"
class=
"normalBtn"
style=
"margin:10px 0
0
155px;"
@
click=
"logsShow=false"
/>
<input
type=
"button"
value=
"我知道了"
class=
"normalBtn"
style=
"margin:10px 0
15px
155px;"
@
click=
"logsShow=false"
/>
</div>
</div>
</div>
</div>
<div
class=
"downmz"
v-show=
"downmz"
>
<div
class=
"downmz"
v-show=
"downmz"
>
...
@@ -4187,7 +4187,7 @@ export default {
...
@@ -4187,7 +4187,7 @@ export default {
.updateLogs{
.updateLogs{
position: absolute;
position: absolute;
width:400px;
width:400px;
height:400px;
//
height:400px;
left:50%;
left:50%;
top:50%;
top:50%;
margin-left:-200px;
margin-left:-200px;
...
@@ -4202,19 +4202,22 @@ export default {
...
@@ -4202,19 +4202,22 @@ export default {
padding:0 10px;
padding:0 10px;
text-align: center;
text-align: center;
color:#333333;
color:#333333;
font-size:1
2
px;
font-size:1
4
px;
margin-top:10px;
margin-top:10px;
font-weight: bold;
font-weight: bold;
}
}
.inlogs_Content{
.inlogs_Content{
width:100%;
width:100%;
padding:0 15px;
padding:0 15px;
height:260px;
//
height:260px;
overflow: auto;
overflow: auto;
margin-top:20px;
margin-top:20px;
color:#666666;
color:#666666;
font-size:12px;
font-size:12px;
}
}
.inlogs_Content p{
margin-bottom:10px;
}
.logsImg{
.logsImg{
margin-top:-30px;
margin-top:-30px;
margin-left:155px;
margin-left:155px;
...
...
src/components/newTravelmanager/TravelGroupControl/TravelManager2.vue
View file @
3c555ae2
...
@@ -602,7 +602,6 @@
...
@@ -602,7 +602,6 @@
res
=>
{
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
if
(
res
.
data
.
resultCode
==
1
)
{
var
tempData
=
res
.
data
.
data
;
var
tempData
=
res
.
data
.
data
;
console
.
log
(
"tempData"
,
tempData
);
if
(
tempData
.
Feature
!=
null
)
{
if
(
tempData
.
Feature
!=
null
)
{
this
.
FeatureData
.
ID
=
tempData
.
Feature
.
ID
;
this
.
FeatureData
.
ID
=
tempData
.
Feature
.
ID
;
this
.
FeatureData
.
ConfigId
=
tempData
.
Feature
.
ConfigId
;
this
.
FeatureData
.
ConfigId
=
tempData
.
Feature
.
ConfigId
;
...
...
src/components/newTravelmanager/TravelGroupControl/TravelPrice.vue
View file @
3c555ae2
...
@@ -798,10 +798,11 @@
...
@@ -798,10 +798,11 @@
<el-dialog
custom-class=
'Tp_hotelDialog'
title=
"酒店使用情况"
:visible
.
sync=
"outerVisible"
center
>
<el-dialog
custom-class=
'Tp_hotelDialog'
title=
"酒店使用情况"
:visible
.
sync=
"outerVisible"
center
>
<table
class=
"TphotelTable"
border=
"0"
cellspacing=
'1'
v-if=
"priceData.TCID>0"
>
<table
class=
"TphotelTable"
border=
"0"
cellspacing=
'1'
v-if=
"priceData.TCID>0"
>
<tr>
<tr>
<th>
日期
</th>
<th>
日期
</th>
<th>
酒店
</th>
<th>
酒店
</th>
<th>
占房时间
</th>
<th>
占房时间
</th>
<th>
更换酒店
</th>
<th>
更换酒店
</th>
<th>
操作
</th>
</tr>
</tr>
<tr
v-if=
"priceData.PriceHotelList"
v-for=
"item in priceData.PriceHotelList"
>
<tr
v-if=
"priceData.PriceHotelList"
v-for=
"item in priceData.PriceHotelList"
>
<td
style=
"background-color:#E6E6E6;color:#333;"
width=
"120"
>
{{item.UseDay}}
</td>
<td
style=
"background-color:#E6E6E6;color:#333;"
width=
"120"
>
{{item.UseDay}}
</td>
...
@@ -811,11 +812,12 @@
...
@@ -811,11 +812,12 @@
{{index+1}}.{{subItem.HotelName}}
{{index+1}}.{{subItem.HotelName}}
<span
v-if=
"subItem.UseCount>0 && item.SubList.length==1"
>
<span
v-if=
"subItem.UseCount>0 && item.SubList.length==1"
>
<a
style=
"color:green"
>
{{subItem.Status==1?"【OK】":"【暂定】"}}
</a>
<a
style=
"color:green"
>
{{subItem.Status==1?"【OK】":"【暂定】"}}
</a>
【
<span
style=
"color:green"
>
本团使用
库存
:{{subItem.UseCount}}
【
<span
style=
"color:green"
>
本团使用:{{subItem.UseCount}}
{{subItem.CostPrice!=0?"价格:"+subItem.CostPrice:""}}
</span>
】
{{subItem.CostPrice!=0?"价格:"+subItem.CostPrice:""}}
</span>
】
</span>
</span>
【
<span
style=
"color:#E95252;"
>
剩余库存
:{{subItem.RemainingInventory}}
【
<span
style=
"color:#E95252;"
>
剩余
:{{subItem.RemainingInventory}}
</span>
】
</span>
】
<el-checkbox
v-if=
"item.SubList.length>1"
v-model=
"item.CheckList[index].CheckStatus"
<el-checkbox
v-if=
"item.SubList.length>1"
v-model=
"item.CheckList[index].CheckStatus"
@
change=
"changeHotelStatus(item,index),changeHotelList()"
></el-checkbox>
@
change=
"changeHotelStatus(item,index),changeHotelList()"
></el-checkbox>
...
@@ -837,11 +839,20 @@
...
@@ -837,11 +839,20 @@
<el-option
:key=
"0"
label=
"请选择"
:value=
"0"
></el-option>
<el-option
:key=
"0"
label=
"请选择"
:value=
"0"
></el-option>
<el-option
v-for=
"subItem in item.HotelList"
:key=
"subItem.ID"
:label=
"subItem.Name"
:value=
"subItem.ID"
>
<el-option
v-for=
"subItem in item.HotelList"
:key=
"subItem.ID"
:label=
"subItem.Name"
:value=
"subItem.ID"
>
<span
style=
"float: left"
>
{{subItem.Name}}
</span>
<span
style=
"float: left"
>
{{subItem.Name}}
</span>
<span
style=
"float: right; color:red; font-size: 13px"
>
剩余
库存
:{{subItem.Inventory}} /
<span
style=
"float: right; color:red; font-size: 13px"
>
剩余:{{subItem.Inventory}} /
价格:{{subItem.CostPrice}}
</span>
价格:{{subItem.CostPrice}}
</span>
</el-option>
</el-option>
</el-select>
</el-select>
</td>
</td>
<td>
<div
class=
"tp_divList"
v-for=
"(subItem,index) in item.SubList"
>
<div>
<span
v-if=
"subItem.UseCount>0 && item.SubList.length==1"
>
<span
style=
"color:red;white-space:nowrap;cursor:pointer;"
@
click=
"DeleteStock(item)"
>
删除
</span>
</span>
</div>
</div>
</td>
</tr>
</tr>
</table>
</table>
<div
slot=
"footer"
class=
"dialog-footer"
>
<div
slot=
"footer"
class=
"dialog-footer"
>
...
@@ -1613,7 +1624,28 @@
...
@@ -1613,7 +1624,28 @@
},
},
err
=>
{}
err
=>
{}
);
);
}
},
//删除占用的酒店库存信息
DeleteStock
(
item
)
{
var
that
=
this
;
this
.
Confirm
(
"是否此酒店库存信息?"
,
function
()
{
let
delMsg
=
{
hotelId
:
item
.
SubList
[
0
].
HotelId
,
TCID
:
item
.
TCID
,
useTime
:
item
.
SubList
[
0
].
JourneyDate
};
that
.
apipost
(
"hoteluse_post_DeleteHotelUse"
,
delMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
that
.
Success
(
"操作成功!"
);
item
.
SubList
[
0
].
UseCount
=
0
;
}
else
{
that
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
});
},
},
},
mounted
()
{
mounted
()
{
var
dateObj
=
this
.
$calendarUtils
.
getCurrentDate
();
var
dateObj
=
this
.
$calendarUtils
.
getCurrentDate
();
...
...
src/components/newTravelmanager/oldTravelGroupControl/TravelManager5.vue
View file @
3c555ae2
...
@@ -57,10 +57,25 @@
...
@@ -57,10 +57,25 @@
<div
v-if=
"modifyType==2"
class=
"DTSaveBtn"
:class=
"
{'disClick':!isSubmit}" @click="submitForm(3)"
<div
v-if=
"modifyType==2"
class=
"DTSaveBtn"
:class=
"
{'disClick':!isSubmit}" @click="submitForm(3)"
title="另存为新模板">保存
title="另存为新模板">保存
</div>
</div>
<div
v-if=
"ConfigId>0"
class=
"DTSaveBtn"
:class=
"
{'disClick':!isSubmit}" @click="goB2B()">预览
</div>
<div
v-if=
"ConfigId>0"
class=
"DTSaveBtn"
:class=
"
{'disClick':!isSubmit}" @click="goB2B()">预览
</div>
<div
class=
"DTSaveBtn"
v-if=
"ConfigId>0"
@
click=
"getMapList()"
>
地图
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<el-dialog
custom-class=
"w800"
title=
"行程地图"
:visible
.
sync=
"isShowMap"
center
>
<TravelMap
:dataList=
"travelLngLat"
></TravelMap>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
class=
"hollowFixedBtn"
@
click=
"isShowMap = false"
>
{{
$t
(
'pub.cancelBtn'
)
}}
</button>
</div>
</el-dialog>
</div>
</div>
</
template
>
</
template
>
...
@@ -71,6 +86,8 @@
...
@@ -71,6 +86,8 @@
import
TravelNotice
from
'../TravelGroupControl/TravelNotice'
import
TravelNotice
from
'../TravelGroupControl/TravelNotice'
import
TravelPrice2
from
'../TravelGroupControl/TravelPrice2'
import
TravelPrice2
from
'../TravelGroupControl/TravelPrice2'
import
TravelMap
from
'../oldTravelGroupControl/TravelMap'
export
default
{
export
default
{
provide
()
{
provide
()
{
return
{
return
{
...
@@ -199,6 +216,8 @@
...
@@ -199,6 +216,8 @@
loading
:
false
,
loading
:
false
,
isNewConfig
:
true
,
isNewConfig
:
true
,
isfromManager
:
true
,
isfromManager
:
true
,
isShowMap
:
false
,
travelLngLat
:[]
}
}
},
},
components
:
{
components
:
{
...
@@ -206,7 +225,8 @@
...
@@ -206,7 +225,8 @@
TravelDaysTripDirect
:
TravelDaysTripDirect
,
TravelDaysTripDirect
:
TravelDaysTripDirect
,
TravelFeature
:
TravelFeature
,
TravelFeature
:
TravelFeature
,
TravelNotice
:
TravelNotice
,
TravelNotice
:
TravelNotice
,
TravelPrice2
:
TravelPrice2
TravelPrice2
:
TravelPrice2
,
TravelMap
:
TravelMap
},
},
methods
:
{
methods
:
{
/*获取行程特色内容对象*/
/*获取行程特色内容对象*/
...
@@ -753,6 +773,22 @@
...
@@ -753,6 +773,22 @@
'_blank'
'_blank'
)
)
},
},
//获取地图
getMapList
(){
this
.
isShowMap
=
true
this
.
journeyList
.
DayList
.
forEach
(
x
=>
{
x
.
dayArray
.
forEach
(
y
=>
{
if
((
y
.
Type
==
2
||
y
.
Type
==
3
)
&&
(
y
.
childItem
.
Lat
!=
""
&&
y
.
childItem
.
Lng
!=
""
)){
this
.
travelLngLat
.
push
({
lat
:
y
.
childItem
.
Lat
,
lng
:
y
.
childItem
.
Lng
,
name
:
y
.
childItem
.
CouponsName
==
"undefined"
?
y
.
childItem
.
HotelName
:
y
.
childItem
.
CouponsName
,
type
:
y
.
Type
})
}
})
})
}
},
},
updated
:
function
()
{
updated
:
function
()
{
this
.
MsgBus
.
$emit
(
'FeatureDataFlag'
)
this
.
MsgBus
.
$emit
(
'FeatureDataFlag'
)
...
@@ -765,11 +801,11 @@
...
@@ -765,11 +801,11 @@
if
(
this
.
$route
.
query
.
allotId
)
{
if
(
this
.
$route
.
query
.
allotId
)
{
this
.
PostConfig
.
allotId
=
this
.
$route
.
query
.
allotId
this
.
PostConfig
.
allotId
=
this
.
$route
.
query
.
allotId
}
}
console
.
log
(
"this.PostConfig"
,
this
.
PostConfig
)
this
.
ScrollMethod
()
this
.
ScrollMethod
()
},
},
created
()
{
created
()
{
this
.
firstLoadConfigInfo
()
this
.
firstLoadConfigInfo
()
;
}
}
}
}
...
...
src/components/newTravelmanager/oldTravelGroupControl/TravelMap.vue
0 → 100644
View file @
3c555ae2
<
style
>
.markers_labels
{
margin-left
:
-24px
!important
;
margin-top
:
-43px
!important
;
}
.gm-svpc
,
.gm-style-mtc
,
.gm-style-cc
{
display
:
none
;
}
</
style
>
<
template
>
<div
>
<div
id=
"map_canvas"
style=
"height: 400px; width: 100%"
></div>
</div>
</
template
>
<
script
>
export
default
{
props
:[
"dataList"
],
name
:
'GGMap'
,
data
(){
return
{
show
:
false
,
directionsService
:
new
google
.
maps
.
DirectionsService
(),
directionsDisplay
:
new
google
.
maps
.
DirectionsRenderer
(),
map
:{},
}
},
created
(){
},
destroyed
:
function
()
{
},
mounted
(){
this
.
mapBuild
()
//初始化实例之后调用
},
methods
:{
getDetailsRoutes
(
source
,
destination
,
map
){
service
=
new
google
.
maps
.
DistanceMatrixService
();
service
.
getDistanceMatrix
({
origins
:
[
source
],
destinations
:
[
destination
],
travelMode
:
google
.
maps
.
TravelMode
.
DRIVING
,
unitSystem
:
google
.
maps
.
UnitSystem
.
METRIC
,
avoidHighways
:
false
,
avoidTolls
:
false
},
function
(
response
,
status
)
{
if
(
status
==
google
.
maps
.
DistanceMatrixStatus
.
OK
&&
response
.
rows
[
0
].
elements
[
0
].
status
!=
"ZERO_RESULTS"
)
{
var
distance
=
response
.
rows
[
0
].
elements
[
0
].
distance
.
text
;
var
duration
=
response
.
rows
[
0
].
elements
[
0
].
duration
.
text
;
var
dvDistance
=
document
.
getElementById
(
"siteinfo_modal_label"
);
dvDistance
.
innerHTML
=
""
;
dvDistance
.
innerHTML
+=
"Distance: "
+
distance
+
"<br />"
;
dvDistance
.
innerHTML
+=
"Duration:"
+
duration
;
}
else
{
alert
(
"Unable to find the distance via road."
);
}
})
},
// 地图实例
mapBuild
(){
console
.
log
(
this
.
dataList
)
let
lat
=
parseFloat
(
this
.
dataList
[
0
].
lat
)
let
lng
=
parseFloat
(
this
.
dataList
[
0
].
lng
)
let
center
=
{
lng
:
lng
,
lat
:
lat
}
//创建地图实例,zoom是缩放比例
this
.
map
=
new
google
.
maps
.
Map
(
document
.
getElementById
(
'map_canvas'
),
{
zoom
:
7
,
center
:
center
,
mapTypeId
:
google
.
maps
.
MapTypeId
.
ROADMAP
});
// var polyOptions = {
// strokeColor: 'red', // 颜色
// strokeOpacity: 1.0, // 透明度
// strokeWeight: 2 // 宽度
// }
// let poly = new google.maps.Polyline(polyOptions);
// poly.setMap(map); // 装载
// 遍历循环创建标记
// this.dataList.map(item=>{
// // let lat = parseFloat(item.lat)
// // let lng = parseFloat(item.lng)
// // var path = poly.getPath(); //获取线条的坐标
// // path.push(new google.maps.LatLng(lat, lng));
// let marker = new MarkerWithLabel({
// position: {lat:lat,lng:lng},
// // icon: '../../../static/img/qishou.png', //标记自定义图标
// draggable: false, //不可拖动
// map: map, //地图实例
// // labelContent: item.name, //label的内容
// labelAnchor: new google.maps.Point(22, 100), //label的位置,可以调
// // labelClass: "markers_labels", // the CSS class for the label
// // labelStyle: { background:'#fff',padding:'5px' }
// });
// //自定义信息窗口
// let iw = new google.maps.InfoWindow({
// content: `
<
div
>
//
<
p
>
景点名称:
$
{
item
.
name
}
<
/p
>
//
<
/div>`}
)
;
// //点击信息窗口显示
// google.maps.event.addListener(marker, "click", function (e) { iw.open(map, marker); });
// })
this
.
directionsDisplay
.
setMap
(
this
.
map
);
this
.
calcRoute
()
},
calcRoute
:
function
()
{
// 创建路径规划
// 分解数据 获得起 止 以及中间数据
let
lat
=
parseFloat
(
this
.
dataList
[
0
].
lat
)
let
lng
=
parseFloat
(
this
.
dataList
[
0
].
lng
)
let
elat
=
parseFloat
(
this
.
dataList
[
this
.
dataList
.
length
-
1
].
lat
)
let
elng
=
parseFloat
(
this
.
dataList
[
this
.
dataList
.
length
-
1
].
lng
)
let
_this
=
this
;
let
start
=
lat
+
','
+
lng
;
let
end
=
elat
+
','
+
elng
;
let
waypoints
=
[];
if
(
this
.
dataList
.
length
>
2
)
{
this
.
dataList
.
forEach
((
x
,
index
)
=>
{
if
(
index
>=
1
&&
index
!==
(
this
.
dataList
.
length
-
1
))
{
let
obj
=
{
location
:
x
.
lat
+
','
+
x
.
lng
}
waypoints
.
push
(
obj
)
}
});
}
let
request
=
{
// 组装连线数据
origin
:
start
,
// 起
destination
:
end
,
// 止
travelMode
:
google
.
maps
.
TravelMode
.
DRIVING
,
// waypoints: [{location:"30.5226477,104.05806469999993"},{location:"30.67416759999999,104.04721970000003"}] // 中间点数据
};
if
(
waypoints
.
length
>
0
)
{
request
.
waypoints
=
waypoints
}
console
.
log
(
waypoints
)
_this
.
directionsService
.
route
(
request
,
function
(
result
,
status
)
{
if
(
status
==
google
.
maps
.
DirectionsStatus
.
OK
)
{
_this
.
directionsDisplay
.
setDirections
(
result
);
}
});
},
},
}
</
script
>
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