From f8a4a4306824bf9874a4333e12a0307555ffbb08 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期二, 15 七月 2025 14:41:42 +0800 Subject: [PATCH] 前端 --- admin/src/components/business/OperaCategoryWindow.vue | 105 +++++++++++++++++++++++++++++++--------------------- 1 files changed, 63 insertions(+), 42 deletions(-) diff --git a/admin/src/components/business/OperaCategoryWindow.vue b/admin/src/components/business/OperaCategoryWindow.vue index 40738ff..828473c 100644 --- a/admin/src/components/business/OperaCategoryWindow.vue +++ b/admin/src/components/business/OperaCategoryWindow.vue @@ -6,41 +6,27 @@ @confirm="confirm" > <el-form :model="form" ref="form" :rules="rules"> - <el-form-item label="鏄惁宸插垹闄� 0鏈垹闄� 1宸插垹闄�" prop="deleted"> - <el-input v-model="form.deleted" placeholder="璇疯緭鍏ユ槸鍚﹀凡鍒犻櫎 0鏈垹闄� 1宸插垹闄�" v-trim/> + <el-form-item label="鍚嶇О" prop="name"> + <el-input v-model="form.name" placeholder="璇疯緭鍏ュ悕绉�" v-trim/> </el-form-item> - <el-form-item label="鐘舵��:0=鍚敤锛�1=绂佺敤锛�" prop="status"> - <el-input v-model="form.status" placeholder="璇疯緭鍏ョ姸鎬�:0=鍚敤锛�1=绂佺敤锛�" v-trim/> + <el-form-item v-if="form.type == 1 || form.type == 2" :label=" form.type == 1?'杞﹁締瑙勬牸':'椁愭爣閰嶇疆'" prop="detailList"> + <el-input v-model="form.detailList" placeholder="璇疯緭鍏ュ唴瀹�" v-trim/> </el-form-item> - <el-form-item label="鍒涘缓浜虹紪鐮�" prop="createUser"> - <el-input v-model="form.createUser" placeholder="璇疯緭鍏ュ垱寤轰汉缂栫爜" v-trim/> + <el-form-item v-if="form.type == 1" label="鍥炬爣" prop="icon"> + <UploadAvatarImage + :file="{ imgurlfull: form.iconFull, imgurl: form.icon }" + :uploadData="uploadData" + @uploadSuccess="uploadAvatarSuccess" + /> </el-form-item> - <el-form-item label="鍒涘缓鏃堕棿" prop="createTime"> - <el-date-picker v-model="form.createTime" value-format="yyyy-MM-dd" placeholder="璇疯緭鍏ュ垱寤烘椂闂�"></el-date-picker> + <el-form-item v-if="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> - <el-form-item label="鏇存柊浜虹紪鐮�" prop="updateUser"> - <el-input v-model="form.updateUser" placeholder="璇疯緭鍏ユ洿鏂颁汉缂栫爜" v-trim/> - </el-form-item> - <el-form-item label="鏇存柊鏃堕棿" prop="updateTime"> - <el-date-picker v-model="form.updateTime" value-format="yyyy-MM-dd" placeholder="璇疯緭鍏ユ洿鏂版椂闂�"></el-date-picker> - </el-form-item> - <el-form-item label="澶囨敞" prop="remark"> - <el-input v-model="form.remark" placeholder="璇疯緭鍏ュ娉�" v-trim/> - </el-form-item> - <el-form-item label="鍗曚綅鍚嶇О" prop="name"> - <el-input v-model="form.name" placeholder="璇疯緭鍏ュ崟浣嶅悕绉�" v-trim/> - </el-form-item> - <el-form-item label="绫诲瀷:0=鍝佺閰嶇疆锛�1=杞﹁締绫诲瀷閰嶇疆锛�2=椁愭爣閰嶇疆锛�3=鎵嬬画璐归厤缃紱" prop="type"> - <el-input v-model="form.type" placeholder="璇疯緭鍏ョ被鍨�:0=鍝佺閰嶇疆锛�1=杞﹁締绫诲瀷閰嶇疆锛�2=椁愭爣閰嶇疆锛�3=鎵嬬画璐归厤缃紱" v-trim/> - </el-form-item> - <el-form-item label="鍐呭锛堣溅杈嗚鏍笺�侀鏍囥�佹墜缁垂姣斾緥锛�" prop="detail"> - <el-input v-model="form.detail" placeholder="璇疯緭鍏ュ唴瀹癸紙杞﹁締瑙勬牸銆侀鏍囥�佹墜缁垂姣斾緥锛�" v-trim/> - </el-form-item> - <el-form-item label="鍥炬爣锛堣溅杈嗙被鍨嬩娇鐢級" prop="icon"> - <el-input v-model="form.icon" placeholder="璇疯緭鍏ュ浘鏍囷紙杞﹁締绫诲瀷浣跨敤锛�" v-trim/> - </el-form-item> - <el-form-item label="鏄惁鍥哄畾杞﹁締锛堣溅杈嗙被鍨嬩娇鐢級:0=鍚︼紱1=鏄紱" prop="isFixed"> - <el-input v-model="form.isFixed" placeholder="璇疯緭鍏ユ槸鍚﹀浐瀹氳溅杈嗭紙杞﹁締绫诲瀷浣跨敤锛�:0=鍚︼紱1=鏄紱" v-trim/> + <el-form-item label="鎺掑簭鐮�" prop="sortnum"> + <el-input v-model="form.sortnum" placeholder="璇疯緭鍏ユ帓搴忕爜" v-trim/> </el-form-item> </el-form> </GlobalWindow> @@ -49,27 +35,27 @@ <script> import BaseOpera from '@/components/base/BaseOpera' import GlobalWindow from '@/components/common/GlobalWindow' +import UploadAvatarImage from '@/components/common/UploadAvatarImage' export default { name: 'OperaCategoryWindow', extends: BaseOpera, - components: { GlobalWindow }, + components: { GlobalWindow ,UploadAvatarImage}, data () { return { + isUploading: false, + uploadData: { + folder: 'category' + }, // 琛ㄥ崟鏁版嵁 form: { id: null, - deleted: '', - status: '', - createUser: '', - createTime: '', - updateUser: '', - updateTime: '', - remark: '', + status: 0, + sortnum: null, name: '', - type: '', - detail: '', + type: null, + detailList: [], icon: '', - isFixed: '' + isFixed: 0 }, // 楠岃瘉瑙勫垯 rules: { @@ -81,6 +67,41 @@ api: '/business/category', 'field.id': 'id' }) + }, + methods:{ + uploadAvatarSuccess (file) { + this.$set(this.param, 'icon', file.imgurl) + this.$set(this.param, 'iconFull', file.imgurlfull) + }, + open(title, target, type) { + this.title = title + this.visible = true + this.form = { + id: null, + status: 0, + sortnum: null, + name: '', + type: type, + detailList: [], + icon: '', + isFixed: 0 + } + // 鏂板缓 + if (target == null) { + this.$nextTick(() => { + this.$refs.form.resetFields() + this.form[this.configData['field.id']] = null + this.form.type = type + }) + return + } + // 缂栬緫 + this.$nextTick(() => { + for (const key in this.form) { + this.form[key] = target[key] + } + }) + } } } </script> -- Gitblit v1.9.3