1
This commit is contained in:
@@ -13,7 +13,7 @@ var Drama = new(drama)
|
||||
// ==================== Drama CRUD ====================
|
||||
|
||||
func (c *drama) List(ctx context.Context, req *dto.ListDramaReq) (res *dto.ListDramaRes, err error) {
|
||||
list, total, err := service.DramaService.List(ctx, req.Page, req.PageSize)
|
||||
list, total, err := service.DramaService.List(ctx, req.Page, req.PageSize, req.Keyword)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -9,7 +9,7 @@ import (
|
||||
// ==================== Episode CRUD ====================
|
||||
|
||||
func (c *drama) ListEpisode(ctx context.Context, req *dto.ListEpisodeReq) (res *dto.ListEpisodeRes, err error) {
|
||||
list, total, err := service.DramaService.ListEpisode(ctx, req.DramaId, req.Page, req.PageSize)
|
||||
list, total, err := service.DramaService.ListEpisode(ctx, req.DramaId, req.Page, req.PageSize, req.Keyword)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -103,8 +103,11 @@ func (d *dramaDao) Delete(ctx context.Context, id int64) error {
|
||||
return err
|
||||
}
|
||||
|
||||
func (d *dramaDao) ListPage(ctx context.Context, page, pageSize int) (res []*entity.Drama, total int, err error) {
|
||||
func (d *dramaDao) ListPage(ctx context.Context, page, pageSize int, keyword ...string) (res []*entity.Drama, total int, err error) {
|
||||
m := g.DB().Model(public.TableNameDrama).Ctx(ctx)
|
||||
if len(keyword) > 0 && keyword[0] != "" {
|
||||
m = m.Where("title LIKE ?", "%"+keyword[0]+"%")
|
||||
}
|
||||
if pageSize == -1 {
|
||||
r, err := m.OrderDesc("id").All()
|
||||
if err != nil {
|
||||
|
||||
@@ -90,8 +90,11 @@ func (d *episodeDao) DeleteByDrama(ctx context.Context, dramaId int64) error {
|
||||
return err
|
||||
}
|
||||
|
||||
func (d *episodeDao) ListPageByDrama(ctx context.Context, dramaId int64, page, pageSize int) (res []*entity.Episode, total int, err error) {
|
||||
func (d *episodeDao) ListPageByDrama(ctx context.Context, dramaId int64, page, pageSize int, keyword ...string) (res []*entity.Episode, total int, err error) {
|
||||
m := g.DB().Model(public.TableNameEpisode).Ctx(ctx).Where("drama_id", dramaId)
|
||||
if len(keyword) > 0 && keyword[0] != "" {
|
||||
m = m.Where("title LIKE ?", "%"+keyword[0]+"%")
|
||||
}
|
||||
if pageSize == -1 {
|
||||
r, err := m.OrderAsc("idx").All()
|
||||
if err != nil {
|
||||
|
||||
@@ -10,8 +10,9 @@ import (
|
||||
|
||||
type ListDramaReq struct {
|
||||
g.Meta `path:"/list" method:"get" tags:"短剧管理" summary:"短剧列表"`
|
||||
Page int `json:"page" dc:"页码,从1开始"`
|
||||
PageSize int `json:"pageSize" dc:"每页条数"`
|
||||
Page int `json:"page" dc:"页码,从1开始"`
|
||||
PageSize int `json:"pageSize" dc:"每页条数"`
|
||||
Keyword string `json:"keyword" dc:"搜索关键词"`
|
||||
}
|
||||
|
||||
type ListDramaRes struct {
|
||||
@@ -25,9 +26,10 @@ type ListDramaRes struct {
|
||||
|
||||
type ListEpisodeReq struct {
|
||||
g.Meta `path:"/episode/list" method:"get" tags:"短剧管理" summary:"剧集列表"`
|
||||
DramaId int64 `json:"dramaId" dc:"短剧ID"`
|
||||
Page int `json:"page" dc:"页码,从1开始"`
|
||||
PageSize int `json:"pageSize" dc:"每页条数"`
|
||||
DramaId int64 `json:"dramaId" dc:"短剧ID"`
|
||||
Page int `json:"page" dc:"页码,从1开始"`
|
||||
PageSize int `json:"pageSize" dc:"每页条数"`
|
||||
Keyword string `json:"keyword" dc:"搜索关键词"`
|
||||
}
|
||||
|
||||
type ListEpisodeRes struct {
|
||||
|
||||
@@ -57,12 +57,12 @@ func (s *dramaService) Create(ctx context.Context, title, style string, episodeD
|
||||
return id, nil
|
||||
}
|
||||
|
||||
func (s *dramaService) List(ctx context.Context, page, pageSize int) (list []*entity.Drama, total int, err error) {
|
||||
return dao.Drama.ListPage(ctx, page, pageSize)
|
||||
func (s *dramaService) List(ctx context.Context, page, pageSize int, keyword ...string) (list []*entity.Drama, total int, err error) {
|
||||
return dao.Drama.ListPage(ctx, page, pageSize, keyword...)
|
||||
}
|
||||
|
||||
func (s *dramaService) ListEpisode(ctx context.Context, dramaId int64, page, pageSize int) (list []*entity.Episode, total int, err error) {
|
||||
return dao.Episode.ListPageByDrama(ctx, dramaId, page, pageSize)
|
||||
func (s *dramaService) ListEpisode(ctx context.Context, dramaId int64, page, pageSize int, keyword ...string) (list []*entity.Episode, total int, err error) {
|
||||
return dao.Episode.ListPageByDrama(ctx, dramaId, page, pageSize, keyword...)
|
||||
}
|
||||
|
||||
func (s *dramaService) Get(ctx context.Context, id int64) (*entity.Drama, []*entity.Character, []*entity.Episode, []*entity.Scene, []*entity.Prop, []*entity.GenerationTask, error) {
|
||||
|
||||
Reference in New Issue
Block a user