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
62100a1c
Commit
62100a1c
authored
May 30, 2023
by
沈良进
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/superman
parents
36a5af38
121761c5
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
1073 additions
and
531 deletions
+1073
-531
TeamRevenueReport.vue
...mponents/FinancialModule/ReportForm/TeamRevenueReport.vue
+3
-0
SignName.vue
src/components/SignName.vue
+205
-200
TravelContractConfirm.vue
src/components/TravelContractConfirm.vue
+1
-10
TravelControlList.vue
...components/TravelManager/TravelList/TravelControlList.vue
+8
-5
TravelControlListSale.vue
...onents/TravelManager/TravelList/TravelControlListSale.vue
+41
-8
ContractManage.vue
src/components/administrative/ContractManage.vue
+88
-6
clientConfirm.vue
src/components/clientConfirm.vue
+4
-3
TravelManager2.vue
...ts/newTravelmanager/TravelGroupControl/TravelManager2.vue
+1
-1
TravelPrice2.vue
...ents/newTravelmanager/TravelGroupControl/TravelPrice2.vue
+7
-7
rightHead.vue
src/components/public/rightHead.vue
+344
-0
ExpectedCommission.vue
src/components/sale/ExpectedCommission.vue
+1
-6
sale.vue
src/components/sale/sale.vue
+4
-234
operation.vue
src/components/temp/operation.vue
+320
-12
index.js
src/plug/index.js
+46
-39
No files found.
src/components/FinancialModule/ReportForm/TeamRevenueReport.vue
View file @
62100a1c
...
...
@@ -2130,6 +2130,9 @@ export default {
},
components
:
{},
mounted
()
{
let
STime
=
this
.
getBeforeDate
(
31
,
this
.
getBeforeDate
(
0
,
new
Date
().
Format
(
"yyyy-MM-dd"
)))
let
ETime
=
this
.
getBeforeDate
(
0
,
this
.
getBeforeDate
(
0
,
new
Date
().
Format
(
"yyyy-MM-dd"
)))
this
.
productionDate
=
[
STime
,
ETime
]
let
allH
,
allW
,
cH
,
cW
;
allH
=
document
.
documentElement
.
clientHeight
;
allW
=
document
.
documentElement
.
clientWidth
;
...
...
src/components/SignName.vue
View file @
62100a1c
This diff is collapsed.
Click to expand it.
src/components/TravelContractConfirm.vue
View file @
62100a1c
...
...
@@ -3681,19 +3681,10 @@
}
return
serviceCount
;
},
goUrl
()
{
sessionStorage
.
setItem
(
"SignInfo"
,
JSON
.
stringify
(
this
.
dataList
))
this
.
$router
.
push
({
name
:
"SignName"
,
query
:
{
ContractId
:
this
.
msg
.
ContractId
,
}
})
},
ChangeTab
(
num
)
{
this
.
ActiveTab
=
num
;
},
//获取数据
getList
()
{
this
.
apipost
(
...
...
src/components/TravelManager/TravelList/TravelControlList.vue
View file @
62100a1c
...
...
@@ -610,9 +610,10 @@
v-if=
"item.PriceOfferUrl"
target=
"_blank"
>
下载报价单
</a>
</span>
</p>
<p
class=
"travelnowrap"
v-if=
"item.Config_OfferId&&item.Config_OfferId>0"
>
<span
style=
"cursor:pointer;text-decoration:underline;color:blue;"
@
click=
"showDialog(item.ID, item.Config_OfferId)"
>
报价详情
</span>
<span
style=
"cursor:pointer;text-decoration:underline;color:blue;"
@
click=
"showDialog(item.ID, item.Config_OfferId)"
>
报价详情
</span>
</p>
<p
class=
"travelnowrap flex"
v-if=
"item.OfferShouPeiFee>0"
>
<span>
手配费
</span>
...
...
@@ -683,10 +684,11 @@
</div>
</el-popover>
</p>
<p
class=
"travelnowrap"
v-if=
"item.LineID==14 && item.IsOpenHotel==1"
>
<p
class=
"travelnowrap"
v-if=
"(item.LineID==14 || item.LineID==90|| item.LineID==168) && item.IsOpenHotel==1"
>
<span
style=
"color:red;font-weight:bold;"
>
※ {{$t('op.DJyiguanbi')}}.
</span>
</p>
</div>
</div>
<div
class=
"el-col"
style=
"width:190px;"
>
...
...
@@ -1061,7 +1063,8 @@
{{$t('op.HotelXJ')}}
</el-dropdown-item>
<!-- 结团 -->
<el-dropdown-item
v-if=
"item.Status==1&&Number(item.OrderGuestNum)>0"
@
click
.
native=
"OutGroup(item.TCID,2,item.TravelEndAudit)"
>
<el-dropdown-item
v-if=
"item.Status==1&&Number(item.OrderGuestNum)>0"
@
click
.
native=
"OutGroup(item.TCID,2,item.TravelEndAudit)"
>
{{$t('Operation.Op_jietuan')}}
</el-dropdown-item>
<el-dropdown-item
v-if=
"item.Status==2"
@
click
.
native=
"OutGroup(item.TCID,1,item.TravelEndAudit)"
>
...
...
src/components/TravelManager/TravelList/TravelControlListSale.vue
View file @
62100a1c
...
...
@@ -221,7 +221,7 @@
</el-checkbox-group>
</span>
</div>
<div
class=
"comSearchDiv"
>
<span>
{{
$t
(
'Airticket.Air_salesPlatform'
)
}}
</span>
<span>
...
...
@@ -482,7 +482,26 @@
{{item.OutBranchName}}
</p>
<p
class=
"travelnowrap"
v-if=
"item.Config_OfferId"
>
<span
style=
"cursor:pointer;text-decoration:underline;color:blue;"
@
click=
"showDialog(item.ID, item.Config_OfferId)"
>
报价详情
</span>
<span
style=
"cursor:pointer;text-decoration:underline;color:blue;"
@
click=
"showDialog(item.ID, item.Config_OfferId)"
>
报价详情
</span>
</p>
<p
v-if=
"(item.LineID==14 || item.LineID==90|| item.LineID==168) && item.HotelOrderListReports && item.HotelOrderListReports.length>0 "
>
<el-popover
width=
"980"
trigger=
"click"
popper-class=
"TC_HotelPop"
>
<commonHotelInfo
:HotelObj=
"item.HotelOrderListReports"
:showHotelObj=
"showHotelObj"
:TCID=
"item.TCID"
:DMCNum=
"item.DMCNum"
:TCNUM=
"item.TCNUM"
@
SetShouPeiShu=
"SetShouPeiShu(item.TCID,item.ShouPeiStatus)"
></commonHotelInfo>
<div
slot=
"reference"
>
<span
class=
"price"
style=
"cursor:pointer;text-decoration:underline;"
>
{{$t('salesModule.HotelOrder')}}
</span>
<span
style=
"color: #e95252"
>
op{{item.OpSureHouse==2 ? '已确认' : '未确认'}}{{$t('op.Fenfang')}}
</span>
</div>
</el-popover>
</p>
<p
class=
"travelnowrap"
v-if=
"(item.LineID==14 || item.LineID==90|| item.LineID==168) && item.IsOpenHotel==1"
>
<span
style=
"color:red;font-weight:bold;"
>
※ {{$t('op.DJyiguanbi')}}.
</span>
</p>
</div>
</div>
...
...
@@ -723,7 +742,8 @@
@
click
.
native=
"setUpPlat(item)"
>
{{$t('Operation.Op_shangjia')}}
</el-dropdown-item>
<el-dropdown-item
v-if=
"item.TCState==3"
@
click
.
native=
"Setshelves(item.TCID)"
>
{{$t('Operation.Op_xiajia')}}
</el-dropdown-item>
<el-dropdown-item
v-if=
"item.Status==1&&Number(item.OrderGuestNum)>0"
@
click
.
native=
"OutGroup(item.TCID,2)"
>
<el-dropdown-item
v-if=
"item.Status==1&&Number(item.OrderGuestNum)>0"
@
click
.
native=
"OutGroup(item.TCID,2)"
>
{{$t('Operation.Op_jietuan')}}
</el-dropdown-item>
<el-dropdown-item
@
click
.
native=
"goB2B(item.ConfigId)"
>
{{$t('Operation.Op_b2bView')}}
...
...
@@ -820,10 +840,12 @@
</div>
</template>
<
script
>
import
commonHotelInfo
from
"../../commonPage/commonHotelInfo.vue"
;
import
priceDialog
from
'../TravelNewQuotation/priceDialog.vue'
;
export
default
{
components
:
{
priceDialog
priceDialog
,
commonHotelInfo
,
},
data
()
{
return
{
...
...
@@ -903,7 +925,7 @@
LineIdList
:
[],
LineteamId
:
0
,
TCNUM
:
""
,
TCID
:
""
,
TCID
:
""
,
StartGroupDate
:
""
,
EndGroupDate
:
""
,
OutBranchId
:
-
1
,
...
...
@@ -937,6 +959,17 @@
//团控状态
FreePlanType
:
-
1
},
showHotelObj
:
{
showPrice
:
true
,
//是否显示价格
showPay
:
false
,
//是否显示支付方式
showZhan
:
true
,
//占房时间
showBtnList
:
false
,
//是否下载、确认按钮
ShowTaxType
:
false
,
//显示税入税别
ShowRebateRatio
:
false
,
//显示返佣比列
ShowSupplier
:
true
,
//是否显示供应商
showCaozuoTime
:
true
,
//操作时间
colspanLength
:
5
//跨行
},
remarkMsg
:
{
TCID
:
0
,
OPRemark
:
""
,
...
...
@@ -1372,7 +1405,7 @@
query
:
{
id
:
id
,
OutBranchId
:
OutBranchId
,
IsHaveAuth
:
true
,
IsHaveAuth
:
true
,
blank
:
"y"
,
tab
:
"团队收支明细"
}
...
...
@@ -1640,7 +1673,7 @@
this
.
queryMsg
=
this
.
$store
.
state
.
pageCondition
;
}
}
if
(
!
this
.
$route
.
query
.
tcmun
)
{
if
(
!
this
.
$route
.
query
.
tcmun
)
{
var
myDate
=
new
Date
();
var
nowDate
=
myDate
.
getFullYear
()
+
...
...
@@ -1650,7 +1683,7 @@
myDate
.
getDate
();
this
.
queryMsg
.
StartGroupDate
=
nowDate
;
}
if
(
this
.
queryCommonData
.
IsParentCompany
!=
1
&&
userInfo
.
RB_Branch_id
!=
49
...
...
src/components/administrative/ContractManage.vue
View file @
62100a1c
...
...
@@ -32,6 +32,48 @@
margin-left
:
0
!important
;
}
/*灰色遮罩层*/
.ContractManage
.fade
{
width
:
100%
;
height
:
100%
;
background
:
rgba
(
0
,
0
,
0
,
0.5
);
position
:
fixed
;
left
:
0
;
top
:
0
;
z-index
:
99
;
}
/*弹出层*/
.ContractManage
.qrCodeDiv
{
width
:
236px
;
height
:
275px
;
background-color
:
#fff
;
text-align
:
center
;
border
:
1px
solid
#d1d1d1
;
position
:
fixed
;
left
:
50%
;
top
:
50%
;
margin-left
:
-100px
;
margin-top
:
-118px
;
z-index
:
999
;
border-radius
:
5px
;
}
.ContractManage
.Ec_cha
{
position
:
absolute
;
cursor
:
pointer
;
right
:
-20px
;
top
:
-25px
;
width
:
30px
;
height
:
30px
;
background-color
:
#fff
;
text-align
:
center
;
border-radius
:
50%
;
line-height
:
30px
;
}
.ContractManage
.Ec_cha
:hover
{
color
:
red
;
}
</
style
>
<
template
>
...
...
@@ -189,15 +231,21 @@
<el-button
type=
"warning"
icon=
"iconfont icon-copy"
circle
@
click=
"CopyContract(item)"
style=
"padding:4px;"
>
</el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"下载"
placement=
"top-start"
v-if=
"item.Status==2||item.Status==4"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"下载"
placement=
"top-start"
v-if=
"item.Status==2||item.Status==4"
>
<el-button
type=
"success"
icon=
"el-icon-download"
circle
@
click=
"DownLoadContract(item)"
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"提交审核"
placement=
"top-start"
v-if=
"item.Status==0||item.Status==3"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"提交审核"
placement=
"top-start"
v-if=
"item.Status==0||item.Status==3"
>
<el-button
type=
"info"
icon=
"el-icon-upload2"
circle
@
click=
"SubmitContract(item)"
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
v-if=
"item.Status==2"
effect=
"dark"
content=
"复制链接发送给客户"
>
<
!-- <
el-tooltip class="item" v-if="item.Status==2" effect="dark" content="复制链接发送给客户">
<el-button type="info" icon="iconfont icon-copy-l" circle @click="CopyUrl(item)"
style="padding:4px;background-color:#9266f9;border-color:#9266f9;"></el-button>
</el-tooltip> -->
<el-tooltip
class=
"item"
v-if=
"item.Status==2"
effect=
"dark"
content=
"复制链接发送给客户"
>
<el-button
type=
"info"
icon=
"iconfont icon-copy-l"
circle
@
click=
"GetQrCode(item)"
style=
"padding:4px;background-color:#9266f9;border-color:#9266f9;"
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"取消"
placement=
"top-start"
v-if=
"item.Status==0"
>
<el-button
type=
"danger"
icon=
"el-icon-close"
circle
@
click=
"DeleteContract(item)"
></el-button>
...
...
@@ -213,6 +261,15 @@
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"currentPage"
layout=
"total,prev, pager, next, jumper"
:page-size=
"msg.pageSize"
:total=
"total"
>
</el-pagination>
<div
class=
"fade"
v-show=
"isShowFade"
></div>
<div
class=
"qrCodeDiv"
v-show=
"isShowFade"
>
<div
style=
"margin-top:15px;"
>
请扫码签字
<br/>
【{{clickObj.T_ContractNum}}】
</div>
<div
id=
"qrcode"
style=
"margin:25px;"
ref=
"qrcode"
>
<img
class=
"WeiXinShare"
:src=
"'data:image/png;base64,'+QRCodeStr"
/>
</div>
<i
class=
"iconfont icon-cha Ec_cha"
@
click=
"isShowFade=false"
></i>
</div>
</div>
</template>
...
...
@@ -237,7 +294,7 @@
TravelAgency_DealMan
:
""
,
//经办人
C_TCNUM
:
""
,
//团号
C_ProductName
:
""
,
//线路名称
IsQueryAll
:
0
IsQueryAll
:
0
},
pickerBeginDateBefore
:
{
disabledDate
:
time
=>
{
...
...
@@ -254,7 +311,10 @@
let
startTime
=
new
Date
(
this
.
msg
.
StartDate
);
return
startTime
.
getTime
()
>=
time
.
getTime
();
}
}
},
clickObj
:{},
//当前选择的合同
isShowFade
:
false
,
//是否显示二维码图片
QRCodeStr
:
""
,
//二维码图片
};
},
mounted
()
{
...
...
@@ -303,6 +363,29 @@
);
});
},
//生成二维码
GetQrCode
(
item
)
{
let
urlObj
=
this
.
domainManager
();
let
msg
=
{
ContractId
:
item
.
ID
,
};
this
.
clickObj
=
item
;
this
.
$http
({
headers
:
{
'Content-Type'
:
'application/json'
},
method
:
'post'
,
url
:
urlObj
.
DomainUrl
+
'/api/file/GetSingleContractQrCode?'
,
data
:
{
"msg"
:
msg
}
}).
then
(
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
isShowFade
=
true
;
this
.
QRCodeStr
=
res
.
data
.
data
;
}
}).
catch
(
err
=>
{})
},
//复制URL
CopyUrl
(
item
)
{
var
oInput
=
document
.
createElement
(
'input'
);
...
...
@@ -322,7 +405,6 @@
this
.
goContract
(
'SingleContract'
,
0
,
'单项委托合同'
);
}
},
//下载合同
DownLoadContract
(
item
)
{
let
msg
=
{
...
...
src/components/clientConfirm.vue
View file @
62100a1c
...
...
@@ -2115,6 +2115,7 @@
query
:
{
TCID
:
this
.
msg
.
TCID
,
orderID
:
this
.
msg
.
orderID
,
guestId
:
this
.
msg
.
guestId
}
})
},
...
...
@@ -2123,7 +2124,7 @@
},
//获取数据
getList
()
{
// this.apiJavaPost("/api/contract/getContractInfo", this.msg, res => {
this
.
apipost
(
"travelcontract_post_GetContractInfoService"
,
this
.
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
dataList
=
res
.
data
.
data
;
...
...
@@ -2219,7 +2220,7 @@
},
//提交数据
SaveMsg
()
{
// this.apiJavaPost("/api/contract/dosaveOrUpdate", this.dataList, res => {
this
.
apipost
(
"travelcontract_post_UpdateCompanySignatureService"
,
this
.
dataList
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
Success
(
res
.
data
.
message
);
...
...
@@ -2246,7 +2247,7 @@
this
.
getList
();
this
.
getCanvas
();
}
catch
(
error
)
{
//alert("mounted:"+error.message)
}
}
};
...
...
src/components/newTravelmanager/TravelGroupControl/TravelManager2.vue
View file @
62100a1c
...
...
@@ -50,7 +50,7 @@
:priceList=
"PriceList"
v-if=
"TeamType==0"
:PostConfig=
"PostConfig"
:modifyTcid=
"modifyTcid"
:TeamType=
"TeamType"
:CurrentUserInfo=
"CurrentUserInfo"
:IsDirect=
"PostConfig.IsDirect"
></TravelPrice>
<!--小包团-->
<TravelPrice2
ref=
"TravelPrice"
id=
"fiveAnchor"
@
headCallBack=
"getPrice"
:PostDaysTrip=
"PostDaysTrip"
<TravelPrice2
@
saveMsg=
"SaveData(1)"
ref=
"TravelPrice"
id=
"fiveAnchor"
@
headCallBack=
"getPrice"
:PostDaysTrip=
"PostDaysTrip"
v-if=
"TeamType==1"
:priceList=
"PriceList"
:PostConfig=
"PostConfig"
:modifyTcid=
"modifyTcid"
:TeamType=
"TeamType"
:CurrentUserInfo=
"CurrentUserInfo"
:IsDirect=
"PostConfig.IsDirect"
></TravelPrice2>
<!--一日游-->
...
...
src/components/newTravelmanager/TravelGroupControl/TravelPrice2.vue
View file @
62100a1c
...
...
@@ -301,7 +301,6 @@
.TphotelTable
tr
td
{
background-color
:
#fff
;
/* padding:8px 0; */
border
:
1px
solid
#d1d1d1
;
}
...
...
@@ -454,8 +453,8 @@
<el-checkbox
v-model=
"priceData.IsLessPrice"
:true-label=
"CheckedVaule"
:false-label=
"UnCheckedLessPrice"
>
{{
$t
(
'op.CanLessPrice'
)
}}
</el-checkbox>
<el-checkbox
v-model=
"priceData.IsNeedAirportShuttle"
@
change=
"IsNeedAirportShuttleChange"
:true-label=
"CheckedVaule"
:false-label=
"UnCheckedLessPrice"
>
是否需要送团
<el-checkbox
v-model=
"priceData.IsNeedAirportShuttle"
@
change=
"IsNeedAirportShuttleChange"
:
true-label=
"CheckedVaule"
:
false-label=
"UnCheckedLessPrice"
>
是否需要送团
</el-checkbox>
<template
v-if=
"CurrentUserInfo.RB_Group_id==2"
>
<input
type=
"button"
class=
"normalBtn"
:value=
"$t('op.HotelUse')"
@
click=
"outerVisible=true"
...
...
@@ -739,7 +738,8 @@
</el-input>
</el-form-item>
<el-form-item
prop=
"SendPersion"
>
<el-input
class=
"w260"
:disabled=
"!priceData.IsNeedAirportShuttle"
placeholder=
"请输入送团人"
v-model=
"priceData.SendPersion"
>
<el-input
class=
"w260"
:disabled=
"!priceData.IsNeedAirportShuttle"
placeholder=
"请输入送团人"
v-model=
"priceData.SendPersion"
>
<
template
slot=
"prepend"
>
送团人
</
template
>
</el-input>
</el-form-item>
...
...
@@ -747,10 +747,10 @@
<el-form-item>
</el-form-item>
<el-form-item>
<div
class=
"w260"
></div>
<div
class=
"w260"
></div>
</el-form-item>
<el-form-item>
<div
class=
"w260"
></div>
<div
class=
"w260"
></div>
</el-form-item>
<el-form-item
style=
"margin-top: -20px"
>
<el-input
:placeholder=
"$t('pub.pleaseImport')"
class=
"w260 ComSeat"
v-model=
"priceData.GatherTag"
>
...
...
@@ -1221,7 +1221,7 @@
},
methods
:
{
IsNeedAirportShuttleChange
()
{
if
(
!
this
.
priceData
.
IsNeedAirportShuttle
)
{
if
(
!
this
.
priceData
.
IsNeedAirportShuttle
)
{
this
.
priceData
.
SendPersion
=
''
}
},
...
...
src/components/public/rightHead.vue
0 → 100644
View file @
62100a1c
This diff is collapsed.
Click to expand it.
src/components/sale/ExpectedCommission.vue
View file @
62100a1c
...
...
@@ -315,9 +315,7 @@
<detailsButtom
:type=
"2"
:obj=
"commissionMsg"
:Month=
"Month"
/>
</div>
</div>
<p
style=
"padding: 0 0 10px 0;text-align: left;"
>
</p>
<p
style=
"padding: 0 0 10px 0;text-align: left;"
></p>
<div
class=
"ExpectedCommission-table"
>
<el-table
border
ref=
"multipleTable"
:data=
"isExpansion?newRlistAll:newRlist"
>
<el-table-column
width=
"80"
prop=
"RuleName"
...
...
@@ -462,9 +460,6 @@
data
()
{
return
{
isExpansion
:
false
,
detailsInfor
:{
},
CommissionJJ
:
0
,
CommissionTC
:
0
,
GNOrderNum
:
0
,
...
...
src/components/sale/sale.vue
View file @
62100a1c
This diff is collapsed.
Click to expand it.
src/components/temp/operation.vue
View file @
62100a1c
This diff is collapsed.
Click to expand it.
src/plug/index.js
View file @
62100a1c
...
...
@@ -119,9 +119,9 @@ export default {
let
lxymallUrl
=
''
;
//国内游api
let
crmUrl
=
""
;
//crm API
let
locationName
=
window
.
location
.
hostname
;
//
domainUrl = "http://192.168.10.128";
domainUrl
=
"http://192.168.10.128"
;
// domainUrl = "http://192.168.10.9:8083" // 刘东电脑
domainUrl
=
"http://192.168.10.226"
;
//
domainUrl = "http://192.168.10.226";
//domainUrl = "http://reborn.oytour.com";
let
crmLocalFileStreamDownLoadUrl
=
""
;
crmLocalFileStreamDownLoadUrl
=
locationName
.
indexOf
(
'oytour'
)
!==
-
1
?
"http://crm.oytour.com"
:
"http://testcrm.oytour.com"
;
...
...
@@ -253,7 +253,7 @@ export default {
}
//HTTP提交数据
Vue
.
prototype
.
apipost
=
function
(
cmd
,
msg
,
successCall
,
faildCall
,
isOnline
,
isTerminate
)
{
Vue
.
prototype
.
apipost
=
function
(
cmd
,
msg
,
successCall
,
faildCall
,
isOnline
,
isTerminate
)
{
if
(
this
.
$route
.
name
.
indexOf
(
'login'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'clientConfirm'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'confirmationOrderDownLoad'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'PrintPage'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'TravelContractConfirm'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'ViittoContractConfirm'
)
===
-
1
&&
...
...
@@ -283,11 +283,13 @@ export default {
}
else
if
(
this
.
$route
.
path
==
"/clientConfirm"
)
{
let
TCID
=
this
.
$route
.
query
.
TCID
;
let
orderID
=
this
.
$route
.
query
.
orderID
;
let
guestId
=
this
.
$route
.
query
.
guestId
;
this
.
$router
.
push
({
name
:
"clientConfirm"
,
query
:
{
TCID
:
TCID
,
orderID
:
orderID
orderID
:
orderID
,
guestId
:
guestId
,
}
})
}
else
if
(
this
.
$route
.
path
==
"/TravelContractConfirm"
)
{
...
...
@@ -338,27 +340,30 @@ export default {
let
pending
=
[];
//声明一个数组用于存储每个请求的取消函数和axios标识
let
cancelToken
=
axios
.
CancelToken
;
let
removePending
=
(
config
)
=>
{
for
(
let
p
in
pending
)
{
if
(
pending
[
p
].
u
===
config
.
url
+
'&'
+
config
.
method
)
{
//当当前请求在数组中存在时执行函数体
pending
[
p
].
f
();
//执行取消操作
pending
.
splice
(
p
,
1
);
for
(
let
p
in
pending
)
{
if
(
pending
[
p
].
u
===
config
.
url
+
'&'
+
config
.
method
)
{
//当当前请求在数组中存在时执行函数体
pending
[
p
].
f
();
//执行取消操作
pending
.
splice
(
p
,
1
);
}
}
}
// 我的财务单防止多次请求导致数据混乱
if
(
isTerminate
>
0
)
{
if
(
isTerminate
>
0
)
{
this
.
$http
.
interceptors
.
request
.
use
(
config
=>
{
removePending
(
config
);
//在一个axios发送前执行一下取消操作
config
.
cancelToken
=
new
cancelToken
((
c
)
=>
{
// 这里的axios标识我是用请求地址&请求方式拼接的字符串,当然你可以选择其他的一些方式
pending
.
push
({
u
:
config
.
url
+
'&'
+
config
.
method
,
f
:
c
});
removePending
(
config
);
//在一个axios发送前执行一下取消操作
config
.
cancelToken
=
new
cancelToken
((
c
)
=>
{
// 这里的axios标识我是用请求地址&请求方式拼接的字符串,当然你可以选择其他的一些方式
pending
.
push
({
u
:
config
.
url
+
'&'
+
config
.
method
,
f
:
c
});
return
Promise
.
resolve
(
config
)
},
error
=>
{
});
return
Promise
.
resolve
(
config
)
},
error
=>
{
return
Promise
.
reject
(
error
)
})
})
}
this
.
$http
.
post
(
apiurl
,
postData
,
{
headers
:
{
...
...
@@ -377,8 +382,8 @@ export default {
successCall
(
res
);
}
},
faildCall
)
},
// CRM接口
...
...
@@ -445,11 +450,13 @@ export default {
}
else
if
(
this
.
$route
.
path
==
"/clientConfirm"
)
{
let
TCID
=
this
.
$route
.
query
.
TCID
;
let
orderID
=
this
.
$route
.
query
.
orderID
;
let
guestId
=
this
.
$route
.
query
.
guestId
;
this
.
$router
.
push
({
name
:
"clientConfirm"
,
query
:
{
TCID
:
TCID
,
orderID
:
orderID
orderID
:
orderID
,
guestId
:
guestId
}
})
}
else
if
(
this
.
$route
.
path
==
"/TravelContractConfirm"
)
{
...
...
@@ -1657,32 +1664,32 @@ export default {
window
.
open
(
newUrl
.
href
,
'_blank'
);
}
//验证文件格式
Vue
.
prototype
.
verificationFile
=
function
(
img
,
type
)
{
if
(
type
==
1
)
{
if
(
img
.
indexOf
(
'.DOCX'
)
!=-
1
||
img
.
indexOf
(
'.docx'
)
!=-
1
||
img
.
indexOf
(
'.DOC'
)
!=-
1
||
img
.
indexOf
(
'.doc'
)
!=-
1
||
img
.
indexOf
(
'.XLSX'
)
!=-
1
||
img
.
indexOf
(
'.xlsx'
)
!=-
1
||
img
.
indexOf
(
'.XLS'
)
!=-
1
||
img
.
indexOf
(
'.xls'
)
!=-
1
||
img
.
indexOf
(
'.PPT'
)
!=-
1
||
img
.
indexOf
(
'.ppt'
)
!=-
1
||
img
.
indexOf
(
'.PPTX'
)
!=-
1
||
img
.
indexOf
(
'.pptx'
)
!=-
1
||
img
.
indexOf
(
'.PDF'
)
!=-
1
||
img
.
indexOf
(
'.pdf'
)
!=-
1
)
{
Vue
.
prototype
.
verificationFile
=
function
(
img
,
type
)
{
if
(
type
==
1
)
{
if
(
img
.
indexOf
(
'.DOCX'
)
!=
-
1
||
img
.
indexOf
(
'.docx'
)
!=
-
1
||
img
.
indexOf
(
'.DOC'
)
!=
-
1
||
img
.
indexOf
(
'.doc'
)
!=
-
1
||
img
.
indexOf
(
'.XLSX'
)
!=
-
1
||
img
.
indexOf
(
'.xlsx'
)
!=
-
1
||
img
.
indexOf
(
'.XLS'
)
!=
-
1
||
img
.
indexOf
(
'.xls'
)
!=
-
1
||
img
.
indexOf
(
'.PPT'
)
!=
-
1
||
img
.
indexOf
(
'.ppt'
)
!=
-
1
||
img
.
indexOf
(
'.PPTX'
)
!=
-
1
||
img
.
indexOf
(
'.pptx'
)
!=
-
1
||
img
.
indexOf
(
'.PDF'
)
!=
-
1
||
img
.
indexOf
(
'.pdf'
)
!=
-
1
)
{
return
true
}
else
{
}
else
{
return
false
}
}
if
(
type
==
3
)
{
if
(
img
.
indexOf
(
'.png'
)
!=-
1
||
img
.
indexOf
(
'.PNG'
)
!=-
1
||
img
.
indexOf
(
'.GIF'
)
!=-
1
||
img
.
indexOf
(
'.gif'
)
!=-
1
||
img
.
indexOf
(
'.JPEG'
)
!=-
1
||
img
.
indexOf
(
'.jpeg'
)
!=-
1
||
img
.
indexOf
(
'.JPG'
)
!=-
1
||
img
.
indexOf
(
'.jpg'
)
!=-
1
||
img
.
indexOf
(
'.BMP'
)
!=-
1
||
img
.
indexOf
(
'.bmp'
)
!=-
1
)
{
if
(
type
==
3
)
{
if
(
img
.
indexOf
(
'.png'
)
!=
-
1
||
img
.
indexOf
(
'.PNG'
)
!=
-
1
||
img
.
indexOf
(
'.GIF'
)
!=
-
1
||
img
.
indexOf
(
'.gif'
)
!=
-
1
||
img
.
indexOf
(
'.JPEG'
)
!=
-
1
||
img
.
indexOf
(
'.jpeg'
)
!=
-
1
||
img
.
indexOf
(
'.JPG'
)
!=
-
1
||
img
.
indexOf
(
'.jpg'
)
!=
-
1
||
img
.
indexOf
(
'.BMP'
)
!=
-
1
||
img
.
indexOf
(
'.bmp'
)
!=
-
1
)
{
return
true
}
else
{
}
else
{
return
false
}
}
}
}
}
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