From 1bbd7061dac79cacf5513234a04cac8ba0be5c6f Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期五, 21 三月 2025 09:15:36 +0800 Subject: [PATCH] feat: 接口对接 --- apps/cMiniApp/src/subpackages/curriculum/editMineInfo/InnerPage.vue | 91 ++++++++++++++++++++++++++++++++++++--------- 1 files changed, 73 insertions(+), 18 deletions(-) diff --git a/apps/cMiniApp/src/subpackages/curriculum/editMineInfo/InnerPage.vue b/apps/cMiniApp/src/subpackages/curriculum/editMineInfo/InnerPage.vue index cfccdcb..9bf9b84 100644 --- a/apps/cMiniApp/src/subpackages/curriculum/editMineInfo/InnerPage.vue +++ b/apps/cMiniApp/src/subpackages/curriculum/editMineInfo/InnerPage.vue @@ -7,8 +7,8 @@ <nut-form-item label="濮撳悕:" class="bole-form-item" prop="name"> <nut-input v-model.trim="form.name" placeholder="璇疯緭鍏ヤ紒涓氬悕绉�" /> </nut-form-item> - <nut-form-item label="鎵嬫満鍙�:" class="bole-form-item" prop="phone" required> - <nut-input v-model.trim="form.phone" placeholder="璇疯緭鍏ユ墜鏈哄彿" type="text" /> + <nut-form-item label="鎵嬫満鍙�:" class="bole-form-item" prop="phoneNumber" required> + <nut-input v-model.trim="form.phoneNumber" placeholder="璇疯緭鍏ユ墜鏈哄彿" type="text" /> </nut-form-item> <nut-form-item label="韬唤:" class="bole-form-item" prop="socialIdentity"> <ChooseInputWithPicker @@ -24,12 +24,12 @@ :value-enum="EducationTypeList" /> </nut-form-item> - <nut-form-item label="甯搁┗鍩庡競:" class="bole-form-item" prop="gender"> - <ChooseInputWithPicker - v-model="form.gender" + <nut-form-item label="甯搁┗鍩庡競:" class="bole-form-item" prop="areaList"> + <ChooseInputWithAreaPicker + :columns="cityAreaTree" + v-model="form.areaList" placeholder="璇烽�夋嫨甯搁┗鍩庡競" - :value-enum="TaskStatusText" - /> + ></ChooseInputWithAreaPicker> </nut-form-item> </nut-form> </ContentScrollView> @@ -40,12 +40,14 @@ <script setup lang="ts"> import { FormRules } from '@nutui/nutui-taro/dist/types/__VUE/form/types'; -import { ChooseInputWithPicker } from '@12333/components'; -import { TaskStatusText, TaskStatus } from '@/constants'; -import { convertApi2FormUrlOnlyOne } from '@12333/utils'; -import { useUser } from '@/hooks'; -import { useSearchSettingType } from '@12333/hooks'; -import { SearchType } from '@12333/constants'; +import { ChooseInputWithPicker, ChooseInputWithAreaPicker } from '@12333/components'; +import { TaskStatusText } from '@/constants'; +import { convertApi2FormUrlOnlyOne, Message, setOSSLink } from '@12333/utils'; +import { useAllAreaList, useArea, useSearchSettingType } from '@12333/hooks'; +import { Gender, SearchType } from '@12333/constants'; +import * as userResumeServices from '@12333/services/api/userResume'; +import Taro from '@tarojs/taro'; +import { useQuery } from '@tanstack/vue-query'; defineOptions({ name: 'InnerPage', @@ -58,18 +60,44 @@ searchType: SearchType.Identity, }); +const { findAreaNameFromCode, cityAreaTree } = useAllAreaList(); + const form = reactive({ - // avatarUrl: convertApi2FormUrlOnlyOne(userDetail.value?.originalAvatarUrl), + avatarUrl: [], name: '', - phone: '', - gender: TaskStatus.All, + phoneNumber: '', + gender: Gender.Male, socialIdentity: '', educationalLevel: '', areaList: [] as number[], }); +const { + isLoading, + isError, + data: detail, + refetch, +} = useQuery({ + queryKey: ['userResumeServices/getUserResumeBaseInfo'], + queryFn: async () => { + return await userResumeServices.getUserResumeBaseInfo({ + showLoading: false, + }); + }, + placeholderData: () => ({} as API.UserResumeBaseInfoOutput), + onSuccess(data) { + form.avatarUrl = convertApi2FormUrlOnlyOne(setOSSLink(data.avatarUrl)); + form.name = data.name; + form.phoneNumber = data.phoneNumber; + form.gender = data.genderType; + form.socialIdentity = data.socialIdentity; + form.educationalLevel = data.educationalLevel; + form.areaList = [data.residentProvinceCode, data.residentCityCode]; + }, +}); + const rules = reactive<FormRules>({ - phone: [{ required: true, message: '璇疯緭鍏ユ墜鏈哄彿' }], + phoneNumber: [{ required: true, message: '璇疯緭鍏ユ墜鏈哄彿' }], socialIdentity: [{ required: true, message: '璇烽�夋嫨韬唤' }], educationalLevel: [{ required: true, message: '璇烽�夋嫨瀛﹀巻' }], areaList: [{ required: true, message: '璇烽�夋嫨甯搁┗鍩庡競' }], @@ -84,7 +112,34 @@ }); } -function confirm() {} +async function confirm() { + try { + let params: API.SaveUserResumeBaseInfoInput = { + name: form.name, + avatarUrl: form.avatarUrl[0]?.path, + phoneNumber: form.phoneNumber, + educationalLevel: form.educationalLevel, + socialIdentity: form.socialIdentity, + residentProvinceCode: form.areaList[0], + residentProvinceName: findAreaNameFromCode(form.areaList[0]), + residentCityCode: form.areaList[1], + residentCityName: findAreaNameFromCode(form.areaList[1]), + }; + let res = await userResumeServices.saveUserResumeBaseInfo(params); + if (res) { + Message.success('淇濆瓨鎴愬姛', { + onClosed() { + Taro.navigateTo({ + url: `${RouterPath.mineCurriculumVitae}`, + success: function (res) { + res.eventChannel.emit('updateResume', { content: true }); + }, + }); + }, + }); + } + } catch (error) {} +} </script> <style lang="scss"> -- Gitblit v1.9.1