Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
million
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
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
viitto
million
Commits
5d08b826
Commit
5d08b826
authored
Mar 17, 2023
by
沈良进
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/viitto/million
parents
4fa176db
dfc01203
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
295 additions
and
212 deletions
+295
-212
product.js
src/boot/product.js
+2
-2
utils.js
src/boot/utils.js
+2
-2
photo.vue
src/components/label_other/photo.vue
+5
-2
diy-img-five.vue
src/components/label_picture/diy-img-five.vue
+20
-5
diy-img-four.vue
src/components/label_picture/diy-img-four.vue
+15
-9
diy-img-one.vue
src/components/label_picture/diy-img-one.vue
+219
-136
diy-img-two.vue
src/components/label_picture/diy-img-two.vue
+5
-15
city-category.vue
src/components/navs/city-category.vue
+3
-5
About.vue
src/pages/About.vue
+5
-2
Index.vue
src/pages/Index.vue
+1
-1
selectRoom.vue
src/pages/hotel/selectRoom.vue
+1
-1
coupon.vue
src/pages/usercenter/coupon.vue
+8
-4
mobileUserCenter.vue
src/pages/usercenter/mobileUserCenter.vue
+1
-1
orderDetail.vue
src/pages/usercenter/order/orderDetail.vue
+3
-2
ticketMap.vue
src/pages/usercenter/order/ticketMap.vue
+2
-22
setUsersList.vue
src/pages/usercenter/setUsersList.vue
+1
-1
producttypeenum.js
src/utils/producttypeenum.js
+2
-2
No files found.
src/boot/product.js
View file @
5d08b826
...
...
@@ -12,13 +12,13 @@ const product = {
// 接送机,包车
url
=
"/detailCar/"
+
configId
}
else
if
(
t
===
3
)
{
url
=
"/detailHotal/"
+
configId
url
=
"/detailHotal/"
+
configId
+
'/'
+
productInfo
.
b2CPrice
}
else
if
(
t
===
2
)
{
url
=
"/detailsScenicSpotTicket/"
+
configId
}
else
if
(
t
===
1
)
{
url
=
"/detail/"
+
encodeURIComponent
(
productInfo
.
id
?
productInfo
.
id
:
productInfo
.
ID
)
+
"/"
+
0
+
"/"
+
configId
}
else
if
(
t
===
5
)
{
url
=
"/detailHotal/"
+
configId
+
'/'
+
productInfo
.
b2CPrice
url
=
"/detailHotal/"
+
configId
+
'/'
+
productInfo
.
b2CPrice
}
}
else
{
throw
new
Error
(
"參數不合法"
);
...
...
src/boot/utils.js
View file @
5d08b826
...
...
@@ -26,7 +26,7 @@ Vue.prototype.domainManager = function() {
domainUrl
=
"http://testapi.oytour.com"
;
}
else
if
(
domainNameUrl
.
indexOf
(
'oytour'
)
!==
-
1
)
{
domainUrl
=
"http://reborn.oytour.com"
;
domainUrl
=
'http://192.168.10.206:8015'
//'http://192.168.10.206:8015' ''http://192.168.10.11:8083' '
//
domainUrl = 'http://192.168.10.206:8015' //'http://192.168.10.206:8015' ''http://192.168.10.11:8083' '
}
var
obj
=
{
//主地址
...
...
@@ -41,7 +41,7 @@ Vue.prototype.domainManager = function() {
//获取当前域名
Vue
.
prototype
.
GetDomain
=
function
()
{
var
domainNameUrl
=
window
.
location
.
hostname
;
domainNameUrl
=
"
t
.oytour.com"
;
domainNameUrl
=
"
www
.oytour.com"
;
return
domainNameUrl
;
}
Vue
.
prototype
.
groupBy
=
function
(
array
,
f
)
{
...
...
src/components/label_other/photo.vue
View file @
5d08b826
<
template
>
<section
class=
"photo1 section-block"
>
<div
class=
"photo"
v-if=
"plugData.ImageUrl"
>
<img
:src=
"plugData.ImageUrl"
:alt=
"plugData.Title"
/>
<div
class=
"photo mobile-only rounded-borders"
v-if=
"plugData.ImageUrl"
style=
"overflow:hidden;margin-bottom: 0px;"
>
<img
:src=
"plugData.ImageUrl"
:alt=
"plugData.Title"
style=
"height:20vh;width:auto;"
/>
</div>
<div
class=
"photo desktop-only"
v-if=
"plugData.ImageUrl"
>
<img
:src=
"plugData.ImageUrl"
:alt=
"plugData.Title"
/>
</div>
</section>
</
template
>
...
...
src/components/label_picture/diy-img-five.vue
View file @
5d08b826
...
...
@@ -39,7 +39,7 @@
:key=
"index"
class=
"relative-position"
style=
" min-width: 200px;"
:class=
"
{ 'col':
current != index
&&
$q.platform.is.desktop, 'col-4': current == index
&&
$q.platform.is.desktop
}"
:class=
"
{ 'col':
((current != index
&&
$q.platform.is.desktop) || realCount!=5), 'col-4': current == index
&&
$q.platform.is.desktop
&&
realCount==5
}"
@mouseenter="hoverHandler(index)"
>
<q-img
...
...
@@ -55,10 +55,10 @@
{{
item
.
TripTitle
.
split
(
'|'
)[
0
]
}}
</a>
<div
class=
"q-mt-sm row items-center no-wrap overflow-hidden"
v-if=
"current==index && plugData.Title.indexOf('|tag')!=-1"
>
<q-chip
outline
color=
"grey-2"
class=
"f12 cursor-pointer"
text-color=
"grey-2"
>
觀光行程
</q-chip>
<q-chip
outline
color=
"grey-2"
class=
"f12 cursor-pointer"
text-color=
"grey-2"
>
熱門票券
</q-chip>
<q-chip
style=
"background:rgba(255,255,255,.3)"
cl
ass=
"f12 cursor-pointer"
text-color=
"grey-2"
>
更多在地體驗
</q-chip>
<div
class=
"q-mt-sm row items-center no-wrap overflow-hidden"
v-if=
"current==index && plugData.Title.indexOf('|tag')!=-1
&& realCount==5
"
>
<q-chip
outline
color=
"grey-2"
class=
"f12 cursor-pointer"
text-color=
"grey-2"
clickable
@
click=
"goProductListHandler(0,item.TripTitle.split('|')[1])"
>
觀光行程
</q-chip>
<q-chip
outline
color=
"grey-2"
class=
"f12 cursor-pointer"
text-color=
"grey-2"
clickable
@
click=
"goProductListHandler(1,item.TripTitle.split('|')[1])"
>
熱門票券
</q-chip>
<q-chip
style=
"background:rgba(255,255,255,.3)"
cl
ickable
class=
"f12 cursor-pointer"
text-color=
"grey-2"
@
click=
"CommonJump(`/city/$
{item.TripTitle.split('|')[1]}`,{},'blank')"
>更多在地體驗
</q-chip>
</div>
</div>
</div>
...
...
@@ -70,14 +70,20 @@
</template>
<
script
>
import
{
date
}
from
'quasar'
//圖片 - 6x1
export
default
{
props
:
[
"plugData"
],
data
()
{
return
{
current
:
0
,
realCount
:
0
};
},
created
()
{
//console.log(this.plugData.Details,this.plugData.Details.filter(x=> x.ImageUrl!=''))
this
.
realCount
=
this
.
plugData
.
Details
.
filter
(
x
=>
x
.
ImageUrl
!=
''
).
length
},
methods
:
{
hoverHandler
(
i
)
{
this
.
current
=
i
;
...
...
@@ -89,6 +95,15 @@ export default {
arr
=
strs
[
1
].
split
(
','
)
}
return
arr
},
goProductListHandler
(
t
,
id
){
let
CategoryName
=
t
==
0
?
'观光行程'
:
'景点门票'
this
.
CommonJump
(
'/search'
,{
areaId
:
id
,
qsearchDate
:
date
.
formatDate
(
new
Date
(),
'YYYY-MM-DD'
),
qsearchEndDate
:
date
.
formatDate
(
date
.
addToDate
(
new
Date
(),{
month
:
2
}),
'YYYY-MM-DD'
),
CategoryName
})
}
},
};
...
...
src/components/label_picture/diy-img-four.vue
View file @
5d08b826
...
...
@@ -2,24 +2,31 @@
<!--圖片 - 4x4-->
<div
class=
"q-mt-md"
>
<section
class=
"pr1 section-block"
>
<div
class=
"mobile-only"
>
<h2
class=
"block-title"
>
{{
plugData
.
Title
}}
</h2>
<p
class=
"title-teaser"
>
{{
plugData
.
SubTitle
}}
</p>
</div>
<div
class=
"pr-banner-block"
>
<ul
class=
"pr-banner-list"
>
<li
v-for=
"(item,index) in plugData.Details"
:key=
"index"
>
<a
@
click=
"OpenNewUrl(item.LinkUrl
)"
:title=
"item.TripTitle"
<li
v-for=
"(item,index) in plugData.Details"
:key=
"index"
class=
"relative-position"
>
<a
@
click=
"OpenNewUrl(item.LinkUrl
+'/0')"
class=
"rounded-borders"
:title=
"item.TripTitle"
:style=
"
{backgroundImage:`url('${(item.TripImageUrl
&&
item.TripImageUrl!=''?item.TripImageUrl:item.ImageUrl)}')`}">
</a>
<div
class=
"absolute absolute-bottom-left absolute-bottom-right rounded-borders q-pa-md text-shadow text-subtitle2 text-white"
style=
" background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.5))"
>
{{
item
.
TripTitle
}}
</div>
</li>
</ul>
</div>
<div
class=
"pr-text-block"
>
<div
class=
"pr-text-block
light-shadow rounded-borders desktop-only
"
>
<h2
class=
"block-title"
>
{{
plugData
.
Title
}}
</h2>
<p
class=
"title-teaser"
>
{{
plugData
.
SubTitle
}}
</p>
<ul
class=
"pr-text-list"
>
<li
v-for=
"(item,index) in plugData.Details"
:key=
"index"
>
<a
@
click=
"OpenNewUrl(item.LinkUrl)"
>
<h3
class=
"
pd-title
"
>
{{
item
.
TripTitle
}}
</h3>
<div
class=
"price"
>
<small
class=
"
unit"
>
NT$
</small>
{{
item
.
Price
}}
<s
mall
class=
"unit"
>
元起
</small
>
<a
@
click=
"OpenNewUrl(item.LinkUrl
+'/0'
)"
>
<h3
class=
"
text-subtitle2
"
>
{{
item
.
TripTitle
}}
</h3>
<div
class=
"price
text-dark
"
>
<small
class=
"
text-subtitle2 q-mr-sm"
>
CNY
</small>
<s
pan
class=
"text-subtitle2 text-weight-bolder text-dark"
>
{{
moneyFormat
(
item
.
Price
,
2
)
}}
</span
>
</div>
</a>
</li>
...
...
@@ -162,7 +169,6 @@
color
:
#00afff
;
font-size
:
20px
;
font-weight
:
700
;
font-family
:
"oswald"
;
}
.pr1
.pr-text-block
.pr-text-list
.price
.unit
{
...
...
src/components/label_picture/diy-img-one.vue
View file @
5d08b826
This diff is collapsed.
Click to expand it.
src/components/label_picture/diy-img-two.vue
View file @
5d08b826
...
...
@@ -2,7 +2,7 @@
<!--圖片 - 4x1-->
<div
:class=
"
{'q-mt-md':plugData.Title.split('|')[0]=='','q-mt-xl':plugData.Title.split('|')[0]!=''}">
<section
class=
"tour1 section-block"
v-if=
"plugData"
>
<h2
class=
"block-title"
>
{{
plugData
.
Title
.
split
(
"|"
)[
0
]
}}
</h2>
<h2
class=
"block-title"
style=
"line-height: normal !important;"
>
{{
plugData
.
Title
.
split
(
"|"
)[
0
]
}}
</h2>
<p
class=
"title-teaser"
>
{{
plugData
.
SubTitle
}}
</p>
<ul
class=
"pd-list"
v-if=
"showType == 1"
>
<li
...
...
@@ -40,27 +40,17 @@
</a>
</li>
</ul>
<div
class=
"
row q-col-gutter-md"
style=
"item
"
v-else-if=
"showType == 2"
>
<div
class=
"
q-col-gutter-md q-mt-md"
:class=
"
{'row':$q.platform.is.desktop,'':$q.platform.is.mobile}
" v-else-if="showType == 2">
<template
v-for=
"(item, index) in plugData.Details"
>
<div
class=
"
col-3 relative-position column
"
class=
"
relative-position
"
:key=
"index"
:class=
"
{'col-3 column':$q.platform.is.desktop}"
v-if="item.TripImageUrl"
>
<div
class=
"absolute-top-left q-pa-sm"
style=
"
background: linear-gradient(
to bottom,
rgba(0, 0, 0, 0.5),
rgba(0, 0, 0, 0)
);
top: 16px;
left: 16px;
right: 0;
border-radius: 12px;
z-index: 1;
"
style=
"background: linear-gradient(rgba(0, 0, 0, 0.5),rgba(0, 0, 0, 0));top: 16px;left: 16px;right: 0;border-radius: 12px;z-index: 1;"
>
<div
class=
"text-grey-4"
...
...
src/components/navs/city-category.vue
View file @
5d08b826
...
...
@@ -133,11 +133,11 @@
font-weight
:
400
;
}
.category-l2
:hover
{
background
:
#ee4454
;
background
:
var
(
--q-color-primary
)
;
color
:
#fff
;
}
.category-l2-select
{
background
:
#ee4454
;
background
:
var
(
--q-color-primary
)
;
color
:
#fff
;
}
.category-l3
{
...
...
@@ -479,9 +479,7 @@ export default {
}
},
handleSelectArea
(
item
)
{
this
.
CommonJump
(
"/city/"
+
item
.
Id
,
{
id
:
item
.
Id
,
});
this
.
CommonJump
(
"/city/"
+
item
.
Id
);
},
handleCategoryChage
(
item
)
{
this
.
CommonJump
(
"/search"
,
{
...
...
src/pages/About.vue
View file @
5d08b826
<
style
lang=
"scss"
scoped
>
/
deep
/
.scroll
{
overflow
:
inherit
;
}
.banner
{
width
:
100%
;
}
...
...
@@ -70,7 +73,7 @@
.circle
{
width
:
32px
;
height
:
32px
;
background
:
$primary
;
background
:
var
(
--
q-color-primary
)
;
border-radius
:
50%
;
text-align
:
center
;
color
:
#fff
;
...
...
@@ -227,7 +230,7 @@ margin-right: 70px;
control-type=
"regular"
padding
arrows
height=
"1
00
px"
height=
"1
15
px"
flat
class=
"bg-transparent rounded-borders q-mt-md"
>
...
...
src/pages/Index.vue
View file @
5d08b826
...
...
@@ -266,7 +266,7 @@
></travelList>
</div>
</
template
>
<end-page
v-if=
"isPic"
></end-page>
<end-page
v-if=
"isPic"
class=
"desktop-only"
></end-page>
</q-page>
</template>
...
...
src/pages/hotel/selectRoom.vue
View file @
5d08b826
<
style
lang=
"scss"
scoped
>
.select-day
{
background
:
$primary
;
background
:
var
(
--
q-color-primary
)
;
color
:
#fff
!
important
;
border-radius
:
8px
;
}
...
...
src/pages/usercenter/coupon.vue
View file @
5d08b826
...
...
@@ -68,7 +68,7 @@
width
:
20px
;
height
:
4px
;
border-radius
:
2px
;
background-color
:
$primary
;
background-color
:
var
(
--
q-color-primary
)
;
margin
:
-8px
auto
0
auto
;
}
.img
{
...
...
@@ -158,8 +158,12 @@
</div>
</div>
</div>
<div
v-if=
"!couponList.length "
>
<none-data></none-data>
<div
v-if=
"!couponList.length "
class=
"text-center q-my-xl"
>
<none-data
iconType=
"order"
title=
"沒有找到您的優惠券信息哦"
subtitle=
""
></none-data>
</div>
</div>
<div
v-show=
"pageCount"
class=
"mt flex justify-end"
>
...
...
@@ -176,7 +180,7 @@
</div>
</
template
>
<
script
>
import
noneData
from
'
../../components
/noneData.vue'
import
noneData
from
'
src/components/common
/noneData.vue'
export
default
{
components
:
{
noneData
...
...
src/pages/usercenter/mobileUserCenter.vue
View file @
5d08b826
...
...
@@ -68,7 +68,7 @@ margin: 10px 13px 0 13px;
line-height
:
14px
;
border-radius
:
50%
;
color
:
#fff
;
background-color
:
$primary
;
background-color
:
var
(
--
q-color-primary
)
;
}
</
style
>
<
template
>
...
...
src/pages/usercenter/order/orderDetail.vue
View file @
5d08b826
...
...
@@ -12,7 +12,7 @@
</div>
<div
class=
""
>
<div
class=
"f12 text-grey-6"
>
訂單編號:#
{{
detail
.
OrderNo
}}
</div>
<div
class=
"f12 text-grey-6 q-mt-md"
>
下單日期:
{{
detail
.
Create
Time
}}
</div>
<div
class=
"f12 text-grey-6 q-mt-md"
>
下單日期:
{{
detail
.
SelectStart
Time
}}
</div>
</div>
</div>
<q-separator
color=
"grey-2"
class=
"q-my-md"
/>
...
...
@@ -120,6 +120,7 @@
</
template
>
<
script
>
import
noneData
from
'src/components/common/noneData.vue'
import
componentsMap
from
"../../../components/car/Map.vue"
;
import
carPriceDetail
from
'./carPriceDetail.vue'
import
groupPriceDetail
from
'./groupPriceDetail.vue'
...
...
@@ -130,7 +131,7 @@ import groupMap from './groupMap.vue'
import
hotelMap
from
'./hotelMap.vue'
import
ticketMap
from
'./ticketMap.vue'
export
default
{
components
:
{
componentsMap
,
carPriceDetail
,
groupPriceDetail
,
hotelPriceDetail
,
ticketPriceDetail
,
carMap
,
groupMap
,
hotelMap
,
ticketMap
},
components
:
{
noneData
,
componentsMap
,
carPriceDetail
,
groupPriceDetail
,
hotelPriceDetail
,
ticketPriceDetail
,
carMap
,
groupMap
,
hotelMap
,
ticketMap
},
// GoodsType: this.productType,//商品类型(见枚举) 12包车 13 接机 14送机
data
()
{
return
{
...
...
src/pages/usercenter/order/ticketMap.vue
View file @
5d08b826
...
...
@@ -31,7 +31,9 @@
<
/div></
div
>
<
/template
>
<
script
>
import
componentsMap
from
"src/components/car/Map.vue"
;
export
default
{
components
:
{
componentsMap
}
,
props
:
{
orderInfo
:
{
type
:
Object
,
...
...
@@ -89,28 +91,6 @@ export default {
}
,
1000
);
}
);
}
this
.
$nextTick
(()
=>
{
this
.
getCarPriceData
()
setTimeout
(()
=>
{
this
.
navs
.
forEach
((
x
)
=>
{
x
.
top
=
this
.
$refs
[
x
.
val
].
getBoundingClientRect
().
top
+
this
.
currentHeight
-
60
;
}
);
this
.
priceListHeight
=
this
.
$refs
.
pricelist
.
getBoundingClientRect
().
top
+
this
.
currentHeight
-
60
;
}
,
1000
);
try
{
document
.
querySelector
(
"#scrollId .q-page-container"
)
.
addEventListener
(
"scroll"
,
this
.
handleScrollDay
);
}
catch
(
error
)
{
// console.log(document.querySelector('#scrollId .q-page-container'))
// console.log('异常信息', error)
}
}
);
}
else
{
this
.
$q
.
notify
({
...
...
src/pages/usercenter/setUsersList.vue
View file @
5d08b826
...
...
@@ -69,7 +69,7 @@
width
:
20px
;
height
:
4px
;
border-radius
:
2px
;
background-color
:
$primary
;
background-color
:
var
(
--
q-color-primary
)
;
margin
:
-8px
auto
0
auto
;
}
.card-info
{
...
...
src/utils/producttypeenum.js
View file @
5d08b826
...
...
@@ -7,14 +7,14 @@ const ProductTypeEnum = Object.freeze({
*/
ONE_DAY
:
{
value
:
1
,
desc
:
'
一日游
产品'
desc
:
'
當地遊
产品'
},
/**
* 多日游
*/
TEAM_TRIP
:
{
value
:
2
,
desc
:
'
多日游
产品'
desc
:
'
出境遊
产品'
},
/**
* 小包团
...
...
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