完成封面功能

This commit is contained in:
2025-10-27 17:22:43 +08:00
parent 7e9c70fe6a
commit a5285d7dc0
2 changed files with 29 additions and 4 deletions

View File

@@ -5,6 +5,7 @@ package pageImage
import (
"context"
"fmt"
"github.com/JACKYMYPERSON/hldrCenter/config"
"github.com/JACKYMYPERSON/hldrCenter/internal/pageimgs/internal/model"
@@ -30,7 +31,29 @@ func NewSavePageImageLogic(ctx context.Context, cfg *config.Config, model model.
}
func (l *SavePageImageLogic) SavePageImage(req *types.SavePageImageReq) (resp *types.SavePageImageResp, err error) {
// todo: add your logic here and delete this line
if req.Id <= 0 {
return nil, fmt.Errorf("id 不能为空")
}
return
// 2. 根据 id 查询图片记录
image, err := l.model.FindOne(l.ctx, req.Id)
if err != nil {
if err == model.ErrNotFound {
return nil, fmt.Errorf("未找到 id 为 %d 的图片", req.Id)
}
return nil, fmt.Errorf("查询图片失败:%v", err)
}
// 3. 仅更新 image_url 字段(其他字段保持不变)
image.ImageUrl = req.ImageUrl
if err := l.model.Update(l.ctx, image); err != nil {
return nil, fmt.Errorf("更新图片 URL 失败:%v", err)
}
// 4. 返回成功响应
return &types.SavePageImageResp{
Success: true,
Msg: "图片 URL 更新成功",
Id: image.Id,
}, nil
}

View File

@@ -96,8 +96,10 @@ func (m *defaultPageImageModel) Insert(ctx context.Context, data *PageImage) (sq
}
func (m *defaultPageImageModel) Update(ctx context.Context, newData *PageImage) error {
query := fmt.Sprintf("update %s set %s where `id` = ?", m.table, pageImageRowsWithPlaceHolder)
_, err := m.conn.ExecCtx(ctx, query, newData.Page, newData.ImageUrl, newData.Sort, newData.Id)
query := fmt.Sprintf("UPDATE %s SET `image_url` = ?, `update_time` = CURRENT_TIMESTAMP WHERE `id` = ?", m.table)
// 仅传递 image_url 和 id 作为参数(顺序与 SQL 占位符对应)
_, err := m.conn.ExecCtx(ctx, query, newData.ImageUrl, newData.Id)
return err
}