Created
August 28, 2021 06:02
-
-
Save jianhe-fun/ab3da7d9de0ff95efe0eeff5697323c5 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package jian.he.bootstrap; | |
import jian.he.model.*; | |
import jian.he.services.*; | |
import org.springframework.beans.factory.annotation.Autowired; | |
import org.springframework.boot.CommandLineRunner; | |
import org.springframework.stereotype.Component; | |
import java.time.LocalDate; | |
@Component | |
public class DataLoader implements CommandLineRunner { | |
private final OwnerService ownerService; | |
private final VetService vetService; | |
private final PetTypeService petTypeService; | |
private final SpecialtyService specialtyService; | |
private final VisitService visitService; | |
@Autowired | |
public DataLoader(OwnerService ownerService, VetService vetService, PetTypeService petTypeService, SpecialtyService specialtyService, VisitService visitService) { | |
this.ownerService = ownerService; | |
this.vetService = vetService; | |
this.petTypeService = petTypeService; | |
this.specialtyService = specialtyService; | |
this.visitService = visitService; | |
} | |
@Override | |
public void run(String... args) throws Exception { | |
int count = petTypeService.findAll().size(); | |
if(count == 0){loadData();} | |
} | |
private void loadData() { | |
PetType cat = new PetType(); | |
cat.setName("cat"); | |
PetType savedCatPetType = petTypeService.save(cat); | |
PetType dog = new PetType(); | |
cat.setName("dog"); | |
PetType savedDogPetType = petTypeService.save(dog); | |
Specialty radiology = new Specialty(); | |
radiology.setDescription("Radiology"); | |
Specialty savedRadiology = specialtyService.save(radiology); | |
Specialty surgery = new Specialty(); | |
surgery.setDescription("Surgery"); | |
Specialty savedSurgery = specialtyService.save(surgery); | |
Specialty dentistry = new Specialty(); | |
dentistry.setDescription("Dentistry"); | |
Specialty savedDentistry = specialtyService.save(dentistry); | |
Owner owner1 = new Owner(); | |
owner1.setFirstName("Dionne"); | |
owner1.setLastName("Warwick"); | |
owner1.setAddress("123 fairfield iowa"); | |
owner1.setCity("iowa"); | |
owner1.setTelephone("12324"); | |
Pet mikesPet= new Pet(); | |
mikesPet.setName("Rosco"); | |
mikesPet.setOwner(owner1); | |
mikesPet.setBirthDate(LocalDate.now()); | |
mikesPet.setPetType(savedDogPetType); | |
owner1.getPets().add(mikesPet); | |
Owner owner2 = new Owner(); | |
owner2.setFirstName("The"); | |
owner2.setLastName("Crystals"); | |
owner2.setAddress("123 Brickerel"); | |
owner2.setCity("Miami"); | |
owner2.setTelephone("34897"); | |
Pet fionasCat = new Pet(); | |
fionasCat.setName("Just Cat"); | |
fionasCat.setOwner(owner2); | |
fionasCat.setBirthDate(LocalDate.now()); | |
fionasCat.setPetType(savedCatPetType); | |
owner2.getPets().add(fionasCat); | |
ownerService.save(owner2); | |
ownerService.save(owner1); | |
Visit catVisit = new Visit(); | |
catVisit.setPet(fionasCat); | |
catVisit.setDate(LocalDate.now()); | |
catVisit.setDescription("Cat Visit. Sneeze kitty"); | |
visitService.save(catVisit); | |
System.out.println("|||| Loading owners."); | |
System.out.println("owner1 have "+ owner1.getPets().size() + "pets ID is" + owner1.getPets().getClass() ); | |
System.out.println("owner2 have "+ owner1.getPets().size() ); | |
Vet vet1 = new Vet(); | |
vet1.setFirstName("Sam"); | |
vet1.setLastName("Axe"); | |
vet1.getSpecialities().add(savedRadiology); | |
vetService.save(vet1); | |
Vet vet2 = new Vet(); | |
vet2.setFirstName("Jessie"); | |
vet2.setLastName("Porter"); | |
vet2.getSpecialities().add(savedSurgery); | |
vetService.save(vet2); | |
System.out.println("Loading Vets"); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment