Index.vue 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. <script setup lang="tsx">
  2. import BoardInfo from "./BoardInfo.vue";
  3. import { useFullscreen } from "@vueuse/core";
  4. import {
  5. InpatientBoardKey,
  6. useInpatientBoard,
  7. } from "@/views/single-page/InpatientBoardV2/index";
  8. import CallDialog from "@/views/single-page/InpatientBoardV2/CallDialog.vue";
  9. import XcElOption from "@/components/xiao-chan/xc-el-option/XcElOption.vue";
  10. const store = useInpatientBoard();
  11. provide(InpatientBoardKey, store);
  12. const divRef = ref();
  13. const { toggle } = useFullscreen(divRef);
  14. </script>
  15. <template>
  16. <div class="layout_container inpatient-board">
  17. <header class="main-header">
  18. <el-form :inline="true">
  19. <el-form-item label="当前病房:">
  20. <el-select
  21. v-model="store.urlQuery.ward"
  22. :ref="el => (store.selectRef.value = el)"
  23. @change="
  24. code => {
  25. store.handleWardChange(code);
  26. }
  27. "
  28. filterable
  29. style="width: 7.5rem"
  30. >
  31. <el-option
  32. v-for="item in store.allWards.value"
  33. :label="item.name"
  34. :value="item.code"
  35. />
  36. </el-select>
  37. </el-form-item>
  38. <el-form-item label="播放速度(秒):">
  39. <el-input-number
  40. :step="1"
  41. controls-position="right"
  42. :min="5"
  43. v-model="store.urlQuery.speedBarDisplay"
  44. @change="store.changeInterval"
  45. :max="20"
  46. />
  47. </el-form-item>
  48. <el-form-item label="更新数据(分钟):">
  49. <el-input-number
  50. :step="1"
  51. controls-position="right"
  52. :min="15"
  53. v-model="store.urlQuery.refresh"
  54. @change="store.changeInterval"
  55. />
  56. </el-form-item>
  57. <el-form-item>
  58. <el-button @click="toggle">全屏</el-button>
  59. </el-form-item>
  60. </el-form>
  61. </header>
  62. <div class="layout_main layout_container layout-horizontal" ref="divRef">
  63. <CallDialog />
  64. <BoardInfo />
  65. </div>
  66. </div>
  67. </template>
  68. <style lang="scss">
  69. .inpatient-board {
  70. font-size: 1.13rem;
  71. .main-header {
  72. padding: 0.63rem;
  73. }
  74. .layout_main {
  75. background: #0f1628;
  76. padding: 0.63rem;
  77. color: white;
  78. }
  79. }
  80. </style>