diff --git a/src/main/java/com/sequence/anonymous/config/SecurityConfig.java b/src/main/java/com/sequence/anonymous/config/SecurityConfig.java index 0d4b07d..9e56846 100644 --- a/src/main/java/com/sequence/anonymous/config/SecurityConfig.java +++ b/src/main/java/com/sequence/anonymous/config/SecurityConfig.java @@ -37,7 +37,7 @@ public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { .oidcUserService(customOidcUserService); http.authorizeHttpRequests() - .anyRequest().authenticated(); + .anyRequest().permitAll(); return http.build(); } diff --git a/src/main/java/com/sequence/anonymous/user/application/CollegeService.java b/src/main/java/com/sequence/anonymous/user/application/CollegeService.java new file mode 100644 index 0000000..8cf3484 --- /dev/null +++ b/src/main/java/com/sequence/anonymous/user/application/CollegeService.java @@ -0,0 +1,19 @@ +package com.sequence.anonymous.user.application; + +import com.sequence.anonymous.user.domain.College; +import com.sequence.anonymous.user.domain.repository.CollegeRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + +import java.util.List; +@RequiredArgsConstructor +@Service +public class CollegeService { + + private final CollegeRepository collegeRepository; + + + public List findAll() { + return collegeRepository.findAll(); + } +} diff --git a/src/main/java/com/sequence/anonymous/user/application/TagService.java b/src/main/java/com/sequence/anonymous/user/application/TagService.java index 1c86463..c8f3d97 100644 --- a/src/main/java/com/sequence/anonymous/user/application/TagService.java +++ b/src/main/java/com/sequence/anonymous/user/application/TagService.java @@ -1,12 +1,19 @@ package com.sequence.anonymous.user.application; import com.sequence.anonymous.user.domain.repository.TagRepository; +import com.sequence.anonymous.user.domain.tag.Tag; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; +import java.util.List; + @RequiredArgsConstructor @Service public class TagService { private final TagRepository tagRepository; -} + + + public List findAll(){ + return tagRepository.findAll(); } +} \ No newline at end of file diff --git a/src/main/java/com/sequence/anonymous/user/domain/College.java b/src/main/java/com/sequence/anonymous/user/domain/College.java new file mode 100644 index 0000000..5f09969 --- /dev/null +++ b/src/main/java/com/sequence/anonymous/user/domain/College.java @@ -0,0 +1,31 @@ +package com.sequence.anonymous.user.domain; + + +import jakarta.persistence.*; +import jakarta.validation.constraints.NotNull; +import lombok.Getter; + +import java.util.ArrayList; +import java.util.List; + +@Getter +@Entity +@Table(name = "College") +public class College { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "college_id") + private Long id; + + @Column(unique = true, length = 10) + @NotNull + private String name; + + @OneToMany(mappedBy = "college") + private List departments = new ArrayList<>(); + + protected College() { + } + +} diff --git a/src/main/java/com/sequence/anonymous/user/domain/Department.java b/src/main/java/com/sequence/anonymous/user/domain/Department.java new file mode 100644 index 0000000..11a4a43 --- /dev/null +++ b/src/main/java/com/sequence/anonymous/user/domain/Department.java @@ -0,0 +1,31 @@ +package com.sequence.anonymous.user.domain; + +import jakarta.persistence.*; +import jakarta.validation.constraints.NotNull; + +import java.util.ArrayList; +import java.util.List; + +@Entity +public class Department { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "department_id") + private Long id; + + @ManyToOne + @JoinColumn(name = "college_id") + private College college; + + @Column(unique = true, insertable = false, updatable = false, length = 10) + @NotNull + private String name; + + protected Department() { + } + + @ManyToMany + @JoinTable(schema = "College") + private List users = new ArrayList<>(); +} diff --git a/src/main/java/com/sequence/anonymous/user/domain/dto/CollegeResponse.java b/src/main/java/com/sequence/anonymous/user/domain/dto/CollegeResponse.java new file mode 100644 index 0000000..ce7cfd4 --- /dev/null +++ b/src/main/java/com/sequence/anonymous/user/domain/dto/CollegeResponse.java @@ -0,0 +1,22 @@ +package com.sequence.anonymous.user.domain.dto; + +import com.sequence.anonymous.user.domain.College; +import com.sequence.anonymous.user.domain.tag.Tag; +import lombok.Getter; + +@Getter +public class CollegeResponse { + + private final Long id; + private final String collegeName; + + + public CollegeResponse(College college){ + + this.id = college.getId(); + this.collegeName = college.getName(); + + } + + +} diff --git a/src/main/java/com/sequence/anonymous/user/domain/dto/TagResponse.java b/src/main/java/com/sequence/anonymous/user/domain/dto/TagResponse.java new file mode 100644 index 0000000..9602024 --- /dev/null +++ b/src/main/java/com/sequence/anonymous/user/domain/dto/TagResponse.java @@ -0,0 +1,19 @@ +package com.sequence.anonymous.user.domain.dto; + +import com.sequence.anonymous.user.domain.tag.Tag; +import lombok.Getter; + +@Getter +public class TagResponse { + + private final Long id; + private final String user; + + + public TagResponse(Tag tag){ + this.id = tag.getId(); + this.user = tag.getName(); + } + + +} \ No newline at end of file diff --git a/src/main/java/com/sequence/anonymous/user/domain/repository/CollegeRepository.java b/src/main/java/com/sequence/anonymous/user/domain/repository/CollegeRepository.java new file mode 100644 index 0000000..c13306a --- /dev/null +++ b/src/main/java/com/sequence/anonymous/user/domain/repository/CollegeRepository.java @@ -0,0 +1,10 @@ +package com.sequence.anonymous.user.domain.repository; + +import com.sequence.anonymous.user.domain.College; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; + +@Repository +public interface CollegeRepository extends JpaRepository { + +} \ No newline at end of file diff --git a/src/main/java/com/sequence/anonymous/user/domain/repository/TagRepository.java b/src/main/java/com/sequence/anonymous/user/domain/repository/TagRepository.java index 7cea0fa..344a812 100644 --- a/src/main/java/com/sequence/anonymous/user/domain/repository/TagRepository.java +++ b/src/main/java/com/sequence/anonymous/user/domain/repository/TagRepository.java @@ -2,6 +2,8 @@ import com.sequence.anonymous.user.domain.tag.Tag; import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; +@Repository public interface TagRepository extends JpaRepository { } diff --git a/src/main/java/com/sequence/anonymous/user/presentation/CollegeController.java b/src/main/java/com/sequence/anonymous/user/presentation/CollegeController.java new file mode 100644 index 0000000..3acb41b --- /dev/null +++ b/src/main/java/com/sequence/anonymous/user/presentation/CollegeController.java @@ -0,0 +1,28 @@ +package com.sequence.anonymous.user.presentation; + + +import com.sequence.anonymous.user.application.CollegeService; +import com.sequence.anonymous.user.domain.College; +import lombok.RequiredArgsConstructor; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RequiredArgsConstructor +@RestController +@RequestMapping("/colleges") +public class CollegeController { + + private final CollegeService collegeService; + + @GetMapping("") + public ResponseEntity> findAll(){ + + List college = collegeService.findAll(); + return ResponseEntity.status(HttpStatus.OK).body((List) college); + } +} diff --git a/src/main/java/com/sequence/anonymous/user/presentation/TagController.java b/src/main/java/com/sequence/anonymous/user/presentation/TagController.java index 6c905f2..3c333b6 100644 --- a/src/main/java/com/sequence/anonymous/user/presentation/TagController.java +++ b/src/main/java/com/sequence/anonymous/user/presentation/TagController.java @@ -1,14 +1,26 @@ package com.sequence.anonymous.user.presentation; import com.sequence.anonymous.user.application.TagService; +import com.sequence.anonymous.user.domain.tag.Tag; import lombok.RequiredArgsConstructor; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import java.util.List; + @RequiredArgsConstructor @RestController -@RequestMapping("/tags") +@RequestMapping("/personality-tags") public class TagController { + private final TagService tagService; + + @GetMapping("") + public ResponseEntity> findAll() { - private final TagService tagService; + List tag = tagService.findAll(); + return ResponseEntity.status(HttpStatus.OK).body(tag); + } }