@tplc/business 0.2.4 → 0.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -0
- package/components/lcb-calendar-search/lcb-calendar-search.vue +33 -3
- package/components/lcb-list/components/FilterList/index.vue +7 -17
- package/components/lcb-list/lcb-list.vue +3 -1
- package/components/lcb-list/types.ts +1 -0
- package/components/lcb-map/lcb-map.vue +203 -0
- package/components/lcb-map/types.ts +3 -0
- package/components/lcb-vip/lcb-vip.vue +1 -1
- package/global.d.ts +1 -0
- package/hooks/useAutoHeight.ts +20 -0
- package/iconfonts/index.css +23 -3
- package/package.json +1 -1
- package/types/api/user.d.ts +0 -6
- package/types/components/lcb-action-view/lcb-action-view.vue.d.ts +0 -41
- package/types/components/lcb-action-view/types.d.ts +0 -33
- package/types/components/lcb-advert/lcb-advert.vue.d.ts +0 -28
- package/types/components/lcb-advert/types.d.ts +0 -3
- package/types/components/lcb-area-picker/api/index.d.ts +0 -48
- package/types/components/lcb-area-picker/lcb-area-picker.vue.d.ts +0 -79
- package/types/components/lcb-area-picker/types.d.ts +0 -3
- package/types/components/lcb-banner/lcb-banner.vue.d.ts +0 -62
- package/types/components/lcb-banner/types.d.ts +0 -47
- package/types/components/lcb-banner-block/lcb-banner-block.vue.d.ts +0 -56
- package/types/components/lcb-banner-block/types.d.ts +0 -18
- package/types/components/lcb-block/lcb-block.vue.d.ts +0 -74
- package/types/components/lcb-block/types.d.ts +0 -40
- package/types/components/lcb-button/lcb-button.vue.d.ts +0 -42
- package/types/components/lcb-button/types.d.ts +0 -7
- package/types/components/lcb-calendar/api/index.d.ts +0 -16
- package/types/components/lcb-calendar/lcb-calendar.vue.d.ts +0 -137
- package/types/components/lcb-calendar-search/lcb-calendar-search.vue.d.ts +0 -64
- package/types/components/lcb-calendar-search/types.d.ts +0 -4
- package/types/components/lcb-city-select/api/index.d.ts +0 -32
- package/types/components/lcb-city-select/components/lcb-city-letter/index.vue.d.ts +0 -53
- package/types/components/lcb-city-select/components/lcb-city-list/index.vue.d.ts +0 -48
- package/types/components/lcb-city-select/components/lcb-city-list/types.d.ts +0 -5
- package/types/components/lcb-city-select/lcb-city-select.vue.d.ts +0 -77
- package/types/components/lcb-city-select/types.d.ts +0 -5
- package/types/components/lcb-dynamic-data/lcb-dynamic-data.vue.d.ts +0 -44
- package/types/components/lcb-dynamic-data/types.d.ts +0 -7
- package/types/components/lcb-gap/lcb-gap.vue.d.ts +0 -42
- package/types/components/lcb-gap/types.d.ts +0 -7
- package/types/components/lcb-grid/lcb-grid.vue.d.ts +0 -74
- package/types/components/lcb-grid/types.d.ts +0 -16
- package/types/components/lcb-home-search/lcb-home-search.vue.d.ts +0 -71
- package/types/components/lcb-home-search/types.d.ts +0 -7
- package/types/components/lcb-image/Image/index.vue.d.ts +0 -56
- package/types/components/lcb-image/lcb-image.vue.d.ts +0 -70
- package/types/components/lcb-image/types.d.ts +0 -14
- package/types/components/lcb-img-nav/lcb-img-nav.vue.d.ts +0 -99
- package/types/components/lcb-img-nav/types.d.ts +0 -46
- package/types/components/lcb-list/api.d.ts +0 -60
- package/types/components/lcb-list/components/ActionView/index.vue.d.ts +0 -34
- package/types/components/lcb-list/components/ComponentGroup/index.vue.d.ts +0 -32
- package/types/components/lcb-list/components/ComponentGroup/type.d.ts +0 -5
- package/types/components/lcb-list/components/FilterList/index.vue.d.ts +0 -48
- package/types/components/lcb-list/components/FilterList/type.d.ts +0 -11
- package/types/components/lcb-list/components/FilterSelect/index.vue.d.ts +0 -41
- package/types/components/lcb-list/components/FilterSelect/type.d.ts +0 -2
- package/types/components/lcb-list/components/FilterSlider/index.vue.d.ts +0 -36
- package/types/components/lcb-list/components/FilterSlider/types.d.ts +0 -2
- package/types/components/lcb-list/components/FilterTabs/index.vue.d.ts +0 -36
- package/types/components/lcb-list/components/FilterTabs/type.d.ts +0 -5
- package/types/components/lcb-list/components/FilterView/index.vue.d.ts +0 -36
- package/types/components/lcb-list/components/FilterView/type.d.ts +0 -7
- package/types/components/lcb-list/components/SelectTagView/index.vue.d.ts +0 -43
- package/types/components/lcb-list/components/TagSelect/index.vue.d.ts +0 -39
- package/types/components/lcb-list/components/TagSelect/type.d.ts +0 -4
- package/types/components/lcb-list/components/TreeSelect/index.vue.d.ts +0 -41
- package/types/components/lcb-list/components/TreeSelect/type.d.ts +0 -2
- package/types/components/lcb-list/hooks/useSelect.d.ts +0 -25
- package/types/components/lcb-list/lcb-list.vue.d.ts +0 -66
- package/types/components/lcb-list/types.d.ts +0 -25
- package/types/components/lcb-nav/Search/index.vue.d.ts +0 -44
- package/types/components/lcb-nav/Title/index.vue.d.ts +0 -28
- package/types/components/lcb-nav/lcb-nav.vue.d.ts +0 -92
- package/types/components/lcb-nav/types.d.ts +0 -41
- package/types/components/lcb-notice/api/index.d.ts +0 -19
- package/types/components/lcb-notice/lcb-notice.vue.d.ts +0 -77
- package/types/components/lcb-notice/types.d.ts +0 -14
- package/types/components/lcb-product/lcb-product.vue.d.ts +0 -67
- package/types/components/lcb-product/types.d.ts +0 -10
- package/types/components/lcb-product-item/components/ItemValue.vue.d.ts +0 -91
- package/types/components/lcb-product-item/lcb-product-item.vue.d.ts +0 -169
- package/types/components/lcb-product-item/types.d.ts +0 -65
- package/types/components/lcb-rich-text/lcb-rich-text.vue.d.ts +0 -44
- package/types/components/lcb-rich-text/types.d.ts +0 -4
- package/types/components/lcb-swiper/lcb-swiper.vue.d.ts +0 -118
- package/types/components/lcb-tags/Tag/index.vue.d.ts +0 -44
- package/types/components/lcb-tags/lcb-tags.vue.d.ts +0 -59
- package/types/components/lcb-tags/types.d.ts +0 -13
- package/types/components/lcb-text/lcb-text.vue.d.ts +0 -42
- package/types/components/lcb-text/types.d.ts +0 -4
- package/types/components/lcb-title/lcb-title.vue.d.ts +0 -94
- package/types/components/lcb-title/types.d.ts +0 -22
- package/types/components/lcb-user-order/lcb-user-order.vue.d.ts +0 -62
- package/types/components/lcb-user-order/types.d.ts +0 -27
- package/types/components/lcb-user-top/Nums/index.vue.d.ts +0 -32
- package/types/components/lcb-user-top/lcb-user-top.vue.d.ts +0 -98
- package/types/components/lcb-user-top/types.d.ts +0 -38
- package/types/components/lcb-video/lcb-video.vue.d.ts +0 -56
- package/types/components/lcb-video/types.d.ts +0 -10
- package/types/components/lcb-vip/api/index.d.ts +0 -34
- package/types/components/lcb-vip/components/InfoDialog/index.vue.d.ts +0 -38
- package/types/components/lcb-vip/lcb-vip.vue.d.ts +0 -68
- package/types/components/lcb-vip/types.d.ts +0 -8
- package/types/constants.d.ts +0 -5
- package/types/hooks/useLocation.api.d.ts +0 -9
- package/types/hooks/useLocation.d.ts +0 -7
- package/types/hooks/usePageScroll.d.ts +0 -2
- package/types/hooks/useUpload.api.d.ts +0 -12
- package/types/hooks/useUpload.d.ts +0 -21
- package/types/utils/auth.d.ts +0 -2
- package/types/utils/transform.d.ts +0 -5
- package/types/utils/utils.d.ts +0 -3
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,29 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
### [0.2.6](http://gitlab888.30jia.com.cn/bhBank/zero-code-pro/compare/v0.2.5...v0.2.6) (2024-12-03)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### ✨ Features | 新功能
|
|
9
|
+
|
|
10
|
+
* version update ([4783224](http://gitlab888.30jia.com.cn/bhBank/zero-code-pro/commit/47832248c1dad6d90b7abc95fdecfc091ea5ad71))
|
|
11
|
+
* 更新发布指令 ([308d4e5](http://gitlab888.30jia.com.cn/bhBank/zero-code-pro/commit/308d4e57457e38a85478016811984f1075e76dfc))
|
|
12
|
+
|
|
13
|
+
### [0.2.5](http://gitlab888.30jia.com.cn/bhBank/zero-code-pro/compare/v0.2.3...v0.2.5) (2024-12-02)
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
### 🚀 Chore | 构建/工程依赖/工具
|
|
17
|
+
|
|
18
|
+
* **release:** 0.2.4 ([10b9b0f](http://gitlab888.30jia.com.cn/bhBank/zero-code-pro/commit/10b9b0f905f3f29d13f4ebff43db68baeabc8ec1))
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
### ✨ Features | 新功能
|
|
22
|
+
|
|
23
|
+
* 修改icon ([9fc14e0](http://gitlab888.30jia.com.cn/bhBank/zero-code-pro/commit/9fc14e02d6a2ac3030ab86d1c5460e40929b51eb))
|
|
24
|
+
* 新增lcb-search params ([f80d853](http://gitlab888.30jia.com.cn/bhBank/zero-code-pro/commit/f80d853bfb96c24f09ea16b054ee8e83cc18690e))
|
|
25
|
+
* 新增map ([4e97876](http://gitlab888.30jia.com.cn/bhBank/zero-code-pro/commit/4e97876c4f74632bb3b2c7c106a21024d33d57bd))
|
|
26
|
+
* 订单跳转 ([3e89c5c](http://gitlab888.30jia.com.cn/bhBank/zero-code-pro/commit/3e89c5c21b20c200e75037422ff3d9453b80225b))
|
|
27
|
+
|
|
5
28
|
### [0.2.4](http://gitlab888.30jia.com.cn/bhBank/zero-code-pro/compare/v0.2.2...v0.2.4) (2024-11-28)
|
|
6
29
|
|
|
7
30
|
|
|
@@ -26,7 +26,14 @@
|
|
|
26
26
|
<view class="text-#999999">{{ placeholder }}</view>
|
|
27
27
|
</view>
|
|
28
28
|
</view>
|
|
29
|
-
<wd-icon
|
|
29
|
+
<wd-icon
|
|
30
|
+
name="dianwei"
|
|
31
|
+
class-prefix="lcb"
|
|
32
|
+
size="36rpx"
|
|
33
|
+
color="#333"
|
|
34
|
+
custom-class="ml-4"
|
|
35
|
+
@click="toMap"
|
|
36
|
+
/>
|
|
30
37
|
</lcb-block>
|
|
31
38
|
</template>
|
|
32
39
|
|
|
@@ -34,9 +41,10 @@
|
|
|
34
41
|
import { useTranslate } from '@tplc/wot'
|
|
35
42
|
import dayjs from 'dayjs/esm'
|
|
36
43
|
import useLocation from '../../hooks/useLocation'
|
|
37
|
-
import { ref } from 'vue'
|
|
44
|
+
import { inject, Ref, ref, watch } from 'vue'
|
|
38
45
|
import { LcbCalendarSearchProps } from './types'
|
|
39
46
|
import { ChildHotAddress } from '../lcb-city-select/api'
|
|
47
|
+
import { FORM_KEY } from '../../constants'
|
|
40
48
|
defineOptions({
|
|
41
49
|
name: 'LcbCalendarSearch',
|
|
42
50
|
options: {
|
|
@@ -52,11 +60,33 @@ withDefaults(defineProps<LcbCalendarSearchProps>(), {
|
|
|
52
60
|
icon: 'search',
|
|
53
61
|
})
|
|
54
62
|
const addressCity = ref<ChildHotAddress>()
|
|
55
|
-
|
|
63
|
+
const form = inject<Ref<Record<string, any>>>(FORM_KEY)
|
|
56
64
|
const dayRange = ref([dayjs().valueOf(), dayjs().add(1, 'day').valueOf()])
|
|
57
65
|
const { translate } = useTranslate()
|
|
58
66
|
const { getLocation, userLocation } = useLocation()
|
|
67
|
+
watch(
|
|
68
|
+
() => addressCity.value,
|
|
69
|
+
(val) => {
|
|
70
|
+
form!.value = {
|
|
71
|
+
...form!.value,
|
|
72
|
+
hotAddressId: val?.hotAddressId,
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
)
|
|
76
|
+
watch(
|
|
77
|
+
() => dayRange.value,
|
|
78
|
+
(val) => {
|
|
79
|
+
form!.value = {
|
|
80
|
+
...form!.value,
|
|
81
|
+
checkInDate: dayjs(val[0]).format('YYYY-MM-DD'),
|
|
82
|
+
checkOutDate: dayjs(val[1]).format('YYYY-MM-DD'),
|
|
83
|
+
}
|
|
84
|
+
},
|
|
85
|
+
)
|
|
59
86
|
getLocation()
|
|
87
|
+
const toMap = () => {
|
|
88
|
+
uni.$lcb.navigateTo(`/pages/map/index?form=${JSON.stringify(form?.value)}`)
|
|
89
|
+
}
|
|
60
90
|
</script>
|
|
61
91
|
|
|
62
92
|
<style lang="scss" scoped>
|
|
@@ -15,11 +15,12 @@
|
|
|
15
15
|
</template>
|
|
16
16
|
|
|
17
17
|
<script setup lang="ts">
|
|
18
|
-
import {
|
|
18
|
+
import { inject, Ref, ref, watch, watchEffect } from 'vue'
|
|
19
19
|
import useZPaging from 'z-paging/components/z-paging/js/hooks/useZPaging'
|
|
20
|
-
import {
|
|
20
|
+
import { FORM_KEY } from '../../../../constants'
|
|
21
21
|
import { formatJson } from '../../../../utils/utils'
|
|
22
|
-
import {
|
|
22
|
+
import { LcbFilterListProps } from './type'
|
|
23
|
+
import useAutoHeight from '../../../../hooks/useAutoHeight'
|
|
23
24
|
|
|
24
25
|
defineOptions({
|
|
25
26
|
name: 'FilterList',
|
|
@@ -32,8 +33,8 @@ defineOptions({
|
|
|
32
33
|
const props = defineProps<LcbFilterListProps>()
|
|
33
34
|
const dataList = ref<unknown[]>([])
|
|
34
35
|
const paging = ref()
|
|
35
|
-
const
|
|
36
|
-
const
|
|
36
|
+
const height = useAutoHeight()
|
|
37
|
+
const form = inject<Ref<Record<string, any>>>(FORM_KEY)
|
|
37
38
|
useZPaging(paging)
|
|
38
39
|
const modelValue = defineModel<unknown[]>({
|
|
39
40
|
default: [],
|
|
@@ -83,7 +84,7 @@ const queryList = async (page: number, limit: number) => {
|
|
|
83
84
|
try {
|
|
84
85
|
const { data } = await uni.$lcb.http.post(props.url, {
|
|
85
86
|
...props.baseParam,
|
|
86
|
-
...
|
|
87
|
+
...form?.value,
|
|
87
88
|
pageSearch: {
|
|
88
89
|
limit,
|
|
89
90
|
page,
|
|
@@ -94,17 +95,6 @@ const queryList = async (page: number, limit: number) => {
|
|
|
94
95
|
paging.value.complete(false)
|
|
95
96
|
}
|
|
96
97
|
}
|
|
97
|
-
const { proxy } = getCurrentInstance() as any
|
|
98
|
-
const isTabBar = uni.$lcb.getIsTabbar()
|
|
99
|
-
onMounted(() => {
|
|
100
|
-
getRect(`#pagingTop`, false, proxy).then((res) => {
|
|
101
|
-
if (!isTabBar || isH5) {
|
|
102
|
-
height.value = `${viewPageHeight - (res.top || 0)}px`
|
|
103
|
-
} else {
|
|
104
|
-
height.value = `calc(${viewPageHeight - (res.top || 0)}px - var(--window-bottom) - env(safe-area-inset-bottom))`
|
|
105
|
-
}
|
|
106
|
-
})
|
|
107
|
-
})
|
|
108
98
|
</script>
|
|
109
99
|
<style lang="scss" scoped>
|
|
110
100
|
.action-view {
|
|
@@ -19,9 +19,10 @@
|
|
|
19
19
|
/>
|
|
20
20
|
|
|
21
21
|
<FilterList
|
|
22
|
-
v-bind="{ ...info.listInfo, listType,
|
|
22
|
+
v-bind="{ ...info.listInfo, listType, ...attrs }"
|
|
23
23
|
:autoHeight="!isSticky"
|
|
24
24
|
v-model="items"
|
|
25
|
+
v-if="mode === 'list'"
|
|
25
26
|
>
|
|
26
27
|
<slot name="list" :items="items" v-if="$slots.list" />
|
|
27
28
|
<template v-else>
|
|
@@ -66,6 +67,7 @@ const props = withDefaults(defineProps<LcbListProps>(), {
|
|
|
66
67
|
styleMode: 'default',
|
|
67
68
|
listType: 'list',
|
|
68
69
|
isSticky: true,
|
|
70
|
+
mode: 'list',
|
|
69
71
|
// @ts-ignore
|
|
70
72
|
pageListProps: () => ({
|
|
71
73
|
productProps: {
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<view class="flex-col flex h-full w-full">
|
|
3
|
+
<view class="flex-1 h-0 relative">
|
|
4
|
+
<map
|
|
5
|
+
style="width: 100%; height: 100%"
|
|
6
|
+
:latitude="form.latitude"
|
|
7
|
+
:longitude="form.longitude"
|
|
8
|
+
:markers="info.covers"
|
|
9
|
+
show-location
|
|
10
|
+
show-compass
|
|
11
|
+
show-scale
|
|
12
|
+
@regionchange="onRegionChange"
|
|
13
|
+
@markertap="onMarkerTap"
|
|
14
|
+
/>
|
|
15
|
+
<image
|
|
16
|
+
src="../../static/images/2.png"
|
|
17
|
+
class="w-36rpx h-66rpx absolute z-1 left-0 top-0 m-auto bottom-0 right-0"
|
|
18
|
+
/>
|
|
19
|
+
<view class="absolute bottom-0 left-0 p-3 w-full box-border" v-if="data?.[current]">
|
|
20
|
+
<view class="card w-full !p-0">
|
|
21
|
+
<lcb-product-item :item="data?.[current]" />
|
|
22
|
+
</view>
|
|
23
|
+
</view>
|
|
24
|
+
</view>
|
|
25
|
+
</view>
|
|
26
|
+
</template>
|
|
27
|
+
|
|
28
|
+
<script lang="ts" setup>
|
|
29
|
+
import { FORM_KEY } from '@tplc/business/constants'
|
|
30
|
+
import { getJsonStrFirstUrl } from 'utils/transform'
|
|
31
|
+
import { reactive, inject, ref } from 'vue'
|
|
32
|
+
import { LcbMapProps } from './types'
|
|
33
|
+
export interface MapMarker {
|
|
34
|
+
id: number
|
|
35
|
+
name?: string
|
|
36
|
+
longitude: number
|
|
37
|
+
latitude: number
|
|
38
|
+
iconPath: string
|
|
39
|
+
width: number
|
|
40
|
+
height: number
|
|
41
|
+
poiId: string
|
|
42
|
+
anchor?: {
|
|
43
|
+
x: number
|
|
44
|
+
y: number
|
|
45
|
+
}
|
|
46
|
+
callout?: {
|
|
47
|
+
content: string
|
|
48
|
+
color: string
|
|
49
|
+
fontSize: number
|
|
50
|
+
borderRadius: number
|
|
51
|
+
bgColor: string
|
|
52
|
+
padding: number
|
|
53
|
+
display: 'ALWAYS' | 'BYCLICK'
|
|
54
|
+
}
|
|
55
|
+
zIndex?: number
|
|
56
|
+
}
|
|
57
|
+
defineOptions({
|
|
58
|
+
name: 'LcbMap',
|
|
59
|
+
options: {
|
|
60
|
+
addGlobalClass: true,
|
|
61
|
+
virtualHost: true,
|
|
62
|
+
styleIsolation: 'shared',
|
|
63
|
+
},
|
|
64
|
+
})
|
|
65
|
+
defineProps<LcbMapProps>()
|
|
66
|
+
const scaleRadius: Record<string, number> = {
|
|
67
|
+
3: 1_000_000,
|
|
68
|
+
4: 500_000,
|
|
69
|
+
5: 200_000,
|
|
70
|
+
6: 100_000,
|
|
71
|
+
7: 50_000,
|
|
72
|
+
8: 25_000,
|
|
73
|
+
9: 20_000,
|
|
74
|
+
10: 10_000,
|
|
75
|
+
11: 5_000,
|
|
76
|
+
12: 2_000,
|
|
77
|
+
13: 1_000,
|
|
78
|
+
14: 500,
|
|
79
|
+
15: 200,
|
|
80
|
+
16: 100,
|
|
81
|
+
17: 50,
|
|
82
|
+
18: 20,
|
|
83
|
+
19: 10,
|
|
84
|
+
20: 5,
|
|
85
|
+
}
|
|
86
|
+
const info = reactive({
|
|
87
|
+
covers: [] as MapMarker[],
|
|
88
|
+
})
|
|
89
|
+
const form = inject<Record<string, any>>(FORM_KEY, {})
|
|
90
|
+
const current = ref(0)
|
|
91
|
+
const data = ref<any[]>([])
|
|
92
|
+
const getData = async () => {
|
|
93
|
+
const { data: list } = await uni.$lcb.http.post<any[]>('/productInfo/map', form.value)
|
|
94
|
+
data.value = list
|
|
95
|
+
getCurrentData(list[0], list.slice(1, list.length))
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
const getLocation = () => {
|
|
99
|
+
uni.getLocation({
|
|
100
|
+
type: 'gcj02',
|
|
101
|
+
success: (res) => {
|
|
102
|
+
form.value.userLongitude = res.longitude
|
|
103
|
+
form.value.userLatitude = res.latitude
|
|
104
|
+
form.value.mapLatitude = res.latitude
|
|
105
|
+
form.value.mapLongitude = res.longitude
|
|
106
|
+
getData()
|
|
107
|
+
},
|
|
108
|
+
fail: () => {
|
|
109
|
+
uni.showToast({
|
|
110
|
+
title: '定位失败',
|
|
111
|
+
icon: 'none',
|
|
112
|
+
})
|
|
113
|
+
},
|
|
114
|
+
})
|
|
115
|
+
}
|
|
116
|
+
getLocation()
|
|
117
|
+
const onRegionChange = (e: {
|
|
118
|
+
type: string
|
|
119
|
+
detail: {
|
|
120
|
+
scale: number
|
|
121
|
+
centerLocation: {
|
|
122
|
+
latitude: number
|
|
123
|
+
longitude: number
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}) => {
|
|
127
|
+
if (e.type === 'end') {
|
|
128
|
+
form.value.scale = e.detail.scale
|
|
129
|
+
form.value.mapLatitude = e.detail.centerLocation.latitude
|
|
130
|
+
form.value.mapLongitude = e.detail.centerLocation.longitude
|
|
131
|
+
form.value.mapViewRadius = scaleRadius[e.detail.scale]
|
|
132
|
+
getData()
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
const onMarkerTap = (e: { markerId: number }) => {
|
|
136
|
+
const marker = info.covers.find((item) => item?.id === e.markerId)
|
|
137
|
+
if (marker) {
|
|
138
|
+
const item = data.value?.find((item) => item?.poiId === marker.poiId)
|
|
139
|
+
const firstMarker = info.covers[0]!
|
|
140
|
+
getCurrentData(item, [
|
|
141
|
+
{
|
|
142
|
+
...firstMarker,
|
|
143
|
+
id: e.markerId,
|
|
144
|
+
iconPath: '../../static/images/4.png',
|
|
145
|
+
width: 26,
|
|
146
|
+
height: 26,
|
|
147
|
+
},
|
|
148
|
+
...info.covers.filter((item) => ![1, 2, e.markerId].includes(item.id)),
|
|
149
|
+
])
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
const getCurrentData = (item: any, list: MapMarker[]) => {
|
|
153
|
+
uni.downloadFile({
|
|
154
|
+
url:
|
|
155
|
+
getJsonStrFirstUrl(item.coverImg) +
|
|
156
|
+
'?x-oss-process=image/resize,m_fixed,w_64,h_64/circle,r_100/format,png',
|
|
157
|
+
success: (res) => {
|
|
158
|
+
info.covers = [
|
|
159
|
+
{
|
|
160
|
+
id: 1,
|
|
161
|
+
iconPath: '../../static/images/3.png',
|
|
162
|
+
width: 42,
|
|
163
|
+
height: 49,
|
|
164
|
+
anchor: {
|
|
165
|
+
x: 0.5,
|
|
166
|
+
y: 0.78,
|
|
167
|
+
},
|
|
168
|
+
poiId: item.poiId,
|
|
169
|
+
latitude: item.latitude,
|
|
170
|
+
longitude: item.longitude,
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
zIndex: 2,
|
|
174
|
+
iconPath: res.tempFilePath,
|
|
175
|
+
width: 34,
|
|
176
|
+
height: 34,
|
|
177
|
+
id: 2,
|
|
178
|
+
poiId: item.poiId,
|
|
179
|
+
latitude: item.latitude,
|
|
180
|
+
longitude: item.longitude,
|
|
181
|
+
},
|
|
182
|
+
...list.map((item: any, index: number) => ({
|
|
183
|
+
id: index + 3,
|
|
184
|
+
iconPath: '../../static/images/4.png',
|
|
185
|
+
width: 26,
|
|
186
|
+
height: 26,
|
|
187
|
+
poiId: item.poiId,
|
|
188
|
+
latitude: item.latitude,
|
|
189
|
+
longitude: item.longitude,
|
|
190
|
+
})),
|
|
191
|
+
]
|
|
192
|
+
console.log(item.poiId, data.value)
|
|
193
|
+
current.value = data.value?.findIndex?.(({ poiId }) => item.poiId === poiId) || -1
|
|
194
|
+
},
|
|
195
|
+
})
|
|
196
|
+
}
|
|
197
|
+
</script>
|
|
198
|
+
|
|
199
|
+
<style>
|
|
200
|
+
page {
|
|
201
|
+
background-color: #f7f7f7;
|
|
202
|
+
}
|
|
203
|
+
</style>
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
<wd-icon classPrefix="lcb" name="xiangyou" size="24rpx" />
|
|
24
24
|
</view>
|
|
25
25
|
<view
|
|
26
|
-
class="absolute text-2.5 w-662rpx leading-8 bottom-
|
|
26
|
+
class="absolute text-2.5 w-662rpx leading-8 bottom-3 left-2.5 flex items-center gap-0.5 px-2.5 box-border"
|
|
27
27
|
@click="navigateTo('/pages-sub/vip/upgrade-guide')"
|
|
28
28
|
>
|
|
29
29
|
<view class="flex-1 truncate">
|
package/global.d.ts
CHANGED
|
@@ -18,6 +18,7 @@ declare module 'vue' {
|
|
|
18
18
|
'lcb-image': (typeof import('./types/components/lcb-image/lcb-image.vue'))['default']
|
|
19
19
|
'lcb-img-nav': (typeof import('./types/components/lcb-img-nav/lcb-img-nav.vue'))['default']
|
|
20
20
|
'lcb-list': (typeof import('./types/components/lcb-list/lcb-list.vue'))['default']
|
|
21
|
+
'lcb-map': (typeof import('./types/components/lcb-map/lcb-map.vue'))['default']
|
|
21
22
|
'lcb-nav': (typeof import('./types/components/lcb-nav/lcb-nav.vue'))['default']
|
|
22
23
|
'lcb-notice': (typeof import('./types/components/lcb-notice/lcb-notice.vue'))['default']
|
|
23
24
|
'lcb-product': (typeof import('./types/components/lcb-product/lcb-product.vue'))['default']
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { getRect, isH5 } from '@tplc/wot/components/common/util'
|
|
2
|
+
import { getCurrentInstance, onMounted, ref } from 'vue'
|
|
3
|
+
|
|
4
|
+
const useAutoHeight = () => {
|
|
5
|
+
const { proxy } = getCurrentInstance() as any
|
|
6
|
+
const isTabBar = uni.$lcb.getIsTabbar()
|
|
7
|
+
const viewPageHeight = uni.getSystemInfoSync().windowHeight
|
|
8
|
+
const height = ref('')
|
|
9
|
+
onMounted(() => {
|
|
10
|
+
getRect(`#pagingTop`, false, proxy).then((res) => {
|
|
11
|
+
if (!isTabBar || isH5) {
|
|
12
|
+
height.value = `${viewPageHeight - (res.top || 0)}px`
|
|
13
|
+
} else {
|
|
14
|
+
height.value = `calc(${viewPageHeight - (res.top || 0)}px - var(--window-bottom) - env(safe-area-inset-bottom))`
|
|
15
|
+
}
|
|
16
|
+
})
|
|
17
|
+
})
|
|
18
|
+
return height
|
|
19
|
+
}
|
|
20
|
+
export default useAutoHeight
|
package/iconfonts/index.css
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
@font-face {
|
|
2
2
|
font-family: 'lcb'; /* Project id 4710234 */
|
|
3
3
|
src:
|
|
4
|
-
url('//at.alicdn.com/t/c/
|
|
5
|
-
url('//at.alicdn.com/t/c/
|
|
6
|
-
url('//at.alicdn.com/t/c/
|
|
4
|
+
url('//at.alicdn.com/t/c/font_4710234_c6jvaimqgn5.woff2?t=1733119653266') format('woff2'),
|
|
5
|
+
url('//at.alicdn.com/t/c/font_4710234_c6jvaimqgn5.woff?t=1733119653266') format('woff'),
|
|
6
|
+
url('//at.alicdn.com/t/c/font_4710234_c6jvaimqgn5.ttf?t=1733119653266') format('truetype');
|
|
7
7
|
}
|
|
8
8
|
|
|
9
9
|
.lcb {
|
|
@@ -14,6 +14,26 @@
|
|
|
14
14
|
-moz-osx-font-smoothing: grayscale;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
+
.lcb-dingwei:before {
|
|
18
|
+
content: '\e66c';
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.lcb-you:before {
|
|
22
|
+
content: '\e66d';
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.lcb-youbian:before {
|
|
26
|
+
content: '\e66e';
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.lcb-zuobian:before {
|
|
30
|
+
content: '\e66f';
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.lcb-zuo:before {
|
|
34
|
+
content: '\e670';
|
|
35
|
+
}
|
|
36
|
+
|
|
17
37
|
.lcb-a-:before {
|
|
18
38
|
content: '\e66b';
|
|
19
39
|
}
|
package/package.json
CHANGED
package/types/api/user.d.ts
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { LcbActionViewProps } from './types'
|
|
2
|
-
declare function __VLS_template(): {
|
|
3
|
-
default?(_: {}): any
|
|
4
|
-
}
|
|
5
|
-
declare const __VLS_component: import('vue').DefineComponent<
|
|
6
|
-
__VLS_TypePropsToOption<LcbActionViewProps>,
|
|
7
|
-
{},
|
|
8
|
-
unknown,
|
|
9
|
-
{},
|
|
10
|
-
{},
|
|
11
|
-
import('vue').ComponentOptionsMixin,
|
|
12
|
-
import('vue').ComponentOptionsMixin,
|
|
13
|
-
any,
|
|
14
|
-
string,
|
|
15
|
-
import('vue').PublicProps,
|
|
16
|
-
any,
|
|
17
|
-
{},
|
|
18
|
-
{}
|
|
19
|
-
>
|
|
20
|
-
declare const _default: __VLS_WithTemplateSlots<
|
|
21
|
-
typeof __VLS_component,
|
|
22
|
-
ReturnType<typeof __VLS_template>
|
|
23
|
-
>
|
|
24
|
-
export default _default
|
|
25
|
-
|
|
26
|
-
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
27
|
-
new (): {
|
|
28
|
-
$slots: S
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T
|
|
32
|
-
type __VLS_TypePropsToOption<T> = {
|
|
33
|
-
[K in keyof T]-?: {} extends Pick<T, K>
|
|
34
|
-
? {
|
|
35
|
-
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>
|
|
36
|
-
}
|
|
37
|
-
: {
|
|
38
|
-
type: import('vue').PropType<T[K]>
|
|
39
|
-
required: true
|
|
40
|
-
}
|
|
41
|
-
}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
export interface LcbActionViewProps {
|
|
2
|
-
/**
|
|
3
|
-
* 跳转类型 1: 网页 2: 小程序内页 10: 跳转小程序 11: 跳转半屏小程序 12: 小程序客服
|
|
4
|
-
* 13: 退出登录 14: 小程序弹框 21: 新窗口跳到页面 22: 切换TAB页 23: 重启进入某页面
|
|
5
|
-
* 24: 回到上一层 25: 关闭当前页面 26: 关闭当前窗口 30: 拨打电话 88: 授权手机号 101 用户头像 102 分享 103 意见反馈 104 打开授权设置页
|
|
6
|
-
*/
|
|
7
|
-
jumpType?:
|
|
8
|
-
| 1
|
|
9
|
-
| 2
|
|
10
|
-
| 10
|
|
11
|
-
| 11
|
|
12
|
-
| 12
|
|
13
|
-
| 13
|
|
14
|
-
| 14
|
|
15
|
-
| 21
|
|
16
|
-
| 22
|
|
17
|
-
| 23
|
|
18
|
-
| 24
|
|
19
|
-
| 25
|
|
20
|
-
| 26
|
|
21
|
-
| 30
|
|
22
|
-
| 88
|
|
23
|
-
| 101
|
|
24
|
-
| 102
|
|
25
|
-
| 103
|
|
26
|
-
| 104
|
|
27
|
-
/** 跳转路径 */
|
|
28
|
-
jumpUrl?: string
|
|
29
|
-
/** 小程序appid */
|
|
30
|
-
jumpAppid?: string
|
|
31
|
-
phoneNumber?: string
|
|
32
|
-
customClass?: string
|
|
33
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { LcbAdvertProps } from './types'
|
|
2
|
-
declare const _default: import('vue').DefineComponent<
|
|
3
|
-
__VLS_TypePropsToOption<LcbAdvertProps>,
|
|
4
|
-
{},
|
|
5
|
-
unknown,
|
|
6
|
-
{},
|
|
7
|
-
{},
|
|
8
|
-
import('vue').ComponentOptionsMixin,
|
|
9
|
-
import('vue').ComponentOptionsMixin,
|
|
10
|
-
{},
|
|
11
|
-
string,
|
|
12
|
-
import('vue').PublicProps,
|
|
13
|
-
Readonly<import('vue').ExtractPropTypes<__VLS_TypePropsToOption<LcbAdvertProps>>>,
|
|
14
|
-
{},
|
|
15
|
-
{}
|
|
16
|
-
>
|
|
17
|
-
export default _default
|
|
18
|
-
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T
|
|
19
|
-
type __VLS_TypePropsToOption<T> = {
|
|
20
|
-
[K in keyof T]-?: {} extends Pick<T, K>
|
|
21
|
-
? {
|
|
22
|
-
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>
|
|
23
|
-
}
|
|
24
|
-
: {
|
|
25
|
-
type: import('vue').PropType<T[K]>
|
|
26
|
-
required: true
|
|
27
|
-
}
|
|
28
|
-
}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
export interface ProvinceCityArea {
|
|
2
|
-
cityList: CityList[]
|
|
3
|
-
provinceId: string
|
|
4
|
-
provinceName: string
|
|
5
|
-
}
|
|
6
|
-
interface CityList {
|
|
7
|
-
areaList?: AreaList[]
|
|
8
|
-
cityId: string
|
|
9
|
-
cityName: string
|
|
10
|
-
provinceId: string
|
|
11
|
-
}
|
|
12
|
-
interface AreaList {
|
|
13
|
-
areaId: string
|
|
14
|
-
areaName: string
|
|
15
|
-
cityId: string
|
|
16
|
-
}
|
|
17
|
-
export interface AreaOptions {
|
|
18
|
-
label: string
|
|
19
|
-
value: string
|
|
20
|
-
children?: AreaOptions[]
|
|
21
|
-
}
|
|
22
|
-
export declare const getProvinceCityArea: () => Promise<
|
|
23
|
-
{
|
|
24
|
-
label: string
|
|
25
|
-
value: string
|
|
26
|
-
children: {
|
|
27
|
-
label: string
|
|
28
|
-
value: string
|
|
29
|
-
children:
|
|
30
|
-
| {
|
|
31
|
-
label: string
|
|
32
|
-
value: string
|
|
33
|
-
}[]
|
|
34
|
-
| undefined
|
|
35
|
-
}[]
|
|
36
|
-
}[]
|
|
37
|
-
>
|
|
38
|
-
export declare const getProvinceCity: () => Promise<
|
|
39
|
-
{
|
|
40
|
-
label: string
|
|
41
|
-
value: string
|
|
42
|
-
children: {
|
|
43
|
-
label: string
|
|
44
|
-
value: string
|
|
45
|
-
}[]
|
|
46
|
-
}[]
|
|
47
|
-
>
|
|
48
|
-
export {}
|