From 661e8cf7b40d79d2024969e56f04100b31abef1a Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: Wed, 11 Feb 2026 15:38:13 +0800
Subject: [PATCH] 优化字典类型属性提醒说明

---
 ruoyi-ui/src/views/system/user/profile/userAvatar.vue |   75 ++++++++++++++++++-------------------
 1 files changed, 37 insertions(+), 38 deletions(-)

diff --git a/ruoyi-ui/src/views/system/user/profile/userAvatar.vue b/ruoyi-ui/src/views/system/user/profile/userAvatar.vue
index 8d3195b..4c53614 100644
--- a/ruoyi-ui/src/views/system/user/profile/userAvatar.vue
+++ b/ruoyi-ui/src/views/system/user/profile/userAvatar.vue
@@ -12,6 +12,7 @@
             :autoCropWidth="options.autoCropWidth"
             :autoCropHeight="options.autoCropHeight"
             :fixedBox="options.fixedBox"
+            :outputType="options.outputType"
             @realTime="realTime"
             v-if="visible"
           />
@@ -53,18 +54,13 @@
 </template>
 
 <script>
-import store from "@/store";
-import { VueCropper } from "vue-cropper";
-import { uploadAvatar } from "@/api/system/user";
+import store from "@/store"
+import { VueCropper } from "vue-cropper"
+import { uploadAvatar } from "@/api/system/user"
 import { debounce } from '@/utils'
 
 export default {
   components: { VueCropper },
-  props: {
-    user: {
-      type: Object
-    }
-  },
   data() {
     return {
       // 是否显示弹出层
@@ -74,24 +70,26 @@
       // 弹出层标题
       title: "修改头像",
       options: {
-        img: store.getters.avatar, //裁剪图片的地址
-        autoCrop: true, // 是否默认生成截图框
-        autoCropWidth: 200, // 默认生成截图框宽度
-        autoCropHeight: 200, // 默认生成截图框高度
-        fixedBox: true // 固定截图框大小 不允许改变
+        img: store.getters.avatar,  //裁剪图片的地址
+        autoCrop: true,             // 是否默认生成截图框
+        autoCropWidth: 200,         // 默认生成截图框宽度
+        autoCropHeight: 200,        // 默认生成截图框高度
+        fixedBox: true,             // 固定截图框大小 不允许改变
+        outputType:"png",           // 默认生成截图为PNG格式
+        filename: 'avatar'          // 文件名称
       },
       previews: {},
       resizeHandler: null
-    };
+    }
   },
   methods: {
     // 编辑头像
     editCropper() {
-      this.open = true;
+      this.open = true
     },
     // 打开弹出层结束时的回调
     modalOpened() {
-      this.visible = true;
+      this.visible = true
       if (!this.resizeHandler) {
         this.resizeHandler = debounce(() => {
           this.refresh()
@@ -101,62 +99,63 @@
     },
     // 刷新组件
     refresh() {
-      this.$refs.cropper.refresh();
+      this.$refs.cropper.refresh()
     },
     // 覆盖默认的上传行为
     requestUpload() {
     },
     // 向左旋转
     rotateLeft() {
-      this.$refs.cropper.rotateLeft();
+      this.$refs.cropper.rotateLeft()
     },
     // 向右旋转
     rotateRight() {
-      this.$refs.cropper.rotateRight();
+      this.$refs.cropper.rotateRight()
     },
     // 图片缩放
     changeScale(num) {
-      num = num || 1;
-      this.$refs.cropper.changeScale(num);
+      num = num || 1
+      this.$refs.cropper.changeScale(num)
     },
     // 上传预处理
     beforeUpload(file) {
       if (file.type.indexOf("image/") == -1) {
-        this.$modal.msgError("文件格式错误,请上传图片类型,如:JPG,PNG后缀的文件。");
+        this.$modal.msgError("文件格式错误,请上传图片类型,如:JPG,PNG后缀的文件。")
       } else {
-        const reader = new FileReader();
-        reader.readAsDataURL(file);
+        const reader = new FileReader()
+        reader.readAsDataURL(file)
         reader.onload = () => {
-          this.options.img = reader.result;
-        };
+          this.options.img = reader.result
+          this.options.filename = file.name
+        }
       }
     },
     // 上传图片
     uploadImg() {
       this.$refs.cropper.getCropBlob(data => {
-        let formData = new FormData();
-        formData.append("avatarfile", data);
+        let formData = new FormData()
+        formData.append("avatarfile", data, this.options.filename)
         uploadAvatar(formData).then(response => {
-          this.open = false;
-          this.options.img = response.imgUrl;
-          store.commit('SET_AVATAR', this.options.img);
-          this.$modal.msgSuccess("修改成功");
-          this.visible = false;
-        });
-      });
+          this.open = false
+          this.options.img = response.imgUrl
+          store.commit('SET_AVATAR', this.options.img)
+          this.$modal.msgSuccess("修改成功")
+          this.visible = false
+        })
+      })
     },
     // 实时预览
     realTime(data) {
-      this.previews = data;
+      this.previews = data
     },
     // 关闭窗口
     closeDialog() {
       this.options.img = store.getters.avatar
-      this.visible = false;
+      this.visible = false
       window.removeEventListener("resize", this.resizeHandler)
     }
   }
-};
+}
 </script>
 <style scoped lang="scss">
 .user-info-head {

--
Gitblit v1.9.3