From 2f9782e01d723d9c28c3871b0cf296b6615de936 Mon Sep 17 00:00:00 2001 From: feige <791364011@qq.com> Date: 星期六, 31 八月 2024 10:55:09 +0800 Subject: [PATCH] 11 --- ruoyi-ui/src/views/meeting/webcast.vue | 178 +++++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 137 insertions(+), 41 deletions(-) diff --git a/ruoyi-ui/src/views/meeting/webcast.vue b/ruoyi-ui/src/views/meeting/webcast.vue index 8c202b2..70863c1 100644 --- a/ruoyi-ui/src/views/meeting/webcast.vue +++ b/ruoyi-ui/src/views/meeting/webcast.vue @@ -10,15 +10,8 @@ <span>鐩存挱</span> <div class="button-container"></div> <div style="display: flex; align-items: center;"> -<!-- <el-button size="mini" type="text" v-hasPermi="['person:information:memo']" style="margin-left: 200px"> - <div class="form" @click="newRequest"><el-icon style="padding-right:100px;"></el-icon> - <span class="text" style="width: 69px;height: 26px;font-size: 16px; - font-family: Microsoft YaHei-Regular, Microsoft YaHei; color: #EBA4AA;">鐩存挱鐢宠</span> - </div> - </el-button> --> </div> </h1> - <hr> <!-- 鎼滅储 --> @@ -30,7 +23,6 @@ border-radius: 16px 16px 16px 16px; opacity: 0.5;" @keyup.enter.native="handleQuery" /> </el-form-item> - <el-form-item> <el-button size="mini" @click="handleQuery" style=" width: 65px; height: 32px;background: #FFDDE3; @@ -58,13 +50,16 @@ <el-row :gutter="0" v-loading="loading"> <el-col :span="4" v-for="(item,i) in webcastList"> - <div class="module" @click="toLook"> + <div class="module" @click="toLook(item.id)"> <div class="video"> 66666666 </div> <span class="span1">{{ item.title }}</span> <div class="tubiao"><i class="el-icon-view">10000</i></div> <p class="author">{{ item.applyPerson }}</p> + <img :src="item.avatar" + style="margin-left: 15px;margin-top: 190px; background-color: pink; width: 50px; height: 50px;"/> + </div> </el-col> @@ -91,22 +86,21 @@ value-format="yyyy-MM-dd HH:mm:ss"> </el-date-picker> </el-form-item> - <el-form-item label="缁撴潫鏃堕棿" prop="endTime"> - <el-date-picker v-model="formDat.endTime" type="datetime" placeholder="閫夋嫨寮�濮嬫椂闂�" - value-format="yyyy-MM-dd HH:mm:ss"> - </el-date-picker> - </el-form-item> - <!-- <el-form-item label="寮�濮嬫椂闂�" prop="startTime"> - <el-date-picker v-model="formDat.startTime" type="datetime" placeholder="閫夋嫨寮�濮嬫椂闂�" - value-format="yyyy-MM-dd HH:mm:ss"> - </el-date-picker> - </el-form-item> - - <el-form-item label="鎸佺画鏃堕棿" prop="meetingTitle"> - <el-input v-model="formDat.meetingTitle" placeholder="璇疯緭鍏ヤ細璁爣棰�" clearable :style="{width: '100%'}"> + <el-form-item label="鏃堕暱(鍒嗛挓)" prop="duration"> + <el-input v-model="formDat.duration" type="number" placeholder="璇疯緭鍏ヤ細璁椂闀�(鍒嗛挓)" clearable :style="{width: '100%'}"> </el-input> - </el-form-item> --> + </el-form-item> + + <el-form-item label="鎴块棿鍙�" prop="roomId"> + <el-input v-model="formDat.roomId" type="number" :min="1" placeholder="璇疯緭鍏ユ埧闂村彿" clearable :style="{width: '100%'}"> + </el-input> + </el-form-item> + + <el-form-item label="鏈�澶氫汉鏁�" prop="maxPerson"> + <el-input v-model="formDat.maxPerson" type="number" placeholder="璇疯緭鍏ユ渶澶氫汉鏁�" clearable :style="{width: '100%'}"> + </el-input> + </el-form-item> <el-form-item label="浼氳鏍囬" prop="title"> <el-input v-model="formDat.title" placeholder="璇疯緭鍏ヤ細璁爣棰�" clearable :style="{width: '100%'}"> @@ -127,11 +121,58 @@ <el-input v-model="formDat.contactPhone" placeholder="璇疯緭鍏ヨ仈绯荤數璇�" clearable :style="{width: '100%'}"></el-input> </el-form-item> + + <h4 class="form-header">涓绘挱澶村儚 </h4> + <el-upload + action="#" + accept="image/jpeg, image/png,image/jpg, image/WMF,image/gif" + list-type="picture-card" + :http-request="requestUpload" + :file-list="fileList" + :limit="1" + > + <i slot="default" class="el-icon-plus"></i> + <div slot="file" slot-scope="{ file }"> + <template v-if="fileList"> + <img + class="el-upload-list__item-thumbnail" + :src="file.url" + alt="" + style="width: 100%; height: 100%; object-fit: cover;" + fit="cover" + :preview-src-list="[file.url]" + > + </template> + <span class="el-upload-list__item-actions"> + <span + class="el-upload-list__item-preview" + @click="handlePictureCardPreview(file)" + > + <i class="el-icon-zoom-in"></i> + </span> + <span + v-if="!disabled" + class="el-upload-list__item-delete" + @click="handleRemove(file)" + > + <i class="el-icon-delete"></i> + </span> + </span> + </div> + </el-upload> + + </el-form> + + <div slot="footer" class="dialog-footer"> <el-button type="primary" @click="submitDataScope">淇� 瀛�</el-button> <el-button @click="cancel">鍙� 娑�</el-button> </div> + </el-dialog> + + <el-dialog :visible.sync="dialogVisible"> + <img w-full :src="dialogImageUrl" style="width: 100%; height: 100%" alt="Preview Image" /> </el-dialog> @@ -163,21 +204,12 @@ import { addWebcast, listWebcast, - getWebcastInfo + getWebcastInfo, + uploadPic, + uploadPic1, } from "@/api/meeting/index"; export default { - /** 鎼滅储鎸夐挳鎿嶄綔 */ - handleQuery() { - this.queryParams.pageNum = 1; - this.getList(); - }, - /** 閲嶇疆鎸夐挳鎿嶄綔 */ - resetQuery() { - this.dateRange = []; - this.resetForm("queryForm"); - this.handleQuery(); - }, created() { this.getList(); }, @@ -199,6 +231,8 @@ happenStartTime: undefined, happenEndTime: undefined }, + // 閬僵灞� + disabled: false, // 寮瑰嚭灞傛爣棰� title: "", // 鏄惁鏄剧ず寮瑰嚭灞� @@ -210,12 +244,30 @@ applyPerson: undefined, contactPerson: undefined, contactPhone: undefined, - createTime: undefined + createTime: undefined, + roomId:undefined, + maxPerson:undefined, + duration:undefined, + avatar:undefined, }, - + uploadFileList: [], + fileList:[], + dialogImageUrl: '', + dialogVisible: false, } }, methods: { + /** 鎼滅储鎸夐挳鎿嶄綔 */ + handleQuery() { + this.queryParams.pageNum = 1; + this.getList(); + }, + /** 閲嶇疆鎸夐挳鎿嶄綔 */ + resetQuery() { + this.dateRange = []; + this.resetForm("queryForm"); + this.handleQuery(); + }, newRequest() { // this.reset(); this.open = true; @@ -226,8 +278,11 @@ // this.reset(); }, submitDataScope: function() { + let ul = this.fileList[0].url + this.formDat.avatar = ul, + alert(this.formDat.avatar) this.$refs["elForm"].validate(valid => { - if (valid) { + if (valid && this.formDat.roomId > 0) { addWebcast(this.formDat).then(response => { this.$modal.msgSuccess("鏂板鎴愬姛"); this.open = false; @@ -244,7 +299,14 @@ // } this.getList(); }); + }else{ + this.$message.error("鏂板澶辫触锛屾埧闂村彿涓嶈兘鏄礋鏁�"); + this.open = false; + Object.keys(this.formDat).forEach(key => { + this.formDat[key] = ''; + }); } + }); }, @@ -263,9 +325,42 @@ ); }, - toLook() { - this.$router.push('/meeting/webcast/Home/') - } + toLook(id) { + this.$router.push('/meeting/webcast/Home/' + id) + }, + + requestUpload(params) + { + var file = params.file; + var formData = new FormData(); + + formData.append('uploadFile', file); + let _this = this + console.log(formData,'123123') + + uploadPic1(formData).then(response => { + let pth = response.data.originalFilename.substr(response.data.originalFilename.length-4, response.data.originalFilename.length) + _this.fileList.push({name:response.data.fileName, url:response.data.url}) + console.log(this.fileList) + // _this.fileList2.push({name:response.data.fileName, url:response.data.url}) + alert('ok') + }) + + }, + handlePictureCardPreview(file) { + alert(file.url) + this.dialogImageUrl = file.url; + this.dialogVisible = true; + }, + handleRemove(file) { + for(let i = 0; i < this.fileList.length; i++) + { + if(this.fileList[i].url==file.url) + this.$delete(this.fileList,i); + } + }, + + } } @@ -303,6 +398,7 @@ } .module { + /* display: flex; */ width: 250px; height: 250px; background-color: rgb(255, 255, 255); -- Gitblit v1.9.1