add avatar update for donate pages
This commit is contained in:
parent
8b0f0e7648
commit
7f7d59f43b
@ -240,6 +240,7 @@ func GetOuterDonatePage(donatService model.DonatService) echo.HandlerFunc {
|
||||
// @Param metadata formData model.UpdateDonatPage false "Update fields"
|
||||
// @Param background formData file false "Background image"
|
||||
// @Param head_img formData file false "Head image"
|
||||
// @Param avatar formData file false "Avatar image"
|
||||
// @Success 200 {string} string "Donat page updated successfully"
|
||||
// @Failure 400 {object} echo.HTTPError "Bad request"
|
||||
// @Failure 401 {object} echo.HTTPError "Unauthorized or expired token"
|
||||
@ -280,6 +281,15 @@ func UpdateDonatePage(donatService model.DonatService, fileService model.FileSer
|
||||
}
|
||||
}
|
||||
|
||||
avatarFile, err := request.FormFile("avatar")
|
||||
if err != nil {
|
||||
headImgFile = &multipart.FileHeader{
|
||||
Filename: "",
|
||||
Size: 0,
|
||||
Header: nil,
|
||||
}
|
||||
}
|
||||
|
||||
// Передаем файлы только если они были переданы
|
||||
err = donatService.UpdateDonatePage(
|
||||
ctx,
|
||||
@ -287,6 +297,7 @@ func UpdateDonatePage(donatService model.DonatService, fileService model.FileSer
|
||||
body,
|
||||
*bgFile,
|
||||
*headImgFile,
|
||||
*avatarFile,
|
||||
)
|
||||
if err != nil {
|
||||
return echo.NewHTTPError(http.StatusInternalServerError, custom_response.InternalError)
|
||||
|
@ -88,6 +88,7 @@ type DonatService interface {
|
||||
updateModel UpdateDonatPage,
|
||||
background multipart.FileHeader,
|
||||
headImg multipart.FileHeader,
|
||||
avatar multipart.FileHeader,
|
||||
) error
|
||||
GetVoiceSettings(ctx context.Context, streamerID int) (VoiceSettingsResponse, error)
|
||||
UpdateVoiceSettings(ctx context.Context, streamerID int, updateModel UpdateVoiceSettings) error
|
||||
@ -142,6 +143,7 @@ type DonatRepo interface {
|
||||
streamerID int,
|
||||
backgroundFileID *string,
|
||||
headImgFileID *string,
|
||||
avatarFileID *string,
|
||||
description *string,
|
||||
textAfterDonation *string,
|
||||
profileAvatar *bool,
|
||||
|
@ -271,6 +271,7 @@ UPDATE donate_pages
|
||||
SET
|
||||
background_img = COALESCE(@background_img, background_img),
|
||||
head_img = COALESCE(@head_img, head_img),
|
||||
avatar = COALESCE(@avatar, avatar),
|
||||
description = COALESCE(@description, description),
|
||||
text_after_donat = COALESCE(@text_after_donation, text_after_donat)
|
||||
WHERE streamer_id = @streamer_id
|
||||
|
@ -197,6 +197,7 @@ func (repoDonat *RepoDonat) UpdateDonatePage(
|
||||
streamerID int,
|
||||
backgroundFileID *string,
|
||||
headImgFileID *string,
|
||||
avatarFileID *string,
|
||||
description *string,
|
||||
textAfterDonation *string,
|
||||
profileAvatar *bool,
|
||||
@ -212,6 +213,9 @@ func (repoDonat *RepoDonat) UpdateDonatePage(
|
||||
if headImgFileID != nil {
|
||||
args["head_img"] = *headImgFileID
|
||||
}
|
||||
if avatarFileID != nil {
|
||||
args["avatar"] = *avatarFileID
|
||||
}
|
||||
if description != nil {
|
||||
args["description"] = *description
|
||||
}
|
||||
|
@ -261,9 +261,11 @@ func (donatService *ServiceDonat) UpdateDonatePage(
|
||||
updateModel model.UpdateDonatPage,
|
||||
background multipart.FileHeader,
|
||||
headImg multipart.FileHeader,
|
||||
avatar multipart.FileHeader,
|
||||
) error {
|
||||
var backgroundFileID *string
|
||||
var headImgFileID *string
|
||||
var avatarFileID *string
|
||||
|
||||
if background.Size > 0 {
|
||||
fileID, err := donatService.fileService.AddNewFile(
|
||||
@ -293,11 +295,26 @@ func (donatService *ServiceDonat) UpdateDonatePage(
|
||||
headImgFileID = &fileID
|
||||
}
|
||||
|
||||
if avatar.Size > 0 {
|
||||
fileID, err := donatService.fileService.AddNewFile(
|
||||
ctx,
|
||||
avatar,
|
||||
streamerID,
|
||||
"donat_page",
|
||||
)
|
||||
if err != nil {
|
||||
slog.Error(err.Error())
|
||||
return err
|
||||
}
|
||||
avatarFileID = &fileID
|
||||
}
|
||||
|
||||
err := donatService.donatRepo.UpdateDonatePage(
|
||||
ctx,
|
||||
streamerID,
|
||||
backgroundFileID,
|
||||
headImgFileID,
|
||||
avatarFileID,
|
||||
updateModel.Description,
|
||||
updateModel.TextAfterDonat,
|
||||
updateModel.ProfileAvatar,
|
||||
|
Loading…
x
Reference in New Issue
Block a user