import { BadRequestException, Injectable } from '@nestjs/common';
import { CoursesProgressRepository } from './courses-progress.repository';
import {
  CreateEnrollmentDto,
  UpsertVideoProgressDto,
} from './courses-progress.dto';
import { NOT_FOUND_FC } from '@api/constants/api.constant';

@Injectable()
export class CoursesProgressService {
  constructor(private coursesProgressRepository: CoursesProgressRepository) {}

  async createEnrollment(dto: CreateEnrollmentDto) {
    return await this.coursesProgressRepository.createEnrollment(dto);
  }

  async upsertVideoProgress(dto: UpsertVideoProgressDto) {
    //* 강의영상이 완료일 경우
    // if (dto.crvpIsCompleted === 1) {
    //   await this.coursesProgressRepository.upsertVideoProgress(memId, dto);

    //   //* 해당 강의 코스 ID 획득
    //   const crsId = await this.coursesProgressRepository.getCoursesIdByVideoId(
    //     dto.crvId,
    //   );

    //   //* 전체 영상 진척도 확인 및 완료시 저장 로직
    //   return await this.coursesProgressRepository.calculateUserCoursesProgress(
    //     memId,
    //     crsId,
    //   );
    // }

    return await this.coursesProgressRepository.upsertVideoProgress(dto);
  }
}
