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
027f7de4
Commit
027f7de4
authored
Mar 13, 2019
by
zhengke
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/superman
parents
b890b1f9
143862e6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
1400 additions
and
1241 deletions
+1400
-1241
TeamRevenueReport.vue
...mponents/FinancialModule/ReportForm/TeamRevenueReport.vue
+1
-1
HotelProductManage2.vue
src/components/Hotel/HotelProductManage2.vue
+1329
-1105
TravelControlList.vue
...components/TravelManager/TravelList/TravelControlList.vue
+3
-1
TravelFeature.vue
...nts/newTravelmanager/TravelGroupControl/TravelFeature.vue
+40
-88
TravelManager2.vue
...ts/newTravelmanager/TravelGroupControl/TravelManager2.vue
+22
-46
TravelPrice.vue
...nents/newTravelmanager/TravelGroupControl/TravelPrice.vue
+5
-0
No files found.
src/components/FinancialModule/ReportForm/TeamRevenueReport.vue
View file @
027f7de4
...
...
@@ -701,7 +701,7 @@ export default {
endDate
:
""
,
Type
:
1
,
QueryCondition
:
"-1"
,
DataType
:
"
-
1"
DataType
:
"1"
},
getCompanyMsg
:
{
// 公司
...
...
src/components/Hotel/HotelProductManage2.vue
View file @
027f7de4
...
...
@@ -42,7 +42,8 @@
</div>
<div
class=
"calendarItem_day"
>
<div
v-for=
"(item2, index2) in item.days"
:key=
"index2"
:class=
"item2.month===item.date?'nowMonth':'otherMonth'"
>
<div
:class=
"stockColor(item, item2)"
:style=
"item2.month===item.date&&msg2.DateList.indexOf(item2.day)!==-1?'border-color: green':''"
@
click=
"calendarDayOn(item, item2)"
>
{{
item2
.
date
.
getDate
()
}}
</div>
<div
:class=
"stockColor(item, item2)"
:style=
"item2.month===item.date&&msg2.DateList.indexOf(item2.day)!==-1?'border-color: green':''"
@
click=
"calendarDayOn(item, item2)"
>
{{
item2
.
date
.
getDate
()
}}
</div>
</div>
</div>
</div>
...
...
@@ -55,11 +56,9 @@
<div
class=
"hotelProductManage2_edit2_header"
>
<div>
报价管理
</div>
<div>
<input
type=
"button"
value=
"批量删除"
@
click=
"delete2Reset()"
class=
"hollowbtn"
/>
<input
type=
"button"
value=
"重置"
@
click=
"edit2Reset()"
class=
"hollowFixedBtn"
/>
<input
type=
"button"
value=
"保存"
@
click=
"edit2Save()"
class=
"normalBtn"
/>
<!--
<div
@
click=
"edit2Reset()"
>
重置
</div>
<div
@
click=
"edit2Save()"
>
保存
</div>
-->
<input
type=
"button"
value=
"批量删除"
@
click=
"delete2Reset()"
class=
"hollowbtn"
/>
<input
type=
"button"
value=
"重置"
@
click=
"edit2Reset()"
class=
"hollowFixedBtn"
/>
<input
type=
"button"
value=
"保存"
@
click=
"edit2Save()"
class=
"normalBtn"
/>
</div>
</div>
<el-form
:model=
"msg2"
:rules=
"rules2"
:inline=
"true"
label-width=
"130px"
ref=
"hotelProductForm2"
class=
"hotelProductManage2_edit2_form"
>
...
...
@@ -81,7 +80,8 @@
</el-col>
<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-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>
...
...
@@ -91,6 +91,11 @@
<el-input-number
v-model=
"msg2.CostPrice"
:precision=
"2"
:min=
"0"
></el-input-number>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"散客价"
>
<el-input-number
v-model=
"msg2.SanKePrice"
:precision=
"2"
:min=
"0"
></el-input-number>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"大床间成本价"
prop=
"BidroomPrice"
>
<el-input-number
v-model=
"msg2.BidroomPrice"
:precision=
"2"
:min=
"0"
></el-input-number>
...
...
@@ -256,7 +261,8 @@
</div>
<div
v-show=
"msg.DayType==='4'"
>
<el-form-item
label=
"自定义"
prop=
"StartDate"
>
<el-date-picker
v-model=
"msg.StartDate"
type=
"date"
placeholder=
"选择开始时间"
format=
"yyyy-MM-dd"
value-format=
"yyyy-MM-dd"
></el-date-picker>
<el-date-picker
v-model=
"msg.StartDate"
type=
"date"
placeholder=
"选择开始时间"
format=
"yyyy-MM-dd"
value-format=
"yyyy-MM-dd"
></el-date-picker>
</el-form-item>
<em>
-
</em>
<el-form-item
label=
""
prop=
"EndDate"
>
...
...
@@ -271,6 +277,11 @@
<el-input-number
v-model=
"msg.CostPrice"
:precision=
"2"
:min=
"0"
></el-input-number>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"散客价"
>
<el-input-number
v-model=
"msg.SanKePrice"
:precision=
"2"
:min=
"0"
></el-input-number>
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<el-form-item
label=
"大床间成本价"
prop=
"BidroomPrice"
>
<el-input-number
v-model=
"msg.BidroomPrice"
:precision=
"2"
:min=
"0"
></el-input-number>
...
...
@@ -365,7 +376,7 @@
components
:
{
HotelProductCalendar
},
data
()
{
data
()
{
var
emptyJudge
=
(
rule
,
value
,
callback
)
=>
{
let
regPos
=
/^
\d
+
(\.\d
+
)?
$/
;
if
(
!
regPos
.
test
(
value
))
{
...
...
@@ -468,7 +479,8 @@
Year
:
''
,
Month
:
''
,
Week
:
''
,
DateList
:
[]
DateList
:
[],
SanKePrice
:
0
,
//散客价
},
msg2
:
{
Hotel
:
'0'
,
...
...
@@ -495,48 +507,197 @@
Year
:
''
,
Month
:
''
,
Week
:
''
,
DateList
:
[]
DateList
:
[],
SanKePrice
:
0
,
//散客价
},
rules
:
{
InventoryType
:
{
validator
:
emptyJudge
,
message
:
'请选择库存类型'
,
trigger
:
'blur'
},
DayType
:
{
validator
:
emptyJudge
,
message
:
'请选择日期选择方式'
,
trigger
:
'blur'
},
Year
:
{
validator
:
dateJudge
,
message
:
'请选择年'
,
trigger
:
'blur'
},
Month
:
{
validator
:
dateJudge
,
message
:
'请选择月'
,
trigger
:
'blur'
},
Week
:
{
validator
:
dateJudge
,
message
:
'请选择周'
,
trigger
:
'blur'
},
StartDate
:
{
validator
:
dateJudge
,
message
:
'请选择开始时间'
,
trigger
:
'blur'
},
EndDate
:
{
validator
:
dateJudge
,
message
:
'请选择结束时间'
,
trigger
:
'blur'
},
Inventory
:
{
validator
:
emptyJudge
,
message
:
'请输入库存'
,
trigger
:
'blur'
},
CostPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入标准间成本价'
,
trigger
:
'blur'
},
BidroomPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入大床间成本价:'
,
trigger
:
'blur'
},
SingleroomPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入单人间成本价'
,
trigger
:
'blur'
},
ChildNotBedPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入小孩不占床成本价'
,
trigger
:
'blur'
},
AddBedPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入加床成本价'
,
trigger
:
'blur'
},
DriverRoomPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入司机房成本价'
,
trigger
:
'blur'
},
GuideRoomPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入导游房成本价'
,
trigger
:
'blur'
},
CurrencyId
:
{
validator
:
emptyJudge
,
message
:
'请选择成本币种'
,
trigger
:
'blur'
},
CurrentRate
:
{
validator
:
emptyJudge
,
message
:
'请输入汇率'
,
trigger
:
'blur'
},
WeekendAddPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入周末加价'
,
trigger
:
'blur'
},
InteriorAddPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入内部加价'
,
trigger
:
'blur'
},
B2BPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入B2B加价'
,
trigger
:
'blur'
},
B2CPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入B2C加价'
,
trigger
:
'blur'
},
InventoryType
:
{
validator
:
emptyJudge
,
message
:
'请选择库存类型'
,
trigger
:
'blur'
},
DayType
:
{
validator
:
emptyJudge
,
message
:
'请选择日期选择方式'
,
trigger
:
'blur'
},
Year
:
{
validator
:
dateJudge
,
message
:
'请选择年'
,
trigger
:
'blur'
},
Month
:
{
validator
:
dateJudge
,
message
:
'请选择月'
,
trigger
:
'blur'
},
Week
:
{
validator
:
dateJudge
,
message
:
'请选择周'
,
trigger
:
'blur'
},
StartDate
:
{
validator
:
dateJudge
,
message
:
'请选择开始时间'
,
trigger
:
'blur'
},
EndDate
:
{
validator
:
dateJudge
,
message
:
'请选择结束时间'
,
trigger
:
'blur'
},
Inventory
:
{
validator
:
emptyJudge
,
message
:
'请输入库存'
,
trigger
:
'blur'
},
CostPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入标准间成本价'
,
trigger
:
'blur'
},
BidroomPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入大床间成本价:'
,
trigger
:
'blur'
},
SingleroomPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入单人间成本价'
,
trigger
:
'blur'
},
ChildNotBedPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入小孩不占床成本价'
,
trigger
:
'blur'
},
AddBedPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入加床成本价'
,
trigger
:
'blur'
},
DriverRoomPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入司机房成本价'
,
trigger
:
'blur'
},
GuideRoomPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入导游房成本价'
,
trigger
:
'blur'
},
CurrencyId
:
{
validator
:
emptyJudge
,
message
:
'请选择成本币种'
,
trigger
:
'blur'
},
CurrentRate
:
{
validator
:
emptyJudge
,
message
:
'请输入汇率'
,
trigger
:
'blur'
},
WeekendAddPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入周末加价'
,
trigger
:
'blur'
},
InteriorAddPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入内部加价'
,
trigger
:
'blur'
},
B2BPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入B2B加价'
,
trigger
:
'blur'
},
B2CPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入B2C加价'
,
trigger
:
'blur'
},
},
rules2
:
{
InventoryType
:
{
validator
:
emptyJudge
,
message
:
'请选择库存类型'
,
trigger
:
'blur'
},
DateList
:
{
validator
:
arrJudge
,
message
:
'请选择日期'
,
trigger
:
'blur'
},
Inventory
:
{
validator
:
emptyJudge
,
message
:
'请输入库存'
,
trigger
:
'blur'
},
CostPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入标准间成本价'
,
trigger
:
'blur'
},
BidroomPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入大床间成本价:'
,
trigger
:
'blur'
},
SingleroomPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入单人间成本价'
,
trigger
:
'blur'
},
ChildNotBedPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入小孩不占床成本价'
,
trigger
:
'blur'
},
AddBedPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入加床成本价'
,
trigger
:
'blur'
},
DriverRoomPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入司机房成本价'
,
trigger
:
'blur'
},
GuideRoomPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入导游房成本价'
,
trigger
:
'blur'
},
CurrencyId
:
{
validator
:
emptyJudge
,
message
:
'请选择成本币种'
,
trigger
:
'blur'
},
CurrentRate
:
{
validator
:
emptyJudge
,
message
:
'请输入汇率'
,
trigger
:
'blur'
},
WeekendAddPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入周末加价'
,
trigger
:
'blur'
},
InteriorAddPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入内部加价'
,
trigger
:
'blur'
},
B2BPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入B2B加价'
,
trigger
:
'blur'
},
B2CPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入B2C加价'
,
trigger
:
'blur'
},
InventoryType
:
{
validator
:
emptyJudge
,
message
:
'请选择库存类型'
,
trigger
:
'blur'
},
DateList
:
{
validator
:
arrJudge
,
message
:
'请选择日期'
,
trigger
:
'blur'
},
Inventory
:
{
validator
:
emptyJudge
,
message
:
'请输入库存'
,
trigger
:
'blur'
},
CostPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入标准间成本价'
,
trigger
:
'blur'
},
BidroomPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入大床间成本价:'
,
trigger
:
'blur'
},
SingleroomPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入单人间成本价'
,
trigger
:
'blur'
},
ChildNotBedPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入小孩不占床成本价'
,
trigger
:
'blur'
},
AddBedPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入加床成本价'
,
trigger
:
'blur'
},
DriverRoomPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入司机房成本价'
,
trigger
:
'blur'
},
GuideRoomPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入导游房成本价'
,
trigger
:
'blur'
},
CurrencyId
:
{
validator
:
emptyJudge
,
message
:
'请选择成本币种'
,
trigger
:
'blur'
},
CurrentRate
:
{
validator
:
emptyJudge
,
message
:
'请输入汇率'
,
trigger
:
'blur'
},
WeekendAddPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入周末加价'
,
trigger
:
'blur'
},
InteriorAddPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入内部加价'
,
trigger
:
'blur'
},
B2BPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入B2B加价'
,
trigger
:
'blur'
},
B2CPrice
:
{
validator
:
emptyJudge
,
message
:
'请输入B2C加价'
,
trigger
:
'blur'
},
},
allCurrencyList
:
[],
SupplierList
:
[]
...
...
@@ -575,11 +736,11 @@
this
.
msg2
.
DateList
.
splice
(
dayIndex
,
1
)
},
getData
:
function
(
date
,
key
)
{
this
.
apipost
(
'hotelreport_get_GetHotelPriceMonthStatistics'
,
{
this
.
apipost
(
'hotelreport_get_GetHotelPriceMonthStatistics'
,
{
HotelId
:
this
.
hotelId
,
Year
:
date
.
split
(
'-'
)[
0
],
Month
:
date
.
split
(
'-'
)[
1
]
},
res
=>
{
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
let
json
=
res
.
data
.
data
this
.
hotelInfo
.
HotelName
=
json
.
HotelName
...
...
@@ -636,7 +797,15 @@
this
.
calendar
.
show
=
true
},
goUrlA
:
function
()
{
this
.
$router
.
push
({
name
:
'HotelProductEdit'
,
query
:
{
type
:
'1'
,
HotelId
:
this
.
hotelId
,
blank
:
'y'
,
tab
:
'报价管理'
}
});
this
.
$router
.
push
({
name
:
'HotelProductEdit'
,
query
:
{
type
:
'1'
,
HotelId
:
this
.
hotelId
,
blank
:
'y'
,
tab
:
'报价管理'
}
});
},
// 获取详情
getDetail
:
function
(
date
)
{
...
...
@@ -645,8 +814,8 @@
Time
:
date
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
let
data
=
res
.
data
.
data
this
.
msg
.
Supplier
=
data
.
Supplier
===
0
?
'0'
:
data
.
Supplier
let
data
=
res
.
data
.
data
;
this
.
msg
.
Supplier
=
data
.
Supplier
===
0
?
'0'
:
data
.
Supplier
this
.
msg
.
Inventory
=
data
.
Inventory
this
.
msg
.
B2BPrice
=
data
.
B2BPrice
this
.
msg
.
B2CPrice
=
data
.
B2CPrice
...
...
@@ -664,7 +833,8 @@
this
.
msg
.
DriverRoomPrice
=
data
.
DriverRoomPrice
this
.
msg
.
WeekendAddPrice
=
data
.
WeekendAddPrice
this
.
msg
.
InteriorAddPrice
=
data
.
InteriorAddPrice
this
.
msg
.
GuideRoomPrice
=
data
.
GuideRoomPrice
this
.
msg
.
GuideRoomPrice
=
data
.
GuideRoomPrice
;
this
.
msg
.
SanKePrice
=
data
.
SanKePrice
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
...
...
@@ -680,13 +850,13 @@
},
//获取所有币种
getAllCurrency
()
{
this
.
apipost
(
"financeinfo_post_GetList"
,{},
res
=>
{
this
.
apipost
(
"financeinfo_post_GetList"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
allCurrencyList
=
res
.
data
.
data
;
}
else
{
this
.
$message
.
error
(
'币种获取失败'
)
}
},
err
=>
{});
},
err
=>
{});
},
// 币种切换
currencyChange
:
function
(
val
)
{
...
...
@@ -708,19 +878,21 @@
},
// 获取供应商
initSupplier
()
{
this
.
apipost
(
"supplier_post_GetAllList"
,{
Type
:
1
},
res
=>
{
this
.
apipost
(
"supplier_post_GetAllList"
,
{
Type
:
1
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
SupplierList
=
res
.
data
.
data
;
}
else
{
this
.
$message
.
error
(
'供应商获取失败'
)
}
},
err
=>
{});
},
err
=>
{});
},
// 打开编辑窗口
goEdit
:
function
(
type
,
date
)
{
let
nowDate
=
new
Date
().
Format
(
'yyyy-MM-dd'
)
this
.
msg
.
StartDate
=
date
===
undefined
?
nowDate
:
date
this
.
msg
.
EndDate
=
date
===
undefined
?
nowDate
:
date
this
.
msg
.
StartDate
=
date
===
undefined
?
nowDate
:
date
this
.
msg
.
EndDate
=
date
===
undefined
?
nowDate
:
date
if
(
type
===
'2'
&&
date
)
{
this
.
getDetail
(
date
)
}
...
...
@@ -755,21 +927,21 @@
this
.
$refs
[
'hotelProductForm2'
].
resetFields
()
},
//批量删除
delete2Reset
:
function
()
{
delete2Reset
:
function
()
{
this
.
$confirm
(
'是否删除?'
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
}).
then
(()
=>
{
this
.
apipost
(
'dict_post_HotelOffer_RemoveNewHotelPrice'
,
this
.
msg2
,
res
=>
{
this
.
apipost
(
'dict_post_HotelOffer_RemoveNewHotelPrice'
,
this
.
msg2
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
)
this
.
getMonths
()
this
.
$refs
[
'hotelProductForm2'
].
resetFields
()
}
else
{
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
},
err
=>
{})
}).
catch
(()
=>
{
this
.
$message
({
type
:
'info'
,
...
...
@@ -797,9 +969,9 @@
},
},
created
:
function
()
{
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
.
msg2
.
Hotel
=
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
.
msg2
.
Hotel
=
this
.
$route
.
query
.
id
===
undefined
?
'0'
:
this
.
$route
.
query
.
id
this
.
condition
.
month
=
new
Date
().
Format
(
'yyyy-MM'
)
let
nowDate
=
new
Date
().
Format
(
'yyyy-MM-dd'
)
this
.
msg
.
DayType
=
'4'
...
...
@@ -812,20 +984,23 @@
this
.
initSupplier
()
}
}
</
script
>
<
style
>
.hotelProductManage2
{
.hotelProductManage2
{
padding
:
20px
0
;
}
.hotelProductManage2
>
.hotelProductManage2_btnList
{
.hotelProductManage2
>
.hotelProductManage2_btnList
{
position
:
fixed
;
top
:
36px
;
right
:
20px
;
text-align
:
right
;
margin
:
20px
0
0
0
;
}
.hotelProductManage2_btnList
>
.btn_check
{
.hotelProductManage2_btnList
>
.btn_check
{
display
:
inline-block
;
margin
:
0
0
0
10px
;
padding
:
0
15px
;
...
...
@@ -838,31 +1013,38 @@
border-radius
:
15px
;
cursor
:
pointer
;
}
.hotelProductManage2_condition
{
.hotelProductManage2_condition
{
padding
:
0
0
0
0
;
text-align
:
right
;
}
.hotelProductManage2_condition
>
div
{
.hotelProductManage2_condition
>
div
{
display
:
inline-block
;
text-align
:
left
;
}
.hotelProductManage2_condition
>
div
>
em
{
.hotelProductManage2_condition
>
div
>
em
{
margin
:
0
5px
0
0
;
font-size
:
14px
;
color
:
#666666
;
}
.hotelProductManage2_tableBox
{
.hotelProductManage2_tableBox
{
padding
:
20px
0
;
}
.hotelProductManage2_table
{
width
:
100%
;
color
:
#333
;
border-bottom
:
1px
solid
#cccccc
;
border-right
:
1px
solid
#cccccc
;
}
.hotelProductManage2_table
tr
{
background
:
#fff
;
}
.hotelProductManage2_table
tr
th
{
background
:
#e6e6e6
;
height
:
40px
;
...
...
@@ -871,6 +1053,7 @@
border-top
:
1px
solid
#cccccc
;
border-left
:
1px
solid
#cccccc
;
}
.hotelProductManage2_table
tr
td
{
height
:
40px
;
font-size
:
12px
;
...
...
@@ -878,14 +1061,16 @@
border-top
:
1px
solid
#cccccc
;
border-left
:
1px
solid
#cccccc
;
}
.hotelProductManage2_calendar
{
.hotelProductManage2_calendar
{
position
:
relative
;
padding
:
20px
0
;
width
:
100%
;
border-top
:
1px
solid
#E5E5E5
;
border-bottom
:
1px
solid
#E5E5E5
;
}
.hotelProductManage2_calendarBox
{
.hotelProductManage2_calendarBox
{
position
:
absolute
;
z-index
:
2
;
left
:
0px
;
...
...
@@ -893,7 +1078,8 @@
padding
:
20px
0
;
width
:
100%
;
}
.hotelProductManage2_calendarItem
{
.hotelProductManage2_calendarItem
{
display
:
inline-block
;
margin
:
0
5px
;
width
:
24%
;
...
...
@@ -902,10 +1088,12 @@
border-radius
:
4px
;
font-size
:
0px
;
}
.hotelProductManage2_calendarItem
:hover
{
.hotelProductManage2_calendarItem
:hover
{
box-shadow
:
0px
0px
5px
5px
#E5E5E5
;
}
.hotelProductManage2_calendarItem
>
.calendarItem_month
{
.hotelProductManage2_calendarItem
>
.calendarItem_month
{
width
:
100%
;
height
:
30px
;
line-height
:
30px
;
...
...
@@ -913,14 +1101,16 @@
font-size
:
14px
;
cursor
:
pointer
;
}
.hotelProductManage2_calendarItem
>
.calendarItem_week
{
.hotelProductManage2_calendarItem
>
.calendarItem_week
{
display
:
flex
;
justify-content
:
space-around
;
padding
:
10px
0
;
width
:
100%
;
height
:
36px
;
}
.hotelProductManage2_calendarItem
>
.calendarItem_week
>
div
{
.hotelProductManage2_calendarItem
>
.calendarItem_week
>
div
{
display
:
inline-block
;
width
:
14.2%
;
height
:
16px
;
...
...
@@ -929,17 +1119,20 @@
font-size
:
14px
;
color
:
#999999
;
}
.hotelProductManage2_calendarItem
>
.calendarItem_day
{
.hotelProductManage2_calendarItem
>
.calendarItem_day
{
display
:
flex
;
justify-content
:
space-around
;
flex-wrap
:
wrap
;
}
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
{
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
{
display
:
inline-block
;
padding
:
5px
0
;
width
:
14.2%
;
}
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
>
div
{
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
>
div
{
margin
:
auto
;
width
:
30px
;
height
:
30px
;
...
...
@@ -949,27 +1142,34 @@
border
:
2px
solid
transparent
;
border-radius
:
50%
;
}
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
.nowMonth
>
div
{
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
.nowMonth
>
div
{
color
:
#000000
;
cursor
:
pointer
;
}
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
.otherMonth
>
div
{
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
.otherMonth
>
div
{
color
:
gainsboro
;
}
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
>
.hasStock_1
{
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
>
.hasStock_1
{
background-color
:
#ff6363
;
}
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
>
.hasStock_2
{
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
>
.hasStock_2
{
background-color
:
#ff99cc
;
}
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
>
.hasStock_3
{
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
>
.hasStock_3
{
background-color
:
#bcd6ee
;
}
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
>
.hasStock_4
{
.hotelProductManage2_calendarItem
>
.calendarItem_day
>
div
>
.hasStock_4
{
background-color
:
#DDDDDD
;
}
/* 页面编辑 */
.hotelProductManage2_edit2
{
.hotelProductManage2_edit2
{
margin
:
20px
0
0
0
;
padding
:
10px
10px
0
;
width
:
100%
;
...
...
@@ -978,12 +1178,14 @@
background-color
:
#FFFFFF
;
overflow
:
auto
;
}
.hotelProductManage2_edit2
>
.hotelProductManage2_edit2_header
{
.hotelProductManage2_edit2
>
.hotelProductManage2_edit2_header
{
position
:
relative
;
width
:
100%
;
height
:
30px
;
}
.hotelProductManage2_edit2_header
>
div
:nth-child
(
1
)
{
.hotelProductManage2_edit2_header
>
div
:nth-child
(
1
)
{
display
:
inline-block
;
padding
:
0
20px
;
width
:
200px
;
...
...
@@ -992,13 +1194,15 @@
font-size
:
16px
;
border-left
:
3px
solid
#E95252
;
}
.hotelProductManage2_edit2_header
>
div
:nth-child
(
2
)
{
.hotelProductManage2_edit2_header
>
div
:nth-child
(
2
)
{
position
:
absolute
;
top
:
0px
;
right
:
0px
;
height
:
30px
;
}
.hotelProductManage2_edit2_header
>
div
:nth-child
(
2
)>
div
:nth-child
(
1
)
{
.hotelProductManage2_edit2_header
>
div
:nth-child
(
2
)>
div
:nth-child
(
1
)
{
display
:
inline-block
;
margin
:
0
5px
;
padding
:
0
15px
;
...
...
@@ -1012,7 +1216,8 @@
vertical-align
:
top
;
cursor
:
pointer
;
}
.hotelProductManage2_edit2_header
>
div
:nth-child
(
2
)>
div
:nth-child
(
2
)
{
.hotelProductManage2_edit2_header
>
div
:nth-child
(
2
)>
div
:nth-child
(
2
)
{
display
:
inline-block
;
padding
:
0
15px
;
height
:
30px
;
...
...
@@ -1025,27 +1230,34 @@
vertical-align
:
top
;
cursor
:
pointer
;
}
.hotelProductManage2_edit2
>
.hotelProductManage2_edit2_form
{
.hotelProductManage2_edit2
>
.hotelProductManage2_edit2_form
{
padding
:
10px
0
;
}
.hotelProductManage2_edit2_form
.el-input
{
.hotelProductManage2_edit2_form
.el-input
{
width
:
160px
;
}
.hotelProductManage2_edit2_form
.el-input-number
{
.hotelProductManage2_edit2_form
.el-input-number
{
width
:
160px
;
}
.hotelProductManage2_edit2_form
.el-input__inner
{
.hotelProductManage2_edit2_form
.el-input__inner
{
width
:
160px
;
}
.hotelProductManage2_edit2_form
.el-textarea__inner
{
.hotelProductManage2_edit2_form
.el-textarea__inner
{
resize
:
none
;
}
.hotelProductManage2_edit2_form
.HotelProductEdit_date
.el-form-item__content
{
.hotelProductManage2_edit2_form
.HotelProductEdit_date
.el-form-item__content
{
width
:
1000px
;
min-height
:
9px
;
}
/* 弹出编辑 */
.hotelProductManage2_edit
{
.hotelProductManage2_edit
{
position
:
fixed
;
z-index
:
50
;
bottom
:
0
;
...
...
@@ -1057,12 +1269,14 @@
background-color
:
#FFFFFF
;
overflow
:
auto
;
}
.hotelProductManage2_edit
>
.hotelProductManage2_edit_header
{
.hotelProductManage2_edit
>
.hotelProductManage2_edit_header
{
position
:
relative
;
width
:
100%
;
height
:
30px
;
}
.hotelProductManage2_edit_header
>
div
:nth-child
(
1
)
{
.hotelProductManage2_edit_header
>
div
:nth-child
(
1
)
{
display
:
inline-block
;
padding
:
0
20px
;
width
:
200px
;
...
...
@@ -1071,13 +1285,15 @@
font-size
:
16px
;
border-left
:
3px
solid
#E95252
;
}
.hotelProductManage2_edit_header
>
div
:nth-child
(
2
)
{
.hotelProductManage2_edit_header
>
div
:nth-child
(
2
)
{
position
:
absolute
;
top
:
0px
;
right
:
0px
;
height
:
30px
;
}
.hotelProductManage2_edit_header
>
div
:nth-child
(
2
)>
div
:nth-child
(
1
)
{
.hotelProductManage2_edit_header
>
div
:nth-child
(
2
)>
div
:nth-child
(
1
)
{
display
:
inline-block
;
margin
:
0
5px
;
padding
:
0
15px
;
...
...
@@ -1091,7 +1307,8 @@
vertical-align
:
top
;
cursor
:
pointer
;
}
.hotelProductManage2_edit_header
>
div
:nth-child
(
2
)>
div
:nth-child
(
2
)
{
.hotelProductManage2_edit_header
>
div
:nth-child
(
2
)>
div
:nth-child
(
2
)
{
display
:
inline-block
;
padding
:
0
15px
;
height
:
30px
;
...
...
@@ -1104,25 +1321,32 @@
vertical-align
:
top
;
cursor
:
pointer
;
}
.hotelProductManage2_edit
>
.hotelProductManage2_edit_form
{
.hotelProductManage2_edit
>
.hotelProductManage2_edit_form
{
padding
:
10px
0
;
}
.hotelProductManage2_edit_form
.el-input
{
.hotelProductManage2_edit_form
.el-input
{
width
:
180px
;
}
.hotelProductManage2_edit_form
.el-input__inner
{
.hotelProductManage2_edit_form
.el-input__inner
{
width
:
180px
;
}
.hotelProductManage2_edit_form
.el-textarea__inner
{
.hotelProductManage2_edit_form
.el-textarea__inner
{
resize
:
none
;
}
.hotelProductManage2_edit_form
.HotelProductEdit_date
>
div
{
.hotelProductManage2_edit_form
.HotelProductEdit_date
>
div
{
display
:
inline-block
;
vertical-align
:
middle
;
}
.hotelProductManage2_edit_form
.HotelProductEdit_date
>
div
>
em
{
.hotelProductManage2_edit_form
.HotelProductEdit_date
>
div
>
em
{
display
:
inline-block
;
margin
:
7px
10px
0
0
;
padding
:
0
0
0
0
;
}
</
style
>
src/components/TravelManager/TravelList/TravelControlList.vue
View file @
027f7de4
...
...
@@ -333,6 +333,8 @@
<span
v-if=
"item.IsB2B==0"
title=
"内部团"
>
内
</span>
<span
v-if=
"item.IsUnion==1&&item.UnionTypeStr==1"
title=
"主"
class=
"MainTeam"
>
主
</span>
<span
v-if=
"item.IsUnion==1&&item.UnionTypeStr==2"
title=
"联"
>
联
</span>
<span
v-if=
"item.Status==2"
title=
"结团"
>
结团
</span>
<span
v-if=
"item.Status==1"
title=
"销售"
>
销售
</span>
</div>
<div
class=
"TCL-OutBranchName"
title=
"销售公司"
>
{{
item
.
UnionBranchName
}}
</div>
<div
class=
"TCL-TOPTCNUM"
>
(
{{
item
.
TCID
}}
)
{{
item
.
TCNUM
}}
</div>
...
...
@@ -627,7 +629,7 @@
</el-dropdown-item>
<el-dropdown-item
v-if=
"item.Status==1"
@
click
.
native=
"OutGroup(item.TCID,2)"
>
结团
</el-dropdown-item>
<el-dropdown-item
v-if=
"item.Status==2"
@
click
.
native=
"OutGroup(item.TCID,1)"
style=
"display:none"
>
正常
<el-dropdown-item
v-if=
"item.Status==2"
@
click
.
native=
"OutGroup(item.TCID,1)"
>
销售
</el-dropdown-item>
<el-dropdown-item
v-if=
"CurrentUserInfo.B2BDomain!=''"
@
click
.
native=
"goB2B(item.ConfigId, item.TCID)"
>
B2B预览
...
...
src/components/newTravelmanager/TravelGroupControl/TravelFeature.vue
View file @
027f7de4
...
...
@@ -342,7 +342,7 @@
type
:
contentType
});
},
getHtml
:
function
(
postData
,
SaveType
,
postType
)
{
getHtml
:
function
(
postData
,
SaveType
)
{
var
FeatureData
=
{
B2BRemark
:
postData
.
B2BRemark
,
ConfigId
:
postData
.
ConfigId
,
...
...
@@ -369,7 +369,6 @@
}
else
{
flagWangYue
=
true
;
}
if
(
this
.
$refs
.
newFeature
!=
undefined
)
{
var
obj
=
''
;
try
{
...
...
@@ -389,55 +388,9 @@
setTimeout
(()
=>
{
try
{
FeatureData
.
FeatureHtml
=
document
.
getElementById
(
"newFeatureBox"
).
innerHTML
;
}
catch
(
err
)
{}
if
(
postType
==
1
)
{
this
.
apipost
(
"travel_post_SetFeature"
,
FeatureData
,
res
=>
{
try
{
this
.
$refs
.
newFeature
.
setReadOnly
(
false
)
}
catch
(
ex
)
{}
try
{
this
.
$refs
.
newFeature2
.
canEditChange
(
true
)
}
catch
(
ex
)
{}
//解锁表单重复提交
this
.
$emit
(
"unlockFormCommit"
,
true
);
if
(
res
.
data
.
resultCode
==
1
)
{
//保存按钮跳转当当前页码
if
(
SaveType
==
1
)
{
let
path
=
flagWangYue
?
'TravelManager3'
:
'TravelManager2'
;
this
.
Success
(
"保存成功"
);
if
(
flagWangYue
||
this
.
isNewConfig
)
{
this
.
$router
.
push
({
path
:
path
,
query
:
{
flag
:
flagWangYue
,
configId
:
FeatureData
.
ConfigId
,
openState
:
1
}
catch
(
err
)
{
}
});
if
(
localStorage
.
openMode
===
"0"
)
{
this
.
loadConfigInfo
();
}
}
else
{
this
.
loadConfigInfo
();
}
}
//提交按钮和另存模板跳转团控列表
else
if
(
SaveType
==
2
||
SaveType
==
3
)
{
this
.
$router
.
push
({
path
:
"TravelControlList"
,
query
:
{
cache
:
true
}
});
}
}
this
.
MsgBus
.
$emit
(
'saveTravel'
,
false
);
this
.
FeatureData
.
IsSave
=
false
;
},
err
=>
{}
)
}
else
{
this
.
ApiPost2
(
"TripSetFeature"
,
FeatureData
,
res
=>
{
this
.
apipost
(
"travel_post_SetFeature"
,
FeatureData
,
res
=>
{
try
{
this
.
$refs
.
newFeature
.
setReadOnly
(
false
)
}
catch
(
ex
)
{}
...
...
@@ -482,7 +435,6 @@
},
err
=>
{}
)
}
},
2000
)
},
//切换tab事件
...
...
src/components/newTravelmanager/TravelGroupControl/TravelManager2.vue
View file @
027f7de4
...
...
@@ -371,8 +371,6 @@
}
else
{
basicData
.
TeamType
=
0
;
}
var
postType
=
1
;
if
(
postType
==
1
)
{
this
.
apipost
(
"travel_post_SetTravelConfigInfo"
,
basicData
,
...
...
@@ -380,7 +378,7 @@
if
(
res
.
data
.
resultCode
==
1
)
{
//配置编号
TripFeature
.
ConfigId
=
res
.
data
.
data
;
this
.
$refs
.
TravelFeature
.
getHtml
(
TripFeature
,
SaveType
,
post
Type
);
this
.
$refs
.
TravelFeature
.
getHtml
(
TripFeature
,
Save
Type
);
}
else
if
(
res
.
data
.
resultCode
==
10009
)
{
this
.
FeatureData
.
IsSave
=
false
;
//表单重复提交
...
...
@@ -395,28 +393,6 @@
},
err
=>
{}
);
}
else
{
this
.
ApiPost2
(
"TripSetTravelConfigInfo"
,
basicData
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
//配置编号
TripFeature
.
ConfigId
=
res
.
data
.
data
;
this
.
$refs
.
TravelFeature
.
getHtml
(
TripFeature
,
SaveType
,
postType
);
}
else
if
(
res
.
data
.
resultCode
==
10009
)
{
this
.
FeatureData
.
IsSave
=
false
;
//表单重复提交
this
.
isSubmit
=
true
;
}
else
{
this
.
FeatureData
.
IsSave
=
false
;
this
.
Error
(
res
.
data
.
message
);
this
.
isSubmit
=
true
;
this
.
submitText
=
"提交"
;
this
.
$refs
.
TravelFeature
.
del_show
=
true
;
}
});
}
},
//初始化团的幻灯片
initFileList
()
{
...
...
src/components/newTravelmanager/TravelGroupControl/TravelPrice.vue
View file @
027f7de4
...
...
@@ -356,6 +356,9 @@
<el-checkbox
v-model=
"priceData.IsSupportChildren"
:true-label=
"CheckedVaule"
:false-label=
"UnCheckedVaule"
>
支持儿童出游
</el-checkbox>
<el-checkbox
v-model=
"priceData.IsBookTeam"
style=
"display:none"
:true-label=
"CheckedVaule"
:false-label=
"UnCheckedVaule"
>
订团
</el-checkbox>
</div>
<el-form-item
prop=
"B2BMemberPrice"
>
<el-input
placeholder=
"请输入"
class=
"w190 ComSeat"
v-model=
"priceData.B2BMemberPrice"
...
...
@@ -885,6 +888,8 @@
AirportService
:
""
,
//机场服务
//可销售机票数量
CanSellTicketNum
:
2
,
//是否订团,0-不订,1需要订
IsBookTeam
:
0
};
}
// if (this.modifyTcid > 0) {
...
...
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