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
9d848171
Commit
9d848171
authored
Jul 16, 2019
by
华国豪
🙄
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/superman
parents
282e32cd
ab44a3d6
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
1995 additions
and
1042 deletions
+1995
-1042
commonUtils.js
src/assets/utils/commonUtils.js
+26
-8
roomReservationsDetails.vue
src/components/Hotel/roomReservationsDetails.vue
+5
-14
leaderReimbursement.vue
src/components/LeaderManagement/leaderReimbursement.vue
+3
-13
leaderScheduleManager.vue
src/components/LeaderManagement/leaderScheduleManager.vue
+678
-586
comCheckHotelV2.vue
src/components/commonPage/comCheckHotelV2.vue
+298
-0
TravelDaysTrip_Direct.vue
...elmanager/oldTravelGroupControl/TravelDaysTrip_Direct.vue
+7
-10
dinnerTrip_Direct.vue
...Travelmanager/oldTravelGroupControl/dinnerTrip_Direct.vue
+475
-410
hotelTrip_Direct.vue
...wTravelmanager/oldTravelGroupControl/hotelTrip_Direct.vue
+0
-1
hotelTrip_Direct_V2.vue
...avelmanager/oldTravelGroupControl/hotelTrip_Direct_V2.vue
+503
-0
No files found.
src/assets/utils/commonUtils.js
View file @
9d848171
...
...
@@ -114,7 +114,7 @@ var commonUtils = {
return
result
;
},
changeMoneyToChinese
(
Num
)
{
// 数字转中文大写
if
(
!
Num
)
{
if
(
!
Num
)
{
return
'零'
}
var
isNegative
=
false
;
// 是否负数
...
...
@@ -261,18 +261,18 @@ var commonUtils = {
tmpnewchar
=
tmpnewchar
+
"角"
;
if
(
i
==
1
)
tmpnewchar
=
tmpnewchar
+
"分"
;
newchar
=
newchar
+
tmpnewchar
;
newchar
=
newchar
+
tmpnewchar
;
}
}
// 替换所有无用汉字
while
(
newchar
.
search
(
"零零"
)
!=
-
1
)
newchar
=
newchar
.
replace
(
"零零"
,
"零"
);
newchar
=
newchar
.
replace
(
"零亿"
,
"亿"
);
newchar
=
newchar
.
replace
(
"亿万"
,
"亿"
);
newchar
=
newchar
.
replace
(
"零万"
,
"万"
);
newchar
=
newchar
.
replace
(
"零元"
,
"元"
);
newchar
=
newchar
.
replace
(
"零角"
,
""
);
newchar
=
newchar
.
replace
(
"零分"
,
""
);
newchar
=
newchar
.
replace
(
"零亿"
,
"亿"
);
newchar
=
newchar
.
replace
(
"亿万"
,
"亿"
);
newchar
=
newchar
.
replace
(
"零万"
,
"万"
);
newchar
=
newchar
.
replace
(
"零元"
,
"元"
);
newchar
=
newchar
.
replace
(
"零角"
,
""
);
newchar
=
newchar
.
replace
(
"零分"
,
""
);
if
(
newchar
.
charAt
(
newchar
.
length
-
1
)
==
"元"
||
newchar
.
charAt
(
newchar
.
length
-
1
)
==
"角"
)
{
newchar
=
newchar
+
"整"
;
...
...
@@ -400,5 +400,23 @@ var commonUtils = {
}
return
dateStr
;
},
/**
* 增加减少天数
* date:可以不传
* day:正数
*/
AddDay
(
date
,
day
)
{
var
myDate
=
""
;
if
(
date
)
{
myDate
=
new
Date
(
date
);
}
else
{
myDate
=
new
Date
();
}
myDate
=
myDate
.
setDate
(
myDate
.
getDate
()
+
day
);
myDate
=
new
Date
(
myDate
);
//返回年月日
return
myDate
.
getFullYear
()
+
'-'
+
parseInt
(
myDate
.
getMonth
()
+
1
)
+
"-"
+
myDate
.
getDate
()
}
}
export
default
commonUtils
src/components/Hotel/roomReservationsDetails.vue
View file @
9d848171
...
...
@@ -716,23 +716,14 @@
calculationPrice
(
obj
)
{
let
totalPrice
=
0
;
obj
.
OrderDetailsList
.
forEach
((
item
,
index
)
=>
{
var
tempPrice
=
0
;
//税别
if
(
obj
.
TaxType
==
2
)
{
if
(
index
==
4
)
{
if
(
obj
.
DriverGuideIsRebate
==
1
)
{
totalPrice
+=
item
.
UnitPrice
*
(
item
.
BookNum
-
item
.
HotelDiscount
)
*
(
1
+
0.08
-
item
.
RebateRatio
/
100
);
}
else
{
totalPrice
+=
item
.
UnitPrice
*
(
item
.
BookNum
-
item
.
HotelDiscount
)
*
(
1
-
item
.
RebateRatio
/
100
);
}
}
else
{
totalPrice
+=
item
.
UnitPrice
*
(
item
.
BookNum
-
item
.
HotelDiscount
)
*
(
1
+
0.08
-
item
.
RebateRatio
/
100
);
}
if
(
obj
.
TaxType
==
2
&&
item
.
RebateRatio
>
0
)
{
tempPrice
=
item
.
UnitPrice
*
(
item
.
BookNum
-
item
.
HotelDiscount
)
*
(
1
+
0.08
-
item
.
RebateRatio
/
100
);
}
else
{
t
otalPrice
+
=
item
.
UnitPrice
*
(
item
.
BookNum
-
item
.
HotelDiscount
)
*
(
1
-
item
.
RebateRatio
/
100
);
t
empPrice
=
item
.
UnitPrice
*
(
item
.
BookNum
-
item
.
HotelDiscount
)
*
(
1
-
item
.
RebateRatio
/
100
);
}
totalPrice
+=
tempPrice
;
})
totalPrice
+=
obj
.
ParkFee
+
obj
.
CityTax
+
obj
.
InTangTax
;
obj
.
TotalPrice
=
totalPrice
.
toFixed
(
2
);
...
...
src/components/LeaderManagement/leaderReimbursement.vue
View file @
9d848171
...
...
@@ -410,7 +410,7 @@
{{
subItem
.
UseAccount
}}
</td>
<td>
{{
peopleStrToWord
(
childItem
.
PeopleType
)
}}
:
{{
childItem
.
PeopleNum
}}
{{
peopleStrToWord
(
childItem
.
PeopleType
)
}}
:
{{
childItem
.
Use
PeopleNum
}}
</td>
<td>
{{
childItem
.
Discount
}}
...
...
@@ -731,18 +731,8 @@
obj
.
OrderDetailsList
.
forEach
((
item
,
index
)
=>
{
if
(
obj
.
PayStyle
===
1
)
{
//税别
if
(
obj
.
TaxType
==
2
)
{
if
(
index
==
4
)
{
if
(
obj
.
DriverGuideIsRebate
==
1
)
{
totalPrice
+=
item
.
UnitPrice
*
(
item
.
BookNum
-
item
.
HotelDiscount
)
*
(
1
+
0.08
-
item
.
RebateRatio
/
100
);
}
else
{
totalPrice
+=
item
.
UnitPrice
*
(
item
.
BookNum
-
item
.
HotelDiscount
)
*
(
1
-
item
.
RebateRatio
/
100
);
}
}
else
{
totalPrice
+=
item
.
UnitPrice
*
(
item
.
BookNum
-
item
.
HotelDiscount
)
*
(
1
+
0.08
-
item
.
RebateRatio
/
100
);
}
if
(
obj
.
TaxType
==
2
&&
item
.
RebateRatio
>
0
)
{
totalPrice
+=
item
.
UnitPrice
*
(
item
.
BookNum
-
item
.
HotelDiscount
)
*
(
1
+
0.08
-
item
.
RebateRatio
/
100
);
//税入
}
else
{
totalPrice
+=
item
.
UnitPrice
*
(
item
.
BookNum
-
item
.
HotelDiscount
)
*
(
1
-
item
.
RebateRatio
/
100
);
...
...
src/components/LeaderManagement/leaderScheduleManager.vue
View file @
9d848171
This diff is collapsed.
Click to expand it.
src/components/commonPage/comCheckHotelV2.vue
0 → 100644
View file @
9d848171
<!--第三方酒店信息-->
<
style
>
.comCheckHotelV2
.comCheckHotelV2
{
width
:
100%
;
height
:
150px
;
overflow
:
auto
}
.comCheckHotelV2
.comCk_list
{
padding
:
0
20px
;
margin
:
0
15px
5px
0
;
}
.comCheckHotelV2
.cm_Inventory
{
margin-left
:
20px
;
color
:
red
;
display
:
inline-block
;
}
.comCheckHotelV2
.cm_hotelTitle
{
width
:
100%
;
text-align
:
center
;
margin-bottom
:
20px
;
border-bottom
:
1px
solid
#d1d1d1
;
padding
:
0
20px
10px
20px
;
}
.comCheckHotelV2
.com_SaveBtn
{
margin
:
10px
20px
0
45%
;
}
.comCheckHotelV2
.ckedList
{
background-color
:
#E95252
;
color
:
#fff
;
}
.comCheckHotelV2
.Ck_hotelInfo
{
width
:
100%
;
height
:
40px
;
background-color
:
#F6F8FB
;
text-align
:
center
;
line-height
:
40px
;
margin-bottom
:
10px
;
}
.comCheckHotelV2
.ck_goUrl
{
color
:
blue
;
cursor
:
pointer
;
margin-left
:
10px
;
}
.comCheckHotelV2
.tdLeft
{
text-align
:
left
;
}
.comCheckHotelV2
.tdRight
{
text-align
:
right
;
}
</
style
>
<
template
>
<div
class=
"comCheckHotelV2"
>
<div
class=
"Ck_hotelInfo"
>
酒店库存信息
</div>
<div
class=
"cm_hotelTitle clearfix"
>
<table>
<tr>
<td
class=
"tdRight"
>
类型:
</td>
<td
class=
"tdLeft"
>
<el-select
filterable
v-model=
"qHotelType"
class=
"w120"
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
label=
"地接酒店"
:value=
'1'
></el-option>
<el-option
label=
"第三方酒店"
:value=
'2'
></el-option>
</el-select>
</td>
<td
class=
"tdRight"
>
地区:
</td>
<td
colspan=
"2"
class=
"tdLeft"
>
<el-select
filterable
v-model=
"qMsg.ProvinceId"
class=
"w120"
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
label=
"不限"
:value=
'0'
></el-option>
<el-option
v-for=
"item in ProvinceList"
:label=
'item.Name'
:value=
'item.ID'
:key=
'item.ID'
>
</el-option>
</el-select>
</td>
</tr>
<tr>
<td
class=
"tdRight"
>
入住时间:
</td>
<td
class=
"tdLeft"
>
<el-date-picker
v-model=
'qMsg.UseDate'
class=
"w120"
value-format=
"yyyy-MM-dd"
type=
"date"
placeholder=
"入住时间"
>
</el-date-picker>
</td>
<td
class=
"tdRight"
>
酒店名称/电话:
</td>
<td
class=
"tdLeft"
>
<el-input
type=
"text"
v-model=
"qMsg.Name"
class=
"w120"
@
keyup
.
native
.
enter=
"getCheckHotel()"
placeholder=
"酒店名称或电话"
></el-input>
</td>
<td>
<input
type=
"button"
class=
"normalBtn"
value=
"查询"
@
click=
"getCheckHotel()"
/>
</td>
</tr>
</table>
</div>
<div>
<el-tabs
type=
"border-card"
v-loading=
"loading"
v-if=
"IsShow"
>
<el-tab-pane
:label=
"item.ProvinceName"
v-for=
"(item,index) in dataList"
:key=
"item.subCode"
>
<div
class=
"clearfix comCheckHotelV2"
>
<div
class=
"comCk_list"
v-for=
"(subItem,subIndex) in item.HotelList"
>
<input
:id=
"'H'+index+'_'+subIndex"
type=
"checkbox"
v-model=
"subItem.isChecked"
@
click=
"getCheck(item.HotelList,subIndex)"
/>
<label
:for=
"'H'+index+'_'+subIndex"
style=
"cursor: pointer"
>
{{
subItem
.
Name
}}
</label>
<span
class=
"cm_Inventory"
>
{{
subItem
.
Inventory
}}
</span>
<span
class=
"cm_Inventory"
>
剩余:
{{
subItem
.
RemainingInventory
}}
</span>
<span
class=
"ck_goUrl"
@
click=
"goUrl(subItem.ID)"
>
新增库存
</span>
</div>
</div>
</el-tab-pane>
</el-tabs>
</div>
<input
type=
"button"
class=
"normalBtn com_SaveBtn"
@
click=
"sendCkedHotel()"
value=
"保存"
/>
</div>
</
template
>
<
script
>
export
default
{
props
:
[
""
],
data
()
{
return
{
loading
:
false
,
dataList
:
[],
ProvinceList
:
[],
qHotelType
:
1
,
//酒店查询类型
qMsg
:
{
ProvinceId
:
0
,
//选择个省份编号
Name
:
""
,
//酒店名称
UseDate
:
""
,
//入住时间
},
IsShow
:
false
,
ckedHotel
:
{}
};
},
methods
:
{
getCheckHotel
()
{
this
.
loading
=
true
;
this
.
IsShow
=
false
;
this
.
dataList
=
[];
this
.
HotelList
=
[];
//地接酒店
if
(
this
.
qHotelType
==
1
)
{
this
.
apipost
(
'hotel_post_GetHasStockHotelList_V2'
,
{
//1-只查询有库存的酒店
IsMoreThanZero
:
0
,
Country
:
"651"
,
IsAllHotel
:
1
,
Province
:
this
.
qMsg
.
ProvinceId
,
Name
:
this
.
qMsg
.
Name
,
sDate
:
this
.
qMsg
.
UseDate
},
res
=>
{
this
.
loading
=
false
;
this
.
IsShow
=
true
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
dataList
=
res
.
data
.
data
;
this
.
dataList
.
forEach
(
x
=>
{
x
.
HotelList
.
forEach
(
y
=>
{
y
.
isChecked
=
false
;
})
})
}
else
{
this
.
Error
(
res
.
data
.
message
)
}
},
err
=>
{})
}
//第三方酒店
else
{
var
nQMsg
=
{
displayFrom
:
"1"
,
//当前页
numberOfResults
:
"10"
,
//每页条数
arrivalDate
:
this
.
qMsg
.
UseDate
,
//入住时间
departureDate
:
""
,
//离店时间
//房间信息列表
searchroomGroup
:
{
numberOfAdults
:
2
,
//大人数,
numberOfChildren
:
0
,
//儿童数
childAges
:
0
,
//儿童年龄
},
searchHotelIdList
:[],
//酒店id,[1,2,3]
freeword
:
this
.
qMsg
.
Name
,
//关键字
//类型 1,地区,2-酒店名称
freewordType
:
0
,
reviewRatingUpperLimits
:
0
,
//指定评论分数的上限
reviewRatingLowerLimits
:
0
,
//指定评论分数的下限
searchHotelCategory
:[],
//酒店分类
searchHotelFeatures
:[],
//酒店的特征
searchRoomType
:[],
//类型的房间
searchMealType
:[],
//饮食条件搜索
searchMinRate
:
0
,
//検索最小金額,
searchMinRate
:
100000
,
//検索最大金額
sort
:
0
,
//排序
};
if
(
nQMsg
.
arrivalDate
==
""
)
{
this
.
Info
(
"请选择入住时间!"
);
return
;
}
else
{
nQMsg
.
departureDate
=
this
.
$commonUtils
.
AddDay
(
nQMsg
.
arrivalDate
,
1
);
}
if
(
nQMsg
.
freeword
!=
""
)
{
nQMsg
.
freewordType
=
1
;
}
else
{
nQMsg
.
freewordType
=
2
;
nQMsg
.
freeword
=
""
;
}
console
.
log
(
"nQMsg"
,
nQMsg
);
//多了一个参数调用线上的就酒店数据
this
.
apipost
(
'dmc_post_Get_GetJAPAN_HotelList'
,
nQMsg
,
res
=>
{
this
.
loading
=
false
;
this
.
IsShow
=
true
;
if
(
res
.
data
.
resultCode
==
1
)
{
console
.
log
(
"res.data"
,
res
.
data
);
}
else
{
this
.
Error
(
res
.
data
.
message
)
}
},
err
=>
{},
true
)
}
},
getCheck
(
hotelList
,
index
)
{
hotelList
.
forEach
((
x
,
subIndex
)
=>
{
if
(
index
==
subIndex
)
{
x
.
isChecked
=
!
x
.
isChecked
;
this
.
ckedHotel
=
x
;
}
else
{
x
.
isChecked
=
false
;
}
})
this
.
$forceUpdate
();
},
//向父组件传递选中酒店
sendCkedHotel
()
{
var
ckHotelObj
=
{};
if
(
this
.
ckedHotel
)
{
ckHotelObj
.
ID
=
this
.
ckedHotel
.
ID
;
ckHotelObj
.
Address
=
this
.
ckedHotel
.
Address
;
ckHotelObj
.
Inventory
=
this
.
ckedHotel
.
Inventory
;
ckHotelObj
.
Name
=
this
.
ckedHotel
.
Name
;
ckHotelObj
.
PayStyle
=
this
.
ckedHotel
.
PayStyle
;
ckHotelObj
.
Tel
=
this
.
ckedHotel
.
Tel
;
ckHotelObj
.
RebateRatio
=
this
.
ckedHotel
.
RebateRatio
;
ckHotelObj
.
RebateCount
=
this
.
ckedHotel
.
RebateCount
;
ckHotelObj
.
CostPrice
=
this
.
ckedHotel
.
CostPrice
;
}
this
.
$emit
(
"childHotel"
,
ckHotelObj
);
},
//获取日本下面的市->下拉框用
getProvinceList
()
{
let
msg
=
{
Id
:
651
};
this
.
apipost
(
"dict_post_Destination_GetChildList"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
ProvinceList
=
res
.
data
.
data
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
goUrl
(
ID
)
{
this
.
$router
.
push
({
path
:
'HotelProductManage2'
,
query
:
{
id
:
ID
,
Country
:
651
,
IsSelfBook
:
1
,
blank
:
'y'
,
tab
:
'报价详情'
}
});
}
},
mounted
()
{
this
.
getProvinceList
();
}
};
</
script
>
src/components/newTravelmanager/oldTravelGroupControl/TravelDaysTrip_Direct.vue
View file @
9d848171
...
...
@@ -109,10 +109,13 @@
<span
v-if=
"IsDirect==1"
>
<hotelTrip
v-bind:subItemObj=
"subItem"
v-bind:DefaultList=
"hotelSameList"
v-bind:subIndex=
"subIndex"
v-bind:DinnerList=
"DinnerList"
v-bind:index=
"index"
:isOpenGroup=
"isOpenGroup"
v-bind:subTotalIndex=
"item.dayArray.length"
></hotelTrip>
v-bind:subTotalIndex=
"item.dayArray.length"
></hotelTrip>
<hotelTripV2
v-bind:subItemObj=
"subItem"
v-bind:DefaultList=
"hotelSameList"
v-bind:subIndex=
"subIndex"
v-bind:DinnerList=
"DinnerList"
v-bind:index=
"index"
:isOpenGroup=
"isOpenGroup"
v-bind:subTotalIndex=
"item.dayArray.length"
style=
"display:none;"
></hotelTripV2>
</span>
<span
v-else
>
</span>
</div>
<div
v-if=
"subItem.Type==$tripUtils.TypeKey.scenic"
>
...
...
@@ -120,7 +123,6 @@
<scienTrip
v-bind:subItemObj=
"subItem"
v-bind:DefaultList=
"scenicSameList"
v-bind:subIndex=
"subIndex"
v-bind:index=
"index"
:isOpenGroup=
"isOpenGroup"
v-bind:subTotalIndex=
"item.dayArray.length"
></scienTrip>
</span>
</div>
<div
v-if=
"subItem.Type==$tripUtils.TypeKey.dinner"
>
<span
v-if=
"IsDirect==1"
>
...
...
@@ -163,6 +165,7 @@
import
trifficTrip
from
"../oldTravelGroupControl/trifficTrip"
;
import
scienTrip
from
"../oldTravelGroupControl/scienTrip_Direct"
;
import
hotelTrip
from
"../oldTravelGroupControl/hotelTrip_Direct"
;
import
hotelTripV2
from
"../oldTravelGroupControl/hotelTrip_Direct_V2"
;
import
dinnerTrip
from
"../oldTravelGroupControl/dinnerTrip_Direct"
;
import
freedomTrip
from
"../oldTravelGroupControl/freedomTrip"
;
import
warmtipTrip
from
"../oldTravelGroupControl/warmtipTrip"
;
...
...
@@ -270,16 +273,10 @@ export default {
},
components
:
{
trifficTrip
:
trifficTrip
,
scienTrip
:
scienTrip
,
hotelTrip
:
hotelTrip
,
hotelTripV2
:
hotelTripV2
,
dinnerTrip
:
dinnerTrip
,
freedomTrip
:
freedomTrip
,
warmtipTrip
:
warmtipTrip
,
titleTrip
:
titleTrip
...
...
src/components/newTravelmanager/oldTravelGroupControl/dinnerTrip_Direct.vue
View file @
9d848171
This diff is collapsed.
Click to expand it.
src/components/newTravelmanager/oldTravelGroupControl/hotelTrip_Direct.vue
View file @
9d848171
...
...
@@ -31,7 +31,6 @@
<div
class=
"TDLeftPlan"
>
<span>
入住酒店
</span>
<span>
<el-form-item
:prop=
"'DayList.'+index+'.dayArray.'+subIndex+'.childItem.HotelId'"
:rules=
"hotelTripRules.HotelId"
>
<el-select
:disabled=
"isOpenGroup"
class=
'w160'
:placeholder=
"$t('pub.pleaseSel')"
filterable
v-model=
"subItemObj.childItem.HotelId"
@
visible-change=
"getHotelList($event)"
@
change=
"changeHotelList()"
>
...
...
src/components/newTravelmanager/oldTravelGroupControl/hotelTrip_Direct_V2.vue
0 → 100644
View file @
9d848171
This diff is collapsed.
Click to expand it.
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