From 46a0fb1d9ab9a48a40a7c8cc9d8917bf271713de Mon Sep 17 00:00:00 2001
From: feige <791364011@qq.com>
Date: 星期六, 26 十月 2024 12:17:28 +0800
Subject: [PATCH] 修改了对应bug
---
ruoyi-ui/src/views/meeting/webcast.vue | 465 +++++++++++++++++++++++++++++++++++++---------------------
1 files changed, 296 insertions(+), 169 deletions(-)
diff --git a/ruoyi-ui/src/views/meeting/webcast.vue b/ruoyi-ui/src/views/meeting/webcast.vue
index 1bbf291..70863c1 100644
--- a/ruoyi-ui/src/views/meeting/webcast.vue
+++ b/ruoyi-ui/src/views/meeting/webcast.vue
@@ -10,216 +10,264 @@
<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>
<!-- 鎼滅储 -->
- <el-form :model="queryParams1">
- <el-row>
- <el-form-item label="" prop="people">
- <el-input v-model="queryParams1.people" placeholder="璇疯緭鍏ユ悳绱㈠唴瀹�" clearable style="width: 300px;
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch">
+
+ <el-form-item label="鐩存挱鏍囬" prop="title">
+ <el-input v-model="queryParams.title" placeholder="璇疯緭鍏ョ洿鎾爣棰�" clearable style="width: 200px;
height: 35px;
- text-align: left;
border-radius: 16px 16px 16px 16px;
- opacity: 0.5;" @keyup.enter.native="handleQuery">
- <i slot="prefix" class="el-input__icon el-icon-search"></i>
- </el-input>
- </el-form-item>
- </el-row>
+ 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;
+ border-radius: 6px 6px 6px 6px;opacity:1;">鎼滅储</el-button>
+ <el-button size="mini" @click="resetQuery" style=" width: 65px;height: 32px; background: #FFDDE3;
+ border-radius: 6px 6px 6px 6px;
+ opacity: 1;">閲嶇疆</el-button>
+ </el-form-item>
</el-form>
- <el-row :gutter="0">
- <el-col :span="4">
- <div class="module" @click="toLook">
- <div class="video">
- 66666666
- </div>
- <span class="span1">涓瀹跺涵浼氳</span>
- <div class="tubiao"><i class="el-icon-view">10000</i></div>
- <p class="author">鍙戣捣鑰�</p>
- </div>
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="newRequest"
+ v-hasPermi="['person:information:memo']"
+ >鏂板</el-button>
</el-col>
- <el-col :span="4">
- <div class="module">
- <div class="video">
- 66666666
- </div>
- <span class="span1">涓瀹跺涵浼氳</span>
- <div class="tubiao"><i class="el-icon-view">10000</i></div>
- <p class="author">鍙戣捣鑰�</p>
- </div>
- </el-col>
- <el-col :span="4">
- <div class="module">
- <div class="video">
- 66666666
- </div>
- <span class="span1">涓瀹跺涵浼氳</span>
- <div class="tubiao"><i class="el-icon-view">10000</i></div>
- <p class="author">鍙戣捣鑰�</p>
- </div>
- </el-col>
- <el-col :span="4">
- <div class="module">
- <div class="video">
- 66666666
- </div>
- <span class="span1">涓瀹跺涵浼氳</span>
- <div class="tubiao"><i class="el-icon-view">10000</i></div>
- <p class="author">鍙戣捣鑰�</p>
- </div>
- </el-col>
- <el-col :span="4">
- <div class="module">
- <div class="video">
- </div>
- <span class="span1">涓瀹跺涵浼氳</span>
- <div class="tubiao"><i class="el-icon-view">10000</i></div>
- <p class="author">鍙戣捣鑰�</p>
- </div>
- </el-col>
- <el-col :span="4">
- <div class="module">
- <div class="video">
- 66666666
- </div>
- <span class="span1">涓瀹跺涵浼氳</span>
- <div class="tubiao"><i class="el-icon-view">10000</i></div>
- <p class="author">鍙戣捣鑰�</p>
- </div>
- </el-col>
- <el-col :span="4">
- <div class="module">
- <div class="video">
- 66666666
- </div>
- <span class="span1">涓瀹跺涵浼氳</span>
- <div class="tubiao"><i class="el-icon-view">10000</i></div>
- <p class="author">鍙戣捣鑰�</p>
- </div>
- </el-col>
- <el-col :span="4">
- <div class="module">
- <div class="video">
- 66666666
- </div>
- <span class="span1">涓瀹跺涵浼氳</span>
- <div class="tubiao"><i class="el-icon-view">10000</i></div>
- <p class="author">鍙戣捣鑰�</p>
- </div>
- </el-col>
- <el-col :span="4">
- <div class="module">
- <div class="video">
- 66666666
- </div>
- <span class="span1">涓瀹跺涵浼氳</span>
- <div class="tubiao"><i class="el-icon-view">10000</i></div>
- <p class="author">鍙戣捣鑰�</p>
- </div>
- </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
+
+ <el-row :gutter="0" v-loading="loading">
+ <el-col :span="4" v-for="(item,i) in webcastList">
+ <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>
+
+
+ </el-row>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page-sizes="pageSizes"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ style="background: #FEF7FC;"
+ />
<!-- 鐩存挱鐢宠瀵硅瘽妗� -->
<el-dialog :title="title" :visible.sync="open" width="1000px" append-to-body>
<el-form ref="elForm" :model="formDat" :rules="rules" size="medium" label-width="100px">
- <!-- <el-form-item label="鑾峰緱鏃堕棿" prop="happenTime">-->
- <!-- <el-input v-model="formDat.happenTime" placeholder="璇疯緭鍏ヨ幏寰楁椂闂�" clearable :style="{width: '100%'}" ></el-input>-->
- <!-- </el-form-item>-->
- <!-- <el-form-item label="寮�濮嬫椂闂�" prop="happenTime">
- </el-form-item> -->
- <el-form-item label="鏃堕棿" prop="timeSpan">
- <el-date-picker v-model="formDat.timeSpan" type="datetimerange" range-separator="鑷�" start-placeholder="寮�濮嬫棩鏈�"
- end-placeholder="缁撴潫鏃ユ湡" value-format="yyyy-MM-dd HH:mm:ss">
+
+ <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 label="浼氳鍦扮偣" prop="address">
- <el-input v-model="formDat.address" placeholder="璇疯緭鍏ヤ細璁湴鐐�" clearable :style="{width: '100%'}">
- </el-input>
- </el-form-item>
- <el-form-item label="浼氳瀹や唬鐮�" prop="meetingID">
- <el-input v-model="formDat.meetingID" placeholder="璇疯緭鍏ヤ細璁浠g爜" clearable :style="{width: '100%'}">
- </el-input>
- </el-form-item>
- <el-form-item label="鍙绾充汉鏁�" prop="capacity">
- <el-input v-model="formDat.capacity" placeholder="璇疯緭鍏ュ彲瀹圭撼浜烘暟" clearable :style="{width: '100%'}">
- </el-input>
- </el-form-item>
- <el-form-item label="鍙備笌浜烘暟" prop="attendance">
- <el-input v-model="formDat.attendance" placeholder="璇疯緭鍏ュ弬涓庝汉鏁�" clearable :style="{width: '100%'}">
- </el-input>
- </el-form-item>
- <el-form-item label="鐢宠浜�" prop="applicant">
- <el-input v-model="formDat.applicant" placeholder="璇疯緭鍏ョ敵璇蜂汉" clearable :style="{width: '100%'}">
- </el-input>
- </el-form-item>
- <el-form-item label="鐢宠瀹跺涵鎴栭儴闂�" prop="familyName">
- <el-input v-model="formDat.familyName" placeholder="璇疯緭鍏ョ敵璇峰搴垨閮ㄩ棬" clearable :style="{width: '100%'}">
- </el-input>
- </el-form-item>
- <el-form-item label="鑱旂郴浜�" prop="name">
- <el-input v-model="formDat.name" placeholder="璇疯緭鍏ヨ仈绯讳汉" clearable :style="{width: '100%'}">
- </el-input>
- </el-form-item>
- <el-form-item label="鑱旂郴鐢佃瘽" prop="phone">
- <el-input v-model="formDat.phone" placeholder="璇疯緭鍏ヨ仈绯荤數璇�" clearable :style="{width: '100%'}"></el-input>
</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%'}">
+ </el-input>
+ </el-form-item>
+
+ <el-form-item label="鐢宠浜�" prop="applyPerson">
+ <el-input v-model="formDat.applyPerson" placeholder="璇疯緭鍏ョ敵璇蜂汉" clearable :style="{width: '100%'}">
+ </el-input>
+ </el-form-item>
+
+ <el-form-item label="鑱旂郴浜�" prop="contactPerson">
+ <el-input v-model="formDat.contactPerson" placeholder="璇疯緭鍏ヨ仈绯讳汉" clearable :style="{width: '100%'}">
+ </el-input>
+ </el-form-item>
+
+ <el-form-item label="鑱旂郴鐢佃瘽" prop="contactPhone">
+ <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>
+
</div>
</template>
<script>
+ import {
+ listRole,
+ getRole,
+ delRole,
+ addRole,
+ updateRole,
+ dataScope,
+ changeRoleStatus,
+ deptTreeSelect
+ } from "@/api/system/role";
+ import {
+ treeselect as menuTreeselect,
+ roleMenuTreeselect
+ } from "@/api/system/menu";
+ import {
+ Notification,
+ MessageBox,
+ Message,
+ Loading
+ } from 'element-ui'
+
+ //瀵煎叆鎺ュ彛鍑芥暟 --鎺ュソ浜�
+ import {
+ addWebcast,
+ listWebcast,
+ getWebcastInfo,
+ uploadPic,
+ uploadPic1,
+ } from "@/api/meeting/index";
+
export default {
+ created() {
+ this.getList();
+ },
data() {
return {
- queryParams1: [],
+ showSearch: true,
+ pageSizes: [12, 24, 36],
+ webcastList:[],
+ // 鎬绘潯鏁�
+ total: 0,
+ loading: true,
+ dateRange: [],
+ queryParams: {
+ pageNum: 1,
+ pageSize: 12,
+ title: undefined,
+ applyPerson: undefined,
+ contactPerson: undefined,
+ happenStartTime: undefined,
+ happenEndTime: undefined
+ },
+ // 閬僵灞�
+ disabled: false,
// 寮瑰嚭灞傛爣棰�
title: "",
// 鏄惁鏄剧ず寮瑰嚭灞�
open: false,
formDat: {
- id: undefined,
- happenTime: undefined,
+ startTime: undefined,
endTime: undefined,
- timeSpan: undefined,
- meetingTitle: undefined,
- address: undefined,
- meetingID: undefined,
- capacity: undefined,
- attendance: undefined,
- applicant: undefined,
- familyName: undefined,
- name: undefined,
- phone: undefined,
- url: "",
-
-
+ title: undefined,
+ applyPerson: undefined,
+ contactPerson: undefined,
+ contactPhone: 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;
@@ -229,12 +277,90 @@
this.open = false;
// this.reset();
},
- submitDataScope() {
- console.log(this.formDat.timeSpan)
+ submitDataScope: function() {
+ let ul = this.fileList[0].url
+ this.formDat.avatar = ul,
+ alert(this.formDat.avatar)
+ this.$refs["elForm"].validate(valid => {
+ if (valid && this.formDat.roomId > 0) {
+ addWebcast(this.formDat).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ // 娓呯┖formDat瀵硅薄鐨勬暟鎹�
+ Object.keys(this.formDat).forEach(key => {
+ this.formDat[key] = '';
+ });
+ // for(let i = 0; i <= this.fileList.length; i++)
+ // {
+ // this.handleRemove(this.fileList[0]);
+ // }
+ // for(let i = 0; i < this.fileListOther.length; i++){
+ // this.handleRemoveFile(this.fileListOther[0]);
+ // }
+ this.getList();
+ });
+ }else{
+ this.$message.error("鏂板澶辫触锛屾埧闂村彿涓嶈兘鏄礋鏁�");
+ this.open = false;
+ Object.keys(this.formDat).forEach(key => {
+ this.formDat[key] = '';
+ });
+ }
+
+ });
+
},
- toLook(){
- this.$router.push('/meeting/webcast/webcastInfo/')
- }
+ getList() {
+ this.loading = true;
+ // console.log(this.queryParams)
+ // listProperty(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
+ this.queryParams.happenStartTime = this.dateRange.length > 0 && this.dateRange[0]
+ this.queryParams.happenEndTime = this.dateRange.length > 0 && this.dateRange[1]
+ listWebcast(this.queryParams).then(response => {
+ this.webcastList = response.data.data;
+ console.log(this.webcastList,'webcastListwebcastListwebcastList')
+ this.total = response.data.total;
+ this.loading = false;
+ }
+
+ );
+ },
+ 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);
+ }
+ },
+
+
}
}
@@ -272,6 +398,7 @@
}
.module {
+ /* display: flex; */
width: 250px;
height: 250px;
background-color: rgb(255, 255, 255);
--
Gitblit v1.9.1