Line data Source code
1 : // Package education は、学歴に関するユースケース(アプリケーションロジック)を提供します。
2 : // ドメイン層のエンティティやリポジトリを操作し、アプリケーション全体で再利用可能なビジネスフローを実装します。
3 : package education
4 :
5 : import "context"
6 :
7 : // ListUserEducation は 指定ユーザーの学歴リストを取得します
8 : func (uc *Interactor) ListUserEducation(
9 : ctx context.Context,
10 : in ListInput,
11 0 : ) (ListOutput, error) {
12 0 : if in.UserID == 0 {
13 0 : return ListOutput{}, errUnauthorized()
14 0 : }
15 0 : educations, err := uc.ueRepo.ListByUserID(ctx, in.UserID)
16 0 : if err != nil {
17 0 : return ListOutput{}, err
18 0 : }
19 0 : return ListOutput{
20 0 : Items: ToUserEducationResponses(educations),
21 0 : }, nil
22 : }
|