detailStatusInfo.vue 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. <template>
  2. <div id="detail">
  3. <el-row>
  4. <el-col :span="24">
  5. <el-col :span="24" class="messgae">
  6. <el-form ref="form" :model="form" label-width="120px" :rules="rules">
  7. <el-form-item label="房间标题" prop="title">
  8. <el-input v-model="form.title" disabled></el-input>
  9. </el-form-item>
  10. <el-form-item label="房间号" prop="name">
  11. <el-input v-model="form.name" disabled></el-input>
  12. </el-form-item>
  13. <el-form-item label="主播" prop="username">
  14. <el-input v-model="form.username" disabled></el-input>
  15. </el-form-item>
  16. <el-form-item label="类型" prop="type">
  17. <el-radio v-model="form.type" label="0" disabled>直播</el-radio>
  18. <el-radio v-model="form.type" label="1" disabled>会议</el-radio>
  19. </el-form-item>
  20. <el-form-item label="封面图片" prop="filedir">
  21. <upload :limit="1" :data="form.filedir" type="filedir" :url="'/files/filedir/upload'" @upload="uploadSuccess"></upload>
  22. </el-form-item>
  23. <el-form-item label="信息简介" prop="content">
  24. <el-input type="textarea" v-model="form.content" disabled></el-input>
  25. </el-form-item>
  26. <el-form-item label="直播状态" prop="status">
  27. <el-radio v-model="form.status" label="1">开启</el-radio>
  28. <el-radio v-model="form.status" label="2">结束</el-radio>
  29. </el-form-item>
  30. <el-form-item>
  31. <el-button type="primary" @click="onSubmit()">提交</el-button>
  32. </el-form-item>
  33. </el-form>
  34. </el-col>
  35. </el-col>
  36. </el-row>
  37. </div>
  38. </template>
  39. <script>
  40. import upload from '@/components/upload.vue';
  41. export default {
  42. name: 'detail',
  43. props: {
  44. form: null,
  45. },
  46. components: {
  47. upload,
  48. },
  49. data: () => ({
  50. rules: {
  51. name: [{ required: true, message: '请输入房间号', trigger: 'blur' }],
  52. anchorid: [{ required: true, message: '请选择主播', trigger: 'change' }],
  53. filedir: [{ required: true, message: '请选择头像图片', trigger: 'blur' }],
  54. type: [{ required: true, message: '请选择类型', trigger: 'change' }],
  55. status: [{ required: true, message: '请选择直播状态', trigger: 'change' }],
  56. },
  57. }),
  58. created() {},
  59. computed: {},
  60. methods: {
  61. uploadSuccess({ type, data }) {
  62. this.$set(this.form, `${type}`, data.uri);
  63. },
  64. onSubmit() {
  65. this.$emit('onSubmit', { data: this.form });
  66. },
  67. },
  68. };
  69. </script>
  70. <style lang="less" scoped>
  71. .top {
  72. padding: 15px 0;
  73. }
  74. .top .topTitle {
  75. text-align: left;
  76. }
  77. .top .topBtn {
  78. text-align: right;
  79. padding: 0 5px;
  80. }
  81. </style>