userProfile.js
1.03 KB
/*
* @Date: 2026-05-20 11:40:00
* @LastEditors: hookehuyr hookehuyr@gmail.com
* @LastEditTime: 2026-05-20 11:40:00
* @FilePath: /lls_program/src/utils/userProfile.js
* @Description: 用户资料相关工具函数
*/
/**
* @description 构建更新个人资料请求参数
* @param {Object} formData - 页面表单数据
* @param {Object} extraParams - 额外补充参数
* @returns {Object} 仅包含接口需要的字段
*/
export const buildUpdateUserProfilePayload = (formData, extraParams = {}) => {
const payload = {
nickname: (formData?.nickname || '').trim(),
avatar_url: formData?.avatar_url || '',
birth_date: formData?.birth_date || '',
wheelchair_needed: Boolean(formData?.wheelchair_needed),
gender: formData?.gender,
}
const optionalKeys = ['reg_source', 'reg_stage_id']
optionalKeys.forEach(key => {
const value = extraParams[key]
if (value !== '' && value !== undefined && value !== null) {
payload[key] = key === 'reg_stage_id' ? Number(value) : value
}
})
return payload
}