MarkHeader.vue 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. <template>
  2. <div
  3. v-if="store.setting"
  4. class="tw-flex tw-gap-4 tw-justify-start tw-items-center header-container"
  5. >
  6. <div
  7. class="
  8. tw-text-white
  9. tw-block
  10. tw-overflow-ellipsis
  11. tw-overflow-hidden
  12. tw-whitespace-nowrap
  13. header-big-text
  14. tw-pl-5
  15. "
  16. >
  17. {{
  18. `${store.setting.subject.code ?? ""}-${
  19. store.setting.subject.name ?? ""
  20. }`
  21. }}
  22. </div>
  23. <div class="tw-flex tw-gap-1 tw-items-center">
  24. <div class="tw-flex tw-items-center">
  25. <span class="header-small-text">编号</span>
  26. <span class="highlight-text">
  27. {{ store.currentTask?.secretNumber }}
  28. </span>
  29. </div>
  30. </div>
  31. <div class="tw-flex tw-gap-2 tw-items-center tw-flex-1"></div>
  32. <ZoomPaper v-if="store.isScanImage" />
  33. <div class="tw-flex tw-cursor-pointer tw-items-center tw-flex-1">
  34. <div
  35. class="
  36. tw-overflow-ellipsis tw-overflow-hidden tw-whitespace-nowrap tw-mr-1
  37. "
  38. >
  39. <span class="header-small-text">分组</span>
  40. <span class="highlight-text">
  41. {{ store.setting.groupNumber }}
  42. </span>
  43. </div>
  44. </div>
  45. <div class="tw-flex tw-place-items-center">
  46. <UserOutlined class="icon-font icon-with-text" />
  47. {{ store.setting.userName }}
  48. </div>
  49. <div
  50. class="tw-flex tw-place-items-center tw-cursor-pointer tw-pr-5"
  51. @click="closeWindow"
  52. >
  53. <PoweroffOutlined class="icon-font icon-with-text" />关闭
  54. </div>
  55. </div>
  56. </template>
  57. <script setup lang="ts">
  58. import { store } from "@/store/store";
  59. import { UserOutlined, PoweroffOutlined } from "@ant-design/icons-vue";
  60. import ZoomPaper from "@/components/ZoomPaper.vue";
  61. const closeWindow = () => {
  62. window.close();
  63. };
  64. </script>
  65. <style scoped>
  66. .header-container {
  67. position: relative;
  68. height: 56px;
  69. line-height: 16px;
  70. background-color: var(--header-bg-color);
  71. color: rgba(255, 255, 255, 0.5);
  72. }
  73. .header-container span {
  74. vertical-align: middle;
  75. }
  76. .header-big-text {
  77. font-size: 20px;
  78. line-height: 30px;
  79. }
  80. .header-small-text {
  81. font-size: var(--app-secondary-font-size);
  82. }
  83. .highlight-text {
  84. color: white;
  85. font-size: var(--app-title-font-size);
  86. }
  87. .svg-red {
  88. filter: invert(27%) sepia(51%) saturate(2878%) hue-rotate(346deg)
  89. brightness(104%) contrast(97%);
  90. }
  91. </style>