package controller import ( "context" "cidservice/model/dto" "cidservice/service" "gitee.com/red-future---jilin-g/common/http" ) type adPosition struct{} var AdPosition = &adPosition{} // Add 添加广告位 func (c *adPosition) Add(ctx context.Context, req *dto.AddAdPositionReq) (res *dto.AddAdPositionRes, err error) { return service.AdPosition.Add(ctx, req) } // Update 更新广告位 func (c *adPosition) Update(ctx context.Context, req *dto.UpdateAdPositionReq) (res *http.ResponseEmpty, err error) { err = service.AdPosition.Update(ctx, req) return } // UpdateStatus 更新广告位状态 func (c *adPosition) UpdateStatus(ctx context.Context, req *dto.UpdateAdPositionStatusReq) (res *http.ResponseEmpty, err error) { err = service.AdPosition.UpdateStatus(ctx, req) return } // GetOne 获取广告位详情 func (c *adPosition) GetOne(ctx context.Context, req *dto.GetAdPositionReq) (res *dto.GetAdPositionRes, err error) { return service.AdPosition.GetOne(ctx, req) } // List 获取广告位列表 func (c *adPosition) List(ctx context.Context, req *dto.ListAdPositionReq) (res *dto.ListAdPositionRes, err error) { return service.AdPosition.List(ctx, req) } // GetStatistics 获取广告位统计数据 func (c *adPosition) GetStatistics(ctx context.Context, req *dto.GetAdPositionStatisticsReq) (res *dto.GetAdPositionStatisticsRes, err error) { return service.AdPosition.GetStatistics(ctx, req) } // GetAvailableAdPositions 获取可用的广告位列表 func (c *adPosition) GetAvailableAdPositions(ctx context.Context, req *dto.GetAvailableAdPositionsReq) (res *dto.GetAvailableAdPositionsRes, err error) { list, err := service.AdPosition.GetAvailableAdPositions(ctx) if err != nil { return nil, err } return &dto.GetAvailableAdPositionsRes{ List: list, }, nil } // MatchAd 匹配广告 func (c *adPosition) MatchAd(ctx context.Context, req *dto.MatchAdReq) (res *dto.MatchAdRes, err error) { ad, err := service.AdPosition.MatchAd(ctx, req.PositionCode, req.UserInfo) if err != nil { return nil, err } return &dto.MatchAdRes{ Advertisement: ad, }, nil }