SsFooter.vue 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. <script setup lang="ts">
  2. import {computed ,onMounted, defineEmits} from "vue";
  3. import {useGlobalStore} from '@/stores/global'
  4. import {isEmpty} from "@/utils/common.ts";
  5. const global = useGlobalStore()
  6. const emit = defineEmits(['loaded'])
  7. const security = computed(() => {
  8. const numbers = global.basic.securityRecord.match(/\d+(\.\d+)?/g) || [];
  9. return numbers[0] || '';
  10. });
  11. onMounted(() => {
  12. emit('loaded', 'footer')
  13. })
  14. </script>
  15. <template>
  16. <div class="footer is-pc">
  17. <div class="footer-container">
  18. <el-tooltip v-if="!isEmpty(global.basic.competentUnit)" :content="'主管单位:'+global.basic.competentUnit" placement="top">
  19. <div class="footer-item ellipsis">主管单位:{{ global.basic.competentUnit }}</div>
  20. </el-tooltip>
  21. <el-tooltip v-if="!isEmpty(global.basic.organizer)" :content="'承办单位:'+global.basic.organizer" placement="top">
  22. <div class="footer-item ellipsis">承办单位:{{ global.basic.organizer }}</div>
  23. </el-tooltip>
  24. <el-tooltip v-if="!isEmpty(global.basic.icpRecord)" :content="global.basic.icpRecord" placement="top">
  25. <a class="footer-item ellipsis" target="_blank" href="https://beian.miit.gov.cn/#/Integrated/index">
  26. {{ global.basic.icpRecord }}
  27. </a>
  28. </el-tooltip>
  29. <el-tooltip v-if="!isEmpty(global.basic.websiteIdentifier)" :content="global.basic.websiteIdentifier" placement="top">
  30. <div class="footer-item ellipsis">网站标识码:{{ global.basic.websiteIdentifier }}</div>
  31. </el-tooltip>
  32. <el-tooltip v-if="!isEmpty(global.basic.securityRecord)" :content="global.basic.securityRecord" placement="top">
  33. <a class="footer-item ellipsis" target="_blank" rel="noreferrer" :href="'https://beian.mps.gov.cn/#/query/webSearch?code='+security">
  34. <el-image class="footer-item-icon" fit="contain" src="/images/beian.png"/>
  35. {{ global.basic.securityRecord }}
  36. </a>
  37. </el-tooltip>
  38. <el-tooltip v-if="!isEmpty(global.basic.officeHours)" :content="'办公时间:'+global.basic.officeHours" placement="top">
  39. <div class="footer-item ellipsis">办公时间:{{ global.basic.officeHours }}</div>
  40. </el-tooltip>
  41. <el-tooltip v-if="!isEmpty(global.basic.officeAddress)" :content="'办公地址:'+global.basic.officeAddress" placement="top">
  42. <div class="footer-item ellipsis">办公地址:{{ global.basic.officeAddress }}</div>
  43. </el-tooltip>
  44. </div>
  45. </div>
  46. </template>
  47. <style scoped lang="scss">
  48. .footer {
  49. position: absolute;
  50. bottom: 0;
  51. left: 0;
  52. right: 0;
  53. padding: 0.75rem 1rem;
  54. background-color: rgba(255, 255, 255, 0.4);
  55. z-index: 100;
  56. .footer-container {
  57. margin: 0 auto;
  58. padding: 0 1rem;
  59. overflow: hidden;
  60. display: flex;
  61. justify-content: center;
  62. align-items: center;
  63. color: #7E8AA2;
  64. font-size: 0.8rem;
  65. .footer-item {
  66. margin: 0 0.8rem;
  67. text-decoration: none;
  68. color: inherit;
  69. outline: none;
  70. overflow: hidden;
  71. display: block;
  72. .footer-item-icon {
  73. width: 0.75rem;
  74. height: 0.75rem;
  75. margin-right: 0.13rem;
  76. }
  77. }
  78. }
  79. }
  80. /* 1080x1920 中等尺寸设备 */
  81. @media screen and (min-width: 751px) and (max-width: 1200px) and (min-height: 1700px) {
  82. .footer {
  83. padding: 1.25rem 1.5rem;
  84. background-color: rgba(255, 255, 255, 0.6);
  85. .footer-container {
  86. font-size: 1rem;
  87. flex-wrap: wrap;
  88. gap: 0.5rem;
  89. .footer-item {
  90. margin: 0.25rem 1rem;
  91. .footer-item-icon {
  92. width: 1rem;
  93. height: 1rem;
  94. margin-right: 0.25rem;
  95. }
  96. }
  97. }
  98. }
  99. }
  100. </style>