// Package controller -----------------------------
// @file      : artshowVideo.go
// @author    : JJXu
// @contact   : wavingbear@163.com
// @time      : 2023/3/2 10:52
// -------------------------------------------
package controller

import (
	context "context"
	"github.com/fonchain/fonchain-artistinfo/cmd/internal/logic"
	"github.com/fonchain/fonchain-artistinfo/pb/artistinfoArtshow"
	emptypb "google.golang.org/protobuf/types/known/emptypb"
)

// 画展包视频
var _ artistinfoArtshow.ArtistInfoArtshowServer = new(ArtistInfoArtshowProvider)

type ArtistInfoArtshowProvider struct {
	artistinfoArtshow.UnimplementedArtistInfoArtshowServer
	videoLogic            logic.ArtshowVideoLogic
	artistIndexLogic      logic.ArtshowArtistIndexLogic
	artistSupplementLogic logic.ArtshowArtistSupplementLogic
}

// ----------------- 画展包-画家补充信息
func (a ArtistInfoArtshowProvider) GetArtistSupplementDetail(ctx context.Context, request *artistinfoArtshow.GetArtistSupplementDetailRequest) (*artistinfoArtshow.ArtistSupplementInfo, error) {
	return a.artistSupplementLogic.GetSupplementDetail(request)
}

func (a ArtistInfoArtshowProvider) GetArtistSupplementList(ctx context.Context, request *artistinfoArtshow.GetArtistSupplementListRequest) (*artistinfoArtshow.GetArtistSupplementListResponse, error) {
	return a.artistSupplementLogic.GetSupplementList(request)
}

func (a ArtistInfoArtshowProvider) CreateArtistSupplement(ctx context.Context, info *artistinfoArtshow.ArtistSupplementInfo) (*emptypb.Empty, error) {
	return nil, a.artistSupplementLogic.CreateSupplement(info)
}

func (a ArtistInfoArtshowProvider) BatchCreateArtistSupplement(ctx context.Context, request *artistinfoArtshow.BatchCreateArtistSupplementRequest) (*emptypb.Empty, error) {
	return nil, a.artistSupplementLogic.BatchCreateSupplement(request)
}

func (a ArtistInfoArtshowProvider) AuditArtistSupplement(ctx context.Context, request *artistinfoArtshow.AuditArtistSupplementRequest) (*emptypb.Empty, error) {
	return a.artistSupplementLogic.AuditSupplement(request)
}

func (a ArtistInfoArtshowProvider) UpdateArtistSupplement(ctx context.Context, request *artistinfoArtshow.UpdateArtistSupplementRequest) (*emptypb.Empty, error) {
	return a.artistSupplementLogic.UpdateSupplement(request)
}

func (a ArtistInfoArtshowProvider) DeletedArtistSupplement(ctx context.Context, request *artistinfoArtshow.DeletedArtistSupplementRequest) (*emptypb.Empty, error) {
	return a.artistSupplementLogic.DeletedSupplement(request)
}

// ----------------- 画展包-画家指数
func (a ArtistInfoArtshowProvider) GetArtistIndexDetail(ctx context.Context, request *artistinfoArtshow.GetArtistIndexDetailRequest) (*artistinfoArtshow.ArtistIndexInfo, error) {
	return a.artistIndexLogic.GetArtistIndexDetail(request)
}

func (a ArtistInfoArtshowProvider) GetArtistIndexList(ctx context.Context, request *artistinfoArtshow.GetArtistIndexListRequest) (*artistinfoArtshow.GetArtistIndexListResponse, error) {
	return a.artistIndexLogic.GetArtistIndexList(request)
}

func (a ArtistInfoArtshowProvider) CreateArtistIndex(ctx context.Context, info *artistinfoArtshow.ArtistIndexInfo) (*emptypb.Empty, error) {
	return nil, a.artistIndexLogic.CreateArtistIndex(info)
}

func (a ArtistInfoArtshowProvider) BatchCreateArtistIndex(ctx context.Context, request *artistinfoArtshow.BatchCreateArtistIndexRequest) (*emptypb.Empty, error) {
	return nil, a.artistIndexLogic.BatchCreateArtistIndex(request)
}

func (a ArtistInfoArtshowProvider) AuditArtistIndex(ctx context.Context, request *artistinfoArtshow.AuditArtistIndexRequest) (*emptypb.Empty, error) {
	return a.artistIndexLogic.AuditArtistIndex(request)
}

func (a ArtistInfoArtshowProvider) UpdateArtistIndex(ctx context.Context, request *artistinfoArtshow.UpdateArtistIndexRequest) (*emptypb.Empty, error) {
	return a.artistIndexLogic.UpdateArtistIndex(request)
}

func (a ArtistInfoArtshowProvider) DeletedArtistIndex(ctx context.Context, request *artistinfoArtshow.DeletedArtistIndexRequest) (*emptypb.Empty, error) {
	return a.artistIndexLogic.DeletedArtistIndex(request)
}

// ----------------- 画展包-视频资料
func (a ArtistInfoArtshowProvider) GetArtshowVideoDetail(ctx context.Context, request *artistinfoArtshow.GetArtshowVideoDetailRequest) (*artistinfoArtshow.ArtshowVideoInfo, error) {
	return a.videoLogic.GetArtshowVideoDetail(request)
}

func (a ArtistInfoArtshowProvider) BatchCreateArtshowVideo(ctx context.Context, request *artistinfoArtshow.BatchCreateArtshowVideoRequest) (*emptypb.Empty, error) {
	return nil, a.videoLogic.BatchCreateArtshowVideo(request)
}

func (a ArtistInfoArtshowProvider) CreateArtshowVideo(ctx context.Context, info *artistinfoArtshow.ArtshowVideoInfo) (*emptypb.Empty, error) {
	return nil, a.videoLogic.CreateArtshowVideo(info)
}

func (a ArtistInfoArtshowProvider) GetArtshowVideoList(ctx context.Context, requst *artistinfoArtshow.GetArtshowVideoListRequst) (*artistinfoArtshow.GetArtshowVideoListResponse, error) {
	return a.videoLogic.GetArtshowVideoList(requst)
}

func (a ArtistInfoArtshowProvider) AuditArtshowVideo(ctx context.Context, request *artistinfoArtshow.AuditArtshowVideoRequest) (*emptypb.Empty, error) {
	return a.videoLogic.AuditArtshowVideo(request)
}

func (a ArtistInfoArtshowProvider) UpdateArtshowVideo(ctx context.Context, request *artistinfoArtshow.UpdateArtshowVideoRequest) (*emptypb.Empty, error) {
	return a.videoLogic.UpdateArtshowVideo(request)
}

func (a ArtistInfoArtshowProvider) DeletedArtshowVideo(ctx context.Context, request *artistinfoArtshow.DeletedArtshowVideoRequest) (*emptypb.Empty, error) {
	return a.videoLogic.DeletedArtshowVideo(request)
}
