announcement-detail.vue 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. <template>
  2. <el-dialog
  3. title="查看"
  4. width="70%"
  5. :close-on-click-modal="false"
  6. :visible.sync="visible">
  7. <el-form :model="dataForm" ref="dataForm" label-width="auto">
  8. <el-row class="my-row">
  9. <el-col :span="12">
  10. <el-form-item label="公告主题名称">
  11. <el-input v-model="dataForm.title" :disabled="display" placeholder="请输入公告主题名称"></el-input>
  12. </el-form-item>
  13. </el-col>
  14. <el-col :span="12" style="padding-left: 20px">
  15. <el-form-item label="级别" prop="level">
  16. <el-input v-model="dataForm.levelName" :disabled="display" placeholder="请输入公告主题名称"></el-input>
  17. </el-form-item>
  18. </el-col>
  19. </el-row>
  20. <el-row class="my-row">
  21. <el-form-item label="公告内容">
  22. <el-input v-model="dataForm.content" :disabled="display" placeholder="备注说明"></el-input>
  23. </el-form-item>
  24. </el-row>
  25. <el-row class="my-row">
  26. <div class="title">公告附件</div>
  27. </el-row>
  28. <el-row class="my-row">
  29. <a v-for="(item, index) in dataForm.attachList" :key="item.fileName + index" type="primary" :href="item.url">{{ item.fileName }}</a>
  30. </el-row>
  31. <el-row class="my-row">
  32. <el-form-item label="备注说明">
  33. <el-input v-model="dataForm.notes" :disabled="display" placeholder="备注说明"></el-input>
  34. </el-form-item>
  35. </el-row>
  36. </el-form>
  37. <span slot="footer" class="dialog-footer">
  38. <el-button @click="visible = false">返回</el-button>
  39. </span>
  40. </el-dialog>
  41. </template>
  42. <script>
  43. import { getAnnouncementInfo } from '@/api/msg'
  44. export default {
  45. name: 'notice-add-or-update',
  46. data () {
  47. return {
  48. visible: false,
  49. dictType: 'material_type',
  50. options: [],
  51. optionLevel: [],
  52. dataList: [],
  53. fileList: [],
  54. id: 0,
  55. dataForm: {
  56. attachList: []
  57. },
  58. display: true
  59. }
  60. },
  61. methods: {
  62. async init (id) {
  63. this.visible = true
  64. this.id = id || 0
  65. this.getAnnouncementInfo()
  66. },
  67. getAnnouncementInfo () {
  68. getAnnouncementInfo(this.id).then(({data}) => {
  69. if (data && data.code === '200') {
  70. this.dataForm = data.data
  71. }
  72. })
  73. },
  74. submitUpload () {
  75. this.$refs.upload.submit()
  76. },
  77. handleRemove (file, fileList) {
  78. console.log(file, fileList)
  79. },
  80. handlePreview (file) {
  81. console.log(file)
  82. },
  83. // 表单提交
  84. dataFormSubmit () {
  85. },
  86. validateField (type) {
  87. this.$refs.dataForm.validateField(type)
  88. }
  89. }
  90. }
  91. </script>
  92. <style scoped>
  93. .my-line{
  94. border-bottom: 1px solid #c0c4cc;
  95. margin-bottom: 10px;
  96. }
  97. .title{
  98. padding: 10px 0 ;
  99. }
  100. </style>