detailModal.vue 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <!-- @format -->
  2. <script lang="ts" setup>
  3. defineProps({
  4. detail: {
  5. type: Object,
  6. default: () => ({}),
  7. },
  8. })
  9. const visible = defineModel('visible', { type: Boolean, required: true })
  10. </script>
  11. <template>
  12. <el-dialog
  13. v-model="visible"
  14. :append-to-body="true"
  15. width="800"
  16. modal-class="custom-notice-modal"
  17. >
  18. <template #header>
  19. <div
  20. class="px-40px py-25px bg-#F5F5F5 b-rd-lt-6px b-rd-rt-6px text-18px fw-500 text-#333"
  21. >
  22. Notice
  23. </div>
  24. </template>
  25. <div class="py-24px px-40px">
  26. <div class="mb-20px">
  27. <div class="text-16px mb-10px text-#333">
  28. Notification Name
  29. </div>
  30. <el-input :value="detail?.title" :disabled="true" />
  31. </div>
  32. <div class="mb-20px">
  33. <div class="text-16px mb-10px text-#333">
  34. Notification Time
  35. </div>
  36. <el-input :value="detail?.sendTime" :disabled="true" />
  37. </div>
  38. <div class="mb-20px">
  39. <div class="text-16px mb-10px text-#333">
  40. Content
  41. </div>
  42. <el-input
  43. :value="detail?.msgContent"
  44. type="textarea"
  45. :rows="5"
  46. :disabled="true"
  47. />
  48. </div>
  49. </div>
  50. </el-dialog>
  51. </template>
  52. <style lang="less">
  53. .custom-notice-modal {
  54. .el-dialog {
  55. padding: unset !important;
  56. .el-dialog__header {
  57. padding: 0 !important;
  58. .el-dialog__headerbtn {
  59. right: 20px;
  60. top: 10px;
  61. }
  62. }
  63. .el-dialog__footer {
  64. padding-top: 0 !important;
  65. padding-bottom: 24px !important;
  66. padding-left: 40px !important;
  67. padding-right: 40px !important;
  68. }
  69. }
  70. }
  71. </style>