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
7bfb3e5b
Commit
7bfb3e5b
authored
Apr 11, 2019
by
华国豪
🙄
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/superman
parents
059f2a47
f0a967af
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
4176 additions
and
3432 deletions
+4176
-3432
HotelProductCalendar.vue
src/components/Hotel/HotelProductCalendar.vue
+307
-266
HotelProductManage2.vue
src/components/Hotel/HotelProductManage2.vue
+227
-212
HotelQueryList.vue
src/components/Hotel/HotelQueryList.vue
+308
-11
HotelSalesBoard.vue
src/components/Hotel/HotelSalesBoard.vue
+2
-2
CustomerCertification.vue
src/components/SalesModule/CustomerCertification.vue
+376
-0
MyCustomer.vue
src/components/SalesModule/MyCustomer.vue
+4
-2
customerApproval.vue
src/components/SalesModule/customerApproval.vue
+4
-2
customerTransfer.vue
src/components/SalesModule/customerTransfer.vue
+4
-1
publicCustomer.vue
src/components/SalesModule/publicCustomer.vue
+7
-4
BusInfo.vue
src/components/busManagement/BusInfo.vue
+4
-2
TravelManager2.vue
...ts/newTravelmanager/TravelGroupControl/TravelManager2.vue
+0
-3
TravelPrice.vue
...nents/newTravelmanager/TravelGroupControl/TravelPrice.vue
+1
-0
config.js
src/router/config.js
+2932
-2927
No files found.
src/components/Hotel/HotelProductCalendar.vue
View file @
7bfb3e5b
<
template
>
<
template
>
<div
class=
"hotelProductCalendar"
>
<div
class=
"hotelProductCalendar"
>
<div
class=
"hotelProductCalendar_month"
>
<div
class=
"hotelProductCalendar_month"
>
<div
onselectstart=
"return false;"
>
<div
onselectstart=
"return false;"
>
<!--
<i
class=
"el-icon-caret-left"
@
click=
"dateChange('year','left')"
></i>
-->
<span>
{{
calendar
.
data
.
date
&&
calendar
.
data
.
date
.
split
(
'-'
)[
0
]
}}
年
</span>
<!--
<input
type=
"text"
disabled=
"disabled"
v-model=
"msg.currentYear"
>
-->
<span>
{{
calendar
.
data
.
date
&&
calendar
.
data
.
date
.
split
(
'-'
)[
1
]
}}
月
</span>
<!--
<i
class=
"el-icon-caret-right"
@
click=
"dateChange('year','right')"
></i>
-->
</div>
<span>
{{
calendar
.
data
.
date
&&
calendar
.
data
.
date
.
split
(
'-'
)[
0
]
}}
年
</span>
<div>
<!--
<i
class=
"el-icon-caret-left"
@
click=
"dateChange('month','left')"
></i>
-->
<span>
酒店库存表
</span>
<!--
<input
type=
"text"
disabled=
"disabled"
v-model=
"msg.currentMonth"
>
-->
</div>
<!--
<i
class=
"el-icon-caret-right"
@
click=
"dateChange('month','right')"
></i>
-->
<div>
<span>
{{
calendar
.
data
.
date
&&
calendar
.
data
.
date
.
split
(
'-'
)[
1
]
}}
月
</span>
<i
class=
"iconfont icon-cha"
@
click=
"calendarHide()"
></i>
</div>
</div>
<div>
</div>
<span>
酒店库存表
</span>
<div
class=
"hotelProductCalendar_week"
>
</div>
<div>
{{
$t
(
'hotel.hotel_Monday'
)
}}
</div>
<div>
<div>
{{
$t
(
'hotel.hotel_Tuesday'
)
}}
</div>
<i
class=
"iconfont icon-cha"
@
click=
"calendarHide()"
></i>
<div>
{{
$t
(
'hotel.hotel_Wednesday'
)
}}
</div>
</div>
<div>
{{
$t
(
'hotel.hotel_Thursday'
)
}}
</div>
<div>
{{
$t
(
'hotel.hotel_Friday'
)
}}
</div>
<div>
{{
$t
(
'hotel.hotel_Saturday'
)
}}
</div>
<div>
{{
$t
(
'hotel.hotel_Sunday'
)
}}
</div>
</div>
<div
class=
"hotelProductCalendar_day"
>
<div
v-for=
"(item, index) in calendar.data.days"
:key=
"index"
>
<div
:class=
"item.month===calendar.data.date?'nowMonth':'otherMonth'"
>
<span>
{{
item
.
date
.
getMonth
()
+
1
}}
-
{{
item
.
date
.
getDate
()
}}
</span>
</div>
<div
v-if=
"item.data&&item.month===calendar.data.date"
:class=
"stockColor(item.data.SubList[0].InventoryType)"
>
<template
v-for=
"(childItem,childIndex) in item.data.SubList"
>
<p>
<span
@
click=
"goUrlA('2', item,childItem.BatchNumber)"
class=
"text_underLine"
>
价格:
{{
childItem
.
CostPrice
}}
(
{{
childItem
.
CurrencyName
}}
)
</span>
<span
class=
"text_underLine"
@
click=
"goUrlB(item)"
>
总库存:
{{
childItem
.
Inventory
}}
(间)
</span>
<span
class=
"text_underLine"
@
click=
"goUrlHotelTeam(item)"
>
剩余库存:
{{
childItem
.
RemainingInventory
}}
(间)
</span>
</p>
</
template
>
</div>
</div>
<div
class=
"hotelProductCalendar_week"
>
<div
class=
"noStock"
v-if=
"!item.data&&item.month===calendar.data.date"
>
<div>
{{
$t
(
'hotel.hotel_Monday'
)
}}
</div>
<p><span>
暂无数据
</span></p>
<div>
{{
$t
(
'hotel.hotel_Tuesday'
)
}}
</div>
<p><span
@
click=
"goUrlA('1', item,1)"
>
立即新增
</span></p>
<div>
{{
$t
(
'hotel.hotel_Wednesday'
)
}}
</div>
<div>
{{
$t
(
'hotel.hotel_Thursday'
)
}}
</div>
<div>
{{
$t
(
'hotel.hotel_Friday'
)
}}
</div>
<div>
{{
$t
(
'hotel.hotel_Saturday'
)
}}
</div>
<div>
{{
$t
(
'hotel.hotel_Sunday'
)
}}
</div>
</div>
</div>
<div
class=
"hotelProductCalendar_day"
>
<div
class=
"hasStock"
v-if=
"item.month!==calendar.data.date"
>
<div
v-for=
"(item, index) in calendar.data.days"
:key=
"index"
>
<p></p>
<div
:class=
"item.month===calendar.data.date?'nowMonth':'otherMonth'"
>
<p></p>
<span>
{{
item
.
date
.
getMonth
()
+
1
}}
-
{{
item
.
date
.
getDate
()
}}
</span>
<p></p>
</div>
<p></p>
<div
:class=
"stockColor(item.data.InventoryType)"
v-if=
"item.data&&item.month===calendar.data.date"
>
<p></p>
<p><span
@
click=
"goUrlA('2', item)"
class=
"text_underLine"
>
价格:
{{
item
.
data
.
CostPrice
}}
(
{{
item
.
data
.
CurrencyName
}}
)
</span></p>
<p></p>
<p><span
class=
"text_underLine"
@
click=
"goUrlB(item)"
>
总库存:
{{
item
.
data
.
Inventory
}}
(间)
</span></p>
<p><span
class=
"text_underLine"
@
click=
"goUrlHotelTeam(item)"
>
剩余库存:
{{
item
.
data
.
RemainingInventory
}}
(间)
</span></p>
<!--
<p><span>
剩余库存:
{{
item
.
data
.
RemainingInventory
}}
(间)
</span></p>
-->
<p><span
v-if=
"item.data.Inventory!==item.data.RemainingInventory"
class=
"text_underLine"
>
已使用库存:
{{
item
.
data
.
UseAmount
}}
(间)
</span></p>
<p><span
v-if=
"item.data.Inventory!==item.data.RemainingInventory"
>
欠房数量:
{{
item
.
data
.
OweAmount
}}
(间)
</span></p>
<p><span
v-if=
"item.data.Inventory!==item.data.RemainingInventory"
class=
"text_underLine"
>
已确定:
{{
item
.
data
.
SureAmount
}}
(间)
</span></p>
</div>
<div
class=
"noStock"
v-if=
"!item.data&&item.month===calendar.data.date"
>
<p><span>
暂无数据
</span></p>
<p><span
@
click=
"goUrlA('1', item)"
>
立即新增
</span></p>
</div>
<div
class=
"hasStock"
v-if=
"item.month!==calendar.data.date"
>
<p></p>
<p></p>
<p></p>
<p></p>
<p></p>
<p></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</template>
</template>
<
script
>
<
script
>
export
default
{
export
default
{
props
:
{
props
:
{
'calendar'
:
{
'calendar'
:
{
type
:
Object
,
type
:
Object
,
default
:
function
()
{
default
:
function
()
{
return
{
return
{
show
:
false
,
show
:
false
,
data
:
{}
data
:
{}
}
}
}
}
},
methods
:
{
stockColor
:
function
(
type
)
{
if
(
type
===
1
)
{
return
'hasStock hasStock_1'
}
else
if
(
type
===
2
)
{
return
'hasStock hasStock_2'
}
else
if
(
type
===
3
)
{
return
'hasStock hasStock_3'
}
else
if
(
type
===
4
)
{
return
'hasStock hasStock_4'
}
else
if
(
type
===
5
)
{
return
'hasStock hasStock_5'
}
},
calendarHide
:
function
()
{
this
.
calendar
.
show
=
false
this
.
calendar
.
data
=
{}
},
goUrlA
:
function
(
type
,
item
)
{
this
.
$emit
(
'goEdit'
,
type
,
item
.
day
)
},
goUrlHotelTeam
:
function
(
item
){
this
.
$router
.
push
({
name
:
'HotelsTeam'
,
query
:
{
HotelId
:
item
.
data
.
HotelId
,
StartDate
:
item
.
data
.
DayStr
,
blank
:
'y'
,
tab
:
'酒店相关团'
}
});
},
goUrlB
:
function
(
item
)
{
this
.
$router
.
push
({
name
:
'HotelTotalStock'
,
query
:
{
HotelId
:
this
.
hotelId
,
blank
:
'y'
,
tab
:
'总库存看板'
}
});
}
}
}
}
}
},
methods
:
{
stockColor
:
function
(
type
)
{
if
(
type
===
1
)
{
return
'hasStock hasStock_1'
}
else
if
(
type
===
2
)
{
return
'hasStock hasStock_2'
}
else
if
(
type
===
3
)
{
return
'hasStock hasStock_3'
}
else
if
(
type
===
4
)
{
return
'hasStock hasStock_4'
}
else
if
(
type
===
5
)
{
return
'hasStock hasStock_5'
}
},
calendarHide
:
function
()
{
this
.
calendar
.
show
=
false
this
.
calendar
.
data
=
{}
},
goUrlA
:
function
(
type
,
item
,
BatchNumber
)
{
this
.
$emit
(
'goEdit'
,
type
,
item
.
day
,
BatchNumber
)
},
goUrlHotelTeam
:
function
(
item
)
{
this
.
$router
.
push
({
name
:
'HotelsTeam'
,
query
:
{
HotelId
:
item
.
data
.
HotelId
,
StartDate
:
item
.
data
.
DayStr
,
blank
:
'y'
,
tab
:
'酒店相关团'
}
});
},
goUrlB
:
function
(
item
)
{
this
.
$router
.
push
({
name
:
'HotelTotalStock'
,
query
:
{
HotelId
:
this
.
hotelId
,
blank
:
'y'
,
tab
:
'总库存看板'
}
});
}
}
}
</
script
>
</
script
>
<
style
scoped
>
<
style
scoped
>
.hotelProductCalendar
{
.hotelProductCalendar
{
width
:
100%
;
width
:
100%
;
font-size
:
0px
;
font-size
:
0px
;
box-sizing
:
border-box
;
box-sizing
:
border-box
;
background-color
:
#f5f5f5
;
background-color
:
#f5f5f5
;
}
}
.hotelProductCalendar_month
{
position
:
relative
;
.hotelProductCalendar_month
{
width
:
100%
;
position
:
relative
;
height
:
50px
;
width
:
100%
;
line-height
:
50px
;
height
:
50px
;
text-align
:
center
;
line-height
:
50px
;
background
:
#e95252
;
text-align
:
center
;
border-radius
:
4px
4px
0
0
;
background
:
#e95252
;
}
border-radius
:
4px
4px
0
0
;
.hotelProductCalendar_month
>
div
{
}
display
:
inline-block
;
height
:
50px
;
.hotelProductCalendar_month
>
div
{
line-height
:
50px
;
display
:
inline-block
;
vertical-align
:
top
;
height
:
50px
;
}
line-height
:
50px
;
.hotelProductCalendar_month
>
div
:nth-child
(
1
)>
i
{
vertical-align
:
top
;
display
:
inline-block
;
}
font-size
:
22px
;
color
:
#ff7e7e
;
.hotelProductCalendar_month
>
div
:nth-child
(
1
)>
i
{
cursor
:
pointer
;
display
:
inline-block
;
vertical-align
:
middle
;
font-size
:
22px
;
}
color
:
#ff7e7e
;
.hotelProductCalendar_month
>
div
:nth-child
(
1
)>
input
{
cursor
:
pointer
;
display
:
inline-block
;
vertical-align
:
middle
;
width
:
60px
;
}
height
:
30px
;
border-radius
:
17px
;
.hotelProductCalendar_month
>
div
:nth-child
(
1
)>
input
{
outline
:
none
;
display
:
inline-block
;
border
:
none
;
width
:
60px
;
color
:
#fff
;
height
:
30px
;
background
:
transparent
;
border-radius
:
17px
;
font-size
:
18px
;
outline
:
none
;
text-align
:
center
;
border
:
none
;
vertical-align
:
middle
;
color
:
#fff
;
}
background
:
transparent
;
.hotelProductCalendar_month
>
div
:nth-child
(
1
)>
span
{
font-size
:
18px
;
display
:
inline-block
;
text-align
:
center
;
padding
:
0
5px
;
vertical-align
:
middle
;
font-size
:
18px
;
}
color
:
#fff
;
vertical-align
:
middle
;
.hotelProductCalendar_month
>
div
:nth-child
(
1
)>
span
{
}
display
:
inline-block
;
.hotelProductCalendar_month
>
div
:nth-child
(
2
)>
span
{
padding
:
0
5px
;
display
:
inline-block
;
font-size
:
18px
;
padding
:
0
20px
;
color
:
#fff
;
font-size
:
18px
;
vertical-align
:
middle
;
color
:
#fff
;
}
}
.hotelProductCalendar_month
>
div
:nth-child
(
3
)
{
.hotelProductCalendar_month
>
div
:nth-child
(
2
)>
span
{
position
:
absolute
;
display
:
inline-block
;
z-index
:
1
;
padding
:
0
20px
;
right
:
0px
;
font-size
:
18px
;
top
:
0px
;
color
:
#fff
;
width
:
50px
;
}
text-align
:
center
;
}
.hotelProductCalendar_month
>
div
:nth-child
(
3
)
{
.hotelProductCalendar_month
>
div
:nth-child
(
3
)>
i
{
position
:
absolute
;
font-size
:
12px
;
z-index
:
1
;
color
:
#ffffff
;
right
:
0px
;
cursor
:
pointer
;
top
:
0px
;
}
width
:
50px
;
.hotelProductCalendar_week
{
text-align
:
center
;
width
:
100%
;
}
height
:
28px
;
background-color
:
#3fa783
;
.hotelProductCalendar_month
>
div
:nth-child
(
3
)>
i
{
}
font-size
:
12px
;
.hotelProductCalendar_week
>
div
{
color
:
#ffffff
;
display
:
inline-block
;
cursor
:
pointer
;
width
:
14.2857%
;
}
height
:
28px
;
line-height
:
28px
;
.hotelProductCalendar_week
{
text-align
:
center
;
width
:
100%
;
font-size
:
14px
;
height
:
28px
;
color
:
#FFFFFF
;
background-color
:
#3fa783
;
}
}
.hotelProductCalendar_day
{
width
:
100%
;
.hotelProductCalendar_week
>
div
{
border-left
:
1px
solid
#dddddd
;
display
:
inline-block
;
}
width
:
14.2857%
;
.hotelProductCalendar_day
>
div
{
height
:
28px
;
display
:
inline-block
;
line-height
:
28px
;
width
:
14.2857%
;
text-align
:
center
;
height
:
148px
;
font-size
:
14px
;
border-right
:
1px
solid
#ddd
;
color
:
#FFFFFF
;
border-bottom
:
1px
solid
#ddd
;
}
vertical-align
:
top
;
}
.hotelProductCalendar_day
{
.hotelProductCalendar_day
>
div
>
div
:nth-child
(
1
)
{
width
:
100%
;
width
:
100%
;
border-left
:
1px
solid
#dddddd
;
height
:
28px
;
}
line-height
:
28px
;
text-align
:
center
;
.hotelProductCalendar_day
>
div
{
}
display
:
inline-block
;
.hotelProductCalendar_day
>
div
>
div
:nth-child
(
1
)>
span
{
width
:
14.2857%
;
font-size
:
14px
;
height
:
148px
;
}
border-right
:
1px
solid
#ddd
;
.hotelProductCalendar_day
>
div
>
.nowMonth
{
border-bottom
:
1px
solid
#ddd
;
background-color
:
#CCCCCC
;
vertical-align
:
top
;
}
}
.hotelProductCalendar_day
>
div
>
.nowMonth
>
span
{
color
:
#000000
;
.hotelProductCalendar_day
>
div
>
div
:nth-child
(
1
)
{
}
width
:
100%
;
.hotelProductCalendar_day
>
div
:nth-child
(
7n-1
)>
.nowMonth
>
span
{
height
:
28px
;
color
:
#e95252
;
line-height
:
28px
;
}
text-align
:
center
;
.hotelProductCalendar_day
>
div
:nth-child
(
7n
)>
.nowMonth
>
span
{
}
color
:
#e95252
;
}
.hotelProductCalendar_day
>
div
>
div
:nth-child
(
1
)>
span
{
.hotelProductCalendar_day
>
div
>
.otherMonth
{
font-size
:
14px
;
background-color
:
#DDDDDD
;
}
}
.hotelProductCalendar_day
>
div
>
.otherMonth
>
span
{
.hotelProductCalendar_day
>
div
>
.nowMonth
{
color
:
#999999
;
background-color
:
#CCCCCC
;
}
}
.hotelProductCalendar_day
>
div
>
.hasStock
{
width
:
100%
;
.hotelProductCalendar_day
>
div
>
.nowMonth
>
span
{
height
:
120px
;
color
:
#000000
;
overflow-y
:
auto
;
}
}
.hotelProductCalendar_day
>
div
>
.hasStock
>
p
{
.hotelProductCalendar_day
>
div
:nth-child
(
7n-1
)>
.nowMonth
>
span
{
width
:
100%
;
color
:
#e95252
;
min-height
:
20px
;
}
padding
:
0
10px
;
line-height
:
19px
;
.hotelProductCalendar_day
>
div
:nth-child
(
7n
)>
.nowMonth
>
span
{
font-size
:
12px
;
color
:
#e95252
;
border-bottom
:
1px
dashed
#ccc
;
}
}
.hotelProductCalendar_day
>
div
>
.hasStock_1
{
.hotelProductCalendar_day
>
div
>
.otherMonth
{
color
:
#FFFFFF
;
background-color
:
#DDDDDD
;
background-color
:
#ff3737
;
}
}
.hotelProductCalendar_day
>
div
>
.hasStock_2
{
.hotelProductCalendar_day
>
div
>
.otherMonth
>
span
{
background-color
:
#ff99cc
;
color
:
#999999
;
}
}
.hotelProductCalendar_day
>
div
>
.hasStock_3
{
background-color
:
#bcd6ee
;
.hotelProductCalendar_day
>
div
>
.hasStock
{
}
width
:
100%
;
.hotelProductCalendar_day
>
div
>
.hasStock_4
{
height
:
120px
;
background-color
:
#ffffff
;
overflow-y
:
auto
;
}
}
.hotelProductCalendar_day
>
div
>
.hasStock_5
{
background-color
:
#02F78E
;
.hotelProductCalendar_day
>
div
>
.hasStock
>
p
{
}
width
:
100%
;
.hotelProductCalendar_day
>
div
>
.noStock
{
min-height
:
20px
;
padding
:
30px
0
0
0
;
padding
:
0
10px
;
width
:
100%
;
line-height
:
19px
;
height
:
120px
;
font-size
:
12px
;
}
border-bottom
:
1px
dashed
#ccc
;
.hotelProductCalendar_day
>
div
>
.noStock
>
p
:nth-child
(
1
)
{
}
width
:
100%
;
font-size
:
16px
;
.hotelProductCalendar_day
>
div
>
.hasStock_1
{
color
:
#999999
;
color
:
#FFFFFF
;
text-align
:
center
;
background-color
:
#ff3737
;
}
}
.hotelProductCalendar_day
>
div
>
.noStock
>
p
:nth-child
(
2
)
{
margin
:
10px
0
0
0
;
.hotelProductCalendar_day
>
div
>
.hasStock_2
{
width
:
100%
;
background-color
:
#ff99cc
;
font-size
:
12px
;
}
color
:
#00C6FF
;
text-align
:
center
;
.hotelProductCalendar_day
>
div
>
.hasStock_3
{
cursor
:
pointer
;
background-color
:
#bcd6ee
;
}
}
.text_underLine
{
cursor
:
pointer
;
.hotelProductCalendar_day
>
div
>
.hasStock_4
{
}
background-color
:
#ffffff
;
</
style
>
}
\ No newline at end of file
.hotelProductCalendar_day
>
div
>
.hasStock_5
{
background-color
:
#02F78E
;
}
.hotelProductCalendar_day
>
div
>
.noStock
{
padding
:
30px
0
0
0
;
width
:
100%
;
height
:
120px
;
}
.hotelProductCalendar_day
>
div
>
.noStock
>
p
:nth-child
(
1
)
{
width
:
100%
;
font-size
:
16px
;
color
:
#999999
;
text-align
:
center
;
}
.hotelProductCalendar_day
>
div
>
.noStock
>
p
:nth-child
(
2
)
{
margin
:
10px
0
0
0
;
width
:
100%
;
font-size
:
12px
;
color
:
#00C6FF
;
text-align
:
center
;
cursor
:
pointer
;
}
.text_underLine
{
cursor
:
pointer
;
}
</
style
>
src/components/Hotel/HotelProductManage2.vue
View file @
7bfb3e5b
...
@@ -7,7 +7,8 @@
...
@@ -7,7 +7,8 @@
<div
class=
"hotelProductManage2_condition"
>
<div
class=
"hotelProductManage2_condition"
>
<div>
<div>
<em>
起始月
</em>
<em>
起始月
</em>
<el-date-picker
v-model=
"condition.month"
type=
"month"
value-format=
"yyyy-MM"
:clearable=
"false"
placeholder=
"选择月"
></el-date-picker>
<el-date-picker
v-model=
"condition.month"
type=
"month"
value-format=
"yyyy-MM"
:clearable=
"false"
placeholder=
"选择月"
></el-date-picker>
</div>
</div>
</div>
</div>
<div
class=
"hotelProductManage2_tableBox"
>
<div
class=
"hotelProductManage2_tableBox"
>
...
@@ -28,18 +29,18 @@
...
@@ -28,18 +29,18 @@
</tbody>
</tbody>
</table>
</table>
</div>
</div>
<div
class=
"hotelProductManage2_tableBox"
>
<div
class=
"hotelProductManage2_tableBox"
>
<span
style=
"color:#000000;background-color: #ff3737;padding:2px 4px;border-radius:5px"
>
红日
</span>
<span
style=
"color:#000000;background-color: #ff3737;padding:2px 4px;border-radius:5px"
>
红日
</span>
<span
style=
"color:#000000;background-color: #ff99cc;padding:2px 4px;border-radius:5px"
>
旺季
</span>
<span
style=
"color:#000000;background-color: #ff99cc;padding:2px 4px;border-radius:5px"
>
旺季
</span>
<span
style=
"color:#000000;background-color: #bcd6ee;padding:2px 4px;border-radius:5px"
>
平季
</span>
<span
style=
"color:#000000;background-color: #bcd6ee;padding:2px 4px;border-radius:5px"
>
平季
</span>
<span
style=
"color:#000000;background-color: #DDDDDD;padding:2px 4px;border-radius:5px"
>
淡季
</span>
<span
style=
"color:#000000;background-color: #DDDDDD;padding:2px 4px;border-radius:5px"
>
淡季
</span>
<span
style=
"color:#000000;background-color: #02F78E;padding:2px 4px;border-radius:5px"
>
特别价
</span>
<span
style=
"color:#000000;background-color: #02F78E;padding:2px 4px;border-radius:5px"
>
特别价
</span>
</div>
</div>
<div
class=
"hotelProductManage2_calendar"
>
<div
class=
"hotelProductManage2_calendar"
>
<div
class=
"hotelProductManage2_calendarItem"
v-for=
"(item, index) in days"
:key=
"index"
>
<div
class=
"hotelProductManage2_calendarItem"
v-for=
"(item, index) in days"
:key=
"index"
>
<div
class=
"calendarItem_month"
@
click=
"calendarShow(item, index)"
>
{{
item
.
date
}}
</div>
<div
class=
"calendarItem_month"
@
click=
"calendarShow(item, index)"
>
{{
item
.
date
}}
</div>
<div
class=
"hotelproductCkbox"
>
<div
class=
"hotelproductCkbox"
>
<el-checkbox
v-model=
"item.isCked"
@
change=
"changeHotelStatus(item,index)"
>
全选
</el-checkbox>
<el-checkbox
v-model=
"item.isCked"
@
change=
"changeHotelStatus(item,index)"
>
全选
</el-checkbox>
</div>
</div>
<div
class=
"calendarItem_week"
>
<div
class=
"calendarItem_week"
>
<div>
周一
</div>
<div>
周一
</div>
...
@@ -51,9 +52,17 @@
...
@@ -51,9 +52,17 @@
<div>
周日
</div>
<div>
周日
</div>
</div>
</div>
<div
class=
"calendarItem_day"
>
<div
class=
"calendarItem_day"
>
<div
v-for=
"(item2, index2) in item.days"
:key=
"index2"
:class=
"item2.month===item.date?'nowMonth':'otherMonth'"
>
<div
v-for=
"(subItem, index2) in item.days"
:key=
"index2"
:class=
"subItem.month===item.date?'nowMonth':'otherMonth'"
>
<div
:class=
"stockColor(item, item2)"
:style=
"item2.month===item.date&&msg2.DateList.indexOf(item2.day)!==-1?'border-color: green':''"
<div
:class=
"stockColor(item,subItem)"
@
click=
"calendarDayOn(item, item2)"
>
{{
item2
.
date
.
getDate
()
}}
</div>
:style=
"subItem.month===item.date&&msg2.DateList.indexOf(subItem.day)!==-1?'border-color: green':''"
@
click=
"calendarDayOn(item, subItem)"
>
{{
subItem
.
date
.
getDate
()
}}
<br
/>
<template
v-if=
"subItem.data&&subItem.data.SubList && subItem.data.SubList[0]"
>
<template
v-for=
"(childItem,childIndex) in subItem.data.SubList"
>
<span
v-if=
"childItem.BatchNumber>1"
>
{{
childItem
.
BatchNumber
}}
</span>
</
template
>
</template>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
...
@@ -71,8 +80,17 @@
...
@@ -71,8 +80,17 @@
<input
type=
"button"
value=
"保存"
@
click=
"edit2Save()"
class=
"normalBtn"
/>
<input
type=
"button"
value=
"保存"
@
click=
"edit2Save()"
class=
"normalBtn"
/>
</div>
</div>
</div>
</div>
<el-form
:model=
"msg2"
:rules=
"rules2"
:inline=
"true"
label-width=
"130px"
ref=
"hotelProductForm2"
class=
"hotelProductManage2_edit2_form"
>
<el-form
:model=
"msg2"
:rules=
"rules2"
:inline=
"true"
label-width=
"130px"
ref=
"hotelProductForm2"
class=
"hotelProductManage2_edit2_form"
>
<el-row>
<el-row>
<el-col
:span=
"24"
class=
"HotelProductEdit_date"
>
<el-form-item
label=
"已选日期"
prop=
"DateList"
>
<el-tag
v-for=
"(item, key) in msg2.DateList"
:key=
"key"
type=
"info"
style=
"margin: 0 5px 0 0;"
closable
@
close=
"calendarDayOff(item)"
>
{{item}}
</el-tag>
</el-form-item>
</el-col>
</el-row>
<el-row
style=
"padding: 20px 0 0 0;border-top: 1px dashed #ccc;"
>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
label=
"库存类型"
prop=
"InventoryType"
>
<el-form-item
label=
"库存类型"
prop=
"InventoryType"
>
<el-select
v-model=
"msg2.InventoryType"
placeholder=
"请选择"
>
<el-select
v-model=
"msg2.InventoryType"
placeholder=
"请选择"
>
...
@@ -89,36 +107,27 @@
...
@@ -89,36 +107,27 @@
<el-input-number
v-model=
"msg2.Inventory"
:min=
"0"
></el-input-number>
<el-input-number
v-model=
"msg2.Inventory"
:min=
"0"
></el-input-number>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<el-col
:span=
"24"
class=
"HotelProductEdit_date"
>
<el-col
:span=
"6"
>
<el-form-item
label=
"已选日期"
prop=
"DateList"
>
<el-form-item
label=
"批次"
>
<el-tag
v-for=
"(item, key) in msg2.DateList"
:key=
"key"
type=
"info"
style=
"margin: 0 5px 0 0;"
closable
<el-select
v-model=
"msg2.BatchNumber"
placeholder=
"请选择"
>
@
close=
"calendarDayOff(item)"
>
{{
item
}}
</el-tag>
<el-option
label=
"第一批"
:value=
"1"
></el-option>
<el-option
label=
"第二批"
:value=
"2"
></el-option>
<el-option
label=
"第三批"
:value=
"3"
></el-option>
</el-select>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
</el-row>
<el-row
style=
"padding: 20px 0 0 0;border-top: 1px dashed #ccc;"
>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<!--
<el-form-item
label=
"标准间成本价"
prop=
"CostPrice"
>
<el-form-item
label=
"标准间成本价"
>
<el-input-number
v-model=
"msg2.CostPrice"
:precision=
"2"
:min=
"0"
></el-input-number>
<el-input-number
v-model=
"msg2.CostPrice"
:precision=
"2"
:min=
"0"
@
keyup
.
native=
"checkPrice(msg2,'CostPrice')"
maxlength=
"10"
></el-input-number>
</el-form-item>
-->
<el-form-item>
<div
class=
"RabateDiv clearfix"
>
<div
class=
"RebateCount reOne"
>
<div
class=
"leftPnum"
>
标准间成本价
</div>
<input
type=
"text"
class=
"toolInput inpuOne"
v-model=
"msg2.CostPrice"
onkeyup=
"value=value.replace(/[^\d^\.]+/g,'')"
maxlength=
"20"
>
</div>
<div
class=
"RebateCount reTwo"
>
<div
class=
"fanNum"
>
散客价
</div>
<input
type=
"text"
class=
"toolInput inpuTwo"
v-model=
"msg2.SanKePrice"
onkeyup=
"value=value.replace(/[^\d^\.]+/g,'')"
maxlength=
"20"
>
</div>
</div>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<!--
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
label=
"散客价"
>
<el-form-item
label=
"散客价"
>
<el-input-number
v-model=
"msg2.SanKePrice"
:precision=
"2"
:min=
"0"
></el-input-number>
<el-input-number
v-model=
"msg2.SanKePrice"
:precision=
"2"
:min=
"0"
@
keyup
.
native=
"checkPrice(msg2,'SanKePrice')"
maxlength=
"10"
></el-input-number>
</el-form-item>
</el-form-item>
</el-col>
-->
</el-col>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
label=
"大床间成本价"
prop=
"BidroomPrice"
>
<el-form-item
label=
"大床间成本价"
prop=
"BidroomPrice"
>
<el-input-number
v-model=
"msg2.BidroomPrice"
:precision=
"2"
:min=
"0"
></el-input-number>
<el-input-number
v-model=
"msg2.BidroomPrice"
:precision=
"2"
:min=
"0"
></el-input-number>
...
@@ -155,7 +164,8 @@
...
@@ -155,7 +164,8 @@
<el-form-item
label=
"成本币种"
prop=
"CurrencyId"
>
<el-form-item
label=
"成本币种"
prop=
"CurrencyId"
>
<el-select
v-model=
"msg2.CurrencyId"
placeholder=
"请选择"
style=
"width:100px;"
@
change=
"currency2Change"
>
<el-select
v-model=
"msg2.CurrencyId"
placeholder=
"请选择"
style=
"width:100px;"
@
change=
"currency2Change"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
value=
'0'
></el-option>
<el-option
:label=
"$t('pub.unlimitedSel')"
value=
'0'
></el-option>
<el-option
v-for=
"(item,index) in allCurrencyList"
:key=
"index"
:label=
"item.Name"
:value=
"item.ID"
></el-option>
<el-option
v-for=
"(item,index) in allCurrencyList"
:key=
"index"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
...
@@ -192,13 +202,15 @@
...
@@ -192,13 +202,15 @@
<el-form-item
label=
"供应商"
prop=
"Supplier"
>
<el-form-item
label=
"供应商"
prop=
"Supplier"
>
<el-select
v-model=
"msg2.Supplier"
placeholder=
"请选择"
>
<el-select
v-model=
"msg2.Supplier"
placeholder=
"请选择"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
value=
'0'
></el-option>
<el-option
:label=
"$t('pub.unlimitedSel')"
value=
'0'
></el-option>
<el-option
v-for=
"(item,index) in SupplierList"
:key=
"index"
:label=
"item.Name"
:value=
"item.ID"
></el-option>
<el-option
v-for=
"(item,index) in SupplierList"
:key=
"index"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<el-col
:span=
"
24
"
>
<el-col
:span=
"
18
"
>
<el-form-item
label=
"备注"
prop=
"Remark"
>
<el-form-item
label=
"备注"
prop=
"Remark"
>
<el-input
type=
"textarea"
v-model=
"msg2.Remark"
:rows=
"2"
placeholder=
"请输入内容"
style=
"width: 755px;"
></el-input>
<el-input
type=
"textarea"
v-model=
"msg2.Remark"
:rows=
"1"
placeholder=
"请输入备注内容"
style=
"width: 600px;"
>
</el-input>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
</el-row>
</el-row>
...
@@ -213,24 +225,10 @@
...
@@ -213,24 +225,10 @@
<div
@
click=
"editSave()"
>
保存
</div>
<div
@
click=
"editSave()"
>
保存
</div>
</div>
</div>
</div>
</div>
<el-form
:model=
"msg"
:rules=
"rules"
:inline=
"true"
label-width=
"130px"
ref=
"hotelProductForm"
class=
"hotelProductManage2_edit_form"
>
<el-form
:model=
"msg"
:rules=
"rules"
:inline=
"true"
label-width=
"130px"
ref=
"hotelProductForm"
class=
"hotelProductManage2_edit_form"
>
<el-row>
<el-row>
<el-col
:span=
"6"
>
<el-form-item
label=
"库存类型"
prop=
"InventoryType"
>
<el-select
v-model=
"msg.InventoryType"
placeholder=
"请选择"
>
<el-option
label=
"红日"
value=
"1"
></el-option>
<el-option
label=
"旺季"
value=
"2"
></el-option>
<el-option
label=
"平季"
value=
"3"
></el-option>
<el-option
label=
"淡季"
value=
"4"
></el-option>
<el-option
label=
"特别价"
value=
"5"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"库存"
prop=
"Inventory"
>
<el-input-number
v-model=
"msg.Inventory"
:min=
"0"
></el-input-number>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
label=
"日期选择方式"
prop=
"DayType"
>
<el-form-item
label=
"日期选择方式"
prop=
"DayType"
>
<el-select
v-model=
"msg.DayType"
placeholder=
"请选择"
@
change=
"dayTypeChange"
>
<el-select
v-model=
"msg.DayType"
placeholder=
"请选择"
@
change=
"dayTypeChange"
>
...
@@ -241,7 +239,7 @@
...
@@ -241,7 +239,7 @@
</el-select>
</el-select>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<el-col
:span=
"
24
"
class=
"HotelProductEdit_date"
>
<el-col
:span=
"
12
"
class=
"HotelProductEdit_date"
>
<div
v-show=
"msg.DayType==='1'||msg.DayType==='3'"
>
<div
v-show=
"msg.DayType==='1'||msg.DayType==='3'"
>
<el-form-item
label=
"年"
prop=
"Year"
>
<el-form-item
label=
"年"
prop=
"Year"
>
<el-date-picker
v-model=
"msg.Year"
type=
"year"
value-format=
"yyyy"
placeholder=
"选择年"
></el-date-picker>
<el-date-picker
v-model=
"msg.Year"
type=
"year"
value-format=
"yyyy"
placeholder=
"选择年"
></el-date-picker>
...
@@ -249,7 +247,8 @@
...
@@ -249,7 +247,8 @@
</div>
</div>
<div
v-show=
"msg.DayType==='2'"
>
<div
v-show=
"msg.DayType==='2'"
>
<el-form-item
label=
"月"
prop=
"Month"
>
<el-form-item
label=
"月"
prop=
"Month"
>
<el-date-picker
v-model=
"msg.Month"
type=
"month"
value-format=
"yyyy-MM"
placeholder=
"选择月"
></el-date-picker>
<el-date-picker
v-model=
"msg.Month"
type=
"month"
value-format=
"yyyy-MM"
placeholder=
"选择月"
>
</el-date-picker>
</el-form-item>
</el-form-item>
</div>
</div>
<div
v-show=
"msg.DayType==='3'"
>
<div
v-show=
"msg.DayType==='3'"
>
...
@@ -290,34 +289,52 @@
...
@@ -290,34 +289,52 @@
</el-form-item>
</el-form-item>
<em>
-
</em>
<em>
-
</em>
<el-form-item
label=
""
prop=
"EndDate"
>
<el-form-item
label=
""
prop=
"EndDate"
>
<el-date-picker
v-model=
"msg.EndDate"
type=
"date"
placeholder=
"选择结束时间"
format=
"yyyy-MM-dd"
value-format=
"yyyy-MM-dd"
></el-date-picker>
<el-date-picker
v-model=
"msg.EndDate"
type=
"date"
placeholder=
"选择结束时间"
format=
"yyyy-MM-dd"
value-format=
"yyyy-MM-dd"
></el-date-picker>
</el-form-item>
</el-form-item>
</div>
</div>
</el-col>
</el-col>
</el-row>
</el-row>
<el-row
style=
"padding: 20px 0 0 0;border-top: 1px dashed #ccc;"
>
<el-row
style=
"padding: 20px 0 0 0;border-top: 1px dashed #ccc;"
>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<!--
<el-form-item
label=
"标准间成本价"
prop=
"CostPrice"
>
<el-form-item
label=
"库存类型"
prop=
"InventoryType"
>
<el-input-number
v-model=
"msg.CostPrice"
:precision=
"2"
:min=
"0"
></el-input-number>
<el-select
v-model=
"msg.InventoryType"
placeholder=
"请选择"
>
</el-form-item>
-->
<el-option
label=
"红日"
value=
"1"
></el-option>
<el-form-item>
<el-option
label=
"旺季"
value=
"2"
></el-option>
<div
class=
"RabateDiv clearfix"
>
<el-option
label=
"平季"
value=
"3"
></el-option>
<div
class=
"RebateCount reOne"
>
<el-option
label=
"淡季"
value=
"4"
></el-option>
<div
class=
"leftPnum"
>
标准间成本价
</div>
<el-option
label=
"特别价"
value=
"5"
></el-option>
<input
type=
"text"
class=
"toolInput inpuOne"
v-model=
"msg.CostPrice"
onkeyup=
"value=value.replace(/[^\d^\.]+/g,'')"
maxlength=
"20"
>
</el-select>
</div>
</el-form-item>
<div
class=
"RebateCount reTwo"
>
</el-col>
<div
class=
"fanNum"
>
散客价
</div>
<el-col
:span=
"6"
>
<input
type=
"text"
class=
"toolInput inpuTwo"
v-model=
"msg.SanKePrice"
onkeyup=
"value=value.replace(/[^\d^\.]+/g,'')"
maxlength=
"20"
>
<el-form-item
label=
"库存"
prop=
"Inventory"
>
</div>
<el-input-number
v-model=
"msg.Inventory"
:min=
"0"
></el-input-number>
</div>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"批次"
>
<el-select
v-model=
"msg.BatchNumber"
placeholder=
"请选择"
>
<el-option
label=
"第一批"
:value=
"1"
></el-option>
<el-option
label=
"第二批"
:value=
"2"
></el-option>
<el-option
label=
"第三批"
:value=
"3"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"标准间成本价"
>
<el-input-number
v-model=
"msg.CostPrice"
:precision=
"2"
:min=
"0"
@
keyup
.
native=
"checkPrice(msg2,'CostPrice')"
maxlength=
"10"
></el-input-number>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<!--
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
label=
"散客价"
>
<el-form-item
label=
"散客价"
>
<el-input-number
v-model=
"msg.SanKePrice"
:precision=
"2"
:min=
"0"
></el-input-number>
<el-input-number
v-model=
"msg.SanKePrice"
:precision=
"2"
:min=
"0"
@
keyup
.
native=
"checkPrice(msg2,'SanKePrice')"
maxlength=
"10"
></el-input-number>
</el-form-item>
</el-form-item>
</el-col>
-->
</el-col>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
label=
"大床间成本价"
prop=
"BidroomPrice"
>
<el-form-item
label=
"大床间成本价"
prop=
"BidroomPrice"
>
<el-input-number
v-model=
"msg.BidroomPrice"
:precision=
"2"
:min=
"0"
></el-input-number>
<el-input-number
v-model=
"msg.BidroomPrice"
:precision=
"2"
:min=
"0"
></el-input-number>
...
@@ -354,7 +371,8 @@
...
@@ -354,7 +371,8 @@
<el-form-item
label=
"成本币种"
prop=
"CurrencyId"
>
<el-form-item
label=
"成本币种"
prop=
"CurrencyId"
>
<el-select
v-model=
"msg.CurrencyId"
placeholder=
"请选择"
style=
"width:100px;"
@
change=
"currencyChange"
>
<el-select
v-model=
"msg.CurrencyId"
placeholder=
"请选择"
style=
"width:100px;"
@
change=
"currencyChange"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
value=
'0'
></el-option>
<el-option
:label=
"$t('pub.unlimitedSel')"
value=
'0'
></el-option>
<el-option
v-for=
"(item,index) in allCurrencyList"
:key=
"index"
:label=
"item.Name"
:value=
"item.ID"
></el-option>
<el-option
v-for=
"(item,index) in allCurrencyList"
:key=
"index"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
...
@@ -391,13 +409,15 @@
...
@@ -391,13 +409,15 @@
<el-form-item
label=
"供应商"
prop=
"Supplier"
>
<el-form-item
label=
"供应商"
prop=
"Supplier"
>
<el-select
v-model=
"msg.Supplier"
placeholder=
"请选择"
>
<el-select
v-model=
"msg.Supplier"
placeholder=
"请选择"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
value=
'0'
></el-option>
<el-option
:label=
"$t('pub.unlimitedSel')"
value=
'0'
></el-option>
<el-option
v-for=
"(item,index) in SupplierList"
:key=
"index"
:label=
"item.Name"
:value=
"item.ID"
></el-option>
<el-option
v-for=
"(item,index) in SupplierList"
:key=
"index"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<el-col
:span=
"
24
"
>
<el-col
:span=
"
18
"
>
<el-form-item
label=
"备注"
prop=
"Remark"
>
<el-form-item
label=
"备注"
prop=
"Remark"
>
<el-input
type=
"textarea"
v-model=
"msg.Remark"
:rows=
"2"
placeholder=
"请输入内容"
style=
"width: 755px;"
></el-input>
<el-input
type=
"textarea"
v-model=
"msg.Remark"
:rows=
"1"
placeholder=
"请输入备注内容"
style=
"width: 600px;"
>
</el-input>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
</el-row>
</el-row>
...
@@ -517,6 +537,7 @@
...
@@ -517,6 +537,7 @@
Week
:
''
,
Week
:
''
,
DateList
:
[],
DateList
:
[],
SanKePrice
:
0
,
//散客价
SanKePrice
:
0
,
//散客价
BatchNumber
:
1
,
//批次号
},
},
msg2
:
{
msg2
:
{
Hotel
:
'0'
,
Hotel
:
'0'
,
...
@@ -545,6 +566,7 @@
...
@@ -545,6 +566,7 @@
Week
:
''
,
Week
:
''
,
DateList
:
[],
DateList
:
[],
SanKePrice
:
0
,
//散客价
SanKePrice
:
0
,
//散客价
BatchNumber
:
1
//批次号
},
},
rules
:
{
rules
:
{
InventoryType
:
{
InventoryType
:
{
...
@@ -736,31 +758,32 @@
...
@@ -736,31 +758,32 @@
},
},
},
},
allCurrencyList
:
[],
allCurrencyList
:
[],
//供应商数组
SupplierList
:
[]
SupplierList
:
[]
}
}
},
},
methods
:
{
methods
:
{
stockColor
:
function
(
item
,
item2
)
{
//库存类型
stockColor
:
function
(
item
,
item2
,
childItem
)
{
if
(
item
.
date
===
item2
.
month
&&
item2
.
hasOwnProperty
(
'data'
))
{
if
(
item
.
date
===
item2
.
month
&&
item2
.
hasOwnProperty
(
'data'
))
{
let
type
=
item2
.
data
.
InventoryType
let
type
=
item2
.
data
.
SubList
[
0
].
InventoryType
;
if
(
type
===
1
)
{
if
(
type
===
1
)
{
return
'hasStock_1'
return
'hasStock_1'
;
}
else
if
(
type
===
2
)
{
}
else
if
(
type
===
2
)
{
return
'hasStock_2'
return
'hasStock_2'
;
}
else
if
(
type
===
3
)
{
}
else
if
(
type
===
3
)
{
return
'hasStock_3'
return
'hasStock_3'
;
}
else
if
(
type
===
4
)
{
}
else
if
(
type
===
4
)
{
return
'hasStock_4'
return
'hasStock_4'
;
}
}
else
if
(
type
===
5
)
{
else
if
(
type
===
5
)
{
return
'hasStock_5'
;
return
'hasStock_5'
}
}
}
else
{
}
else
{
return
return
;
}
}
},
},
//日历点击事件
calendarDayOn
:
function
(
item
,
item2
)
{
calendarDayOn
:
function
(
item
,
item2
)
{
if
(
item
.
date
===
item2
.
month
)
{
if
(
item
.
date
===
item2
.
month
)
{
let
dayIndex
=
this
.
msg2
.
DateList
.
indexOf
(
item2
.
day
)
let
dayIndex
=
this
.
msg2
.
DateList
.
indexOf
(
item2
.
day
)
if
(
dayIndex
===
-
1
)
{
if
(
dayIndex
===
-
1
)
{
...
@@ -770,7 +793,6 @@
...
@@ -770,7 +793,6 @@
this
.
msg2
.
DateList
.
splice
(
dayIndex
,
1
)
this
.
msg2
.
DateList
.
splice
(
dayIndex
,
1
)
}
}
}
}
console
.
log
(
this
.
msg2
.
DateList
);
},
},
calendarDayOff
:
function
(
item
)
{
calendarDayOff
:
function
(
item
)
{
let
dayIndex
=
this
.
msg2
.
DateList
.
indexOf
(
item
)
let
dayIndex
=
this
.
msg2
.
DateList
.
indexOf
(
item
)
...
@@ -783,10 +805,11 @@
...
@@ -783,10 +805,11 @@
Month
:
date
.
split
(
'-'
)[
1
]
Month
:
date
.
split
(
'-'
)[
1
]
},
res
=>
{
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
if
(
res
.
data
.
resultCode
===
1
)
{
let
json
=
res
.
data
.
data
let
json
=
res
.
data
.
data
;
this
.
hotelInfo
.
HotelName
=
json
.
HotelName
this
.
hotelInfo
.
TotalInventory
=
json
.
TotalInventory
this
.
hotelInfo
.
HotelName
=
json
.
HotelName
;
this
.
hotelInfo
.
Validity
=
json
.
Validity
this
.
hotelInfo
.
TotalInventory
=
json
.
TotalInventory
;
this
.
hotelInfo
.
Validity
=
json
.
Validity
;
for
(
let
i
=
0
;
i
<
this
.
days
[
key
].
days
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
this
.
days
[
key
].
days
.
length
;
i
++
)
{
for
(
let
j
=
0
;
j
<
json
.
list
.
length
;
j
++
)
{
for
(
let
j
=
0
;
j
<
json
.
list
.
length
;
j
++
)
{
if
(
this
.
days
[
key
].
days
[
i
].
day
===
json
.
list
[
j
].
DayStr
)
{
if
(
this
.
days
[
key
].
days
[
i
].
day
===
json
.
list
[
j
].
DayStr
)
{
...
@@ -798,8 +821,6 @@
...
@@ -798,8 +821,6 @@
this
.
$set
(
this
.
calendar
,
'data'
,
this
.
days
[
this
.
calendar
.
num
])
this
.
$set
(
this
.
calendar
,
'data'
,
this
.
days
[
this
.
calendar
.
num
])
}
}
this
.
$forceUpdate
();
this
.
$forceUpdate
();
}
else
{
this
.
$message
.
error
(
'数据获取失败'
)
}
}
})
})
},
},
...
@@ -808,52 +829,42 @@
...
@@ -808,52 +829,42 @@
let
dayList
=
this
.
$calendarUtils
.
createCalendar
(
date
).
DayArray
;
let
dayList
=
this
.
$calendarUtils
.
createCalendar
(
date
).
DayArray
;
let
days
=
[];
let
days
=
[];
for
(
let
i
=
0
;
i
<
dayList
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
dayList
.
length
;
i
++
)
{
let
month
=
dayList
[
i
].
day
.
Format
(
'yyyy-MM'
)
let
month
=
dayList
[
i
].
day
.
Format
(
'yyyy-MM'
)
;
let
day
=
dayList
[
i
].
day
.
Format
(
'yyyy-MM-dd'
)
let
day
=
dayList
[
i
].
day
.
Format
(
'yyyy-MM-dd'
)
;
days
.
push
({
days
.
push
({
date
:
dayList
[
i
].
day
,
date
:
dayList
[
i
].
day
,
month
:
month
,
month
:
month
,
day
:
day
day
:
day
})
})
;
}
}
;
this
.
days
[
key
]
=
{
this
.
days
[
key
]
=
{
date
:
month
,
date
:
month
,
days
:
days
,
days
:
days
,
isCked
:
false
isCked
:
false
}
}
;
this
.
getData
(
date
,
key
)
this
.
getData
(
date
,
key
)
;
},
},
getMonths
:
function
()
{
getMonths
:
function
()
{
let
month
=
this
.
condition
.
month
+
'-1'
let
month
=
this
.
condition
.
month
+
'-1'
for
(
let
i
=
0
;
i
<
4
;
i
++
)
{
for
(
let
i
=
0
;
i
<
4
;
i
++
)
{
if
(
i
!==
0
)
{
if
(
i
!==
0
)
{
let
newDate
=
new
Date
(
month
).
setDate
(
32
)
let
newDate
=
new
Date
(
month
).
setDate
(
32
)
;
month
=
new
Date
(
newDate
).
Format
(
'yyyy-MM'
)
+
'-1'
month
=
new
Date
(
newDate
).
Format
(
'yyyy-MM'
)
+
'-1'
;
}
}
this
.
getCalendarDays
(
month
,
i
)
this
.
getCalendarDays
(
month
,
i
)
;
}
}
},
},
calendarShow
:
function
(
item
,
index
)
{
calendarShow
:
function
(
item
,
index
)
{
this
.
calendar
.
num
=
index
this
.
calendar
.
num
=
index
;
this
.
calendar
.
data
=
item
this
.
calendar
.
data
=
item
;
this
.
calendar
.
show
=
true
this
.
calendar
.
show
=
true
;
},
goUrlA
:
function
()
{
this
.
$router
.
push
({
name
:
'HotelProductEdit'
,
query
:
{
type
:
'1'
,
HotelId
:
this
.
hotelId
,
blank
:
'y'
,
tab
:
'报价管理'
}
});
},
},
// 获取详情
// 获取详情
getDetail
:
function
(
date
)
{
getDetail
:
function
(
date
,
BatchNumber
)
{
this
.
apipost
(
'dict_post_HotelOffer_GetHotelPriceInfo'
,
{
this
.
apipost
(
'dict_post_HotelOffer_GetHotelPriceInfo'
,
{
HotelId
:
this
.
msg
.
Hotel
,
HotelId
:
this
.
msg
.
Hotel
,
Time
:
date
Time
:
date
,
BatchNumber
:
BatchNumber
},
res
=>
{
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
if
(
res
.
data
.
resultCode
===
1
)
{
let
data
=
res
.
data
.
data
;
let
data
=
res
.
data
.
data
;
...
@@ -876,9 +887,8 @@
...
@@ -876,9 +887,8 @@
this
.
msg
.
WeekendAddPrice
=
data
.
WeekendAddPrice
this
.
msg
.
WeekendAddPrice
=
data
.
WeekendAddPrice
this
.
msg
.
InteriorAddPrice
=
data
.
InteriorAddPrice
this
.
msg
.
InteriorAddPrice
=
data
.
InteriorAddPrice
this
.
msg
.
GuideRoomPrice
=
data
.
GuideRoomPrice
;
this
.
msg
.
GuideRoomPrice
=
data
.
GuideRoomPrice
;
this
.
msg
.
SanKePrice
=
data
.
SanKePrice
;
this
.
msg
.
SanKePrice
=
data
.
SanKePrice
;
}
else
{
this
.
msg
.
BatchNumber
=
data
.
BatchNumber
;
this
.
$message
.
error
(
res
.
data
.
message
)
}
}
})
})
},
},
...
@@ -895,8 +905,6 @@
...
@@ -895,8 +905,6 @@
this
.
apipost
(
"financeinfo_post_GetList"
,
{},
res
=>
{
this
.
apipost
(
"financeinfo_post_GetList"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
allCurrencyList
=
res
.
data
.
data
;
this
.
allCurrencyList
=
res
.
data
.
data
;
}
else
{
this
.
$message
.
error
(
'币种获取失败'
)
}
}
},
err
=>
{});
},
err
=>
{});
},
},
...
@@ -925,27 +933,25 @@
...
@@ -925,27 +933,25 @@
},
res
=>
{
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
SupplierList
=
res
.
data
.
data
;
this
.
SupplierList
=
res
.
data
.
data
;
}
else
{
this
.
$message
.
error
(
'供应商获取失败'
)
}
}
},
err
=>
{});
},
err
=>
{});
},
},
// 打开编辑窗口
// 打开编辑窗口
goEdit
:
function
(
type
,
date
)
{
goEdit
:
function
(
type
,
date
,
BatchNumber
)
{
let
nowDate
=
new
Date
().
Format
(
'yyyy-MM-dd'
)
let
nowDate
=
new
Date
().
Format
(
'yyyy-MM-dd'
)
;
this
.
msg
.
StartDate
=
date
===
undefined
?
nowDate
:
date
this
.
msg
.
StartDate
=
date
===
undefined
?
nowDate
:
date
;
this
.
msg
.
EndDate
=
date
===
undefined
?
nowDate
:
date
this
.
msg
.
EndDate
=
date
===
undefined
?
nowDate
:
date
;
if
(
type
===
'2'
&&
date
)
{
if
(
type
===
'2'
&&
date
)
{
this
.
getDetail
(
date
)
this
.
getDetail
(
date
,
BatchNumber
);
}
}
this
.
editShow
=
true
this
.
editShow
=
true
;
},
},
// 取消按钮
// 取消按钮
editCanel
:
function
()
{
editCanel
:
function
()
{
this
.
editShow
=
false
;
this
.
editShow
=
false
;
this
.
$refs
[
'hotelProductForm'
].
resetFields
();
this
.
$refs
[
'hotelProductForm'
].
resetFields
();
this
.
msg
.
CostPrice
=
0
;
this
.
msg
.
CostPrice
=
0
;
this
.
msg
.
SanKePrice
=
0
;
this
.
msg
.
SanKePrice
=
0
;
},
},
// 保存按钮
// 保存按钮
editSave
:
function
()
{
editSave
:
function
()
{
...
@@ -953,14 +959,15 @@
...
@@ -953,14 +959,15 @@
if
(
valid
)
{
if
(
valid
)
{
this
.
apipost
(
'dict_post_HotelOffer_SetNewHotelPrice'
,
this
.
msg
,
res
=>
{
this
.
apipost
(
'dict_post_HotelOffer_SetNewHotelPrice'
,
this
.
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
$message
.
s
uccess
(
'编辑成功'
)
this
.
S
uccess
(
'编辑成功'
)
this
.
getMonths
()
this
.
getMonths
()
this
.
editShow
=
false
this
.
editShow
=
false
this
.
$refs
[
'hotelProductForm'
].
resetFields
();
this
.
$refs
[
'hotelProductForm'
].
resetFields
();
this
.
msg
.
CostPrice
=
0
;
this
.
msg
.
CostPrice
=
0
;
this
.
msg
.
SanKePrice
=
0
;
this
.
msg
.
SanKePrice
=
0
;
this
.
msg
.
BatchNumber
=
1
;
}
else
{
}
else
{
this
.
$message
.
e
rror
(
res
.
data
.
message
)
this
.
E
rror
(
res
.
data
.
message
)
}
}
})
})
}
else
{
}
else
{
...
@@ -971,32 +978,25 @@
...
@@ -971,32 +978,25 @@
// 页面编辑重置
// 页面编辑重置
edit2Reset
:
function
()
{
edit2Reset
:
function
()
{
this
.
$refs
[
'hotelProductForm2'
].
resetFields
();
this
.
$refs
[
'hotelProductForm2'
].
resetFields
();
this
.
msg2
.
CostPrice
=
0
;
this
.
msg2
.
CostPrice
=
0
;
this
.
msg2
.
SanKePrice
=
0
;
this
.
msg2
.
SanKePrice
=
0
;
},
},
//批量删除
//批量删除
delete2Reset
:
function
()
{
delete2Reset
:
function
()
{
this
.
$confirm
(
'是否删除?'
,
'提示'
,
{
var
that
=
this
;
confirmButtonText
:
'确定'
,
this
.
Confirm
(
"是否删除?"
,
function
()
{
cancelButtonText
:
'取消'
,
that
.
apipost
(
'dict_post_HotelOffer_RemoveNewHotelPrice'
,
that
.
msg2
,
res
=>
{
type
:
'warning'
}).
then
(()
=>
{
this
.
apipost
(
'dict_post_HotelOffer_RemoveNewHotelPrice'
,
this
.
msg2
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
)
that
.
Success
(
res
.
data
.
message
)
this
.
getMonths
()
that
.
getMonths
();
this
.
$refs
[
'hotelProductForm2'
].
resetFields
();
that
.
$refs
[
'hotelProductForm2'
].
resetFields
();
this
.
msg2
.
CostPrice
=
0
;
that
.
msg2
.
CostPrice
=
0
;
this
.
msg2
.
SanKePrice
=
0
;
that
.
msg2
.
SanKePrice
=
0
;
that
.
msg2
.
BatchNumber
=
1
;
}
else
{
}
else
{
th
is
.
$message
.
e
rror
(
res
.
data
.
message
)
th
at
.
E
rror
(
res
.
data
.
message
)
}
}
},
err
=>
{})
},
err
=>
{})
}).
catch
(()
=>
{
this
.
$message
({
type
:
'info'
,
message
:
'已取消'
});
});
});
},
},
// 页面编辑保存
// 页面编辑保存
...
@@ -1005,13 +1005,14 @@
...
@@ -1005,13 +1005,14 @@
if
(
valid
)
{
if
(
valid
)
{
this
.
apipost
(
'dict_post_HotelOffer_SetNewHotelPrice'
,
this
.
msg2
,
res
=>
{
this
.
apipost
(
'dict_post_HotelOffer_SetNewHotelPrice'
,
this
.
msg2
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
$message
.
s
uccess
(
'编辑成功'
)
this
.
S
uccess
(
'编辑成功'
)
this
.
getMonths
()
this
.
getMonths
()
;
this
.
$refs
[
'hotelProductForm2'
].
resetFields
();
this
.
$refs
[
'hotelProductForm2'
].
resetFields
();
this
.
msg2
.
CostPrice
=
0
;
this
.
msg2
.
CostPrice
=
0
;
this
.
msg2
.
SanKePrice
=
0
;
this
.
msg2
.
SanKePrice
=
0
;
this
.
msg2
.
BatchNumber
=
1
;
}
else
{
}
else
{
this
.
$message
.
e
rror
(
res
.
data
.
message
)
this
.
E
rror
(
res
.
data
.
message
)
}
}
})
})
}
else
{
}
else
{
...
@@ -1020,40 +1021,40 @@
...
@@ -1020,40 +1021,40 @@
});
});
},
},
//增加全选
//增加全选
changeHotelStatus
(
item
,
index
){
changeHotelStatus
(
item
,
index
)
{
if
(
item
.
isCked
){
if
(
item
.
isCked
)
{
item
.
days
.
forEach
(
x
=>
{
item
.
days
.
forEach
(
x
=>
{
if
(
x
.
month
==
item
.
date
){
if
(
x
.
month
==
item
.
date
)
{
if
(
this
.
msg2
.
DateList
.
indexOf
(
x
.
day
)
==-
1
){
if
(
this
.
msg2
.
DateList
.
indexOf
(
x
.
day
)
==
-
1
)
{
this
.
msg2
.
DateList
.
push
(
x
.
day
);
this
.
msg2
.
DateList
.
push
(
x
.
day
);
}
}
}
}
})
})
}
else
{
}
else
{
item
.
days
.
forEach
(
x
=>
{
item
.
days
.
forEach
(
x
=>
{
this
.
msg2
.
DateList
.
forEach
((
y
,
index
)
=>
{
this
.
msg2
.
DateList
.
forEach
((
y
,
index
)
=>
{
if
(
x
.
day
==
y
){
if
(
x
.
day
==
y
)
{
this
.
msg2
.
DateList
.
splice
(
index
,
1
)
this
.
msg2
.
DateList
.
splice
(
index
,
1
)
}
}
})
})
})
}
})
}
}
}
},
},
created
:
function
()
{
created
:
function
()
{
this
.
hotelId
=
this
.
$route
.
query
.
id
===
undefined
?
'0'
:
this
.
$route
.
query
.
id
this
.
hotelId
=
this
.
$route
.
query
.
id
===
undefined
?
'0'
:
this
.
$route
.
query
.
id
;
this
.
msg
.
Hotel
=
this
.
$route
.
query
.
id
===
undefined
?
'0'
:
this
.
$route
.
query
.
id
this
.
msg
.
Hotel
=
this
.
$route
.
query
.
id
===
undefined
?
'0'
:
this
.
$route
.
query
.
id
;
this
.
msg2
.
Hotel
=
this
.
$route
.
query
.
id
===
undefined
?
'0'
:
this
.
$route
.
query
.
id
this
.
msg2
.
Hotel
=
this
.
$route
.
query
.
id
===
undefined
?
'0'
:
this
.
$route
.
query
.
id
;
this
.
condition
.
month
=
new
Date
().
Format
(
'yyyy-MM'
)
this
.
condition
.
month
=
new
Date
().
Format
(
'yyyy-MM'
)
;
let
nowDate
=
new
Date
().
Format
(
'yyyy-MM-dd'
)
let
nowDate
=
new
Date
().
Format
(
'yyyy-MM-dd'
)
;
this
.
msg
.
DayType
=
'4'
this
.
msg
.
DayType
=
'4'
;
this
.
msg
.
StartDate
=
nowDate
this
.
msg
.
StartDate
=
nowDate
;
this
.
msg
.
EndDate
=
nowDate
this
.
msg
.
EndDate
=
nowDate
;
},
},
mounted
:
function
()
{
mounted
:
function
()
{
this
.
getMonths
()
this
.
getMonths
()
;
this
.
getAllCurrency
()
this
.
getAllCurrency
()
;
this
.
initSupplier
()
this
.
initSupplier
()
;
}
}
}
}
...
@@ -1063,12 +1064,14 @@
...
@@ -1063,12 +1064,14 @@
.hotelProductManage2
{
.hotelProductManage2
{
padding
:
20px
0
;
padding
:
20px
0
;
}
}
.hotelproductCkbox
{
width
:
10%
;
.hotelproductCkbox
{
height
:
30px
;
width
:
10%
;
float
:
right
;
height
:
30px
;
margin
:
5px
20px
0
0
;
float
:
right
;
margin
:
5px
20px
0
0
;
}
}
.hotelProductManage2
>
.hotelProductManage2_btnList
{
.hotelProductManage2
>
.hotelProductManage2_btnList
{
position
:
fixed
;
position
:
fixed
;
top
:
36px
;
top
:
36px
;
...
@@ -1173,8 +1176,8 @@
...
@@ -1173,8 +1176,8 @@
.hotelProductManage2_calendarItem
>
.calendarItem_month
{
.hotelProductManage2_calendarItem
>
.calendarItem_month
{
width
:
50%
;
width
:
50%
;
height
:
30px
;
height
:
30px
;
float
:
left
;
float
:
left
;
margin-left
:
110px
;
margin-left
:
110px
;
line-height
:
30px
;
line-height
:
30px
;
text-align
:
center
;
text-align
:
center
;
font-size
:
14px
;
font-size
:
14px
;
...
@@ -1203,11 +1206,12 @@
...
@@ -1203,11 +1206,12 @@
display
:
flex
;
display
:
flex
;
justify-content
:
space-around
;
justify-content
:
space-around
;
flex-wrap
:
wrap
;
flex-wrap
:
wrap
;
padding-bottom
:
20px
;
}
}
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
{
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
{
display
:
inline-block
;
display
:
inline-block
;
padding
:
5px
0
;
padding
:
1
5px
0
;
width
:
14.2%
;
width
:
14.2%
;
}
}
...
@@ -1242,10 +1246,12 @@
...
@@ -1242,10 +1246,12 @@
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
>
.hasStock_3
{
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
>
.hasStock_3
{
background-color
:
#bcd6ee
;
background-color
:
#bcd6ee
;
}
}
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
>
.hasStock_4
{
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
>
.hasStock_4
{
background-color
:
#DDDDDD
;
background-color
:
#DDDDDD
;
}
}
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
>
.hasStock_5
{
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
>
.hasStock_5
{
background-color
:
#02F78E
;
background-color
:
#02F78E
;
}
}
...
@@ -1345,7 +1351,7 @@
...
@@ -1345,7 +1351,7 @@
left
:
50px
;
left
:
50px
;
padding
:
10px
10px
0
;
padding
:
10px
10px
0
;
min-width
:
1316px
;
min-width
:
1316px
;
height
:
640px
;
/* height: 640px; */
border-top
:
3px
solid
#38425d
;
border-top
:
3px
solid
#38425d
;
background-color
:
#FFFFFF
;
background-color
:
#FFFFFF
;
overflow
:
auto
;
overflow
:
auto
;
...
@@ -1429,18 +1435,23 @@
...
@@ -1429,18 +1435,23 @@
margin
:
7px
10px
0
0
;
margin
:
7px
10px
0
0
;
padding
:
0
0
0
0
;
padding
:
0
0
0
0
;
}
}
.hotelProductManage2
.RabateDiv
{
.hotelProductManage2
.RabateDiv
{
margin-left
:
25px
;
margin-left
:
25px
;
}
}
.hotelProductManage2
.RebateCount
{
.hotelProductManage2
.RebateCount
{
height
:
34px
;
height
:
34px
;
border-radius
:
17px
;
border-radius
:
17px
;
float
:
left
;
float
:
left
;
}
}
.hotelProductManage2
.reOne
,
.hotelProductManage2
.reTwo
,
.hotelProductManage2
.reOne
,
.hotelProductManage2
.reTwo
,
.hotelProductManage2.dayNum
{
.hotelProductManage2.dayNum
{
position
:
relative
;
position
:
relative
;
}
}
.hotelProductManage2
.leftPnum
{
.hotelProductManage2
.leftPnum
{
float
:
left
;
float
:
left
;
background-color
:
#f5f7fa
;
background-color
:
#f5f7fa
;
...
@@ -1451,26 +1462,30 @@
...
@@ -1451,26 +1462,30 @@
position
:
absolute
;
position
:
absolute
;
left
:
1px
;
left
:
1px
;
top
:
1px
;
top
:
1px
;
font-size
:
14px
;
font-size
:
14px
;
padding
:
0
10px
;
padding
:
0
10px
;
color
:
#606266
;
color
:
#606266
;
}
}
.hotelProductManage2
.toolInput
{
.hotelProductManage2
.toolInput
{
height
:
42px
;
height
:
42px
;
padding-left
:
5px
;
padding-left
:
5px
;
border
:
none
;
border
:
none
;
}
}
.hotelProductManage2
.inpuOne
{
.hotelProductManage2
.inpuOne
{
width
:
225px
;
width
:
225px
;
padding-left
:
120px
;
padding-left
:
120px
;
border
:
1px
solid
#d1d1d1
;
border
:
1px
solid
#d1d1d1
;
border-right
:
none
;
border-right
:
none
;
}
}
.hotelProductManage2
.inpuTwo
{
.hotelProductManage2
.inpuTwo
{
width
:
166px
;
width
:
166px
;
padding
:
0
45px
0
77px
;
padding
:
0
45px
0
77px
;
border
:
1px
solid
#d1d1d1
;
border
:
1px
solid
#d1d1d1
;
}
}
.hotelProductManage2
.fanNum
{
.hotelProductManage2
.fanNum
{
float
:
left
;
float
:
left
;
background-color
:
#f5f7fa
;
background-color
:
#f5f7fa
;
...
@@ -1481,9 +1496,9 @@
...
@@ -1481,9 +1496,9 @@
position
:
absolute
;
position
:
absolute
;
left
:
1px
;
left
:
1px
;
top
:
1px
;
top
:
1px
;
padding
:
0
10px
;
padding
:
0
10px
;
color
:
#606266
;
color
:
#606266
;
font-size
:
14px
;
font-size
:
14px
;
}
}
</
style
>
</
style
>
src/components/Hotel/HotelQueryList.vue
View file @
7bfb3e5b
...
@@ -2,6 +2,29 @@
...
@@ -2,6 +2,29 @@
<div>
<div>
<div
class=
"query-box"
style=
"border-bottom: none;"
>
<div
class=
"query-box"
style=
"border-bottom: none;"
>
<ul>
<ul>
<li>
<span>
<em>
{{
$t
(
'system.quety_area'
)
}}
</em>
<el-select
v-model=
"msg.Province"
filterable
@
change=
"getProvinceList(msg.Province,2)"
:placeholder=
"$t('hotel.hotel_province')"
>
<el-option
:key=
"0"
:value=
"0"
label=
"请选择"
></el-option>
<el-option
v-for=
"item in provinceList"
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
></el-option>
</el-select>
<el-select
v-model=
"msg.City"
filterable
:placeholder=
"$t('hotel.hotel_city')"
>
<el-option
:key=
"0"
:value=
"0"
label=
"请选择"
></el-option>
<el-option
v-for=
"item in cityList"
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
></el-option>
</el-select>
</span>
</li>
<li>
<span><em>
{{
$t
(
'admin.admin_company'
)
}}
</em>
<el-select
filterable
v-model=
'msg.OutBranchId'
:placeholder=
"$t('pub.unlimitedSel')"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
:value=
'-1'
></el-option>
<el-option
v-for=
'item in companyList'
:label=
'item.BName'
:value=
'item.Id'
:key=
"item.Id"
>
</el-option>
</el-select>
</span>
</li>
<li>
<li>
<span>
<span>
<em>
酒店
</em>
<em>
酒店
</em>
...
@@ -18,12 +41,15 @@
...
@@ -18,12 +41,15 @@
</span>
</span>
</li>
</li>
<li>
<li>
<input
type=
"button"
class=
"normalBtn"
value=
"温馨提示"
@
click=
"showNotice=true,resetPageIndex(),GetHotelTipList()"
/>
<input
type=
"button"
class=
"normalBtn"
value=
"查询"
@
click=
"getList()"
/>
<input
type=
"button"
class=
"normalBtn"
value=
"查询"
@
click=
"getList()"
/>
</li>
</li>
</ul>
</ul>
</div>
</div>
<div
style=
"width: 100%;min-height:200px; overflow-x: auto;padding-bottom: 10px; "
class=
"HotelQueryList"
v-loading=
"loading"
>
<div
style=
"width: 100%;min-height:200px; overflow-x: auto;padding-bottom: 10px; "
class=
"HotelQueryList"
v-loading=
"loading"
>
<div
class=
"hotelProductManage2_tableBox"
>
<div
class=
"hotelProductManage2_tableBox"
>
<span
style=
"color:#000000;background-color: #ff3737;padding:2px 4px;border-radius:5px"
>
红日
</span>
<span
style=
"color:#000000;background-color: #ff3737;padding:2px 4px;border-radius:5px"
>
红日
</span>
<span
style=
"color:#000000;background-color: #ff99cc;padding:2px 4px;border-radius:5px"
>
旺季
</span>
<span
style=
"color:#000000;background-color: #ff99cc;padding:2px 4px;border-radius:5px"
>
旺季
</span>
...
@@ -35,16 +61,20 @@
...
@@ -35,16 +61,20 @@
<tr>
<tr>
<th
width=
"300"
>
酒店名称
</th>
<th
width=
"300"
>
酒店名称
</th>
<th
width=
"80"
></th>
<th
width=
"80"
></th>
<th
v-for=
"item in dataList[0].subList"
>
<template
v-if=
"dataList.length>0"
>
{{
getDateList
(
item
.
DateStr
)
}}
<th
v-for=
"item in dataList[0].subList"
>
</th>
{{
getDateList
(
item
.
DateStr
)
}}
</th>
</
template
>
</tr>
</tr>
<tr>
<tr>
<th></th>
<th></th>
<th></th>
<th></th>
<th
v-for=
"item in dataList[0].subList"
>
<
template
v-if=
"dataList.length>0"
>
{{
getWeek
(
item
.
DateStr
)
}}
<th
v-for=
"item in dataList[0].subList"
>
</th>
{{
getWeek
(
item
.
DateStr
)
}}
</th>
</
template
>
</tr>
</tr>
<tr
v-for=
"item in dataList"
>
<tr
v-for=
"item in dataList"
>
<td>
<td>
...
@@ -69,9 +99,101 @@
...
@@ -69,9 +99,101 @@
</tr>
</tr>
</table>
</table>
</div>
</div>
<div
class=
"combottomDiv HqCom_bottom"
v-if=
"showNotice"
>
<el-form
label-width=
"80px"
>
<el-row>
<el-col
:span=
"20"
>
<el-form-item
label=
"日期"
>
<el-date-picker
class=
"w150"
type=
"date"
v-model=
"queryMsg.QStartDate"
:picker-options=
"pickerBeginDateBefore"
value-format=
"yyyy-MM-dd"
placeholder
></el-date-picker>
<el-date-picker
class=
"w150"
type=
"date"
v-model=
"queryMsg.QEndDate"
:picker-options=
"pickerBeginDateAfter"
value-format=
"yyyy-MM-dd"
placeholder
></el-date-picker>
</el-form-item>
</el-col>
<el-col
:span=
"4"
>
<input
type=
"button"
class=
"normalBtn"
value=
"查询"
@
click=
"resetPageIndex(),GetHotelTipList()"
/>
<input
type=
"button"
class=
"normalBtn"
value=
"关闭"
@
click=
"showNotice=false"
/>
</el-col>
</el-row>
<div
class=
"Hq_addDetail"
>
<el-row>
<el-col
:span=
"9"
>
<el-form-item
label=
"说明"
>
<el-input
type=
"textarea"
v-model=
"postMsg.TipContent"
class=
"w600"
maxlength=
"200"
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"15"
>
<input
type=
"button"
class=
"normalBtn"
value=
"保存"
@
click=
"SaveHotelTip()"
/>
</el-col>
</el-row>
</div>
</el-form>
<div>
<table
border=
"0"
cellspacing=
"1"
cellpadding=
"0"
class=
"HouseTypeList Hq_addTable"
style=
"width:97%;"
>
<tr>
<th>
编号
</th>
<th>
内容
</th>
<th>
操作人
</th>
<th>
操作时间
</th>
<th>
操作
</th>
</tr>
<
template
v-if=
"queryMsg.total>0"
>
<tr
v-for=
"(item,index) in HotelTipList"
>
<td>
{{
item
.
Id
}}
</td>
<td>
{{
item
.
TipContent
}}
</td>
<td>
{{
item
.
CreateByName
}}
</td>
<td>
{{
item
.
CreateTimeStr
}}
</td>
<td>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"编辑"
placement=
"top"
>
<el-button
type=
"primary"
icon=
"el-icon-edit"
circle
@
click=
"GetHotelTip(item.Id)"
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"删除"
placement=
"top"
>
<el-button
type=
"danger"
icon=
"el-icon-delete"
circle
@
click=
"RemoveHotelTip(item.Id)"
></el-button>
</el-tooltip>
</td>
</tr>
</
template
>
<tr
v-else
>
<td
colspan=
"5"
>
暂无数据...
</td>
</tr>
</table>
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"queryMsg.currentPage"
:page-size=
"queryMsg.pageSize"
layout=
"total,prev, pager, next, jumper"
:total=
"queryMsg.total"
>
</el-pagination>
</div>
</div>
<el-dialog
custom-class=
"w800"
title=
"信息"
:visible
.
sync=
"showHQinfo"
center
>
<el-form>
<table
border=
"0"
cellspacing=
"1"
cellpadding=
"0"
class=
"HouseTypeList Hq_addTable"
style=
"width:100%;"
>
<tr>
<th>
编号
</th>
<th>
内容
</th>
<th>
操作人
</th>
<th>
操作时间
</th>
</tr>
<
template
v-if=
"queryMsg.total>0"
>
<tr
v-for=
"(item,index) in HotelTipList"
>
<td>
{{
item
.
Id
}}
</td>
<td>
{{
item
.
TipContent
}}
</td>
<td>
{{
item
.
CreateByName
}}
</td>
<td>
{{
item
.
CreateTimeStr
}}
</td>
</tr>
</
template
>
<tr
v-else
>
<td
colspan=
"5"
>
暂无数据...
</td>
</tr>
</table>
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"queryMsg.currentPage"
:page-size=
"queryMsg.pageSize"
layout=
"total,prev, pager, next, jumper"
:total=
"queryMsg.total"
>
</el-pagination>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
class=
"hollowFixedBtn"
@
click=
"showHQinfo = false"
>
关闭
</button>
</div>
</el-dialog>
</div>
</div>
</template>
</template>
<
script
>
<
script
>
export
default
{
export
default
{
data
()
{
data
()
{
...
@@ -80,11 +202,53 @@
...
@@ -80,11 +202,53 @@
HotelId
:
0
,
HotelId
:
0
,
StartDate
:
new
Date
().
Format
(
"yyyy-MM-dd"
),
StartDate
:
new
Date
().
Format
(
"yyyy-MM-dd"
),
EndDate
:
this
.
setEdate
(),
EndDate
:
this
.
setEdate
(),
//只查询日本
Country
:
"651"
,
Province
:
0
,
City
:
0
,
OutBranchId
:
-
1
,
},
//分公司列表
companyList
:
[],
defaultSelectValue
:
0
,
//国家 省市 区
provinceList
:
[],
cityList
:
[],
district
:
[],
queryMsg
:
{
QStartDate
:
''
,
QEndDate
:
''
,
pageIndex
:
1
,
pageSize
:
5
,
currentPage
:
1
,
total
:
0
},
postMsg
:
{
Id
:
0
,
TipContent
:
''
},
},
//默认显示弹窗信息
showHQinfo
:
true
,
//酒店温馨提示列表
HotelTipList
:
[],
HotelList
:
[],
HotelList
:
[],
dataList
:
[],
dataList
:
[],
isShow
:
false
,
isShow
:
false
,
loading
:
false
,
loading
:
false
,
showNotice
:
false
,
pickerBeginDateBefore
:
{
disabledDate
:
time
=>
{
let
endTime
=
new
Date
(
this
.
queryMsg
.
QStartDate
)
return
endTime
.
getTime
()
<
time
.
getTime
()
}
},
pickerBeginDateAfter
:
{
disabledDate
:
time
=>
{
let
startTime
=
new
Date
(
this
.
queryMsg
.
QEndDate
)
return
startTime
.
getTime
()
>=
time
.
getTime
()
}
}
};
};
},
},
methods
:
{
methods
:
{
...
@@ -101,7 +265,7 @@
...
@@ -101,7 +265,7 @@
}
}
},
},
getList
()
{
getList
()
{
this
.
loading
=
true
;
this
.
loading
=
true
;
if
(
this
.
msg
.
StartDate
==
null
)
{
if
(
this
.
msg
.
StartDate
==
null
)
{
this
.
msg
.
StartDate
=
new
Date
().
Format
(
"yyyy-MM-dd"
)
this
.
msg
.
StartDate
=
new
Date
().
Format
(
"yyyy-MM-dd"
)
}
}
...
@@ -182,11 +346,123 @@
...
@@ -182,11 +346,123 @@
break
;
break
;
}
}
return
classStr
;
return
classStr
;
}
},
handleCurrentChange
(
val
)
{
this
.
queryMsg
.
pageIndex
=
val
;
this
.
GetHotelTipList
();
},
resetPageIndex
()
{
this
.
queryMsg
.
pageIndex
=
1
;
this
.
queryMsg
.
currentPage
=
1
;
},
//获取酒店列表
GetHotelTipList
()
{
this
.
apipost
(
"hoteltip_get_GetPageList"
,
this
.
queryMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
HotelTipList
=
res
.
data
.
data
.
pageData
;
this
.
queryMsg
.
total
=
res
.
data
.
data
.
count
;
}
},
err
=>
{}
);
},
SaveHotelTip
()
{
this
.
apipost
(
"hoteltip_post_SetHotelTip"
,
this
.
postMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
Success
(
"保存成功!"
);
this
.
postMsg
.
Id
=
0
;
this
.
postMsg
.
TipContent
=
""
;
this
.
GetHotelTipList
();
}
else
{
this
.
Error
(
"保存失败!"
);
}
},
err
=>
{}
);
},
RemoveHotelTip
(
Id
)
{
var
that
=
this
;
this
.
Confirm
(
'是否要删除此数据?'
,
function
()
{
that
.
apipost
(
"hoteltip_post_RemoveHotelTip"
,
{
ID
:
Id
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
that
.
Success
(
"删除成功!"
);
that
.
GetHotelTipList
();
}
else
{
that
.
Error
(
"删除失败!"
);
}
},
err
=>
{}
);
})
},
GetHotelTip
(
Id
)
{
this
.
apipost
(
"hoteltip_get_GetHotelTip"
,
{
ID
:
Id
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
postMsg
.
Id
=
res
.
data
.
data
.
Id
;
this
.
postMsg
.
TipContent
=
res
.
data
.
data
.
TipContent
;
}
else
{
this
.
Error
(
"获取数据失败!"
);
}
},
err
=>
{}
);
},
getProvinceList
(
ID
,
type
)
{
//根据省份获取城市
let
msg
=
{
Id
:
ID
};
if
(
type
==
1
)
{
this
.
msg
.
Province
=
0
;
this
.
msg
.
City
=
0
;
this
.
provinceList
=
[];
this
.
cityList
=
[];
}
else
if
(
type
==
2
)
{
this
.
msg
.
City
=
0
;
this
.
cityList
=
[];
}
this
.
apipost
(
"dict_post_Destination_GetChildList"
,
msg
,
res
=>
{
if
(
type
==
1
)
{
this
.
provinceList
=
res
.
data
.
data
;
}
else
if
(
type
==
2
)
{
this
.
cityList
=
res
.
data
.
data
;
}
},
err
=>
{}
);
},
getBranchList
()
{
this
.
apipost
(
'admin_get_BranchGetList'
,
{
RB_Group_Id
:
'2'
,
Status
:
0
,
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
companyList
=
res
.
data
.
data
;
}
},
err
=>
{})
},
},
},
mounted
()
{
mounted
()
{
this
.
getBranchList
();
this
.
getProvinceList
(
651
,
1
);
this
.
GetHotelList
();
this
.
GetHotelList
();
this
.
getList
();
this
.
getList
();
this
.
GetHotelTipList
();
}
}
};
};
...
@@ -264,4 +540,25 @@
...
@@ -264,4 +540,25 @@
margin
:
0
10px
10px
0
;
margin
:
0
10px
10px
0
;
}
}
.Hq_addDetail
{
margin-top
:
20px
;
}
.Hq_addDetail
.el-textarea__inner
{
resize
:
none
;
}
.Hq_addTable
.el-button.is-circle
{
padding
:
5px
;
}
.HqCom_bottom
.el-form-item
{
margin-bottom
:
0
}
.HqCom_bottom
{
height
:
350px
;
padding-top
:
35px
;
}
</
style
>
</
style
>
src/components/Hotel/HotelSalesBoard.vue
View file @
7bfb3e5b
...
@@ -224,7 +224,7 @@
...
@@ -224,7 +224,7 @@
<span><em>
{{
$t
(
'admin.admin_company'
)
}}
</em>
<span><em>
{{
$t
(
'admin.admin_company'
)
}}
</em>
<el-select
filterable
v-model=
'msg.OutBranchId'
<el-select
filterable
v-model=
'msg.OutBranchId'
:placeholder=
"$t('pub.unlimitedSel')"
>
:placeholder=
"$t('pub.unlimitedSel')"
>
<el-option
:label=
"$t('pub.unlimitedSel')"
value=
'-1'
></el-option>
<el-option
:label=
"$t('pub.unlimitedSel')"
:
value=
'-1'
></el-option>
<el-option
v-for=
'item in companyList'
:label=
'item.BName'
:value=
'item.Id'
:key=
"item.Id"
>
<el-option
v-for=
'item in companyList'
:label=
'item.BName'
:value=
'item.Id'
:key=
"item.Id"
>
</el-option>
</el-option>
</el-select>
</el-select>
...
@@ -313,7 +313,7 @@
...
@@ -313,7 +313,7 @@
Province
:
0
,
Province
:
0
,
City
:
0
,
City
:
0
,
loading
:
false
,
loading
:
false
,
OutBranchId
:
0
,
OutBranchId
:
-
1
,
},
},
//分公司列表
//分公司列表
companyList
:
[],
companyList
:
[],
...
...
src/components/SalesModule/CustomerCertification.vue
0 → 100644
View file @
7bfb3e5b
<
template
>
<div
class=
"CertificationDetail"
>
<div>
<div
:class=
"
{salesApprovalLayercontentDiv:showlayer,rightZero:isTransition}"
class="ownScrollbarStyle"
@click.stop
>
<div
class=
"title"
>
实名认证详情
</div>
<div
class=
"list"
>
<div
class=
"itemAnswer"
v-show=
"answerDetailList.length>0"
>
<div
class=
"item"
v-for=
"item in answerDetailList"
>
<div
class=
"topMsg"
>
<!--
<img
v-if=
"!item.photo"
src=
"../../assets/img/litheader.png"
>
<img
v-if=
"item.photo"
:onerror=
"defaultImg"
:src=
"item.photo"
>
-->
<p>
{{
item
.
CustomerName
}}
</p>
<p
class=
"mt5"
>
<i
class=
"iconfont icon-img_dianhua fz12"
style=
"color: #09d49d;"
></i>
<span
class=
"fz14 color333"
>
{{
item
.
Customer
}}
</span>
<span
class=
"fz14 color333"
>
{{
item
.
ContactPhone
}}
</span>
</p>
<p
class=
"fz12 color999 mt5"
>
{{
item
.
Addres
}}
</p>
</div>
<p
class=
"fz16 color666"
>
<i
class=
"iconfont icon-ico-renwuyaoqiu fz14 color999"
></i>
认证信息
</p>
<div
class=
"salesApprovalLayercontentBtn"
>
<p
class=
"fz12 color999 mt5"
>
认证方式:
{{
item
.
ApplyType
==
1
?
"三证合一"
:
"身份证+名片"
}}
</p>
<p
class=
"fz12 color999 mt5"
>
申请时间:
{{
item
.
CreateDateStr
}}
</p>
<div
v-if=
"item.CertificationPics&&item.CertificationPics.length>0"
>
<div
v-for=
"picItem in item.CertificationPics"
>
<img
v-if=
"!picItem"
src=
"../../assets/img/litheader.png"
>
<img
v-if=
"picItem"
:onerror=
"defaultImg"
:src=
"picItem"
></div>
</div>
<div>
<span
class=
"fz14 color333"
>
审批意见
</span>
</div>
<p
class=
"mt20"
>
<el-input
type=
"textarea"
v-model=
"Reason"
></el-input>
</p>
<input
type=
"button"
class=
"normalBtn mt20 fr"
value=
"通过"
@
click=
"saveIdea(item,1)"
>
<input
type=
"button"
class=
"normalBtn mt20 fr"
value=
"拒绝"
@
click=
"saveIdea(item,2)"
>
<span
class=
"fr cursorpointer colorE95252"
@
click=
"closeLayer"
>
取消
</span>
</div>
</div>
</div>
</div>
</div>
</div>
<div
class=
"query-box"
style=
"border: none;"
>
<ul>
<!--
<li><span><em>
姓名
</em></span>
<el-input
v-model=
'msg.CustomerName'
></el-input>
</li>
-->
<li>
<span>
<em>
申请时间
</em>
</span>
<el-date-picker
v-model=
"msg.SDate"
@
change=
"dataDui()"
class=
"w135"
value-format=
"yyyy-MM-dd"
type=
"date"
></el-date-picker>
-
<el-date-picker
v-model=
"msg.EDate"
@
change=
"dataDui()"
class=
"w135"
value-format=
"yyyy-MM-dd"
type=
"date"
></el-date-picker>
</li>
<li>
<span>
<em>
状态
</em>
</span>
<el-select
v-model=
"msg.MarkOverType"
>
<el-option
label=
"不限"
value=
"-1"
key=
"-1"
></el-option>
<el-option
label=
"申请中"
value=
"0"
key=
"0"
></el-option>
<el-option
label=
"通过"
value=
"1"
key=
"1"
></el-option>
<el-option
label=
"拒绝"
value=
"2"
key=
"2"
></el-option>
</el-select>
</li>
<li>
<input
type=
"button"
class=
"hollowFixedBtn"
value=
"查询"
@
click=
"resetPageIndex(),getList()"
>
</li>
</ul>
</div>
<table
class=
"publicCustomerTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
"loading"
>
<tr>
<th
width=
"20%"
>
门店名称
</th>
<th
width=
"10%"
>
联系人
</th>
<th
width=
"10%"
>
电话
</th>
<th
width=
"10%"
>
地址
</th>
<th
width=
"10%"
>
申请时间
</th>
<th
width=
"10%"
>
操作
</th>
</tr>
<tr>
<td
colspan=
"6"
align=
"center"
v-show=
"list.length==0"
>
暂无数据
</td>
</tr>
<tr
v-for=
"(item,index) in list"
>
<td>
{{
item
.
CustomerName
}}
</td>
<td>
{{
item
.
Customer
}}
</td>
<td>
{{
item
.
ContactPhone
}}
</td>
<td>
{{
item
.
Addres
}}
</td>
<td>
{{
item
.
CreateDateStr
}}
</td>
<td>
<input
type=
"button"
value=
"查看详情"
class=
"normalBtn"
style=
"margin-left: 0;"
@
click=
"getDetail(item)"
>
</td>
</tr>
</table>
<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>
</
template
>
<
script
>
export
default
{
data
()
{
return
{
layerShow
:
false
,
msg
:
{
pageIndex
:
1
,
pageSize
:
10
,
SDate
:
""
,
EDate
:
""
,
ApplyState
:
"-1"
},
Reason
:
""
,
showlayer
:
false
,
loading
:
false
,
isTransition
:
false
,
currentPage
:
1
,
total
:
0
,
answerDetailList
:
[],
list
:
[]
};
},
methods
:
{
// 结束日期不能大于开始日期
dataDui
()
{
if
(
this
.
msg
.
SDate
>
this
.
msg
.
EDate
&&
this
.
msg
.
EDate
!==
""
)
{
this
.
$message
.
error
(
"结束日期不能大于开始日期"
);
this
.
msg
.
EDate
=
""
;
}
},
closeLayer
()
{
let
_this
=
this
;
setTimeout
(
function
()
{
_this
.
showlayer
=
false
;
},
300
);
this
.
isTransition
=
false
;
this
.
Reason
=
""
;
},
saveIdea
(
obj
,
applyState
)
{
console
.
log
(
obj
,
"sdsdsd"
);
obj
.
applyState
=
applyState
;
obj
.
Reason
=
this
.
Reason
;
this
.
apipost
(
"app_customer_UpdateCertification"
,
obj
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
getList
();
this
.
closeLayer
();
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
getList
()
{
this
.
loading
=
true
;
this
.
apipost
(
"app_customer_GetCertificationPageList"
,
this
.
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
loading
=
false
;
this
.
list
=
res
.
data
.
data
.
pageData
;
this
.
total
=
res
.
data
.
data
.
count
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
this
.
loading
=
false
;
}
},
err
=>
{}
);
},
closeLayer
()
{
let
_this
=
this
;
setTimeout
(
function
()
{
_this
.
showlayer
=
false
;
},
300
);
this
.
isTransition
=
false
;
this
.
Reason
=
''
},
getDetail
(
obj
)
{
this
.
showlayer
=
true
;
this
.
isTransition
=
true
;
this
.
apipost
(
"app_customer_GetCertificationModel"
,
{
ID
:
obj
.
ID
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
answerDetailList
=
res
.
data
.
data
;
this
.
Reason
=
this
.
answerDetailList
[
0
].
Reason
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
handleCurrentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
},
resetPageIndex
()
{
this
.
msg
.
pageIndex
=
1
;
this
.
currentPage
=
1
;
}
},
mounted
()
{
this
.
getList
();
}
};
</
script
>
<
style
>
.CertificationDetail
{
overflow-x
:
hidden
;
}
.CertificationDetail
.title
{
width
:
420px
;
height
:
48px
;
line-height
:
48px
;
text-indent
:
20px
;
font-size
:
16px
;
color
:
#333
;
}
.CertificationDetail
.list
.item
{
width
:
380px
;
height
:
auto
;
overflow
:
hidden
;
border
:
1px
solid
#e6e6e6
;
margin
:
20px
0
20px
20px
;
padding
:
20px
;
}
.CertificationDetail
.list
.item
.topMsg
{
overflow
:
hidden
;
padding-bottom
:
20px
;
border-bottom
:
1px
solid
#e6e6e6
;
}
.CertificationDetail
.list
.item
.topMsg
>
img
{
float
:
left
;
margin-right
:
13px
;
}
.CertificationDetail
.list
.item
.topMsg
.newGuest
{
width
:
50px
;
height
:
18px
;
text-align
:
center
;
font-size
:
14px
;
color
:
#257bf1
;
background
:
#dae4ff
;
}
.CertificationDetail
.list
.item
.bottomMsg
{
padding
:
15px
0
;
}
.CertificationDetail
.list
.itemAnswer
{
width
:
380px
;
height
:
auto
;
margin
:
20px
0
20px
20px
;
padding
:
20px
;
background
:
#ebf0ff
;
}
.CertificationDetail
.list
.itemAnswer
.answerItem
{
border-bottom
:
1px
solid
#bcc0cc
;
overflow
:
hidden
;
padding
:
15px
0
;
}
.CertificationDetail
.list
.itemAnswer
.answerItem
>
img
{
float
:
left
;
width
:
24px
;
height
:
24px
;
border-radius
:
12px
;
margin-right
:
10px
;
}
.publicCustomerTable
{
width
:
100%
;
font-size
:
14px
;
color
:
#333
;
border
:
1px
solid
#dcdcdc
;
box-sizing
:
border-box
;
border-bottom
:
none
;
border-right
:
none
;
}
.publicCustomerTable
tr
th
{
background
:
#dcdcdc
;
height
:
30px
;
font-size
:
12px
;
text-align
:
left
;
text-indent
:
25px
;
}
.publicCustomerTable
tr
{
text-align
:
left
;
}
.publicCustomerTable
tr
:nth-child
(
2n
)
{
background
:
#f2f2f2
;
}
.publicCustomerTable
tr
:nth-child
(
2n
+
1
)
{
background
:
#ffffff
;
}
.publicCustomerTable
tr
:hover
{
background
:
#d0d2d9
;
}
.publicCustomerTable
tr
td
{
height
:
40px
;
padding-left
:
25px
;
border-bottom
:
1px
solid
#dcdcdc
;
font-size
:
14px
;
color
:
#333
;
border-right
:
1px
solid
#dcdcdc
;
}
.pd20
{
padding
:
12px
20px
!important
;
}
.el-popper
[
x-placement
^=
"bottom"
]
{
margin-top
:
0px
!important
;
}
.el-popper
[
x-placement
^=
"top"
]
{
margin-bottom
:
0px
!important
;
}
.CertificationDetail
.ownScrollbarStyle
{
width
:
0px
;
position
:
absolute
;
right
:
0
;
background-color
:
white
;
transition
:
all
linear
0.5s
;
height
:
100%
;
overflow
:
hidden
;
}
.salesApprovalLayercontentDiv
{
width
:
450px
!important
;
}
</
style
>
\ No newline at end of file
src/components/SalesModule/MyCustomer.vue
View file @
7bfb3e5b
...
@@ -65,7 +65,9 @@
...
@@ -65,7 +65,9 @@
.page_MyCustomerSearch
li
>
span
{
display
:
inline-block
;
}
.page_MyCustomerSearch
li
>
span
{
display
:
inline-block
;
}
.page_MyCustomerSearch
li
span
>
em
{
display
:
inline-block
;
min-width
:
60px
;
text-align
:
right
;
font-style
:
normal
;
margin
:
0
12px
0
0
;}
.page_MyCustomerSearch
li
span
>
em
{
display
:
inline-block
;
min-width
:
60px
;
text-align
:
right
;
font-style
:
normal
;
margin
:
0
12px
0
0
;}
.page_MyCustomerSearch
li
:last-child
{
float
:
right
;}
.page_MyCustomerSearch
li
:last-child
{
float
:
right
;}
.page_MyCustomerSearch
._class_b
{
color
:
#257BF1
!important
}
</
style
>
</
style
>
<
template
>
<
template
>
<div
class=
"page_MyCustomer"
>
<div
class=
"page_MyCustomer"
>
...
@@ -106,7 +108,7 @@
...
@@ -106,7 +108,7 @@
<img
v-if=
'item.icon'
:onerror=
"defaultImg"
:src=
'item.icon'
/>
<img
v-if=
'item.icon'
:onerror=
"defaultImg"
:src=
'item.icon'
/>
<p>
{{
item
.
contact
}}
</p>
<p>
{{
item
.
contact
}}
</p>
<p><i
class=
"iconfont icon-img_dianhua"
></i>
{{
item
.
contactNumber
}}
</p>
<p><i
class=
"iconfont icon-img_dianhua"
></i>
{{
item
.
contactNumber
}}
</p>
<p
class=
"_addr"
>
{{
item
.
customerName
}}
</p>
<p
class=
"_addr"
>
{{
item
.
customerName
}}
<i
class=
"iconfont icon-shimingrenzheng"
:class=
"
{'_class_b': item.RealNameAuthentication===1}">
</i>
</p>
</div>
</div>
<div
class=
"_record"
v-if=
"item.customerAccountId!=0"
>
<div
class=
"_record"
v-if=
"item.customerAccountId!=0"
>
<p
class=
"_fist_n"
v-if=
"item.customerVisitList.length>0"
>
近期约访:
{{
item
.
customerVisitList
[
0
].
visitDateTime
}}
</p>
<p
class=
"_fist_n"
v-if=
"item.customerVisitList.length>0"
>
近期约访:
{{
item
.
customerVisitList
[
0
].
visitDateTime
}}
</p>
...
...
src/components/SalesModule/customerApproval.vue
View file @
7bfb3e5b
...
@@ -27,7 +27,9 @@
...
@@ -27,7 +27,9 @@
.customerApprovalLayercontentBtn
>
span
.cked
{
border
:
2px
solid
#E95252
;
box-sizing
:
border-box
;}
.customerApprovalLayercontentBtn
>
span
.cked
{
border
:
2px
solid
#E95252
;
box-sizing
:
border-box
;}
.customerApprovalLayercontentBtn
>
span
>
img
{
float
:
left
;
margin
:
10px
23px
;
width
:
63px
;
height
:
63px
;}
.customerApprovalLayercontentBtn
>
span
>
img
{
float
:
left
;
margin
:
10px
23px
;
width
:
63px
;
height
:
63px
;}
.customerApproval
.lastVisitContent
{
background
:
#f5f5f5
;
font-size
:
12px
;
padding
:
5px
12px
;
margin-top
:
8px
;}
.customerApproval
.lastVisitContent
{
background
:
#f5f5f5
;
font-size
:
12px
;
padding
:
5px
12px
;
margin-top
:
8px
;}
.customerApproval
._class_b
{
color
:
#257BF1
!important
}
</
style
>
</
style
>
<
template
>
<
template
>
...
@@ -197,7 +199,7 @@
...
@@ -197,7 +199,7 @@
<th
width=
"15%"
>
操作
</th>
<th
width=
"15%"
>
操作
</th>
</tr>
</tr>
<tr
v-for=
"item in list"
>
<tr
v-for=
"item in list"
>
<td
class=
"fz16"
>
{{
item
.
customerName
}}
</td>
<td
class=
"fz16"
>
{{
item
.
customerName
}}
<
i
class=
"iconfont icon-shimingrenzheng"
:class=
"
{'_class_b': item.RealNameAuthentication===1}">
</i><
/td>
<td>
<td>
{{
item
.
contact
}}
{{
item
.
contact
}}
</td>
</td>
...
...
src/components/SalesModule/customerTransfer.vue
View file @
7bfb3e5b
...
@@ -115,7 +115,7 @@
...
@@ -115,7 +115,7 @@
@
change=
"ckeckedOne"
@
change=
"ckeckedOne"
style=
"vertical-align: middle;"
style=
"vertical-align: middle;"
>
>
{{
item
.
CustomerName
}}
{{
item
.
CustomerName
}}
<i
class=
"iconfont icon-shimingrenzheng"
:class=
"
{'_class_b': item.RealNameAuthentication===1}">
</i>
</label>
</label>
</td>
</td>
<td>
{{
item
.
Contact
}}
</td>
<td>
{{
item
.
Contact
}}
</td>
...
@@ -1045,6 +1045,9 @@ export default {
...
@@ -1045,6 +1045,9 @@ export default {
box-sizing
:
border-box
;
box-sizing
:
border-box
;
border-bottom
:
none
;
border-bottom
:
none
;
border-right
:
none
;
border-right
:
none
;
}
.customerTransferTable
._class_b
{
color
:
#257BF1
!important
}
}
.customerTransferTable
tr
th
{
.customerTransferTable
tr
th
{
background
:
#dcdcdc
;
background
:
#dcdcdc
;
...
...
src/components/SalesModule/publicCustomer.vue
View file @
7bfb3e5b
...
@@ -54,13 +54,13 @@
...
@@ -54,13 +54,13 @@
<th
width=
"20%"
>
<th
width=
"20%"
>
<label><input
type=
"checkbox"
v-model=
"isCkedAll"
@
click=
'checkedAll()'
style=
"vertical-align: middle;"
/>
门店名称
</label>
<label><input
type=
"checkbox"
v-model=
"isCkedAll"
@
click=
'checkedAll()'
style=
"vertical-align: middle;"
/>
门店名称
</label>
</th>
</th>
<th
width=
"1
0
%"
>
联系电话
</th>
<th
width=
"1
7
%"
>
联系电话
</th>
<th
width=
"20%"
>
地址
</th>
<th
width=
"20%"
>
地址
</th>
<th
width=
"10%"
>
来源
</th>
<th
width=
"10%"
>
来源
</th>
<th
width=
"
10
%"
>
拜访次数
</th>
<th
width=
"
8
%"
>
拜访次数
</th>
<th
width=
"10%"
>
交易金额
</th>
<th
width=
"10%"
>
交易金额
</th>
<th
width=
"10%"
>
创建人
</th>
<th
width=
"10%"
>
创建人
</th>
<th
width=
"
10
%"
>
操作
</th>
<th
width=
"
5
%"
>
操作
</th>
</tr>
</tr>
<tr>
<tr>
<td
colspan=
"8"
align=
"center"
v-show=
'list.length==0'
>
<td
colspan=
"8"
align=
"center"
v-show=
'list.length==0'
>
...
@@ -69,7 +69,7 @@
...
@@ -69,7 +69,7 @@
</tr>
</tr>
<tr
v-for=
'(item,index) in list'
>
<tr
v-for=
'(item,index) in list'
>
<td>
<td>
<label><input
type=
"checkbox"
:value=
"item.CustomerId"
v-model=
"customerList"
@
change=
"ckeckedOne"
style=
"vertical-align: middle;"
/>
{{
item
.
CustomerName
}}
</label>
<label><input
type=
"checkbox"
:value=
"item.CustomerId"
v-model=
"customerList"
@
change=
"ckeckedOne"
style=
"vertical-align: middle;"
/>
{{
item
.
CustomerName
}}
<
i
class=
"iconfont icon-shimingrenzheng"
:class=
"
{'_class_b': item.RealNameAuthentication===1}">
</i><
/label>
</td>
</td>
<td><i
class=
"iconfont icon-img_dianhua fz14"
style=
"color:#09D49D;margin-right: 5px;"
></i>
{{
item
.
ContactNumber
}}
</td>
<td><i
class=
"iconfont icon-img_dianhua fz14"
style=
"color:#09D49D;margin-right: 5px;"
></i>
{{
item
.
ContactNumber
}}
</td>
<td>
{{
item
.
Address
}}
</td>
<td>
{{
item
.
Address
}}
</td>
...
@@ -249,4 +249,7 @@
...
@@ -249,4 +249,7 @@
.pd20
{
padding
:
12px
20px
!important
;
}
.pd20
{
padding
:
12px
20px
!important
;
}
.el-popper
[
x-placement
^=
bottom
]
{
margin-top
:
0px
!important
;}
.el-popper
[
x-placement
^=
bottom
]
{
margin-top
:
0px
!important
;}
.el-popper
[
x-placement
^=
top
]
{
margin-bottom
:
0px
!important
;}
.el-popper
[
x-placement
^=
top
]
{
margin-bottom
:
0px
!important
;}
.publicCustomerTable
._class_b
{
color
:
#257BF1
!important
}
</
style
>
</
style
>
\ No newline at end of file
src/components/busManagement/BusInfo.vue
View file @
7bfb3e5b
...
@@ -124,7 +124,9 @@
...
@@ -124,7 +124,9 @@
.carPlanOne
.w320
{
.carPlanOne
.w320
{
margin
:
5px
0
;
margin
:
5px
0
;
}
}
.busInfo
.w200
{
padding
:
10px
0
;
}
</
style
>
</
style
>
<
template
>
<
template
>
<div
class=
"flexOne busInfo"
>
<div
class=
"flexOne busInfo"
>
...
@@ -274,7 +276,7 @@
...
@@ -274,7 +276,7 @@
<span
class=
"subName"
:class=
"
{'spanCked':item.AccommodationType==subItem.Id}"
<span
class=
"subName"
:class=
"
{'spanCked':item.AccommodationType==subItem.Id}"
@click="AccommodationCLick(subItem.Id,index)">
{{
subItem
.
Name
}}
</span>
@click="AccommodationCLick(subItem.Id,index)">
{{
subItem
.
Name
}}
</span>
<span
v-if=
"subItem.Id==1 && item.AccommodationType==1"
>
<span
v-if=
"subItem.Id==1 && item.AccommodationType==1"
>
<el-input
class=
"w135"
v-model=
"item.AccommodationRemark"
placeholder=
"请输入外宿地址"
></el-input>
<el-input
class=
"w135"
style=
"margin-top:13px;"
v-model=
"item.AccommodationRemark"
placeholder=
"请输入外宿地址"
></el-input>
</span>
</span>
</span>
</span>
</div>
</div>
...
...
src/components/newTravelmanager/TravelGroupControl/TravelManager2.vue
View file @
7bfb3e5b
...
@@ -370,9 +370,7 @@
...
@@ -370,9 +370,7 @@
if
(
SaveType
==
3
)
{
if
(
SaveType
==
3
)
{
basicData
.
TravelInfoIsCopy
=
true
;
basicData
.
TravelInfoIsCopy
=
true
;
}
}
basicData
.
TeamType
=
this
.
TeamType
;
basicData
.
TeamType
=
this
.
TeamType
;
console
.
log
(
"basicData"
,
basicData
);
this
.
apipost
(
this
.
apipost
(
"travel_post_SetTravelConfigInfo"
,
"travel_post_SetTravelConfigInfo"
,
basicData
,
basicData
,
...
@@ -599,7 +597,6 @@
...
@@ -599,7 +597,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 @
7bfb3e5b
...
@@ -1466,6 +1466,7 @@
...
@@ -1466,6 +1466,7 @@
this
.
priceData
.
IsNew
=
true
;
this
.
priceData
.
IsNew
=
true
;
}
}
}
}
},
},
//保存酒店使用情况
//保存酒店使用情况
saveHoteluseDetail
()
{
saveHoteluseDetail
()
{
...
...
src/router/config.js
View file @
7bfb3e5b
This source diff could not be displayed because it is too large. You can
view the blob
instead.
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