|
@@ -61,6 +61,7 @@ import { ref } from 'vue';
|
|
|
import { toast } from '@/components/dialog/CommonRoot';
|
|
import { toast } from '@/components/dialog/CommonRoot';
|
|
|
import { showError } from '@/common/composeabe/ErrorDisplay';
|
|
import { showError } from '@/common/composeabe/ErrorDisplay';
|
|
|
import { useVillageStore } from '@/store/village';
|
|
import { useVillageStore } from '@/store/village';
|
|
|
|
|
+import { useShareLink } from '../../composeabe/ShareLink';
|
|
|
import VillageApi, { VillageClaimInfo } from '@/api/inhert/VillageApi';
|
|
import VillageApi, { VillageClaimInfo } from '@/api/inhert/VillageApi';
|
|
|
import CommonDialog from '@/common/components/CommonDialog.vue';
|
|
import CommonDialog from '@/common/components/CommonDialog.vue';
|
|
|
import FrameButton from '@/common/components/FrameButton.vue';
|
|
import FrameButton from '@/common/components/FrameButton.vue';
|
|
@@ -71,12 +72,12 @@ import FlexCol from '@/components/layout/FlexCol.vue';
|
|
|
import FlexRow from '@/components/layout/FlexRow.vue';
|
|
import FlexRow from '@/components/layout/FlexRow.vue';
|
|
|
import Height from '@/components/layout/space/Height.vue';
|
|
import Height from '@/components/layout/space/Height.vue';
|
|
|
import Touchable from '@/components/feedback/Touchable.vue';
|
|
import Touchable from '@/components/feedback/Touchable.vue';
|
|
|
-import type { RadioValueProps } from '@/components/dynamic/wrappers/RadioValue';
|
|
|
|
|
-import type { IDynamicFormOptions, IDynamicFormRef } from '@/components/dynamic';
|
|
|
|
|
import Result from '@/components/feedback/Result.vue';
|
|
import Result from '@/components/feedback/Result.vue';
|
|
|
import Width from '@/components/layout/space/Width.vue';
|
|
import Width from '@/components/layout/space/Width.vue';
|
|
|
import ProvideVar from '@/components/theme/ProvideVar.vue';
|
|
import ProvideVar from '@/components/theme/ProvideVar.vue';
|
|
|
import BoxMid from '@/common/components/box/BoxMid.vue';
|
|
import BoxMid from '@/common/components/box/BoxMid.vue';
|
|
|
|
|
+import type { RadioValueProps } from '@/components/dynamic/wrappers/RadioValue';
|
|
|
|
|
+import type { IDynamicFormOptions, IDynamicFormRef } from '@/components/dynamic';
|
|
|
|
|
|
|
|
const show = ref(false);
|
|
const show = ref(false);
|
|
|
const props = defineProps<{
|
|
const props = defineProps<{
|
|
@@ -85,6 +86,8 @@ const props = defineProps<{
|
|
|
const emit = defineEmits(['finish']);
|
|
const emit = defineEmits(['finish']);
|
|
|
|
|
|
|
|
const villageStore = useVillageStore();
|
|
const villageStore = useVillageStore();
|
|
|
|
|
+const { recommendUserId } = useShareLink();
|
|
|
|
|
+
|
|
|
const step = ref('chooseIdentity');
|
|
const step = ref('chooseIdentity');
|
|
|
|
|
|
|
|
const identityChoices = ref([
|
|
const identityChoices = ref([
|
|
@@ -207,7 +210,7 @@ async function addSubmit() {
|
|
|
try {
|
|
try {
|
|
|
addFormLoading.value = true;
|
|
addFormLoading.value = true;
|
|
|
addFormModel.value.villageId = props.villageId;
|
|
addFormModel.value.villageId = props.villageId;
|
|
|
- await VillageApi.claimVallage(addFormModel.value as VillageClaimInfo);
|
|
|
|
|
|
|
+ await VillageApi.claimVallage(addFormModel.value as VillageClaimInfo, recommendUserId.value);
|
|
|
toast({ content: '提交成功' });
|
|
toast({ content: '提交成功' });
|
|
|
step.value = 'finished';
|
|
step.value = 'finished';
|
|
|
villageStore.loadMyJoinedVillages();
|
|
villageStore.loadMyJoinedVillages();
|