admin.vue 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. <template>
  2. <FlexCol :innerStyle="{
  3. backgroundImage: 'url(https://xy.wenlvti.net/app_static/images/mine/TopBanner.png)',
  4. backgroundSize: '100% auto',
  5. backgroundRepeat: 'no-repeat',
  6. backgroundPosition: 'top center',
  7. minHeight: '100vh',
  8. }">
  9. <StatusBarSpace />
  10. <NavBar leftButton="back" />
  11. <FlexCol gap="gap.xl" padding="space.lg">
  12. <FlexCol center>
  13. <Text fontConfig="h2">非遗数字化资源信息校对管理员</Text>
  14. <FlexRow>
  15. <Text fontConfig="subText">技术支持:18649931391</Text>
  16. </FlexRow>
  17. </FlexCol>
  18. <FlexRow justify="space-between">
  19. <FlexRow align="center" gap="gap.md">
  20. <Avatar
  21. randomColor
  22. :src="authStore.userInfo?.avatar"
  23. defaultAvatar="https://mncdn.wenlvti.net/app_static/minnan/logo.png"
  24. />
  25. <Text fontConfig="h4" maxWidth="400rpx" :lines="1">{{ authStore.userInfo?.nickname }}</Text>
  26. </FlexRow>
  27. <FlexRow :flexShrink="0">
  28. <WxButton openType="contact">
  29. <Button type="text" icon="wechat">在线客服</Button>
  30. </WxButton>
  31. </FlexRow>
  32. </FlexRow>
  33. <CellGroup round>
  34. <Cell icon="https://mncdn.wenlvti.net/uploads/20250313/9fb29e8bdb66490034145c90f892773a.png" title="传承协议签名表" showArrow touchable @click="navTo('assessment/argeement-sign-list')" />
  35. <Cell icon="https://mncdn.wenlvti.net/uploads/20250313/66d4665b1da5075e60148312469b2630.png" title="自查评估表" showArrow touchable @click="navTo('assessment/evaluation-list')" />
  36. </CellGroup>
  37. <CellGroup round>
  38. <Cell title="返回闽南文化" showArrow touchable @click="back()" />
  39. <Cell title="修改密码" showArrow touchable @click="navTo('user/change-password')" />
  40. <Cell title="退出登录" showArrow touchable @click="onLogout" />
  41. </CellGroup>
  42. </FlexCol>
  43. <XBarSpace />
  44. </FlexCol>
  45. </template>
  46. <script setup lang="ts">
  47. import { useAuthStore } from '@/store/auth';
  48. import CellGroup from '@/components/basic/CellGroup.vue';
  49. import Cell from '@/components/basic/Cell.vue';
  50. import Text from '@/components/basic/Text.vue';
  51. import FlexCol from '@/components/layout/FlexCol.vue';
  52. import FlexRow from '@/components/layout/FlexRow.vue';
  53. import WxButton from '@/components/basic/WxButton.vue';
  54. import XBarSpace from '@/components/layout/space/XBarSpace.vue';
  55. import StatusBarSpace from '@/components/layout/space/StatusBarSpace.vue';
  56. import NavBar from '@/components/nav/NavBar.vue';
  57. import Avatar from '@/components/display/Avatar.vue';
  58. import Button from '@/components/basic/Button.vue';
  59. import { back, navTo } from '@/components/utils/PageAction';
  60. import { confirm } from '@/components/utils/DialogAction';
  61. const authStore = useAuthStore();
  62. function onLogout() {
  63. confirm({
  64. content: '您确定要退出登录吗?',
  65. }).then((res) => {
  66. if (res) {
  67. authStore.logout();
  68. back();
  69. }
  70. });
  71. }
  72. </script>