设计完成30%

This commit is contained in:
2026-07-14 07:01:32 +08:00
parent 355f47976a
commit 1015e60ff7
95 changed files with 1991 additions and 349 deletions
+1 -1
View File
@@ -217,7 +217,7 @@ const openShortcut = (key) => {
const paths = {
tree: "/pages/tree/t01-tree-overview",
members: `/pages/genealogy/g05-genealogy-overview?id=${currentGenealogy.value.id}`,
poem: "/pages/skeleton/content-list-skeleton?type=poem",
poem: "/pages/genealogy/g12-generation-poems",
applications: "/pages/genealogy/g10-application-review",
};
uni.navigateTo({ url: paths[key] });
@@ -0,0 +1,3 @@
<!-- 页面编号G-02用途未加入家谱时的空状态 -->
<template><ModulePage page-id="g02" /></template>
<script setup>import ModulePage from '@/components/ModulePage.vue'</script>
+6 -4
View File
@@ -1,7 +1,7 @@
<!-- 页面编号G-05用途家谱总览 -->
<template>
<view class="page-shell detail-page">
<PageHeader title="家谱总览" action="管理" @action="showSoon" />
<PageHeader title="家谱总览" action="管理" @action="toSettings" />
<view v-if="genealogy" class="genealogy-hero">
<text class="hero-kicker">{{ genealogy.hall || '堂号待补' }} · {{ genealogy.location || '所在地待补' }}</text>
<text class="hero-title">{{ genealogy.name }}</text>
@@ -16,12 +16,12 @@
<view class="action-grid">
<view class="action-cell primary-cell" @click="toTree"><text>世系树</text><text>查看家脉关系</text></view>
<view class="action-cell" @click="toFirstPerson"><text>录入族人</text><text>从首代开始完善</text></view>
<view class="action-cell" @click="showSoon"><text>字辈谱</text><text>传承行辈次序</text></view>
<view class="action-cell" @click="toGenerationPoems"><text>字辈谱</text><text>传承行辈次序</text></view>
<view class="action-cell" @click="toApplications"><text>入谱审核</text><text>处理加入申请</text></view>
</view>
</view>
<view class="family-summary"><text class="section-title">家族近况</text><view class="summary-row" @click="toFamily"><text>进入家族圈查看动态</text><text>查看</text></view></view>
<view class="invite-block"><text class="invite-title">邀亲人共建家谱</text><text class="invite-copy">族人申请加入后由创建者审核确认</text><button class="primary-button" @click="showSoon">邀请亲人</button></view>
<view class="invite-block"><text class="invite-title">邀亲人共建家谱</text><text class="invite-copy">族人申请加入后由创建者审核确认</text><button class="primary-button" @click="toJoinApplication">邀请亲人</button></view>
</template>
</view>
</template>
@@ -57,7 +57,9 @@ const toTree = () => uni.navigateTo({ url: `/pages/tree/t01-tree-overview?geneal
const toFirstPerson = () => uni.navigateTo({ url: `/pages/genealogy/g04-first-ancestor?genealogyId=${genealogyId.value}` })
const toFamily = () => uni.reLaunch({ url: '/pages/family/f01-family-feed' })
const toApplications = () => uni.navigateTo({ url: `/pages/genealogy/g10-application-review?genealogyId=${genealogyId.value}` })
const showSoon = () => uni.showToast({ title: '该模块将在后续阶段接入', icon: 'none' })
const toSettings = () => uni.navigateTo({ url: `/pages/genealogy/g11-genealogy-settings?genealogyId=${genealogyId.value}` })
const toGenerationPoems = () => uni.navigateTo({ url: `/pages/genealogy/g12-generation-poems?genealogyId=${genealogyId.value}` })
const toJoinApplication = () => uni.navigateTo({ url: `/pages/genealogy/g08-join-application?genealogyId=${genealogyId.value}` })
</script>
<style scoped lang="scss">
+3
View File
@@ -0,0 +1,3 @@
<!-- 页面编号G-07用途公开家谱搜索结果与简介 -->
<template><ModulePage page-id="g07" /></template>
<script setup>import ModulePage from '@/components/ModulePage.vue'</script>
+3
View File
@@ -0,0 +1,3 @@
<!-- 页面编号G-08用途申请加入家谱与提交成功状态 -->
<template><ModulePage page-id="g08" /></template>
<script setup>import ModulePage from '@/components/ModulePage.vue'</script>
+3
View File
@@ -0,0 +1,3 @@
<!-- 页面编号G-09用途我的家谱申请记录 -->
<template><ModulePage page-id="g09" /></template>
<script setup>import ModulePage from '@/components/ModulePage.vue'</script>
@@ -0,0 +1,3 @@
<!-- 页面编号G-11用途家谱设置公开范围与访问说明 -->
<template><ModulePage page-id="g11" /></template>
<script setup>import ModulePage from '@/components/ModulePage.vue'</script>
+3
View File
@@ -0,0 +1,3 @@
<!-- 页面编号G-12用途字辈诗列表详情与维护 -->
<template><ModulePage page-id="g12" /></template>
<script setup>import ModulePage from '@/components/ModulePage.vue'</script>