From 785c7495c11b76b60aa86545eecc3ec3b870d5a5 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子li <15040126243@163.com> Date: 星期一, 24 十月 2022 09:43:35 +0800 Subject: [PATCH] Merge remote-tracking branch 'ruoyi-vue/master' into dev --- ruoyi-framework/src/main/java/com/ruoyi/framework/config/ResourcesConfig.java | 1 + ruoyi-ui/src/App.vue | 15 ++++++++++++--- ruoyi-ui/src/views/system/user/index.vue | 4 ++-- ruoyi-ui/src/views/system/user/profile/userAvatar.vue | 27 ++++++++++++++++++++------- pom.xml | 1 + ruoyi-ui/src/assets/styles/ruoyi.scss | 5 +++-- 6 files changed, 39 insertions(+), 14 deletions(-) diff --git a/pom.xml b/pom.xml index 2a41e63..607b1ba 100644 --- a/pom.xml +++ b/pom.xml @@ -443,3 +443,4 @@ </project> + diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ResourcesConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ResourcesConfig.java index f43ecab..9ef6737 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ResourcesConfig.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ResourcesConfig.java @@ -4,6 +4,7 @@ import com.yomahub.tlog.web.interceptor.TLogWebInterceptor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import org.springframework.http.CacheControl; import org.springframework.web.cors.CorsConfiguration; import org.springframework.web.cors.UrlBasedCorsConfigurationSource; import org.springframework.web.filter.CorsFilter; diff --git a/ruoyi-ui/src/App.vue b/ruoyi-ui/src/App.vue index 391d951..29de49f 100644 --- a/ruoyi-ui/src/App.vue +++ b/ruoyi-ui/src/App.vue @@ -1,12 +1,16 @@ <template> <div id="app"> <router-view /> + <theme-picker /> </div> </template> <script> -export default { - name: 'App', +import ThemePicker from "@/components/ThemePicker"; + +export default { + name: "App", + components: { ThemePicker }, metaInfo() { return { title: this.$store.state.settings.dynamicTitle && this.$store.state.settings.title, @@ -15,5 +19,10 @@ } } } -} +}; </script> +<style scoped> +#app .theme-picker { + display: none; +} +</style> diff --git a/ruoyi-ui/src/assets/styles/ruoyi.scss b/ruoyi-ui/src/assets/styles/ruoyi.scss index e960877..ca7c6f9 100644 --- a/ruoyi-ui/src/assets/styles/ruoyi.scss +++ b/ruoyi-ui/src/assets/styles/ruoyi.scss @@ -264,9 +264,10 @@ } .avatar-upload-preview { - position: absolute; + position: relative; top: 50%; - transform: translate(50%, -50%); + left: 50%; + transform: translate(-50%, -50%); width: 200px; height: 200px; border-radius: 50%; diff --git a/ruoyi-ui/src/views/system/user/index.vue b/ruoyi-ui/src/views/system/user/index.vue index 72bb942..3edf44a 100644 --- a/ruoyi-ui/src/views/system/user/index.vue +++ b/ruoyi-ui/src/views/system/user/index.vue @@ -576,8 +576,8 @@ this.form = response.data.user; this.postOptions = response.data.posts; this.roleOptions = response.data.roles; - this.form.postIds = response.data.postIds; - this.form.roleIds = response.data.roleIds; + this.$set(this.form, "postIds", response.data.postIds); + this.$set(this.form, "roleIds", response.data.roleIds); this.open = true; this.title = "淇敼鐢ㄦ埛"; this.form.password = ""; diff --git a/ruoyi-ui/src/views/system/user/profile/userAvatar.vue b/ruoyi-ui/src/views/system/user/profile/userAvatar.vue index d094602..bd1d23b 100644 --- a/ruoyi-ui/src/views/system/user/profile/userAvatar.vue +++ b/ruoyi-ui/src/views/system/user/profile/userAvatar.vue @@ -24,7 +24,7 @@ </el-row> <br /> <el-row> - <el-col :lg="2" :md="2"> + <el-col :lg="2" :sm="3" :xs="3"> <el-upload action="#" :http-request="requestUpload" :show-file-list="false" :before-upload="beforeUpload"> <el-button size="small"> 閫夋嫨 @@ -32,19 +32,19 @@ </el-button> </el-upload> </el-col> - <el-col :lg="{span: 1, offset: 2}" :md="2"> + <el-col :lg="{span: 1, offset: 2}" :sm="2" :xs="2"> <el-button icon="el-icon-plus" size="small" @click="changeScale(1)"></el-button> </el-col> - <el-col :lg="{span: 1, offset: 1}" :md="2"> + <el-col :lg="{span: 1, offset: 1}" :sm="2" :xs="2"> <el-button icon="el-icon-minus" size="small" @click="changeScale(-1)"></el-button> </el-col> - <el-col :lg="{span: 1, offset: 1}" :md="2"> + <el-col :lg="{span: 1, offset: 1}" :sm="2" :xs="2"> <el-button icon="el-icon-refresh-left" size="small" @click="rotateLeft()"></el-button> </el-col> - <el-col :lg="{span: 1, offset: 1}" :md="2"> + <el-col :lg="{span: 1, offset: 1}" :sm="2" :xs="2"> <el-button icon="el-icon-refresh-right" size="small" @click="rotateRight()"></el-button> </el-col> - <el-col :lg="{span: 2, offset: 6}" :md="2"> + <el-col :lg="{span: 2, offset: 6}" :sm="2" :xs="2"> <el-button type="primary" size="small" @click="uploadImg()">鎻� 浜�</el-button> </el-col> </el-row> @@ -56,6 +56,7 @@ import store from "@/store"; import { VueCropper } from "vue-cropper"; import { uploadAvatar } from "@/api/system/user"; +import { debounce } from '@/utils' export default { components: { VueCropper }, @@ -80,7 +81,8 @@ fixedBox: true, // 鍥哄畾鎴浘妗嗗ぇ灏� 涓嶅厑璁告敼鍙� filename: '' }, - previews: {} + previews: {}, + resizeHandler: null }; }, methods: { @@ -91,6 +93,16 @@ // 鎵撳紑寮瑰嚭灞傜粨鏉熸椂鐨勫洖璋� modalOpened() { this.visible = true; + if (!this.resizeHandler) { + this.resizeHandler = debounce(() => { + this.refresh() + }, 100) + } + window.addEventListener("resize", this.resizeHandler) + }, + // 鍒锋柊缁勪欢 + refresh() { + this.$refs.cropper.refresh(); }, // 瑕嗙洊榛樿鐨勪笂浼犺涓� requestUpload() { @@ -144,6 +156,7 @@ closeDialog() { this.options.img = store.getters.avatar this.visible = false; + window.removeEventListener("resize", this.resizeHandler) } } }; -- Gitblit v1.9.3