package com.kpaudel;

import com.kpaudel.model.ApplicationStatus;
import com.kpaudel.model.Company;
import com.kpaudel.model.JobApplication;
import com.kpaudel.repository.CompanyRepository;
import com.kpaudel.repository.JobApplicationRepository;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.SpringApplication;


@SpringBootApplication
public class JobTrackerApplication implements CommandLineRunner {
    private final CompanyRepository compRepo;
    private final JobApplicationRepository jobRepo;
    public  JobTrackerApplication(CompanyRepository companyRepo, JobApplicationRepository jobRepo){
        this.compRepo=companyRepo;
        this.jobRepo=jobRepo;
    }
    public static void main(String[] args) {
        SpringApplication.run(JobTrackerApplication.class,args);
    }

    @Override
    public void run(String... args) throws Exception {
        if(compRepo.count()==0){
            Company openai=this.compRepo.save(new Company(null,"OpenAI","https://test.com","notes"));
            Company fb=this.compRepo.save(new Company(null,"Facebook","https://facebook.com","notes_facebook"));
            Company amazon=this.compRepo.save(new Company(null,"Amazon","https://facebook.com","notes_facebook"));
        }
        //if(jobRepo.count()==0){
        //    Company company=this.compRepo.getCompanyByName("OpenAI");
        //    jobRepo.save(JobApplication.builder().company(company).location("Karlsruhe").build());
            //jobRepo.save(JobApplication.builder().company(fb).location("Frankfurt").status(ApplicationStatus.APPLIED).build());
            //jobRepo.save(JobApplication.builder().company(amazon).location("Berlin").status(ApplicationStatus.OFFER).build());
        //}
    }
}