Commit 3443f0554edbd9a2ae0b216875c3a3ba09181379
Merge branch 'sqy_dev' into 'main'
oem内容定制修改中 See merge request huang/yun-teng-iot-front!17
Showing
3 changed files
with
29 additions
and
16 deletions
| @@ -2,9 +2,10 @@ | @@ -2,9 +2,10 @@ | ||
| 2 | * @Author: Vben | 2 | * @Author: Vben |
| 3 | * @Description: logo component | 3 | * @Description: logo component |
| 4 | --> | 4 | --> |
| 5 | +<!-- TODO: appLogo --> | ||
| 5 | <template> | 6 | <template> |
| 6 | <div class="anticon" :class="getAppLogoClass" @click="goHome"> | 7 | <div class="anticon" :class="getAppLogoClass" @click="goHome"> |
| 7 | - <img src="../../../assets/images/logo.png" /> | 8 | + <img :src="getLogoUrl" /> |
| 8 | <div class="ml-2 md:opacity-100" :class="getTitleClass" v-show="showTitle"> | 9 | <div class="ml-2 md:opacity-100" :class="getTitleClass" v-show="showTitle"> |
| 9 | {{ title }} | 10 | {{ title }} |
| 10 | </div> | 11 | </div> |
| @@ -18,7 +19,7 @@ | @@ -18,7 +19,7 @@ | ||
| 18 | import { useDesign } from '/@/hooks/web/useDesign'; | 19 | import { useDesign } from '/@/hooks/web/useDesign'; |
| 19 | import { PageEnum } from '/@/enums/pageEnum'; | 20 | import { PageEnum } from '/@/enums/pageEnum'; |
| 20 | import { useUserStore } from '/@/store/modules/user'; | 21 | import { useUserStore } from '/@/store/modules/user'; |
| 21 | - | 22 | + import { createLocalStorage } from '/@/utils/cache/index'; |
| 22 | const props = defineProps({ | 23 | const props = defineProps({ |
| 23 | /** | 24 | /** |
| 24 | * The theme of the current parent component | 25 | * The theme of the current parent component |
| @@ -46,6 +47,14 @@ | @@ -46,6 +47,14 @@ | ||
| 46 | { 'collapsed-show-title': unref(getCollapsedShowTitle) }, | 47 | { 'collapsed-show-title': unref(getCollapsedShowTitle) }, |
| 47 | ]); | 48 | ]); |
| 48 | 49 | ||
| 50 | + const storage = createLocalStorage(); | ||
| 51 | + // 获取AppLogo | ||
| 52 | + const getLogoUrl = computed(() => { | ||
| 53 | + return storage.get('platformInfo') | ||
| 54 | + ? storage.get('platformInfo').logo | ||
| 55 | + : '/src/assets/images/logo.png'; | ||
| 56 | + }); | ||
| 57 | + | ||
| 49 | const getTitleClass = computed(() => [ | 58 | const getTitleClass = computed(() => [ |
| 50 | `${prefixCls}__title`, | 59 | `${prefixCls}__title`, |
| 51 | { | 60 | { |
| @@ -35,8 +35,8 @@ | @@ -35,8 +35,8 @@ | ||
| 35 | :before-upload="beforeUploadIconPic" | 35 | :before-upload="beforeUploadIconPic" |
| 36 | > | 36 | > |
| 37 | <div v-if="iconPic"> | 37 | <div v-if="iconPic"> |
| 38 | - <img :src="iconPic" /> | ||
| 39 | - <div style="background-color: #ccc">重新上传</div> | 38 | + <img :src="iconPic" class="m-auto" /> |
| 39 | + <div style="background-color: #ccc; margin-top: 20px">重新上传</div> | ||
| 40 | </div> | 40 | </div> |
| 41 | <div v-else> | 41 | <div v-else> |
| 42 | <PlusOutlined style="font-size: 30px" /> | 42 | <PlusOutlined style="font-size: 30px" /> |
| @@ -95,6 +95,7 @@ | @@ -95,6 +95,7 @@ | ||
| 95 | import type { FileItem } from '/@/components/Upload/src/typing'; | 95 | import type { FileItem } from '/@/components/Upload/src/typing'; |
| 96 | import { logoUpload, iconUpload, bgUpload, getPlatForm, updatePlatForm } from '/@/api/oem/index'; | 96 | import { logoUpload, iconUpload, bgUpload, getPlatForm, updatePlatForm } from '/@/api/oem/index'; |
| 97 | import { PlusOutlined } from '@ant-design/icons-vue'; | 97 | import { PlusOutlined } from '@ant-design/icons-vue'; |
| 98 | + import { createLocalStorage } from '/@/utils/cache/index'; | ||
| 98 | export default defineComponent({ | 99 | export default defineComponent({ |
| 99 | components: { | 100 | components: { |
| 100 | BasicForm, | 101 | BasicForm, |
| @@ -146,7 +147,7 @@ | @@ -146,7 +147,7 @@ | ||
| 146 | } | 147 | } |
| 147 | return isJpgOrPng && isLt2M; | 148 | return isJpgOrPng && isLt2M; |
| 148 | }; | 149 | }; |
| 149 | - | 150 | + // Icon上传 |
| 150 | async function customUploadIconPic({ file }) { | 151 | async function customUploadIconPic({ file }) { |
| 151 | if (beforeUploadIconPic(file)) { | 152 | if (beforeUploadIconPic(file)) { |
| 152 | const formData = new FormData(); | 153 | const formData = new FormData(); |
| @@ -158,9 +159,9 @@ | @@ -158,9 +159,9 @@ | ||
| 158 | } | 159 | } |
| 159 | } | 160 | } |
| 160 | const beforeUploadIconPic = (file: FileItem) => { | 161 | const beforeUploadIconPic = (file: FileItem) => { |
| 161 | - const isJpgOrPng = file.type === 'image/jpeg' || file.type === 'image/png'; | 162 | + const isJpgOrPng = file.type === 'image/x-icon'; |
| 162 | if (!isJpgOrPng) { | 163 | if (!isJpgOrPng) { |
| 163 | - createMessage.error('只能上传图片文件!'); | 164 | + createMessage.error('只能上传.icon图片文件!'); |
| 164 | } | 165 | } |
| 165 | const isLt2M = (file.size as number) / 1024 < 500; | 166 | const isLt2M = (file.size as number) / 1024 < 500; |
| 166 | if (!isLt2M) { | 167 | if (!isLt2M) { |
| @@ -198,12 +199,16 @@ | @@ -198,12 +199,16 @@ | ||
| 198 | compState.value.loading = true; | 199 | compState.value.loading = true; |
| 199 | await updatePlatForm({ | 200 | await updatePlatForm({ |
| 200 | ...fieldValue, | 201 | ...fieldValue, |
| 201 | - background: unref(bgPic), | ||
| 202 | - icon: unref(bgPic), | ||
| 203 | logo: unref(logoPic), | 202 | logo: unref(logoPic), |
| 203 | + icon: unref(iconPic), | ||
| 204 | + background: unref(bgPic), | ||
| 204 | }); | 205 | }); |
| 205 | compState.value.loading = false; | 206 | compState.value.loading = false; |
| 206 | createMessage.success('保存信息成功'); | 207 | createMessage.success('保存信息成功'); |
| 208 | + | ||
| 209 | + // 保存一份数据到本地缓存中. | ||
| 210 | + const storage = createLocalStorage(); | ||
| 211 | + storage.set('PlatformInfo', fieldValue); | ||
| 207 | } catch (e) { | 212 | } catch (e) { |
| 208 | createMessage.error('保存信息失败'); | 213 | createMessage.error('保存信息失败'); |
| 209 | } | 214 | } |
| @@ -61,13 +61,6 @@ | @@ -61,13 +61,6 @@ | ||
| 61 | } | 61 | } |
| 62 | }; | 62 | }; |
| 63 | 63 | ||
| 64 | - onMounted(async () => { | ||
| 65 | - const res = await getEnterPriseDetail(); | ||
| 66 | - console.log(res); | ||
| 67 | - updateCityData(res.codeProv, res.codeCity, res.codeCoun); | ||
| 68 | - setFieldsValue(res); | ||
| 69 | - }); | ||
| 70 | - | ||
| 71 | async function updateCityData(codeProv: string, codeCity: string, codeCoun: string) { | 64 | async function updateCityData(codeProv: string, codeCity: string, codeCoun: string) { |
| 72 | const nameCity = await getTownChild('codeProv', codeProv); | 65 | const nameCity = await getTownChild('codeProv', codeProv); |
| 73 | const nameCoun = await getTownChild('codeCity', codeCity); | 66 | const nameCoun = await getTownChild('codeCity', codeCity); |
| @@ -182,6 +175,12 @@ | @@ -182,6 +175,12 @@ | ||
| 182 | }); | 175 | }); |
| 183 | } | 176 | } |
| 184 | 177 | ||
| 178 | + onMounted(async () => { | ||
| 179 | + const res = await getEnterPriseDetail(); | ||
| 180 | + updateCityData(res.codeProv, res.codeCity, res.codeCoun); | ||
| 181 | + setFieldsValue(res); | ||
| 182 | + }); | ||
| 183 | + | ||
| 185 | return { | 184 | return { |
| 186 | registerForm, | 185 | registerForm, |
| 187 | compState, | 186 | compState, |