From acd6c55ea7b11e06130c20bcd5ffd98c8e880a1f Mon Sep 17 00:00:00 2001 From: zhengyiming <540361168@qq.com> Date: 星期二, 12 八月 2025 16:32:18 +0800 Subject: [PATCH] Merge branch 'master' of http://120.26.58.240:8888/r/flexJobMiniApp --- apps/cMiniApp/src/subpackages/curriculum/mineDetailedInfo/InnerPage.vue | 76 ++++++++++++++++++++++++++++++------- 1 files changed, 61 insertions(+), 15 deletions(-) diff --git a/apps/cMiniApp/src/subpackages/curriculum/mineDetailedInfo/InnerPage.vue b/apps/cMiniApp/src/subpackages/curriculum/mineDetailedInfo/InnerPage.vue index f67fa70..e4d1581 100644 --- a/apps/cMiniApp/src/subpackages/curriculum/mineDetailedInfo/InnerPage.vue +++ b/apps/cMiniApp/src/subpackages/curriculum/mineDetailedInfo/InnerPage.vue @@ -17,7 +17,7 @@ prop="photo" label-position="top" > - <Uploader v-model:file-list="form.photo" :maximum="6" class="bole-uploader"> </Uploader> + <Uploader v-model:file-list="form.photos" :maximum="6" class="bole-uploader"> </Uploader> </nut-form-item> </nut-form> </ContentScrollView> @@ -27,35 +27,81 @@ </template> <script setup lang="ts"> -import { useUser } from '@/hooks'; +import { goBack } from '@/utils'; import { NumberInput } from '@12333/components'; +import * as userResumeServices from '@12333/services/apiV2/userResume'; +import { convertApiPath2Url, Message } from '@12333/utils'; +import { FileItem } from '@nutui/nutui-taro/dist/types/__VUE/uploader/type'; +import { useQuery } from '@tanstack/vue-query'; defineOptions({ name: 'InnerPage', }); -const { userDetail } = useUser(); +const { updateUserResume } = useUpdateResume(); -const form = reactive({ - height: '', - weight: '', - photo: [], +const { + isLoading, + isError, + data: detail, + refetch, +} = useQuery({ + queryKey: ['userResumeServices/getUserResumeDetail'], + queryFn: async () => { + return await userResumeServices.getUserResumeDetail( + {}, + { + showLoading: false, + } + ); + }, + placeholderData: () => ({} as API.GetUserResumeDetailQueryResult), + onSuccess(data) { + form.height = data.height; + form.weight = data.weight; + form.photos = data.photos?.length ? data.photos.map((x) => convertApiPath2Url(x)) : []; + }, }); -function handleConfirm() {} +const form = reactive({ + height: 0, + weight: 0, + photos: [] as FileItem[], +}); + +async function handleConfirm() { + try { + let params: API.SaveUserResumeDetailCommand = { + weight: form.weight, + height: form.height, + photos: form.photos?.length ? form.photos.map((x) => x.path) : [], + }; + let res = await userResumeServices.saveUserResumeDetail(params); + if (res) { + Message.success('淇濆瓨鎴愬姛', { + onClosed() { + goBack(); + updateUserResume(); + }, + }); + } + } catch (error) {} +} </script> <style lang="scss"> @import '@/styles/common.scss'; -.person-photo { - .nut-form-item__label { - padding-right: 0; +.mineDetailedInfo-page-wrapper { + .person-photo { + .nut-form-item__label { + padding-right: 0; + } } -} -.nut-form .nut-cell.bole-form-item:not(.alignTop), -page .nut-form .nut-cell.bole-form-item:not(.alignTop) { - align-items: flex-start !important; + .nut-form .nut-cell.bole-form-item:not(.alignTop), + page .nut-form .nut-cell.bole-form-item:not(.alignTop) { + align-items: flex-start !important; + } } </style> -- Gitblit v1.9.1