From 47d56a8b0f22fb15a46b69dfd46fac23560ad2cd Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期二, 12 五月 2026 09:07:49 +0800
Subject: [PATCH] 改bug

---
 admin/src/components/business/OperaInformationWindow.vue |  160 +++++++++++++++++++++++-----------------------------
 1 files changed, 71 insertions(+), 89 deletions(-)

diff --git a/admin/src/components/business/OperaInformationWindow.vue b/admin/src/components/business/OperaInformationWindow.vue
index 23e103e..b0272df 100644
--- a/admin/src/components/business/OperaInformationWindow.vue
+++ b/admin/src/components/business/OperaInformationWindow.vue
@@ -6,49 +6,48 @@
     :confirm-working="isWorking"
     @confirm="confirm"
   >
-    <el-form :model="form" ref="form" label-width="130px" label-suffix="锛�" :rules="rules" inline>
-      <el-form-item label="璧勮鏍囬" prop="name">
-        <el-input v-model="form.name" placeholder="璇疯緭鍏ヨ祫璁爣棰�" v-trim/>
+    <el-form :model="form" ref="form" label-width="130px" label-suffix="锛�" :rules="rules"  >
+      <el-form-item label="鏍囬" prop="name">
+        <el-input v-model="form.name" placeholder="璇疯緭鍏ユ爣棰�" v-trim/>
       </el-form-item>
-      <el-form-item label="璧勮鍒嗙被" prop="labelId">
+      <el-form-item label="涓诲浘" prop="imgurl">
+        <UploadAvatarImage
+            :file="{ 'imgurlfull': form.imgurlfull, 'imgurl': form.imgurl }"
+            @uploadSuccess="uploadAvatarSuccess"
+            :uploadData="{folder:'activity'}"
+            @uploadEnd="isUploading=false"
+            @uploadBegin="isUploading = true"
+        />
+      </el-form-item>
+      <el-form-item label="鎵�灞炲垎绫�" prop="labelId">
         <el-select
           v-model="form.labelId"
-          placeholder="璇烽�夋嫨璧勮鍒嗙被"
+          placeholder="璇烽�夋嫨鎵�灞炲垎绫�"
           filterable
           clearable
         >
-          <el-option v-for="item in labels" :key="item.id" :value="item.id" :label="item.name" />
+          <el-option v-for="item in labels()" :key="item.id" :value="item.id" :label="item.name" />
         </el-select>
-        <!-- <el-input v-model="form.labelId" placeholder="璇疯緭鍏ラ�夋嫨" v-trim/> -->
       </el-form-item>
-      <el-form-item label="璧勮灏侀潰鍥�" prop="imgurlfull">
-        <UploadAvatarImage
-          :file="{ 'imgurlfull': form.imgurlfull, 'imgurl': form.imgurl }"
-          @uploadSuccess="uploadAvatarSuccess"
-          @uploadEnd="isUploading=false"
-          @uploadBegin="isUploading = true"
-        />
-      </el-form-item>
-      <el-form-item label="鍏宠仈搴楅摵" prop="shopId">
+      <el-form-item label="鎵�灞炲搧鐗�" prop="brandId">
         <el-select
-          v-model="form.shopId"
-          placeholder="璇疯緭鍏ュ簵閾哄悕绉帮紝鍐嶉�夋嫨"
+          v-model="form.brandId"
+          placeholder="璇烽�夋嫨鎵�灞炲搧鐗�"
           filterable
-          remote
-          reserve-keyword
-          :remote-method="remoteMethod"
-          :loading="searchLoading"
+          clearable
         >
-          <el-option
-            v-for="item in shops"
-            :key="item.value"
-            :label="item.label"
-            :value="item.value">
-          </el-option>
+          <el-option v-for="item in brands()" :key="item.id" :value="item.id" :label="item.name" />
         </el-select>
       </el-form-item>
-      <el-form-item label="璇︽儏" prop="content">
-        <RichEditor :content="{ content : form.content}"  @edit="form.content=$event" />
+      <el-form-item label="鍐呭绫诲瀷" prop="contentType" >
+        <el-radio-group v-model="form.contentType">
+          <el-radio :label="0" value="0">瀵屾枃鏈�</el-radio>
+          <el-radio :label="1" value="1">澶栭摼</el-radio>
+        </el-radio-group>
+      </el-form-item>
+      <el-form-item label="璇︽儏" prop="content" required>
+        <el-input v-if="form.contentType == 1"  v-model="form.content" placeholder="璇疯緭鍏ュ閾惧湴鍧�" v-trim/>
+        <RichEditor v-else  :richData="form.content" :styleEditor="styleEditor" @getWangedditor="getWangedditor" :readonly="false"/>
       </el-form-item>
     </el-form>
   </GlobalWindow>
@@ -60,7 +59,7 @@
 import RichEditor from '@/components/common/RichEditor'
 import UploadAvatarImage from '@/components/common/UploadAvatarImage'
 
-import { fetchList as shopList } from '@/api/business/shop' 
+import { fetchList as shopList } from '@/api/business/shop'
 
 export default {
   name: 'OperaActivityWindow',
@@ -68,6 +67,7 @@
   components: { GlobalWindow, RichEditor, UploadAvatarImage },
   data () {
     return {
+      styleEditor: 'border: 1px solid #ccc;display: inline-block;height:500px;',
       isUploading: false,
       searchLoading: false,
       shops: [],
@@ -78,29 +78,32 @@
         labelId: '',
         imgurlfull: null,
         imgurl: null,
-        shopId: '',
+        brandId: '',
         content: '',
+        contentType: 0,
         type: 3 //璧勮
       },
-      labels: [
-        { name: 'a', id: 1 },
-        { name: 'b', id: 2 },
-        { name: 'c', id: 3 },
-      ],
       // 楠岃瘉瑙勫垯
       rules: {
         name: [
-          { required: true, message: '璇疯緭鍏ヨ祫璁爣棰�', tigger: 'blur' }
+          { required: true, message: '璇疯緭鍏ユ爣棰�', tigger: 'blur' }
+        ],
+        content: [
+          { required: true, message: '璇疯緭鍏ュ唴瀹�', tigger: 'blur' }
+        ],
+        contentType: [
+          { required: true, message: '璇烽�夋嫨鍐呭绫诲瀷' }
         ],
         labelId: [
-          { required: true, message: '璇烽�夋嫨璧勮鍒嗙被', tigger: 'change' }
+          { required: true, message: '璇烽�夋嫨鎵�灞炲垎绫�' }
         ],
-        imgurlfull: [
-          { required: true, message: '璇蜂笂浼犺祫璁富鍥�', tigger: 'change' }
-        ],
+        brandId: [
+          { required: true, message: '璇烽�夋嫨鎵�灞炲搧鐗�' }
+        ]
       }
     }
   },
+  inject: ['labels', 'brands'],
   created () {
     this.config({
       api: '/business/activity',
@@ -113,60 +116,39 @@
       this.form.imgurl = file.imgurl;
       this.form.imgurlfull = file.imgurlfull;
     },
-    remoteMethod(query) {
-      if (query !== '') {
-        this.searchLoading = true
-        shopList({
-          capacity: 999,
-          model: {
-            name: query
-          }
+    getWangedditor(val){
+      this.form.content =val
+    },
+    open (title, target) {
+      this.title = title
+      this.visible = true
+      this.form.imgurlfull=null
+      this.form.imgurl=null
+      // 鏂板缓
+      if (target == null) {
+        this.$nextTick(() => {
+          this.$refs.form.resetFields()
+          this.form[this.configData['field.id']] = null
         })
-          .then(res => {
-            this.shops = res.records
-          })
-          .finally(() => {
-            this.searchLoading = false
-          })
+        return
       }
+      // 缂栬緫
+      this.$nextTick(() => {
+        for (const key in this.form) {
+          this.form[key] = target[key]
+        }
+      })
     }
-  },
+  }
 }
 </script>
 
 <style lang="scss" scoped>
 @import "@/assets/style/alertstyle.scss";
-::v-deep .el-form-item__content {
-  flex: 0.6;
-}
-$image-width: 100px;
-.avatar-uploader {
-  width: $image-width;
-  height: $image-width;
-}
-::v-deep .el-upload {
-  border: 1px dashed #d9d9d9;
-  border-radius: 6px;
-  cursor: pointer;
-  position: relative;
-  width: $image-width;
-  height: $image-width;
-  overflow: hidden;
-}
-.avatar-uploader .el-upload:hover {
-  border-color: #409EFF;
-}
-.avatar-uploader-icon {
-  font-size: 28px;
-  color: #8c939d;
-  width: $image-width;
-  height: $image-width;
-  line-height: $image-width;
-  text-align: center;
-}
-.avatar {
-  width: $image-width;
-  height: $image-width;
-  display: block;
+::v-deep .el-select {
+  width: 100%;
+  .el-input__inner {
+    width: 100%;
+  }
 }
 </style>

--
Gitblit v1.9.3