Index.vue 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. <script setup lang="tsx">
  2. import BoardInfo from "./BoardInfo.vue";
  3. import {useFullscreen} from "@vueuse/core";
  4. import {InpatientBoardKey, useInpatientBoard} from "@/views/single-page/InpatientBoardV2/index";
  5. const store = useInpatientBoard()
  6. provide(InpatientBoardKey, {
  7. store: store
  8. })
  9. const fullscreenEl = ref()
  10. const {toggle} = useFullscreen(fullscreenEl)
  11. </script>
  12. <template>
  13. <div class="layout_container inpatient-board">
  14. <header class="main-header">
  15. <el-form :inline="true">
  16. <el-form-item label="当前病房:">
  17. <el-select v-model="store.current.code"
  18. :ref="(el) => store.selectRef.value = el"
  19. @change="store.handleWardChange"
  20. filterable
  21. style="width: 120px">
  22. <el-option
  23. v-for="item in store.allWards.value"
  24. :label="item.name"
  25. :value="item.code"
  26. />
  27. </el-select>
  28. </el-form-item>
  29. <el-form-item label="播放速度:">
  30. <div style="width: 120px">
  31. <el-slider v-model="store.speedBarDisplay.value"
  32. :step="1"
  33. :min="1"
  34. :max="10"
  35. @change="store.changeInterval"/>
  36. </div>
  37. </el-form-item>
  38. <el-form-item>
  39. <el-button @click="toggle">全屏</el-button>
  40. </el-form-item>
  41. </el-form>
  42. </header>
  43. <div class="layout_main layout_container layout-horizontal" ref="fullscreenEl">
  44. <BoardInfo/>
  45. </div>
  46. </div>
  47. </template>
  48. <style lang="scss">
  49. .inpatient-board {
  50. font-size: 18px;
  51. .main-header {
  52. padding: 10px;
  53. }
  54. .layout_main {
  55. background: #0F1628;
  56. padding: 10px;
  57. color: white;
  58. }
  59. }
  60. </style>