|
@@ -56,7 +56,7 @@
|
|
|
radius="radius.lgr"
|
|
radius="radius.lgr"
|
|
|
:padding="[10, 30]"
|
|
:padding="[10, 30]"
|
|
|
backgroundColor="white"
|
|
backgroundColor="white"
|
|
|
- @click="($refs.applyGoodsDialog as any).show()"
|
|
|
|
|
|
|
+ @click="upgradeRef?.show()"
|
|
|
>
|
|
>
|
|
|
升级村社
|
|
升级村社
|
|
|
</Button>
|
|
</Button>
|
|
@@ -66,15 +66,18 @@
|
|
|
<!-- 图片 -->
|
|
<!-- 图片 -->
|
|
|
<VillageGallery
|
|
<VillageGallery
|
|
|
v-if="villageInfoLoader.content.value"
|
|
v-if="villageInfoLoader.content.value"
|
|
|
|
|
+ ref="villageGalleryRef"
|
|
|
:villageId="villageStore.currentVillage?.id ?? 0"
|
|
:villageId="villageStore.currentVillage?.id ?? 0"
|
|
|
- :images="villageInfoLoader.content.value.images"
|
|
|
|
|
- @update:images="villageInfoLoader.reload()"
|
|
|
|
|
|
|
+ @goGallery=""
|
|
|
/>
|
|
/>
|
|
|
|
|
|
|
|
<!-- 地址 -->
|
|
<!-- 地址 -->
|
|
|
- <FlexRow align="center" gap="gap.sm">
|
|
|
|
|
- <Icon name="https://xy.wenlvti.net/app_static/images/village/IconMap.png" size="fontSize.md" />
|
|
|
|
|
- <Text :text="villageInfoLoader.content.value?.address" fontConfig="contentText" />
|
|
|
|
|
|
|
+ <FlexRow justify="space-between" align="center">
|
|
|
|
|
+ <FlexRow align="center" gap="gap.sm">
|
|
|
|
|
+ <Icon name="https://xy.wenlvti.net/app_static/images/village/IconMap.png" size="fontSize.md" />
|
|
|
|
|
+ <Text :text="villageInfoLoader.content.value?.address" fontConfig="contentText" />
|
|
|
|
|
+ </FlexRow>
|
|
|
|
|
+ <Button size="mini" icon="picture" text="村社相册" @click="handleGoGallery" />
|
|
|
</FlexRow>
|
|
</FlexRow>
|
|
|
<VillageMiniMap
|
|
<VillageMiniMap
|
|
|
v-if="villageInfoLoader.content.value"
|
|
v-if="villageInfoLoader.content.value"
|
|
@@ -229,7 +232,7 @@
|
|
|
@publishsuccess="onPublishSuccess"
|
|
@publishsuccess="onPublishSuccess"
|
|
|
/>
|
|
/>
|
|
|
<UpgradeDialog
|
|
<UpgradeDialog
|
|
|
- ref="applyGoodsDialog"
|
|
|
|
|
|
|
+ ref="upgradeRef"
|
|
|
v-if="villageStore.currentVillage"
|
|
v-if="villageStore.currentVillage"
|
|
|
:villageId="villageStore.currentVillage.id"
|
|
:villageId="villageStore.currentVillage.id"
|
|
|
/>
|
|
/>
|
|
@@ -247,7 +250,6 @@ import { useFollow } from '../composeabe/Follow';
|
|
|
import { ArrayUtils } from '@imengyu/imengyu-utils';
|
|
import { ArrayUtils } from '@imengyu/imengyu-utils';
|
|
|
import { navTo } from '@/components/utils/PageAction';
|
|
import { navTo } from '@/components/utils/PageAction';
|
|
|
import HomeTitle from '@/common/components/parts/HomeTitle.vue';
|
|
import HomeTitle from '@/common/components/parts/HomeTitle.vue';
|
|
|
-import Button from '@/components/basic/Button.vue';
|
|
|
|
|
import Icon from '@/components/basic/Icon.vue';
|
|
import Icon from '@/components/basic/Icon.vue';
|
|
|
import Text from '@/components/basic/Text.vue';
|
|
import Text from '@/components/basic/Text.vue';
|
|
|
import BackgroundBox from '@/components/display/block/BackgroundBox.vue';
|
|
import BackgroundBox from '@/components/display/block/BackgroundBox.vue';
|
|
@@ -269,6 +271,7 @@ import VillageGallery from '../components/VillageGallery.vue';
|
|
|
import WxButton from '@/components/basic/WxButton.vue';
|
|
import WxButton from '@/components/basic/WxButton.vue';
|
|
|
import Height from '@/components/layout/space/Height.vue';
|
|
import Height from '@/components/layout/space/Height.vue';
|
|
|
import IconButton from '@/components/basic/IconButton.vue';
|
|
import IconButton from '@/components/basic/IconButton.vue';
|
|
|
|
|
+import Button from '@/components/basic/Button.vue';
|
|
|
|
|
|
|
|
const authStore = useAuthStore();
|
|
const authStore = useAuthStore();
|
|
|
const { getIsVolunteer } = useUserTools();
|
|
const { getIsVolunteer } = useUserTools();
|
|
@@ -286,7 +289,7 @@ const villageInfoLoader = useSimpleDataLoader(async () => {
|
|
|
title: village?.name || '',
|
|
title: village?.name || '',
|
|
|
desc: village?.desc || '',
|
|
desc: village?.desc || '',
|
|
|
address: village?.address,
|
|
address: village?.address,
|
|
|
- sizeText: village?.sizeText || 0,
|
|
|
|
|
|
|
+ sizeText: village?.storageLimit || 0,
|
|
|
level: village?.level.toString() || '',
|
|
level: village?.level.toString() || '',
|
|
|
levelText: village?.levelText || '',
|
|
levelText: village?.levelText || '',
|
|
|
rankText: village?.rank.toString() || '',
|
|
rankText: village?.rank.toString() || '',
|
|
@@ -332,8 +335,6 @@ watch(rankActiveTag, () => {
|
|
|
villageUserRankListLoader.reload();
|
|
villageUserRankListLoader.reload();
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
const recommendTagName = computed(() => {
|
|
const recommendTagName = computed(() => {
|
|
|
return '亮乡源·' + villageInfoLoader.content.value?.title + '·' + listActiveTag.value;
|
|
return '亮乡源·' + villageInfoLoader.content.value?.title + '·' + listActiveTag.value;
|
|
|
});
|
|
});
|
|
@@ -372,9 +373,28 @@ function handleGoPublish() {
|
|
|
});
|
|
});
|
|
|
}, '欢迎使用AI助手,登录后以便使用更多功能哦!');
|
|
}, '欢迎使用AI助手,登录后以便使用更多功能哦!');
|
|
|
}
|
|
}
|
|
|
|
|
+function handleGoGallery() {
|
|
|
|
|
+ navTo('/pages/home/village/gallery/index', {
|
|
|
|
|
+ villageId: villageStore.currentVillage?.id ?? 0 ,
|
|
|
|
|
+ maxCount: villageStore.currentVillage?.imageLimit || 3,
|
|
|
|
|
+ });
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+const upgradeRef = ref<InstanceType<typeof UpgradeDialog>>();
|
|
|
|
|
+const villageGalleryRef = ref<InstanceType<typeof VillageGallery>>();
|
|
|
|
|
|
|
|
watch(() => villageStore.currentVillage, () => {
|
|
watch(() => villageStore.currentVillage, () => {
|
|
|
villageInfoLoader.reload();
|
|
villageInfoLoader.reload();
|
|
|
villageUserRankListLoader.reload();
|
|
villageUserRankListLoader.reload();
|
|
|
}, { immediate: true });
|
|
}, { immediate: true });
|
|
|
|
|
+
|
|
|
|
|
+defineExpose({
|
|
|
|
|
+ onPageBack: (name: string, data: Record<string, unknown>) => {
|
|
|
|
|
+ if (name === 'refreshVillageGrallery' && data.needRefresh) {
|
|
|
|
|
+ villageGalleryRef.value?.refresh();
|
|
|
|
|
+ } else if (name === 'showVillageUpgrade') {
|
|
|
|
|
+ upgradeRef.value?.show();
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+});
|
|
|
</script>
|
|
</script>
|