userCenterSpeechMaterial.vue 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. <template>
  2. <div class="speech-material">
  3. <p class="speech-material-appellation">亲爱的嘉宾,您好!</p>
  4. <p class="speech-material-tip">您已经是我们本次会议的发言嘉宾,请您在明天早上7点前,完成发言材料上传。</p>
  5. <el-form :model="ruleForm" :rules="rules" ref="ruleForm" class="demo-ruleForm">
  6. <el-form-item label="" prop="resource">
  7. <UpLoadFile @getFileUrl="getPreviousPositions"></UpLoadFile>
  8. <p class="tip-custom">直接拖拽材料放到本区域或者点击选择发言材料,完成上传。支持word、pdf格式。请您以姓名+文件名格式,方便为你做数据管理储存。</p>
  9. </el-form-item>
  10. <el-form-item prop="desc">
  11. <span class="label-custom">材料描述</span>
  12. <el-input type="textarea" v-model="ruleForm.desc" :rows="8"></el-input>
  13. </el-form-item>
  14. <el-form-item label="是否公开" prop="resource" label-width="100px">
  15. <el-radio-group v-model="ruleForm.resource">
  16. <el-radio label="是"></el-radio>
  17. <el-radio label="否"></el-radio>
  18. </el-radio-group>
  19. </el-form-item>
  20. <el-form-item style="text-align: center">
  21. <el-button type="primary" @click="submitForm('ruleForm')">提交材料</el-button>
  22. </el-form-item>
  23. </el-form>
  24. </div>
  25. </template>
  26. <script>
  27. import UpLoadFile from "@/views/conferenceServices/UpLoadFile";
  28. export default {
  29. components: {
  30. UpLoadFile
  31. },
  32. data() {
  33. return {
  34. ruleForm: {
  35. resource: '',
  36. desc: ''
  37. },
  38. rules: {
  39. resource: [
  40. { required: true, message: '请选择活动资源', trigger: 'change' }
  41. ],
  42. desc: [
  43. { required: true, message: '请填写活动形式', trigger: 'blur' }
  44. ]
  45. }
  46. };
  47. },
  48. methods: {
  49. getPreviousPositions(){
  50. },
  51. submitForm(formName) {
  52. this.$refs[formName].validate((valid) => {
  53. if (valid) {
  54. alert('submit!');
  55. } else {
  56. console.log('error submit!!');
  57. return false;
  58. }
  59. });
  60. },
  61. }
  62. }
  63. </script>
  64. <style scoped>
  65. .speech-material{
  66. background: #fff;
  67. min-height: 700px;
  68. padding: 20px 150px;
  69. }
  70. .speech-material-appellation{
  71. font-size: 20px;
  72. font-weight: bold;
  73. margin: 0;
  74. line-height: 60px;
  75. }
  76. .speech-material-tip{
  77. font-size: 18px;
  78. text-indent: 2em;
  79. margin-top: 0;
  80. margin-bottom: 20px;
  81. }
  82. .speech-material /deep/ .el-textarea__inner{
  83. border-style: dashed;
  84. }
  85. .speech-material /deep/ .el-form-item__label{
  86. color: #333;
  87. font-weight: bold;
  88. text-align: left;
  89. }
  90. .label-custom{
  91. color: #333;
  92. font-weight: bold;
  93. }
  94. .tip-custom{
  95. color: #de571a;
  96. text-indent: 2em;
  97. margin-top: 10px;
  98. margin-bottom: 0;
  99. line-height: 26px;
  100. }
  101. </style>