@ -0,0 +1,56 @@ |
|||||
|
{ |
||||
|
"code": 200, |
||||
|
"msg": "操作成功", |
||||
|
"data": [ |
||||
|
{ |
||||
|
"id": 193, |
||||
|
"title": "SKP-S", |
||||
|
"content": { |
||||
|
"name": "SKP-S", |
||||
|
"file_code": [ |
||||
|
"/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/skps.png" |
||||
|
] |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 194, |
||||
|
"title": "全部区域", |
||||
|
"content": { |
||||
|
"name": "全部区域", |
||||
|
"file_code": [ |
||||
|
"/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/all.svg" |
||||
|
] |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 195, |
||||
|
"title": "K大道", |
||||
|
"content": { |
||||
|
"name": "K大道", |
||||
|
"file_code": [ |
||||
|
"/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/k.png" |
||||
|
] |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 196, |
||||
|
"title": "美食大道", |
||||
|
"content": { |
||||
|
"name": "美食大道", |
||||
|
"file_code": [ |
||||
|
"/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/food.png" |
||||
|
] |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 197, |
||||
|
"title": "SKP", |
||||
|
"content": { |
||||
|
"name": "SKP", |
||||
|
"file_code": [ |
||||
|
"/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/skp.png" |
||||
|
] |
||||
|
} |
||||
|
} |
||||
|
] |
||||
|
} |
||||
@ -0,0 +1,114 @@ |
|||||
|
{ |
||||
|
"code": 200, |
||||
|
"msg": "操作成功", |
||||
|
"data": [ |
||||
|
{ |
||||
|
"id": 171, |
||||
|
"title": "1", |
||||
|
"content": { |
||||
|
"name": "花之泉广场", |
||||
|
"nameEn": "NORTH ENTRANCE FOUNTAIN SQUARE", |
||||
|
"point": "0_0_65" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 172, |
||||
|
"title": "2", |
||||
|
"content": { |
||||
|
"name": "魔法水星", |
||||
|
"nameEn": "MAGIC WATER BALL ", |
||||
|
"point": "0_0_9" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 173, |
||||
|
"title": "3", |
||||
|
"content": { |
||||
|
"name": "家庭乐园", |
||||
|
"nameEn": "THE FAMILY PARK", |
||||
|
"point": "0_0_1" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 174, |
||||
|
"title": "4", |
||||
|
"content": { |
||||
|
"name": "精灵之泉", |
||||
|
"nameEn": "THE FOUNTAIN PLAYGROUND", |
||||
|
"point": "0_0_161" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 175, |
||||
|
"title": "1", |
||||
|
"content": { |
||||
|
"name": "花之泉广场", |
||||
|
"nameEn": "NORTH ENTRANCE FOUNTAIN SQUARE", |
||||
|
"point": "0_0_65" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 176, |
||||
|
"title": "2", |
||||
|
"content": { |
||||
|
"name": "魔法水星", |
||||
|
"nameEn": "MAGIC WATER BALL ", |
||||
|
"point": "0_0_9" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 177, |
||||
|
"title": "3", |
||||
|
"content": { |
||||
|
"name": "家庭乐园", |
||||
|
"nameEn": "THE FAMILY PARK", |
||||
|
"point": "0_0_1" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 178, |
||||
|
"title": "4", |
||||
|
"content": { |
||||
|
"name": "精灵之泉", |
||||
|
"nameEn": "THE FOUNTAIN PLAYGROUND", |
||||
|
"point": "0_0_161" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 180, |
||||
|
"title": "1", |
||||
|
"content": { |
||||
|
"name": "花之泉广场", |
||||
|
"nameEn": "NORTH ENTRANCE FOUNTAIN SQUARE", |
||||
|
"point": "0_0_65" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 181, |
||||
|
"title": "2", |
||||
|
"content": { |
||||
|
"name": "魔法水星", |
||||
|
"nameEn": "MAGIC WATER BALL ", |
||||
|
"point": "0_0_9" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 182, |
||||
|
"title": "3", |
||||
|
"content": { |
||||
|
"name": "家庭乐园", |
||||
|
"nameEn": "THE FAMILY PARK", |
||||
|
"point": "0_0_1" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 183, |
||||
|
"title": "4", |
||||
|
"content": { |
||||
|
"name": "精灵之泉", |
||||
|
"nameEn": "THE FOUNTAIN PLAYGROUND", |
||||
|
"point": "0_0_161" |
||||
|
} |
||||
|
} |
||||
|
] |
||||
|
} |
||||
@ -0,0 +1,91 @@ |
|||||
|
{ |
||||
|
"code": 200, |
||||
|
"msg": "操作成功", |
||||
|
"data": [ |
||||
|
{ |
||||
|
"id": 198, |
||||
|
"title": "猩猩的太空漫步", |
||||
|
"content": { |
||||
|
"name": "猩猩的太空漫步", |
||||
|
"nameEn": "dddd", |
||||
|
"file_code": [ |
||||
|
"/iotFile/project-ey_fpaur6s6fkgvszywana/20230713/vwcYXFrhK1CbEB6uFy76R.png" |
||||
|
], |
||||
|
"point": "0_0_4", |
||||
|
"content": "vnasfkvl", |
||||
|
"contentEn": "fwefwqe", |
||||
|
"icon": [ |
||||
|
"/iotFile/project-ey_fpaur6s6fkgvszywana/20230713/DEB6NDQ8975GvfR5yKclw.png" |
||||
|
] |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 199, |
||||
|
"title": "共生", |
||||
|
"content": { |
||||
|
"name": "共生", |
||||
|
"nameEn": "dddd", |
||||
|
"file_code": [ |
||||
|
"/iotFile/project-ey_fpaur6s6fkgvszywana/20230713/CkR9FMDrKtej6Rt0GDAUR.png" |
||||
|
], |
||||
|
"point": "0_0_129", |
||||
|
"content": "1235", |
||||
|
"contentEn": "fwerf", |
||||
|
"icon": [ |
||||
|
"/iotFile/project-ey_fpaur6s6fkgvszywana/20230713/RyWHWQugQvDwEjEY_MwHb.png" |
||||
|
] |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 200, |
||||
|
"title": "超新星", |
||||
|
"content": { |
||||
|
"name": "超新星", |
||||
|
"nameEn": "dddd", |
||||
|
"file_code": [ |
||||
|
"/iotFile/project-ey_fpaur6s6fkgvszywana/20230713/6DH-CKwe8pzVt4qmP-Knm.png" |
||||
|
], |
||||
|
"point": "0_0_129", |
||||
|
"content": "1326", |
||||
|
"contentEn": "56456", |
||||
|
"icon": [ |
||||
|
"/iotFile/project-ey_fpaur6s6fkgvszywana/20230713/ea-Q5M6K-ri1xw3UfY18_.png" |
||||
|
] |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 201, |
||||
|
"title": "盛开的山谷", |
||||
|
"content": { |
||||
|
"name": "盛开的山谷", |
||||
|
"nameEn": "dadd", |
||||
|
"file_code": [ |
||||
|
"/iotFile/project-ey_fpaur6s6fkgvszywana/20230713/fH0IKTz9Nhg7nnVhtJg_o.png" |
||||
|
], |
||||
|
"point": "0_0_84", |
||||
|
"content": "i7u", |
||||
|
"contentEn": "hhrt", |
||||
|
"icon": [ |
||||
|
"/iotFile/project-ey_fpaur6s6fkgvszywana/20230713/j49AhcyUGy3ooRveXNTAt.png" |
||||
|
] |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 202, |
||||
|
"title": "琥珀", |
||||
|
"content": { |
||||
|
"name": "琥珀", |
||||
|
"nameEn": "t534", |
||||
|
"file_code": [ |
||||
|
"/iotFile/project-ey_fpaur6s6fkgvszywana/20230713/rQjWB5AzY05NM7YSmWgtT.png" |
||||
|
], |
||||
|
"point": "0_0_84", |
||||
|
"content": "213", |
||||
|
"contentEn": "545", |
||||
|
"icon": [ |
||||
|
"/iotFile/project-ey_fpaur6s6fkgvszywana/20230713/GeJT_PoeLfW6e2SgxCGmQ.png" |
||||
|
] |
||||
|
} |
||||
|
} |
||||
|
] |
||||
|
} |
||||
@ -0,0 +1,72 @@ |
|||||
|
{ |
||||
|
"code": 200, |
||||
|
"msg": "操作成功", |
||||
|
"data": [ |
||||
|
{ |
||||
|
"id": 181, |
||||
|
"title": "1", |
||||
|
"content": { |
||||
|
"name": "", |
||||
|
"floorOrder": "0", |
||||
|
"file_code": [ |
||||
|
"/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/minMap.svg" |
||||
|
] |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 182, |
||||
|
"title": "2", |
||||
|
"content": { |
||||
|
"name": "", |
||||
|
"floorOrder": "1", |
||||
|
"file_code": [ |
||||
|
"/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/minMap.svg" |
||||
|
] |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 183, |
||||
|
"title": "3", |
||||
|
"content": { |
||||
|
"name": "", |
||||
|
"floorOrder": "2", |
||||
|
"file_code": [ |
||||
|
"/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/minMap.svg" |
||||
|
] |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 184, |
||||
|
"title": "4", |
||||
|
"content": { |
||||
|
"name": "", |
||||
|
"floorOrder": "3", |
||||
|
"file_code": [ |
||||
|
"/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/minMap.svg" |
||||
|
] |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 185, |
||||
|
"title": "5", |
||||
|
"content": { |
||||
|
"name": "", |
||||
|
"floorOrder": "4", |
||||
|
"file_code": [ |
||||
|
"/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/minMap.svg" |
||||
|
] |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 186, |
||||
|
"title": "6", |
||||
|
"content": { |
||||
|
"name": "", |
||||
|
"floorOrder": "5", |
||||
|
"file_code": [ |
||||
|
"/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/minMap.svg" |
||||
|
] |
||||
|
} |
||||
|
} |
||||
|
] |
||||
|
} |
||||
@ -0,0 +1,102 @@ |
|||||
|
{ |
||||
|
"code": 200, |
||||
|
"msg": "操作成功", |
||||
|
"data": [ |
||||
|
{ |
||||
|
"id": 91, |
||||
|
"moduleName": "地图导览", |
||||
|
"moduleLogo": "/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/activity.svg", |
||||
|
"routePath": "/", |
||||
|
"sort": 1, |
||||
|
"moduleNameEn": "MAP", |
||||
|
"moduleDescription": "导览", |
||||
|
"moduleDisplay": 1, |
||||
|
"projectCode": "project-ey_fpaur6s6fkgvszywana", |
||||
|
"isDelete": 0 |
||||
|
}, |
||||
|
{ |
||||
|
"id": 92, |
||||
|
"moduleName": "品牌列表", |
||||
|
"moduleLogo": "/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/activity.svg", |
||||
|
"routePath": "/brand", |
||||
|
"sort": 2, |
||||
|
"moduleNameEn": "BRAND", |
||||
|
"moduleDescription": "品牌", |
||||
|
"moduleDisplay": 1, |
||||
|
"projectCode": "project-ey_fpaur6s6fkgvszywana", |
||||
|
"isDelete": 0 |
||||
|
}, |
||||
|
{ |
||||
|
"id": 93, |
||||
|
"moduleName": "活动精选", |
||||
|
"moduleLogo": "/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/activity.svg", |
||||
|
"routePath": "/activity", |
||||
|
"sort": 3, |
||||
|
"moduleNameEn": "SELECTION", |
||||
|
"moduleDescription": "活动", |
||||
|
"moduleDisplay": 1, |
||||
|
"projectCode": "project-ey_fpaur6s6fkgvszywana", |
||||
|
"isDelete": 0 |
||||
|
}, |
||||
|
{ |
||||
|
"id": 94, |
||||
|
"moduleName": "会员专享", |
||||
|
"moduleLogo": "/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/activity.svg", |
||||
|
"routePath": "/member", |
||||
|
"sort": 4, |
||||
|
"moduleNameEn": "MEMBER", |
||||
|
"moduleDescription": "会员", |
||||
|
"moduleDisplay": 1, |
||||
|
"projectCode": "project-ey_fpaur6s6fkgvszywana", |
||||
|
"isDelete": 0 |
||||
|
}, |
||||
|
{ |
||||
|
"id": 95, |
||||
|
"moduleName": "自主寻车", |
||||
|
"moduleLogo": "/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/activity.svg", |
||||
|
"routePath": "/parking", |
||||
|
"sort": 5, |
||||
|
"moduleNameEn": "PARKING", |
||||
|
"moduleDescription": "泊车", |
||||
|
"moduleDisplay": 1, |
||||
|
"projectCode": "project-ey_fpaur6s6fkgvszywana", |
||||
|
"isDelete": 0 |
||||
|
}, |
||||
|
{ |
||||
|
"id": 96, |
||||
|
"moduleName": "贴心服务", |
||||
|
"moduleLogo": "/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/activity.svg", |
||||
|
"routePath": "/service", |
||||
|
"sort": 6, |
||||
|
"moduleNameEn": "SERVICE", |
||||
|
"moduleDescription": "服务", |
||||
|
"moduleDisplay": 1, |
||||
|
"projectCode": "project-ey_fpaur6s6fkgvszywana", |
||||
|
"isDelete": 0 |
||||
|
}, |
||||
|
{ |
||||
|
"id": 97, |
||||
|
"moduleName": "交通信息", |
||||
|
"moduleLogo": "/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/activity.svg", |
||||
|
"routePath": "/traffic", |
||||
|
"sort": 7, |
||||
|
"moduleNameEn": "TRAFFIC", |
||||
|
"moduleDescription": "交通", |
||||
|
"moduleDisplay": 1, |
||||
|
"projectCode": "project-ey_fpaur6s6fkgvszywana", |
||||
|
"isDelete": 0 |
||||
|
}, |
||||
|
{ |
||||
|
"id": 98, |
||||
|
"moduleName": "艺术装置", |
||||
|
"moduleLogo": "/iotFile/project-odubitlp9mjy2wyuqkpfga/20230609/activity.svg", |
||||
|
"routePath": "/art", |
||||
|
"sort": 8, |
||||
|
"moduleNameEn": "ARTWORK", |
||||
|
"moduleDescription": "艺术装置", |
||||
|
"moduleDisplay": 1, |
||||
|
"projectCode": "project-ey_fpaur6s6fkgvszywana", |
||||
|
"isDelete": 0 |
||||
|
} |
||||
|
] |
||||
|
} |
||||
@ -0,0 +1,36 @@ |
|||||
|
{ |
||||
|
"code": 200, |
||||
|
"msg": "操作成功", |
||||
|
"data": [ |
||||
|
{ |
||||
|
"id": 178, |
||||
|
"title": "1", |
||||
|
"content": { |
||||
|
"name": "车行通道", |
||||
|
"nameEn": "TRAVEL LANE", |
||||
|
"backgroundColor": "#615C59", |
||||
|
"borderColor": "#615C59" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 179, |
||||
|
"title": "2", |
||||
|
"content": { |
||||
|
"name": "人行通道", |
||||
|
"nameEn": "PEDESTRIAN LANE", |
||||
|
"backgroundColor": "#FFFFFF", |
||||
|
"borderColor": "#615C59" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"id": 180, |
||||
|
"title": "3", |
||||
|
"content": { |
||||
|
"name": "水景", |
||||
|
"nameEn": "WATERSCAPE", |
||||
|
"backgroundColor": "#61B5D0", |
||||
|
"borderColor": "#61B5D0" |
||||
|
} |
||||
|
} |
||||
|
] |
||||
|
} |
||||
|
Before Width: | Height: | Size: 2.3 MiB |
|
Before Width: | Height: | Size: 2.5 MiB |
|
Before Width: | Height: | Size: 2.8 MiB |
|
Before Width: | Height: | Size: 2.0 MiB |
|
Before Width: | Height: | Size: 93 KiB |
|
Before Width: | Height: | Size: 4.1 KiB |
|
Before Width: | Height: | Size: 1.2 MiB |
|
Before Width: | Height: | Size: 1.2 MiB |
|
Before Width: | Height: | Size: 2.6 MiB |
|
Before Width: | Height: | Size: 691 KiB |
|
Before Width: | Height: | Size: 1.6 MiB |
|
Before Width: | Height: | Size: 2.6 MiB |
|
Before Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 1.7 MiB |
|
Before Width: | Height: | Size: 2.3 MiB |
|
Before Width: | Height: | Size: 2.0 MiB |
|
Before Width: | Height: | Size: 2.8 MiB |
|
Before Width: | Height: | Size: 2.4 MiB |
|
Before Width: | Height: | Size: 1.7 MiB |
|
Before Width: | Height: | Size: 2.4 MiB |
|
Before Width: | Height: | Size: 2.0 MiB |
|
Before Width: | Height: | Size: 3.4 KiB |
|
Before Width: | Height: | Size: 2.9 MiB |
|
Before Width: | Height: | Size: 2.5 MiB |
|
Before Width: | Height: | Size: 2.5 KiB |
|
Before Width: | Height: | Size: 2.4 MiB |
|
Before Width: | Height: | Size: 2.1 MiB |
|
Before Width: | Height: | Size: 2.1 MiB |
|
Before Width: | Height: | Size: 1.8 MiB |
|
Before Width: | Height: | Size: 5.5 KiB |
|
Before Width: | Height: | Size: 1.3 MiB |
|
Before Width: | Height: | Size: 2.3 MiB |
|
Before Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 2.4 MiB |
|
Before Width: | Height: | Size: 1.7 MiB |
|
Before Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 703 KiB |
|
Before Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 195 KiB |
|
Before Width: | Height: | Size: 2.9 KiB |
|
Before Width: | Height: | Size: 2.3 MiB |
|
Before Width: | Height: | Size: 1.8 MiB |
|
Before Width: | Height: | Size: 2.6 MiB |
|
Before Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 1.7 MiB |
|
Before Width: | Height: | Size: 2.9 MiB |
|
Before Width: | Height: | Size: 2.5 MiB |
|
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 3.4 KiB |
|
Before Width: | Height: | Size: 196 KiB After Width: | Height: | Size: 196 KiB |
|
After Width: | Height: | Size: 3.5 KiB |
|
After Width: | Height: | Size: 3.5 KiB |
|
Before Width: | Height: | Size: 696 B |
|
Before Width: | Height: | Size: 4.3 KiB |
|
Before Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 947 B |
|
Before Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 983 B |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 654 B |
|
Before Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 681 B |
|
Before Width: | Height: | Size: 587 B |
|
Before Width: | Height: | Size: 571 B |
@ -0,0 +1,211 @@ |
|||||
|
<template> |
||||
|
<div class="recommend-container"> |
||||
|
<div class="masker" @click="close"></div> |
||||
|
<div class="close-icon" @click="close"> |
||||
|
<img src="@/assets/images/shopDetail/close.svg" alt="" /> |
||||
|
</div> |
||||
|
|
||||
|
<div class="content"> |
||||
|
<div class="name-container"> |
||||
|
<div class="name">餐饮推荐</div> |
||||
|
<div class="line">/</div> |
||||
|
<div class="nameEn">DINING RECOMMENDATION</div> |
||||
|
</div> |
||||
|
<ScrollView v-if="list?.length" :pull-up="false" observe-image :list="list" class="shop-scroll" scrollbar> |
||||
|
<div v-masonry transition-duration="0.5s" :gutter="24" class="item" item-selector=".card"> |
||||
|
<div v-for="(item, index) in list" :key="index" v-masonry-tile class="card" @click="clickShop(item)"> |
||||
|
<img :src="item.fileUrl" alt="" class="imgs" /> |
||||
|
<div class="bottom"> |
||||
|
<div class="name">{{ switchLanguage(item, 'name') }}</div> |
||||
|
<div v-if="item.shopCode" class="pos"> |
||||
|
<div class="shopName">{{ switchLanguage(item, 'shopName') }}</div> |
||||
|
<div class="number"> |
||||
|
<img src="" alt="" /> |
||||
|
<div>{{ item.houseNumber }}</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</ScrollView> |
||||
|
</div> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script setup lang="ts"> |
||||
|
import { toRefs } from 'vue' |
||||
|
import { useRootStore } from '@/store/root' |
||||
|
import { useRouter } from 'vue-router' |
||||
|
import { useSwitchLanguage } from '@/composables/useSwitchLanguage' |
||||
|
import Brand from '@/utils/Class/Brand' |
||||
|
import ScrollView from '@/base/ScrollView/ScrollView.vue' |
||||
|
const store = useRootStore() |
||||
|
const { shopList } = toRefs(store) |
||||
|
const list: any = [] |
||||
|
const router = useRouter() |
||||
|
const { switchLanguage } = useSwitchLanguage() |
||||
|
|
||||
|
const emits = defineEmits(['close']) |
||||
|
function close() { |
||||
|
emits('close') |
||||
|
} |
||||
|
function clickShop(item: FeaturedList) { |
||||
|
if (item.shopCode) { |
||||
|
const arr = shopList.value.filter(shop => shop.shopCode === item.shopCode) |
||||
|
store.SET_SHOP(arr[0]) |
||||
|
store.SET_SHOW_DETAIL(true) |
||||
|
} else { |
||||
|
store.SET_SHOP( |
||||
|
new Brand({ |
||||
|
shopName: item.name, |
||||
|
floorOrder: item.floorOrder, |
||||
|
floor: item.floor, |
||||
|
logoUrl: item.fileUrl, |
||||
|
yaxis: item.point, |
||||
|
shopCode: item.shopCode, |
||||
|
shopNameEn: item.nameEn |
||||
|
}) |
||||
|
) |
||||
|
router.push('/nav') |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
|
|
||||
|
<style lang="scss" scoped> |
||||
|
.recommend-container { |
||||
|
position: fixed; |
||||
|
top: 0; |
||||
|
left: 0; |
||||
|
z-index: 1001; |
||||
|
width: 1920px; |
||||
|
height: 1080px; |
||||
|
background: rgb(142 144 145 / 50%); |
||||
|
backdrop-filter: blur(50px); |
||||
|
|
||||
|
.masker { |
||||
|
position: fixed; |
||||
|
top: 0; |
||||
|
left: 0; |
||||
|
z-index: 1; |
||||
|
width: 1920px; |
||||
|
height: 1080px; |
||||
|
} |
||||
|
.close-icon { |
||||
|
@include fl(center); |
||||
|
|
||||
|
position: fixed; |
||||
|
top: 72px; |
||||
|
right: 128px; |
||||
|
z-index: 3; |
||||
|
width: 100px; |
||||
|
height: 100px; |
||||
|
background: rgb(255 255 255 / 60%); |
||||
|
border: 2px solid #fff; |
||||
|
border-radius: 50px; |
||||
|
backdrop-filter: blur(20px); |
||||
|
img { |
||||
|
width: 48px; |
||||
|
height: 48px; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
.content { |
||||
|
position: fixed; |
||||
|
top: 112px; |
||||
|
left: 160px; |
||||
|
z-index: 2; |
||||
|
width: 1600px; |
||||
|
height: 856px; |
||||
|
padding-top: 48px; |
||||
|
padding-left: 74px; |
||||
|
background: #f5f5f5; |
||||
|
border-radius: 24px; |
||||
|
.name-container { |
||||
|
@include fl(); |
||||
|
.name { |
||||
|
font-size: 48px; |
||||
|
font-family: 'font_bold'; |
||||
|
color: #534f46; |
||||
|
font-style: normal; |
||||
|
font-weight: 700; |
||||
|
line-height: 56px; |
||||
|
} |
||||
|
.line { |
||||
|
margin: 0 20px; |
||||
|
font-size: 48px; |
||||
|
font-family: 'font_regular'; |
||||
|
color: #615c59; |
||||
|
font-style: normal; |
||||
|
font-weight: 400; |
||||
|
line-height: 56px; |
||||
|
} |
||||
|
.nameEn { |
||||
|
font-size: 20px; |
||||
|
font-family: 'font_regular'; |
||||
|
color: #615c59; |
||||
|
font-style: normal; |
||||
|
font-weight: 400; |
||||
|
line-height: 24px; |
||||
|
} |
||||
|
} |
||||
|
.shop-scroll { |
||||
|
overflow: hidden; |
||||
|
height: 712px; |
||||
|
.item { |
||||
|
display: block; |
||||
|
.card { |
||||
|
width: 354px; |
||||
|
margin-bottom: 12px; |
||||
|
.imgs { |
||||
|
width: 354px; |
||||
|
background: #fff; |
||||
|
border-radius: 16px 16px 0 0; |
||||
|
} |
||||
|
.bottom { |
||||
|
width: 354px; |
||||
|
padding: 20px 30px; |
||||
|
background: rgb(255 255 255 / 80%); |
||||
|
border-radius: 0 0 16px 16px; |
||||
|
.name { |
||||
|
@include no-wrap; |
||||
|
|
||||
|
width: 290px; |
||||
|
margin-bottom: 4px; |
||||
|
font-size: 20px; |
||||
|
font-family: font-bold; |
||||
|
color: rgb(0 0 0 / 80%); |
||||
|
font-weight: 700; |
||||
|
line-height: 28px; |
||||
|
} |
||||
|
.pos { |
||||
|
@include fl(space-between); |
||||
|
|
||||
|
font-size: 14px; |
||||
|
font-family: font-bold; |
||||
|
color: #8e9090; |
||||
|
font-weight: 700; |
||||
|
line-height: 22px; |
||||
|
.shopName { |
||||
|
@include no-wrap; |
||||
|
|
||||
|
max-width: 190px; |
||||
|
} |
||||
|
.number { |
||||
|
@include fl(); |
||||
|
@include no-wrap; |
||||
|
|
||||
|
max-width: 80px; |
||||
|
img { |
||||
|
width: 16px; |
||||
|
height: 16px; |
||||
|
margin-right: 8px; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
</style> |
||||
@ -1,19 +0,0 @@ |
|||||
import { ref, shallowRef, toRefs } from 'vue' |
|
||||
import { useRootStore } from '@/store/root' |
|
||||
import { hideMapDialog } from '@/composables/useInitMap' |
|
||||
export const useArea = () => { |
|
||||
const store = useRootStore() |
|
||||
const { shopList, device } = toRefs(store) |
|
||||
|
|
||||
const areaName = ref('全部区域') //楼层选中索引
|
|
||||
const selectedShopListA = shallowRef<Shop[]>(shopList.value.filter(item => item.floor === device.value.floor)) //选中楼层的店铺列表
|
|
||||
|
|
||||
// 切换楼层
|
|
||||
function changeArea(name: string) { |
|
||||
areaName.value = name |
|
||||
selectedShopListA.value = shopList.value.filter(item => item.floor === name) |
|
||||
hideMapDialog() |
|
||||
} |
|
||||
|
|
||||
return { areaName, selectedShopListA, changeArea } |
|
||||
} |
|
||||
@ -0,0 +1,8 @@ |
|||||
|
import { request } from '@/http/http' |
||||
|
import { PREFIX } from '@/enums' |
||||
|
|
||||
|
//获取艺术列表
|
||||
|
export const getArtList = () => request<Art[]>({ url: `${PREFIX.STATIC_URL}/JSON/getArtList.json` }) |
||||
|
|
||||
|
// 获取艺术装置列表
|
||||
|
export const getArtWorkList = () => request<ArtPlace[]>({ url: `${PREFIX.STATIC_URL}/JSON/getArtWorkList.json` }) |
||||
@ -0,0 +1,4 @@ |
|||||
|
import { request } from '../../http' |
||||
|
import { PREFIX } from '@/enums' |
||||
|
// 菜单列表
|
||||
|
export const getMenuList = () => request<MenuType[]>({ url: `${PREFIX.STATIC_URL}/JSON/getHomeBtn.json` }) |
||||
@ -1,7 +1,8 @@ |
|||||
import { request } from '../../http' |
import { request } from '../../http' |
||||
import { getPrefixUrl } from '../../http' |
import { getPrefixUrl } from '../../http' |
||||
|
import { PREFIX } from '@/enums' |
||||
//找车
|
//找车
|
||||
export const getFindCar = (license: string) => |
export const getFindCar = (license: string) => |
||||
request<CarInfo>({ url: `${getPrefixUrl().interfaceUrl}/ThirdPark/GetPlaceInfo?carCode=${license}` }) |
request<CarInfo>({ url: `${getPrefixUrl().interfaceUrl}/ThirdPark/GetPlaceInfo?carCode=${license}` }) |
||||
|
|
||||
export const getParkingInfo = () => request<ParkingInfo>({ url: `/JSON/getParkingInfo.json` }) |
|
||||
|
export const getParkingInfo = () => request<ParkingInfo>({ url: `${PREFIX.STATIC_URL}/JSON/getParkingInfo.json` }) |
||||
|
|||||
@ -0,0 +1,5 @@ |
|||||
|
import { request } from '@/http/http' |
||||
|
import { PREFIX } from '@/enums' |
||||
|
|
||||
|
//获取地图图示列表
|
||||
|
export const getPlaceList = () => request<PlaceType[]>({ url: `${PREFIX.STATIC_URL}/JSON/getPlaceList.json` }) |
||||
@ -1,7 +1,10 @@ |
|||||
import { request } from '../../http' |
import { request } from '../../http' |
||||
import type { Query, Clickquery } from './types' |
import type { Query, Clickquery } from './types' |
||||
|
import { getPrefixUrl } from '@/http/http' |
||||
//数据统计
|
//数据统计
|
||||
export const getStatistics = (data: Query) => request({ url: `/analysis/v1/web/deviceUseClickDataUpload`, data, method: 'post' }) |
|
||||
|
export const getStatistics = (data: Query) => |
||||
|
request({ url: `${getPrefixUrl().interfaceUrl}/analysis/v1/web/deviceUseClickDataUpload`, data, method: 'post' }) |
||||
|
|
||||
//数据统计(模块点击、活动点击、使用人次点击)
|
//数据统计(模块点击、活动点击、使用人次点击)
|
||||
export const getGuideClickDataUpload = (data: Clickquery) => request({ url: '/analysis/v1/web/guideClickDataUpload', data, method: 'post' }) |
|
||||
|
export const getGuideClickDataUpload = (data: Clickquery) => |
||||
|
request({ url: `${getPrefixUrl().interfaceUrl}/analysis/v1/web/guideClickDataUpload`, data, method: 'post' }) |
||||
|
|||||
@ -0,0 +1,23 @@ |
|||||
|
declare type Art = { |
||||
|
id: number |
||||
|
title: string |
||||
|
content: { |
||||
|
name: string |
||||
|
nameEn: string |
||||
|
point: string |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
declare type ArtPlace = { |
||||
|
id: number |
||||
|
title: string |
||||
|
content: { |
||||
|
name: string |
||||
|
nameEn: string |
||||
|
file_code: string[] |
||||
|
point: string |
||||
|
content: string |
||||
|
contentEn: string |
||||
|
icon: string[] |
||||
|
} |
||||
|
} |
||||