Update update_user_info logic in service_user
Signed-off-by: Asai Neko <sugar@sne.moe>
This commit is contained in:
@@ -24,9 +24,9 @@ import { useUserInfo } from '@/hooks/data/useUserInfo';
|
|||||||
|
|
||||||
const formSchema = z.object({
|
const formSchema = z.object({
|
||||||
username: z.string().min(5),
|
username: z.string().min(5),
|
||||||
nickname: z.string(),
|
nickname: z.string().min(1),
|
||||||
subtitle: z.string(),
|
subtitle: z.string().min(1),
|
||||||
avatar: z.url(),
|
avatar: z.url().min(1),
|
||||||
});
|
});
|
||||||
export function EditProfileDialog() {
|
export function EditProfileDialog() {
|
||||||
const { data } = useUserInfo();
|
const { data } = useUserInfo();
|
||||||
@@ -41,7 +41,7 @@ export function EditProfileDialog() {
|
|||||||
subtitle: user.subtitle,
|
subtitle: user.subtitle,
|
||||||
},
|
},
|
||||||
validators: {
|
validators: {
|
||||||
onSubmit: formSchema
|
onBlur: formSchema,
|
||||||
},
|
},
|
||||||
onSubmit: async ({
|
onSubmit: async ({
|
||||||
value,
|
value,
|
||||||
|
|||||||
@@ -40,50 +40,46 @@ func (self *UserServiceImpl) UpdateUserInfo(payload *UserInfoPayload) (result *U
|
|||||||
userData.SetUsername(payload.Data.Username)
|
userData.SetUsername(payload.Data.Username)
|
||||||
}
|
}
|
||||||
|
|
||||||
if payload.Data.Nickname != "" {
|
if utf8.RuneCountInString(payload.Data.Nickname) > 24 {
|
||||||
if utf8.RuneCountInString(payload.Data.Nickname) > 24 {
|
execption := new(exception.Builder).
|
||||||
execption := new(exception.Builder).
|
SetStatus(exception.StatusUser).
|
||||||
SetStatus(exception.StatusUser).
|
SetService(exception.ServiceUser).
|
||||||
SetService(exception.ServiceUser).
|
SetType(exception.TypeCommon).
|
||||||
SetType(exception.TypeCommon).
|
SetOriginal(exception.CommonErrorInvalidInput)
|
||||||
SetOriginal(exception.CommonErrorInvalidInput)
|
|
||||||
|
|
||||||
result = &UserInfoResult{
|
result = &UserInfoResult{
|
||||||
Common: shared.CommonResult{
|
Common: shared.CommonResult{
|
||||||
HttpCode: 400,
|
HttpCode: 400,
|
||||||
Exception: execption,
|
Exception: execption,
|
||||||
},
|
},
|
||||||
Data: nil,
|
Data: nil,
|
||||||
}
|
|
||||||
|
|
||||||
return
|
|
||||||
}
|
}
|
||||||
userData.SetNickname(payload.Data.Nickname)
|
|
||||||
|
return
|
||||||
}
|
}
|
||||||
|
userData.SetNickname(payload.Data.Nickname)
|
||||||
|
|
||||||
if payload.Data.Subtitle != "" {
|
if utf8.RuneCountInString(payload.Data.Subtitle) > 32 {
|
||||||
if utf8.RuneCountInString(payload.Data.Subtitle) > 32 {
|
execption := new(exception.Builder).
|
||||||
execption := new(exception.Builder).
|
SetStatus(exception.StatusUser).
|
||||||
SetStatus(exception.StatusUser).
|
SetService(exception.ServiceUser).
|
||||||
SetService(exception.ServiceUser).
|
SetEndpoint(exception.EndpointUserServiceUpdate).
|
||||||
SetEndpoint(exception.EndpointUserServiceUpdate).
|
SetType(exception.TypeCommon).
|
||||||
SetType(exception.TypeCommon).
|
SetOriginal(exception.CommonErrorInvalidInput).
|
||||||
SetOriginal(exception.CommonErrorInvalidInput).
|
SetError(nil).
|
||||||
SetError(nil).
|
Throw(payload.Context)
|
||||||
Throw(payload.Context)
|
|
||||||
|
|
||||||
result = &UserInfoResult{
|
result = &UserInfoResult{
|
||||||
Common: shared.CommonResult{
|
Common: shared.CommonResult{
|
||||||
HttpCode: 400,
|
HttpCode: 400,
|
||||||
Exception: execption,
|
Exception: execption,
|
||||||
},
|
},
|
||||||
Data: nil,
|
Data: nil,
|
||||||
}
|
|
||||||
|
|
||||||
return
|
|
||||||
}
|
}
|
||||||
userData.SetSubtitle(payload.Data.Subtitle)
|
|
||||||
|
return
|
||||||
}
|
}
|
||||||
|
userData.SetSubtitle(payload.Data.Subtitle)
|
||||||
|
|
||||||
if payload.Data.Avatar != "" {
|
if payload.Data.Avatar != "" {
|
||||||
_, err := url.ParseRequestURI(payload.Data.Avatar)
|
_, err := url.ParseRequestURI(payload.Data.Avatar)
|
||||||
@@ -108,6 +104,8 @@ func (self *UserServiceImpl) UpdateUserInfo(payload *UserInfoPayload) (result *U
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
userData.SetAvatar(payload.Data.Avatar)
|
userData.SetAvatar(payload.Data.Avatar)
|
||||||
|
} else if payload.Data.Avatar == "" {
|
||||||
|
userData.SetAvatar("")
|
||||||
}
|
}
|
||||||
|
|
||||||
if payload.Data.Bio != "" {
|
if payload.Data.Bio != "" {
|
||||||
@@ -131,7 +129,9 @@ func (self *UserServiceImpl) UpdateUserInfo(payload *UserInfoPayload) (result *U
|
|||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
userData.Bio = payload.Data.Bio
|
userData.SetBio(payload.Data.Bio)
|
||||||
|
} else if payload.Data.Bio == "" {
|
||||||
|
userData.SetBio("")
|
||||||
}
|
}
|
||||||
|
|
||||||
err = userData.UpdateByUserID(payload.Context, &payload.UserId)
|
err = userData.UpdateByUserID(payload.Context, &payload.UserId)
|
||||||
|
|||||||
Reference in New Issue
Block a user