package controller

import (
	"context"
	"fmt"

	"github.com/fonchain/fonchain-artistinfo/cmd/internal/logic"
	"github.com/fonchain/fonchain-artistinfo/pb/artwork"
)

type ArtWorkProvider struct {
	artwork.UnimplementedArtworkServer
	artWorkLogic *logic.Artwork
}

func (a *ArtWorkProvider) ArtworkAdd(ctx context.Context, req *artwork.ArtworkAddRequest) (rep *artwork.ArtworkAddRespond, err error) {
	fmt.Println("第一处")
	if rep, err = a.artWorkLogic.ArtworkAdd(req); err != nil {
		return nil, err
	}
	return rep, nil
}

func (a *ArtWorkProvider) UpdateArtwork(ctx context.Context, req *artwork.UpdateArtworkRequest) (rep *artwork.UpdateArtworkRespond, err error) {
	fmt.Println("第一处")
	if rep, err = a.artWorkLogic.UpdateArtwork(req); err != nil {
		return nil, err
	}
	return rep, nil
}

func (a *ArtWorkProvider) DelArtwork(ctx context.Context, req *artwork.DelArtworkRequest) (rep *artwork.DelArtworkRespond, err error) {
	fmt.Println("第一处")
	if rep, err = a.artWorkLogic.DelArtwork(req); err != nil {
		return nil, err
	}
	return rep, nil
}

func (a *ArtWorkProvider) GetArtworkList(ctx context.Context, req *artwork.GetArtworkListRequest) (rep *artwork.GetArtworkListRespond, err error) {
	fmt.Println("第一处")
	if rep, err = a.artWorkLogic.GetArtworkList(req); err != nil {
		return nil, err
	}
	return rep, nil
}

func (a *ArtWorkProvider) GetArtwork(ctx context.Context, req *artwork.GetArtworkRequest) (rep *artwork.GetArtworkRespond, err error) {
	fmt.Println("第一处")
	if rep, err = a.artWorkLogic.GetArtwork(req); err != nil {
		return nil, err
	}
	return rep, nil
}

func (a *ArtWorkProvider) UploadArtwork(ctx context.Context, req *artwork.UploadArtworkRequest) (rep *artwork.UploadArtworkRespond, err error) {
	fmt.Println("第一处")
	if rep, err = a.artWorkLogic.UploadArtwork(req); err != nil {
		return nil, err
	}
	return rep, nil
}
func (a *ArtWorkProvider) ApproveArtwork(ctx context.Context, req *artwork.ApproveArtworkRequest) (rep *artwork.ApproveArtworkRespond, err error) {
	fmt.Println("第一处")
	if rep, err = a.artWorkLogic.ApproveArtwork(req); err != nil {
		return nil, err
	}
	return rep, nil
}