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
35e2996f
Commit
35e2996f
authored
May 30, 2019
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
酒店支付方式权限控制
parent
61b50a33
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
645 additions
and
634 deletions
+645
-634
HotelInfo.vue
src/components/Hotel/HotelInfo.vue
+634
-626
roomReservationsDetails.vue
src/components/Hotel/roomReservationsDetails.vue
+11
-8
No files found.
src/components/Hotel/HotelInfo.vue
View file @
35e2996f
<
style
>
@import
"../../assets/css/DMC.css"
;
@import
"../../assets/css/DMC.css"
;
</
style
>
<
template
>
<div
class=
"flexOne changInfo"
>
...
...
@@ -37,10 +38,11 @@
</el-input>
</el-form-item>
<el-form-item
label=
"是否预约"
>
<el-switch
v-model=
"addMsg.AppointmentStyle"
:active-value=
"inActive"
:inactive-value=
"notInActive"
></el-switch>
<el-switch
v-model=
"addMsg.AppointmentStyle"
:active-value=
"inActive"
:inactive-value=
"notInActive"
>
</el-switch>
</el-form-item>
<el-form-item
label=
"支付方式"
>
<el-select
v-model=
"addMsg.PayStyle"
class=
'multiple_input w300'
:placeholder=
"$t('pub.pleaseSel')"
>
<el-select
v-model=
"addMsg.PayStyle"
class=
'multiple_input w300'
:placeholder=
"$t('pub.pleaseSel')"
:disabled=
"IsHaveAuth==1?false:true"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
:value=
'SelectDefaultValue'
></el-option>
<el-option
v-for=
"item in PayList"
:key=
"item.Id"
:label=
"item.Name"
:value=
"item.Id"
>
</el-option>
...
...
@@ -70,13 +72,14 @@
</el-select>
</span>
</div>
<span
class=
"resource-lititle sheshi"
>
酒店优惠
<el-button
icon=
"el-icon-plus"
circle
@
click=
"addAir"
></el-button></span>
<span
class=
"resource-lititle sheshi"
>
酒店优惠
<el-button
icon=
"el-icon-plus"
circle
@
click=
"addAir"
></el-button>
</span>
<div
class=
"jiudianyouhuiDiv"
>
<el-row
v-for=
"(list,index) in addMsg.DiscountList"
:key=
"index"
>
<el-col
:span=
"6"
:gutter=
"35"
>
<el-form-item
label=
"开始数量"
>
<el-input
class=
'w80'
type=
"text"
v-model=
"list.StartNum"
></el-input>
<el-input
class=
'w80'
type=
"text"
v-model=
"list.StartNum"
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"6"
:gutter=
"35"
>
...
...
@@ -86,13 +89,13 @@
</el-col>
<el-col
:span=
"6"
:gutter=
"35"
>
<el-form-item
label=
"返还数量"
>
<el-input
class=
'w80'
type=
"text"
v-model=
"list.DisCountNum"
></el-input>
<el-input
class=
'w80'
type=
"text"
v-model=
"list.DisCountNum"
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"6"
:gutter=
"35"
v-if=
"index==0"
>
</el-col>
<el-col
:span=
"6"
:gutter=
"35"
>
<el-col
:span=
"6"
:gutter=
"35"
>
<el-button
icon=
"el-icon-minus"
circle
@
click=
"deleteAir(index)"
>
</el-button>
</el-col>
</el-row>
...
...
@@ -134,38 +137,44 @@
<div
class=
"RabateDiv clearfix"
>
<div
class=
"RebateCount reOne"
>
<div
class=
"leftPnum"
>
{{$t('admin.admin_personNumber')}}>
</div>
<input
type=
"text"
class=
"toolInput inpuOne"
v-model=
"addMsg.RebateCount"
onkeyup=
"value=value.replace(/[^\d]/g,'')"
maxlength=
"20"
>
<input
type=
"text"
class=
"toolInput inpuOne"
v-model=
"addMsg.RebateCount"
onkeyup=
"value=value.replace(/[^\d]/g,'')"
maxlength=
"20"
>
</div>
<div
class=
"RebateCount reTwo"
>
<div
class=
"fanNum"
>
{{$t('restaurant.res_return')}}
</div>
<input
type=
"text"
class=
"toolInput inpuTwo"
v-model=
"addMsg.RebateRatio"
onkeyup=
"value=value.replace(/[^\d]/g,'')"
maxlength=
"20"
>
<input
type=
"text"
class=
"toolInput inpuTwo"
v-model=
"addMsg.RebateRatio"
onkeyup=
"value=value.replace(/[^\d]/g,'')"
maxlength=
"20"
>
<div
class=
"percentCon"
>
%
</div>
</div>
</div>
</div>
<el-form-item
:label=
"$t('hotel.hotel_landline')"
>
<el-input
type=
"text"
v-model=
"addMsg.Tel"
maxlength=
"20"
:placeholder=
"$t('hotel.hotel_landline')"
class=
"w300"
></el-input>
<el-input
type=
"text"
v-model=
"addMsg.Tel"
maxlength=
"20"
:placeholder=
"$t('hotel.hotel_landline')"
class=
"w300"
></el-input>
</el-form-item>
<el-form-item
label=
"国家"
>
<el-select
placeholder=
"请选择国家"
filterable
v-model=
"addMsg.Country"
class=
'multiple_input w300'
@
change=
"GetSubAreaList(addMsg.Country,1)"
>
<el-select
placeholder=
"请选择国家"
filterable
v-model=
"addMsg.Country"
class=
'multiple_input w300'
@
change=
"GetSubAreaList(addMsg.Country,1)"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
:value=
'SelectDefaultValue'
></el-option>
<el-option
v-for=
"childItem in CountryList"
:key=
"childItem.ID"
:label=
"childItem.Name"
:value=
"childItem.ID"
>
<el-option
v-for=
"childItem in CountryList"
:key=
"childItem.ID"
:label=
"childItem.Name"
:value=
"childItem.ID"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"省"
>
<el-select
placeholder=
"请选择省"
filterable
class=
'multiple_input w300'
v-model=
"addMsg.Province"
@
change=
"GetSubAreaList(addMsg.Province,2)"
>
<el-select
placeholder=
"请选择省"
filterable
class=
'multiple_input w300'
v-model=
"addMsg.Province"
@
change=
"GetSubAreaList(addMsg.Province,2)"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
:value=
'SelectDefaultValue'
></el-option>
<el-option
v-for=
"childItem in ProvinceList"
:key=
"childItem.ID"
:label=
"childItem.Name"
:value=
"childItem.ID"
>
<el-option
v-for=
"childItem in ProvinceList"
:key=
"childItem.ID"
:label=
"childItem.Name"
:value=
"childItem.ID"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"市"
>
<el-select
placeholder=
"请选择市"
filterable
class=
'multiple_input w300'
v-model=
"addMsg.City"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
:value=
'SelectDefaultValue'
></el-option>
<el-option
v-for=
"childItem in CityList"
:key=
"childItem.ID"
:label=
"childItem.Name"
:value=
"childItem.ID"
>
<el-option
v-for=
"childItem in CityList"
:key=
"childItem.ID"
:label=
"childItem.Name"
:value=
"childItem.ID"
>
</el-option>
</el-select>
</el-form-item>
...
...
@@ -196,12 +205,13 @@
active-text=
"用餐"
inactive-text=
"不用餐"
></el-switch>
</el-form-item>
<el-form-item
label=
"用餐类型"
v-show=
"isDinner"
>
<el-select
v-model=
"UseDinnerString"
class=
'multiple_input w300'
multiple
:placeholder=
"$t('pub.pleaseSel')"
>
<el-select
v-model=
"UseDinnerString"
class=
'multiple_input w300'
multiple
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
v-for=
"item in dinerList"
:key=
"item.Id"
:label=
"item.Name"
:value=
"item.Id"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"停车场"
>
<el-form-item
label=
"停车场"
>
<el-switch
v-model=
"addMsg.IsHavearking"
:active-value=
"1"
:inactive-value=
"0"
></el-switch>
</el-form-item>
</div>
...
...
@@ -211,7 +221,7 @@
<div
class=
"re-img"
v-for=
"(item,index) in HotelImageArray"
:key=
"item.subCode"
>
<img
:src=
"item.ShowPath"
/>
<div
class=
"imgzhe"
>
<div
class=
"re-delte"
><i
@
click
.
stop=
"showImg(item.ShowPath)"
class=
"iconfont icon-img_cz"
></i></div>
<div
class=
"re-delte"
><i
@
click
.
stop=
"showImg(item.ShowPath)"
class=
"iconfont icon-img_cz"
></i></div>
<div
class=
"re-delte"
@
click=
"delImg(index)"
><i
class=
"iconfont icon-xingzhuang"
></i></div>
<!-- <div class="re-delte" @click.stop="ExchangeImg(index,0)" v-if="index!=0&&item.ShowPath">
...
...
@@ -228,8 +238,8 @@
<i
class=
"iconfont icon-img_haha"
></i>
<div
class=
"ad-one"
>
<div
class=
"re-upload"
>
<el-upload
class=
"upload-demo"
:http-request=
"UploadImage"
:multiple=
"true"
accept=
"image/jpeg,image/gif,image/png,image/bmp"
:show-file-list=
"false"
action=
""
>
<el-upload
class=
"upload-demo"
:http-request=
"UploadImage"
:multiple=
"true"
accept=
"image/jpeg,image/gif,image/png,image/bmp"
:show-file-list=
"false"
action=
""
>
<i
class=
"iconfont icon-img_bdsc"
></i>
</el-upload>
</div>
...
...
@@ -242,7 +252,8 @@
</el-form>
</div>
<el-dialog
custom-class=
"resourceImgAdd"
title=
"选择图片"
center
:visible
.
sync=
"addimg"
>
<DMCchooseImg
@
closeImg=
"closeDMCchooseImg"
ref=
"DMCchooseImg1"
@
headCallBack=
"getDMCimg"
v-bind:imgType=
"1"
></DMCchooseImg>
<DMCchooseImg
@
closeImg=
"closeDMCchooseImg"
ref=
"DMCchooseImg1"
@
headCallBack=
"getDMCimg"
v-bind:imgType=
"1"
>
</DMCchooseImg>
</el-dialog>
<el-dialog
custom-class=
"mapList"
title=
"地图选址"
center
:visible
.
sync=
"selectAddress"
>
<googleMap
@
refList=
"googleMap"
v-bind:address=
"addMsg.Address"
@
headCallBack=
"headCall"
></googleMap>
...
...
@@ -258,15 +269,17 @@
</div>
</template>
<
script
>
import
DMCchooseImg
from
"../commonPage/DMCchooseImg.vue"
;
import
googleMap
from
"../commonPage/googleMap.vue"
;
export
default
{
import
DMCchooseImg
from
"../commonPage/DMCchooseImg.vue"
;
import
googleMap
from
"../commonPage/googleMap.vue"
;
export
default
{
data
()
{
return
{
imageOptions
:
{
navbar
:
false
,
title
:
false
imageOptions
:
{
navbar
:
false
,
title
:
false
},
//是否有权限操作支付方式
IsHaveAuth
:
0
,
images
:
[],
//是否显示添加图片
addimg
:
false
,
...
...
@@ -312,16 +325,16 @@ export default {
//酒店类型
HotelTypeList
:
[],
//酒店价格
HotelPirceTypeList
:
[],
HotelPirceTypeList
:
[],
addMsg
:
{
ID
:
0
,
Name
:
""
,
HotelRealName
:
""
,
HotelRealName
:
""
,
Descriptions
:
""
,
Tel
:
""
,
Remark
:
""
,
//温馨提示
WarmTip
:
""
,
WarmTip
:
""
,
Star
:
""
,
URL
:
""
,
Fax
:
""
,
...
...
@@ -337,7 +350,7 @@ export default {
DieLine
:
""
,
HotelImageList
:
[],
//现在的图片
DeleteImageList
:
[],
//要删除的图片
DiscountList
:[
],
DiscountList
:
[
],
RoomNumber
:
""
,
ChainBrand
:
""
,
FacilityServices
:
""
,
...
...
@@ -356,44 +369,36 @@ export default {
//支付方式
PayStyle
:
0
,
//是否有停车场
IsHavearking
:
0
,
IsHavearking
:
0
,
},
DiscountList
:
{
ID
:
0
,
StartNum
:
''
,
EndNum
:
''
,
DisCountNum
:
''
DiscountList
:
{
ID
:
0
,
StartNum
:
''
,
EndNum
:
''
,
DisCountNum
:
''
},
qMsg
:
{},
rules
:
{
//表单必填验证
Name
:
[
{
Name
:
[{
required
:
true
,
message
:
"请填写名称"
,
trigger
:
"change"
}
],
Address
:
[
{
}],
Address
:
[{
required
:
true
,
message
:
"请选择地址"
,
trigger
:
"change"
}
],
Descriptions
:
[
{
}],
Descriptions
:
[{
required
:
true
,
message
:
"请输入文字描述"
,
trigger
:
"change"
}
],
DieLine
:
[
{
}],
DieLine
:
[{
pattern
:
this
.
$commonUtils
.
Regex
.
el_isInteger
,
message
:
"请输入正确的数字"
}
]
}]
}
};
},
...
...
@@ -402,10 +407,10 @@ export default {
DMCchooseImg
:
DMCchooseImg
},
methods
:
{
deleteAir
(
i
)
{
this
.
addMsg
.
DiscountList
.
splice
(
i
,
1
);
deleteAir
(
i
)
{
this
.
addMsg
.
DiscountList
.
splice
(
i
,
1
);
},
addAir
(){
addAir
()
{
this
.
addMsg
.
DiscountList
.
push
(
JSON
.
parse
(
JSON
.
stringify
(
this
.
DiscountList
)));
},
//上传酒店图片
...
...
@@ -452,18 +457,18 @@ export default {
this
.
HotelImageArray
.
splice
(
index
,
1
);
//this.updatePic();
},
inited
(
viewer
)
{
inited
(
viewer
)
{
this
.
$viewer
=
viewer
},
showImg
:
function
(
src
)
{
let
srcArr
=
src
.
split
(
'?'
)
src
=
srcArr
[
0
]
let
isExsit
=
false
this
.
images
.
forEach
(
x
=>
{
if
(
x
===
src
)
isExsit
=
true
let
isExsit
=
false
this
.
images
.
forEach
(
x
=>
{
if
(
x
===
src
)
isExsit
=
true
})
if
(
!
isExsit
)
{
if
(
!
isExsit
)
{
this
.
images
.
push
(
src
)
}
else
{
this
.
$viewer
.
view
(
this
.
images
.
indexOf
(
src
))
...
...
@@ -757,8 +762,7 @@ export default {
//获取国家
GetCounrty
()
{
this
.
apipost
(
"dict_post_Destination_GetCountry"
,
{},
"dict_post_Destination_GetCountry"
,
{},
res
=>
{
this
.
CountryList
=
res
.
data
.
data
;
},
...
...
@@ -798,8 +802,7 @@ export default {
//获取支付方式列表
GetPayList
()
{
this
.
apipost
(
"dmc_post_Get_GetPayStyleList"
,
{},
"dmc_post_Get_GetPayStyleList"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
PayList
=
res
.
data
.
data
;
...
...
@@ -811,8 +814,7 @@ export default {
//获取酒店类型列表
GetHotelTypeList
()
{
this
.
apipost
(
"dmc_post_Get_GetHotelType"
,
{},
"dmc_post_Get_GetHotelType"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
HotelTypeList
=
res
.
data
.
data
;
...
...
@@ -823,8 +825,7 @@ export default {
},
GetHotelPirceTypeList
()
{
this
.
apipost
(
"dmc_post_Get_GetHotelPriceType"
,
{},
"dmc_post_Get_GetHotelPriceType"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
HotelPirceTypeList
=
res
.
data
.
data
;
...
...
@@ -852,6 +853,12 @@ export default {
},
mounted
()
{
let
userInfo
=
this
.
getLocalStorage
()
//有权限操作的部门
if
(
userInfo
.
RB_Department_Id
==
240
||
userInfo
.
RB_Department_Id
==
1
||
userInfo
.
RB_Department_Id
==
3
||
userInfo
.
RB_Branch_id
==
49
)
{
this
.
IsHaveAuth
=
1
;
}
this
.
GetPayList
();
this
.
GetHotelTypeList
();
this
.
GetHotelPirceTypeList
();
...
...
@@ -882,5 +889,6 @@ export default {
this
.
initHotelData
();
}
}
};
};
</
script
>
src/components/Hotel/roomReservationsDetails.vue
View file @
35e2996f
...
...
@@ -133,16 +133,16 @@
</el-upload>
</div>
</td>
<!-- 房间
预定
数 -->
<!-- 房间数 -->
<td>
<el-input
class=
'w40 tcenter'
maxlength=
"2"
@
keyup
.
native=
"checkPrice(childItem,'HouseTypeCount')"
v-model=
'childItem.HouseTypeCount'
></el-input>
v-model=
'childItem.HouseTypeCount'
:disabled=
"childIndex
<4
?
true:false
"
></el-input>
</td>
<!-- 预定人数 -->
<td>
<el-input
class=
'w40 tcenter'
maxlength=
"2"
@
keyup
.
native=
"checkInteger(childItem,'BookNum')"
@
input=
"calculationPrice(subItem)"
v-model=
'childItem.BookNum'
></el-input>
@
input=
"calculationPrice(subItem)"
v-model=
'childItem.BookNum'
:disabled=
"childIndex
<4
?
true:false
"
>
</el-input>
</td>
<!-- 尚差房间数 -->
<td>
...
...
@@ -198,12 +198,14 @@
<tr>
<td
width=
"70"
style=
"text-align:right;"
>
付款方式:
</td>
<td>
<el-select
class=
'w135 sel'
v-model=
'subItem.PayStyle'
:placeholder=
"$t('pub.pleaseSel')"
>
<el-select
class=
'w135 sel'
v-model=
'subItem.PayStyle'
:placeholder=
"$t('pub.pleaseSel')"
:disabled=
"true"
>
<el-option
label=
'请选择'
:value=
'0'
></el-option>
<el-option
label=
'现付'
:value=
'1'
></el-option>
<el-option
label=
'签单'
:value=
'2'
></el-option>
<el-option
label=
'实物抵扣'
:value=
'
5
'
></el-option>
<el-option
label=
'实物抵扣'
:value=
'
3
'
></el-option>
<el-option
label=
'预付'
:value=
'4'
></el-option>
<el-option
label=
'预付款抵扣'
:value=
'5'
></el-option>
<el-option
label=
'公司合团支付'
:value=
'6'
></el-option>
</el-select>
</td>
...
...
@@ -466,6 +468,7 @@
obj
.
Address
=
ckedObj
.
Address
;
obj
.
Tel
=
ckedObj
.
Tel
;
obj
.
NewHotelName
=
ckedObj
.
Name
;
obj
.
PayStyle
=
ckedObj
.
PayStyle
;
}
else
{
obj
.
Address
=
''
;
obj
.
Tel
=
''
;
...
...
@@ -509,11 +512,11 @@
})
this
.
loading
=
true
;
this
.
apipost
(
'dmcstatistics_get_SetHotelOrder'
,
this
.
list
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
getList
();
this
.
Success
(
res
.
data
.
message
);
}
else
{
this
.
loading
=
false
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{})
...
...
@@ -579,7 +582,7 @@
let
width
=
window
.
innerWidth
-
50
;
let
height
=
window
.
innerHeight
-
65
-
55
;
this
.
boxHeight
=
height
;
this
.
offsetwidth
=
width
this
.
offsetwidth
=
width
;
this
.
getList
();
}
}
...
...
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