63 lines
2.0 KiB
Go
63 lines
2.0 KiB
Go
package controller
|
|
|
|
import (
|
|
"context"
|
|
|
|
"easygoadmin/api/v1"
|
|
"easygoadmin/internal/service"
|
|
)
|
|
|
|
// ============================== 公告控制器 ==============================
|
|
|
|
// CNotice 公告控制器
|
|
// 薄层控制器,仅负责参数透传,业务逻辑由 service.Notice() 处理
|
|
type CNotice struct{}
|
|
|
|
// Page 公告分页
|
|
// 按查询条件分页返回公告列表
|
|
func (c *CNotice) Page(ctx context.Context, req *v1.NoticePageReq) (res *v1.NoticePageRes, err error) {
|
|
return service.Notice().Page(ctx, req)
|
|
}
|
|
|
|
// List 公告列表
|
|
// 按关键词、类型、状态等条件返回公告精简列表
|
|
func (c *CNotice) List(ctx context.Context, req *v1.NoticeListReq) (res v1.NoticeListRes, err error) {
|
|
return service.Notice().List(ctx, req)
|
|
}
|
|
|
|
// Detail 公告详情
|
|
// 按公告ID查询详情
|
|
func (c *CNotice) Detail(ctx context.Context, req *v1.NoticeDetailReq) (res *v1.NoticeDetailRes, err error) {
|
|
return service.Notice().Detail(ctx, req)
|
|
}
|
|
|
|
// Add 新增公告
|
|
// 新增成功后返回新记录ID
|
|
func (c *CNotice) Add(ctx context.Context, req *v1.NoticeAddReq) (res *v1.IdRes, err error) {
|
|
return service.Notice().Add(ctx, req)
|
|
}
|
|
|
|
// Update 修改公告
|
|
// 按公告ID更新记录
|
|
func (c *CNotice) Update(ctx context.Context, req *v1.NoticeUpdateReq) (res *v1.NoticeUpdateRes, err error) {
|
|
return service.Notice().Update(ctx, req)
|
|
}
|
|
|
|
// Status 公告状态
|
|
// 设置公告的草稿或发布状态
|
|
func (c *CNotice) Status(ctx context.Context, req *v1.NoticeStatusReq) (res *v1.NoticeStatusRes, err error) {
|
|
return service.Notice().Status(ctx, req)
|
|
}
|
|
|
|
// Delete 删除公告
|
|
// 按公告ID删除单条记录
|
|
func (c *CNotice) Delete(ctx context.Context, req *v1.NoticeDeleteReq) (res *v1.NoticeDeleteRes, err error) {
|
|
return service.Notice().Delete(ctx, req)
|
|
}
|
|
|
|
// BatchDelete 批量删除公告
|
|
// 按公告ID列表批量删除记录
|
|
func (c *CNotice) BatchDelete(ctx context.Context, req *v1.NoticeBatchDeleteReq) (res *v1.NoticeBatchDeleteRes, err error) {
|
|
return service.Notice().BatchDelete(ctx, req)
|
|
}
|