62 lines
2.0 KiB
Plaintext
62 lines
2.0 KiB
Plaintext
// 页面图片相关结构体
|
||
type PageImage {
|
||
Id int64 `json:"id"` // 图片ID
|
||
Page string `json:"page"` // 所属页面(对应路由的页面标识)
|
||
ImageUrl string `json:"image_url"` // 图片URL
|
||
Sort int `json:"sort"` // 排序(首页1-3,其他页面1)
|
||
CreateTime string `json:"create_time"` // 创建时间
|
||
UpdateTime string `json:"update_time"` // 更新时间
|
||
}
|
||
|
||
// 查询页面图片请求(按页面查询)
|
||
type GetPageImagesReq {
|
||
Page string `json:"page" form:"page" validate:"required"` // 页面标识(如home、base-overview等)
|
||
}
|
||
|
||
// 查询页面图片响应
|
||
type GetPageImagesResp {
|
||
Images []PageImage `json:"images"` // 图片列表(首页返回3张,其他页面返回1张)
|
||
Msg string `json:"message"`
|
||
}
|
||
|
||
// 新增/更新页面图片请求
|
||
type SavePageImageReq {
|
||
Id int64 `json:"id,omitempty"` // 可选,更新时传ID
|
||
Page string `json:"page" validate:"required"` // 页面标识
|
||
ImageUrl string `json:"image_url" validate:"required"` // 图片URL
|
||
Sort int `json:"sort" validate:"required"` // 排序(首页1-3,其他页面1)
|
||
}
|
||
|
||
// 新增/更新页面图片响应
|
||
type SavePageImageResp {
|
||
Success bool `json:"success"`
|
||
Msg string `json:"message"`
|
||
Id int64 `json:"id,omitempty"` // 新增时返回ID
|
||
}
|
||
|
||
// 删除页面图片请求
|
||
type DeletePageImageReq {
|
||
Id int64 `json:"id" validate:"required"` // 图片ID
|
||
}
|
||
|
||
// 删除页面图片响应
|
||
type DeletePageImageResp {
|
||
Success bool `json:"success"`
|
||
Msg string `json:"message"`
|
||
}
|
||
|
||
@server (
|
||
group: pageImage
|
||
prefix: /api/page-image
|
||
)
|
||
service page_image_api {
|
||
// 1. 查询指定页面的图片(如首页轮播图、基地概况顶部图)
|
||
@handler GetPageImagesHandler
|
||
get /page-image/get (GetPageImagesReq) returns (GetPageImagesResp)
|
||
|
||
// 2. 更新页面图片(支持上传后保存URL,已存在则覆盖)
|
||
@handler SavePageImageHandler
|
||
post /page-image/save (SavePageImageReq) returns (SavePageImageResp)
|
||
}
|
||
|