WeiDianZiCheJianGongGao.vue 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. <template>
  2. <div class="screen-common-component">
  3. <ScreenComHeader :module-id="moduleId" title="微电子车间公告" />
  4. <dv-scroll-board
  5. :config="config"
  6. style="width: 100%; height: calc(100% - 32px)"
  7. @mouseover="tableHover"
  8. />
  9. </div>
  10. </template>
  11. <script lang="ts" setup>
  12. import ScreenComHeader from "@/views/screens/configs/screenComHeader.vue";
  13. import {
  14. microelectronicWorkshopNotice,
  15. productionPlan,
  16. teamAttendance,
  17. } from "@/api/screens";
  18. const config = ref({});
  19. const props = defineProps({
  20. moduleId: {
  21. type: String,
  22. required: true,
  23. },
  24. });
  25. const bigScreenData: any = inject("bigScreenData");
  26. const bsFS = bigScreenData.value.fontSize * 1.5;
  27. onMounted(async () => {
  28. let res = await microelectronicWorkshopNotice();
  29. if (res.data.length > 0) {
  30. let bigData: any[] = [];
  31. res.data.forEach((item: any) => {
  32. let row = [
  33. `<div style='font-size:${bigScreenData.value.fontSize * 2}px;width: 100%;height: 100%;'>
  34. <div style="display: flex;align-items: center;justify-content: space-between;height: 60px">
  35. <span style="color: blue;font-size:150%;">${item.title}</span>
  36. <span>${item.updated}</span>
  37. </div>
  38. <div id="scroll-table-id" style="word-break: break-all;white-space: normal;display: flex;flex-direction: column;align-items: start;justify-content: start;width: 100%;height: 100%;overflow: hidden;font-size: ${bigScreenData.value.fontSize * 1.5}px;line-height: ${bigScreenData.value.fontSize * 2 + 5}px">
  39. ${item.content}
  40. </div>
  41. </div>`,
  42. ];
  43. bigData.push(row);
  44. });
  45. config.value = {
  46. data: bigData,
  47. rowNum: 1,
  48. // index: true,
  49. // columnWidth: [50],
  50. waitTime: 10000,
  51. align: ["left"],
  52. carousel: "page",
  53. click: (row: any, index: number) => {
  54. console.log("mouseover", row, index);
  55. },
  56. };
  57. }
  58. });
  59. const tableHover = (data: any) => {
  60. // console.log("mouseover", data.row[data.columnIndex]);
  61. };
  62. </script>
  63. <style lang="scss" scoped>
  64. .message-row {
  65. width: 100%;
  66. height: 60px;
  67. border: 1px solid red;
  68. }
  69. .scroll-table-id {
  70. p {
  71. font-size: 14px;
  72. }
  73. }
  74. </style>
  75. <style lang="scss">
  76. #scroll-table-id {
  77. font-size: v-bind("bsFS"); /* 示例值,按需调整 */
  78. }
  79. #scroll-table-id h1 {
  80. font-size: v-bind("bsFS") !important; /* 使用!important覆盖用户样式 */
  81. margin: 0;
  82. }
  83. #scroll-table-id p {
  84. font-size: v-bind("bsFS") !important; /* 使用!important覆盖用户样式 */
  85. margin: 0;
  86. }
  87. </style>