From 43e1199ca0c75787fb6b52bef7d595abd115ceab Mon Sep 17 00:00:00 2001
From: feige <791364011@qq.com>
Date: 星期四, 02 一月 2025 21:44:58 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-ui/src/views/meeting/webcast.vue |  147 +++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 119 insertions(+), 28 deletions(-)

diff --git a/ruoyi-ui/src/views/meeting/webcast.vue b/ruoyi-ui/src/views/meeting/webcast.vue
index 0946aff..16ecd89 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;
@@ -65,6 +57,9 @@
           <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,25 +86,19 @@
             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 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="meetingTitle">
-          <el-input v-model="formDat.meetingTitle" placeholder="璇疯緭鍏ヤ細璁爣棰�" clearable :style="{width: '100%'}">
-          </el-input>
-        </el-form-item> -->
-
         <el-form-item label="鎴块棿鍙�" prop="roomId">
-          <el-input v-model="formDat.roomId" placeholder="璇疯緭鍏ユ埧闂村彿" clearable :style="{width: '100%'}">
+          <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>
 
@@ -132,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>
 
 
@@ -168,7 +204,9 @@
   import {
     addWebcast,
     listWebcast,
-    getWebcastInfo
+    getWebcastInfo,
+    uploadPic,
+    uploadPic1,
   } from "@/api/meeting/index";
 
   export default {
@@ -193,6 +231,8 @@
           happenStartTime: undefined,
           happenEndTime: undefined
         },
+        // 閬僵灞�
+        disabled: false,
         // 寮瑰嚭灞傛爣棰�
         title: "",
         // 鏄惁鏄剧ず寮瑰嚭灞�
@@ -205,9 +245,15 @@
           contactPerson: undefined,
           contactPhone: undefined,
           createTime: undefined,
-          roomId:undefined
+          roomId:undefined,
+          maxPerson:undefined,
+          duration:undefined,
+          avatar:undefined,
         },
-
+        	  	  uploadFileList: [],
+      fileList:[],
+      dialogImageUrl: '',
+      dialogVisible: false,
       }
     },
     methods: {
@@ -232,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;
@@ -248,9 +297,17 @@
               // for(let i = 0; i < this.fileListOther.length; i++){
               //   this.handleRemoveFile(this.fileListOther[0]);
               // }
+			  this.fileList = []
               this.getList();
             });
+          }else{
+            this.$message.error("鏂板澶辫触锛屾埧闂村彿涓嶈兘鏄礋鏁�");
+            this.open = false;
+            Object.keys(this.formDat).forEach(key => {
+              this.formDat[key] = '';
+            });
           }
+
         });
 
       },
@@ -271,7 +328,40 @@
       },
       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);
+        }
+      },
+
+
 
     }
   }
@@ -309,6 +399,7 @@
   }
 
   .module {
+    /* display: flex; */
     width: 250px;
     height: 250px;
     background-color: rgb(255, 255, 255);

--
Gitblit v1.9.1