From e1b74e9a33f947f87bc87b2921db9a72598d4d47 Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期四, 29 一月 2026 09:23:18 +0800
Subject: [PATCH] 提交忽略文件

---
 admin/src/components/business/OperaCategoryWindow.vue |   87 +++++++++++++++++++++++--------------------
 1 files changed, 46 insertions(+), 41 deletions(-)

diff --git a/admin/src/components/business/OperaCategoryWindow.vue b/admin/src/components/business/OperaCategoryWindow.vue
index 326f991..c897b92 100644
--- a/admin/src/components/business/OperaCategoryWindow.vue
+++ b/admin/src/components/business/OperaCategoryWindow.vue
@@ -7,45 +7,34 @@
   >
     <el-form :model="form" ref="form" :rules="rules">
       <el-form-item label="鍚嶇О" prop="name">
-        <el-input v-if="form.type !=3"  v-model="form.name" placeholder="璇疯緭鍏ュ悕绉�" v-trim/>
-        <el-select v-else  v-model="form.name" placeholder="璇烽�夋嫨璁㈠崟绫诲瀷" v-trim>
-          <el-option :value="'0'" label="鐢ㄥ伐鍗�"></el-option>
-          <el-option :value="'1'" label="璐ц繍鍗�"></el-option>
-          <el-option :value="'2'" label="璁㈤鍗�"></el-option>
-        </el-select>
+        <el-input   v-model="form.name" placeholder="璇疯緭鍏ュ悕绉�" v-trim/>
       </el-form-item>
-      <el-form-item v-if="form.type ==3 " label="鎵嬬画璐癸紙%锛�" prop="detail">
-        <el-input  type="number"   v-model="form.detail" placeholder="璇疯緭鍏ュ悕绉�" v-trim/>
+      <el-form-item label="鎴樺尯缂栫爜" prop="detail"  v-if="form.type ==0" >
+        <el-input v-model="form.detail" placeholder="璇疯緭鍏ユ垬鍖虹紪鐮�" v-trim/>
       </el-form-item>
-      <el-form-item v-if="form.type == 1 || form.type == 2" :label=" form.type == 1?'杞﹁締瑙勬牸':'椁愭爣閰嶇疆锛堝厓锛�'" prop="detailList">
-        <div style="display: flex;flex-direction: column">
-          <div style="position: relative;display: block;width: 100%;" v-for="(item,index) in form.detailList"   >
-            <el-input  :type="form.type == 1?'text':'number'" style="display:inline-block;width: 60%;margin:5px ;float: left" v-model="form.detailList[index]"   placeholder="璇疯緭鍏ュ唴瀹�" v-trim/>
-            <el-button  style="display:inline-block;margin : 5px " @click="del(index)" v-if="form.detailList.length>0">x</el-button>
-          </div>
-          <div style="position: relative;display: block;width: 100%;">
-            <el-button style="width: 100px;margin: 5px;" type="primary" @click="add()">娣诲姞瑙勬牸</el-button>
-          </div>
-        </div>
-      </el-form-item>
-      <el-form-item v-if="form.type == 1" label="鍥炬爣" prop="icon">
+      <el-form-item v-if="form.type == 3" label="鍥炬爣" prop="icon">
         <UploadAvatarImage
             :file="{ imgurlfull: form.iconFull, imgurl: form.icon }"
             :uploadData="uploadData"
             @uploadSuccess="uploadAvatarSuccess"
         />
       </el-form-item>
-      <el-form-item  v-if="form.id ==null && form.type == 1"  label="鏄惁鍥哄畾杞﹁締" prop="isFixed">
-        <el-radio-group v-model="form.isFixed">
-          <el-radio :label="0">闈炲浐瀹�</el-radio>
-          <el-radio :label="1">鍥哄畾杞﹀瀷</el-radio>
-        </el-radio-group>
+      <el-form-item v-if="form.type == 1" label="鎺掕姒滃浘闆�" prop="icon">
+        <UploadImage
+            :fileList="tempfileList"
+            :uploadData="uploadData"
+            @beginUpload="isUploading=true"
+            @endUpload="isUploading=false"/>
+        <p class="tip-warn">
+          寤鸿灏哄锛�750px X 750px锛屼笂闄�6寮�
+          鏀寔png銆乯pg銆乯peg鏍煎紡锛屽ぇ灏忎笉瓒呰繃2M锛屼笂浼犲浘鐗囦笉鍏佽娑夊強鏀挎不鏁忔劅涓庤壊鎯�,
+        </p>
       </el-form-item>
       <el-form-item label="鎺掑簭鐮�" prop="sortnum">
-        <el-input v-model="form.sortnum" placeholder="璇疯緭鍏ユ帓搴忕爜" v-trim/>
+        <el-input v-model="form.sortnum" type="" placeholder="璇疯緭鍏ユ帓搴忕爜" v-trim/>
       </el-form-item>
       <el-form-item label="鎻忚堪" prop="remark">
-        <el-input v-model="form.remark" placeholder="璇疯緭鍏ユ弿杩�" v-trim/>
+        <el-input type="textarea" v-model="form.remark" placeholder="璇疯緭鍏ユ弿杩�" v-trim/>
       </el-form-item>
     </el-form>
   </GlobalWindow>
@@ -54,16 +43,17 @@
 <script>
 import BaseOpera from '@/components/base/BaseOpera'
 import GlobalWindow from '@/components/common/GlobalWindow'
+import UploadImage from '@/components/common/UploadImage'
 import UploadAvatarImage from '@/components/common/UploadAvatarImage'
 export default {
   name: 'OperaCategoryWindow',
   extends: BaseOpera,
-  components: { GlobalWindow ,UploadAvatarImage},
+  components: { GlobalWindow, UploadAvatarImage,UploadImage },
   data () {
     return {
       isUploading: false,
       uploadData: {
-        folder: 'category'
+        folder: 'dianjiang/category'
       },
       // 琛ㄥ崟鏁版嵁
       form: {
@@ -74,14 +64,15 @@
         type: null,
         detail: null,
         remark: null,
-        detailList: [''],
+        fileList: [],
         icon: '',
         iconFull: '',
         isFixed: 0
       },
+      tempfileList: [],
       // 楠岃瘉瑙勫垯
       rules: {
-        name: [{ required: true, message: '璇疯緭鍏ラ厤缃悕绉�' }]
+        name: [{ required: true, message: '璇疯緭鍏ュ悕绉�' }]
       }
     }
   },
@@ -91,23 +82,32 @@
       'field.id': 'id'
     })
   },
-  methods:{
-    del(index){
-      if(this.form.detailList.length<=1){
+  methods: {
+    del (index) {
+      if (this.form.detailList.length <= 1) {
         return
       }
-      this.form.detailList.splice(index,1)
+      this.form.detailList.splice(index, 1)
     },
-    add(){
+    add () {
       this.form.detailList.push('')
     },
     uploadAvatarSuccess (file) {
       this.$set(this.form, 'icon', file.imgurl)
       this.$set(this.form, 'iconFull', file.imgurlfull)
     },
-    open(title, target, type) {
+    confirm () {
+      this.form.fileList = this.tempfileList
+      if (this.form[this.configData['field.id']] == null || this.form[this.configData['field.id']] === '') {
+        this.__confirmCreate()
+        return
+      }
+      this.__confirmEdit()
+    },
+    open (title, target, type) {
       this.title = title
       this.visible = true
+      this.tempfileList = []
       this.form = {
         id: null,
         status: 0,
@@ -116,7 +116,7 @@
         detail: null,
         type: type,
         remark: null,
-        detailList: [''],
+        fileList: [],
         icon: '',
         iconFull: '',
         isFixed: 0
@@ -135,9 +135,14 @@
         for (const key in this.form) {
           this.form[key] = target[key]
         }
-        if(this.form.detailList==null){
-          this.form.detailList = ['']
-        }
+        this.form.fileList = this.form.fileList||[]
+        this.form.fileList.forEach(item=>{
+          this.tempfileList.push({
+            fileurl: item.fileurl,
+            name: item.name,
+            url: item.url
+          })
+        })
       })
     }
   }

--
Gitblit v1.9.3