Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
5b5c5f3
fix: ๊ณต๊ณต๋ฐ์ดํ„ฐ Dto ๊ตฌ์กฐ ์ˆ˜์ •
bumstone Mar 5, 2025
67ea909
feat: User๊ด€๋ จ ์—”ํ‹ฐํ‹ฐ ์ƒ์„ฑ
bumstone Mar 5, 2025
9173293
๊ฒŒ์‹œ๊ธ€ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
uk0k Feb 26, 2025
fa3390d
๋‹ต๋ณ€ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
uk0k Mar 6, 2025
674e0ab
๊ฒŒ์‹œ๊ธ€ ๋Œ“๊ธ€ ๊ธฐ๋Šฅ ๊ตฌํ˜„
uk0k Mar 6, 2025
0ccfa21
๋ฐฐ๋„ˆ ๊ธฐ๋Šฅ ๊ตฌํ˜„
uk0k Mar 6, 2025
8ced232
feat: ์œ ์ € ์ ‘๊ทผ๊ถŒํ•œ ์„ค์ •
bumstone Mar 6, 2025
4693497
feat: ์œ ์ € ์‹ ๊ณ  ์—”ํ‹ฐํ‹ฐ ์ˆ˜์ •
bumstone Mar 6, 2025
56a00e1
feat: security config ์ž‘์„ฑ ๋ฐ ์—”๋“œํฌ์ธํŠธ ๊ฒฝ๋กœ ์„ค์ •
bumstone Mar 6, 2025
e626b31
feat: ์‚ฌ์šฉ์ž ์ธ์ฆ ์š”์ฒญ(๋กœ๊ทธ์ธ) ์‹œ ์ธ์ฆ ์—ฌ๋ถ€์— ๋”ฐ๋ฅธ ์‘๋‹ต ๋ฐ˜ํ™˜(์„ฑ๊ณต: ์‚ฌ์šฉ์ž ์ •๋ณด, ์‹คํŒจ: 401, 403)
bumstone Mar 6, 2025
96562b7
style: 403 ์—๋Ÿฌ์ฝ”๋“œ ์ถ”๊ฐ€, jwtToken, refreshToken ๊ด€๋ฆฌ ํด๋ž˜์Šค๋ช… ์ƒ์„ฑ
bumstone Mar 6, 2025
6f1fd16
feat: JWTToken ์ƒ์„ฑ๊ณผ ๊ฒ€์ฆ ๊ธฐ๋Šฅ ๊ตฌํ˜„
bumstone Mar 6, 2025
973bbcd
feat: ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž ์ •๋ณด ๊ฐ€์ ธ์˜ค๊ธฐ ์„ค์ •
bumstone Mar 13, 2025
4da1649
feat: ์ฟ ํ‚ค ์ •๋ณด ์„ค์ • ๋ฐ ๊ด€๋ฆฌ
bumstone Mar 13, 2025
cee8c2d
fix: ์œ ์ € ์ด๋ฉ”์ผ๋กœ ์œ ์ € ์ •๋ณด์ฐพ๊ธฐ + @Getter ์ถ”๊ฐ€๋กœ ์œ ์ € ๋””ํ…Œ์ผ ์„œ๋น„์Šค ์˜ค๋ฅ˜ ์ˆ˜์ •
bumstone Mar 13, 2025
7b1318e
feat: UserController ๋ถ„๋ฆฌ ๋ฐ ์–ด๋…ธํ…Œ์ด์…˜, ์ƒ์„ฑ์ž ์„ค์ •
bumstone Mar 13, 2025
ed34eb2
feat: JWTToken ์ •๋ณด ์ถ”์ถœ ๋ฐ ํ•„ํ„ฐ๋ง
bumstone Mar 14, 2025
b39ee68
style: Redis ์ ์šฉ todo ์ฃผ์„
bumstone Mar 14, 2025
66a0be6
feat: Redis ๊ธฐ๋Šฅ ์ถ”๊ฐ€์— ๋”ฐ๋ฅธ token ์„ค์ • ๋ฐ redis ์„ค์ •
bumstone Mar 14, 2025
68e3dca
feat: ์œ ์ € ๊ด€์‹ฌ์‚ฌ ๊ธฐ๋Šฅ ๊ตฌํ˜„
bumstone Mar 14, 2025
831f101
feat: ๊ณต๊ณต์„œ๋น„์Šค ์œ ์ € ์ธ์ฆ ์ปดํผ๋„ŒํŠธ ์ถ”๊ฐ€
bumstone Mar 14, 2025
950a6d7
feat: ์œ ์ € DTO ์ƒ์„ฑ
bumstone Mar 14, 2025
ac7bdac
refactor: TODO ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ธ๊ธฐ ์„œ๋น„์Šค ์œ ์ € ์ธ์ฆ ์ถ”๊ฐ€
bumstone Mar 14, 2025
ba05e78
feat: ํšŒ์› ํฌ์ธํŠธ๋ณ„ ๋“ฑ๊ธ‰ ๋ณ€ํ™” ์„œ๋น„์Šค ๋ฐ Enum ๊ตฌํ˜„, User ์—”ํ‹ฐํ‹ฐ ์ˆ˜์ •
bumstone Mar 15, 2025
c5db374
feat: ํšŒ์› ์ •๋ณด ๋ฐ ์ธ์ฆ ๊ธฐ๋Šฅ ๊ตฌํ˜„(controller, service, repository, mapper)
bumstone Mar 15, 2025
5d19c79
feat: user๊ด€๋ จ Dto ์ˆ˜์ •
bumstone Mar 15, 2025
7289239
fix: ์œ ์ € ๋“ฑ๊ธ‰ ํ•„๋“œ - Enum ํƒ€์ž… ๋ณ€๊ฒฝ ์ ์šฉ
bumstone Mar 15, 2025
19e46a8
feat: userReport ๊ธฐ๋Šฅ + UserAdmin ๊ธฐ๋Šฅ ๊ตฌํ˜„
bumstone Mar 18, 2025
e4768ee
refactor: JwtAuthenticationFilter์˜ role - admin์ธ์ฆ
bumstone Mar 18, 2025
13839fa
refactor: user ๋“ฑ๊ธ‰ ๋ฐ ํฌ์ธํŠธ ์‹œ์Šคํ…œ ๋ณ€๊ฒฝ (๊ฒŒ์‹œ๊ธ€ ์ž‘์„ฑ, ๋‹ต๋ณ€ ๋‚ด์šฉ)
bumstone Mar 19, 2025
dbe7fc5
refactor: email -> user realId ํ˜•์‹ ๋ณ€๊ฒฝ ๋ฐ ์—๋Ÿฌ์ฝ”๋“œ, ์˜ˆ์™ธ์ฒ˜๋ฆฌ ์ˆ˜์ •
bumstone Mar 19, 2025
5f8de20
feat: ๋ถ๋งˆํฌ ๊ธฐ๋Šฅ ๊ตฌํ˜„
bumstone Mar 19, 2025
1a778c7
feat: ๊ณต๊ณต์„œ๋น„์Šค ์กฐํšŒ ์‹œ ๋กœ๊ทธ์ธํ•œ ๊ฒฝ์šฐ ๋ถ๋งˆํฌ ์—ฌ๋ถ€ ์กฐํšŒ, ์ธ๊ธฐ์„œ๋น„์Šค ์กฐํšŒ ๋ฐฉ์‹ ๋ณ€๊ฒฝ(์กฐํšŒ์ˆ˜ -> ๋ถ๋งˆํฌ์ˆ˜)
bumstone Mar 19, 2025
841009c
๊ฒŒ์‹œ๊ธ€ ๊ด€๋ จ ์ˆ˜์ • ๋ฐ ์ฑ—๋ด‡ ๊ธฐ๋Šฅ ๊ตฌํ˜„
uk0k Mar 19, 2025
c76667a
feat: ์Šน๊ธ‰๊นŒ์ง€ ๋‚จ์€ ํฌ์ธํŠธ ๊ณ„์‚ฐ
bumstone Mar 21, 2025
4a2a125
๋ฐฐ๋„ˆ ๋ฐ ๋‹ต๋ณ€ ๊ธฐ๋Šฅ ์ˆ˜์ •
uk0k Mar 24, 2025
b2216b4
refactor: ๊ฐ€๊ตฌํ˜•ํƒœ ์ค‘ ํ•ด๋‹น ์‚ฌํ•ญ ์—†์Œ ํ•„๋“œ ์ œ๊ฑฐ
bumstone Mar 24, 2025
2bdb286
feat: ๊ฒŒ์‹œ๊ธ€ ์ถ”์ฒœ ์ดˆ์„๋งŒ
bumstone Mar 25, 2025
3ea6c82
refactor: ๊ณต๊ณต์„œ๋น„์Šค ๋ชฉ๋ก ์ •๋ณด, ์ƒ์„ธ ์ •๋ณด ํ”ผ๊ทธ๋งˆ๋Œ€๋กœ ์ˆ˜์ •
bumstone Mar 25, 2025
88960ce
refactor: ๊ณต๊ณต์„œ๋น„์Šค ์ „์ฒด ์กฐํšŒ
bumstone Mar 25, 2025
7b660de
feat: docker ํŒŒ์ผ ๋ฐ yml ์ˆ˜์ •
bumstone Mar 27, 2025
d471792
refactor: yml ์ˆ˜์ •, api์—”๋“œํฌ์ธํŠธ securityPath์— ์ถ”๊ฐ€
bumstone Mar 27, 2025
25106ca
feat: ๋งˆ์ดํŽ˜์ด์ง€์—์„œ ์กฐํšŒํ•  ๋ถ๋งˆํฌํ•œ ์„œ๋น„์Šค ๋ชฉ๋ก ์กฐํšŒ ๊ตฌํ˜„
bumstone Mar 27, 2025
d108bc6
Merge branch 'refactor/#26-service_user' of https://github.com/EWSNprโ€ฆ
bumstone Mar 27, 2025
d129efa
style: redis ํŒจํ‚ค์ง€ ์ƒ์„ฑ
bumstone Mar 27, 2025
f10b917
Update src/main/java/com/hyetaekon/hyetaekon/common/exception/ErrorCoโ€ฆ
bumstone Mar 27, 2025
df20bc8
fix: repository ํ•„์š” ์ž„์‹œ ํ•„๋“œ ๊ตฌ์„ฑ
bumstone Mar 27, 2025
81bc516
Merge branch 'refactor/#26-service_user' of https://github.com/EWSNprโ€ฆ
bumstone Mar 27, 2025
a2e2bde
settings: docker, redis, mysql ์„ค์ •
bumstone Apr 2, 2025
0824172
setting: docker, redis, mysql ์„ค์ •
bumstone Apr 3, 2025
d24528b
refactor: ๊ด€์‹ฌ์‚ฌ ์กฐํšŒ, ์„ ํƒ, ์ˆ˜์ • ์‹œ ์นดํ…Œ๊ณ ๋ฆฌ๋ณ„ ๋ถ„๋ฅ˜
bumstone Apr 9, 2025
f3ee343
refactor: ํšŒ์›๊ฐ€์ž…, ๊ฐœ์ธ ์ •๋ณด ๋ณ€๊ฒฝ ์‹œ ์œ ์ € ๋น„๋ฐ€๋ฒˆํ˜ธ ๊ฒ€์ฆ, ์ง์—… ์ •๋ณด ์ถ”๊ฐ€
bumstone Apr 9, 2025
2b59fd2
Merge pull request #30 from EWSNproject/refactor/#26-service_user
bumstone Apr 10, 2025
170983e
fix: ์œ ์ € ๊ด€์‹ฌ์‚ฌ request ๋ฌธ์ œ ๋ฐ sequrityPath ์ˆ˜์ •
bumstone Apr 10, 2025
086ef3f
Merge pull request #33 from EWSNproject/refactor/#31-user_interest
bumstone Apr 10, 2025
eb04f82
fix: data ์ดˆ๊ธฐํ™” ์ˆ˜์ •
bumstone Apr 10, 2025
ab851a2
Merge pull request #34 from EWSNproject/refactor/#31-user_interest
bumstone Apr 10, 2025
d994aad
๊ฒŒ์‹œ๊ธ€ ์ˆ˜์ • ๋ฐ PostImage, PostType ์ถ”๊ฐ€
uk0k Apr 11, 2025
6922071
postmapper, postservice ์ˆ˜์ •
uk0k Apr 11, 2025
318fcea
dev merge
uk0k Apr 11, 2025
84a4829
์˜ค๋ฅ˜์ˆ˜์ •
uk0k Apr 11, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@

# ๋นŒ๋“œ ๋‹จ๊ณ„
FROM eclipse-temurin:21-alpine AS builder
WORKDIR /app

# Gradle ์ด์šฉ ๋นŒ๋“œ ๋‹จ๊ณ„
COPY gradlew .
COPY gradle gradle
COPY build.gradle settings.gradle ./
COPY src src
RUN chmod +x ./gradlew
RUN ./gradlew clean build -x test

# ์‹คํ–‰ ๋‹จ๊ณ„
FROM eclipse-temurin:21-alpine AS runner
WORKDIR /app
COPY --from=builder /app/build/libs/*.jar HyetaekOn.jar
RUN mkdir -p /app/logs

# ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ์„ ์–ธ (๊ธฐ๋ณธ๊ฐ’)
ENV JAVA_OPTS=""

# ํฌํŠธ ์„ค์ •
EXPOSE 8080

# ์‹คํ–‰ ๋ช…๋ น์—์„œ JAVA_OPTS ์‚ฌ์šฉ
CMD ["sh", "-c", "java $JAVA_OPTS -jar HyetaekOn.jar"]
59 changes: 59 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
services:
app:
build:
context: .
dockerfile: Dockerfile
image: hyetaekon:latest
container_name: hyetaekon
ports:
- "8080:8080"
restart: always
env_file:
- ./.env
environment:
SPRING_PROFILES_ACTIVE: dev,s3Bucket
TZ: Asia/Seoul
volumes:
- ./logs:/app/logs # ๋กœ๊ทธ ๋งˆ์šดํŠธ
depends_on:
redis:
condition: service_healthy
networks:
- app-network

redis:
image: redis:latest
container_name: hyetaekon-redis
ports:
- "6379:6379"
volumes:
- redis-data:/data # ๋ฐ์ดํ„ฐ ์ง€์†์„ฑ์„ ์œ„ํ•œ ๋ณผ๋ฅจ ์ถ”๊ฐ€
command: redis-server --appendonly yes
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 30s
timeout: 10s
retries: 3
start_period: 10s
networks:
- app-network

nginx:
image: nginx:latest
container_name: hyetaekon-nginx
ports:
- "80:80"
- "443:443"
volumes:
- ./nginx/conf.d:/etc/nginx/conf.d
- ./nginx/ssl:/etc/nginx/ssl
- ./nginx/logs:/var/log/nginx
depends_on:
- app
networks:
- app-network


networks:
app-network:
name: hyetaekon-network
Original file line number Diff line number Diff line change
@@ -1,4 +1,57 @@
package com.hyetaekon.hyetaekon.UserInterest.controller;

import com.hyetaekon.hyetaekon.UserInterest.dto.CategorizedInterestsResponseDto;
import com.hyetaekon.hyetaekon.UserInterest.dto.CategorizedInterestsWithSelectionDto;
import com.hyetaekon.hyetaekon.UserInterest.dto.InterestSelectionRequestDto;
import com.hyetaekon.hyetaekon.UserInterest.entity.UserInterestEnum;
import com.hyetaekon.hyetaekon.UserInterest.service.UserInterestService;
import com.hyetaekon.hyetaekon.common.jwt.CustomUserDetails;
import lombok.RequiredArgsConstructor;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.security.core.annotation.AuthenticationPrincipal;
import org.springframework.web.bind.annotation.*;

import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;

@RestController
@RequestMapping("/api/interests")
@RequiredArgsConstructor
public class UserInterestController {

private final UserInterestService userInterestService;

// ์„ ํƒํ•  ํ‚ค์›Œ๋“œ ๋ชฉ๋ก ์กฐํšŒ
@GetMapping
public ResponseEntity<CategorizedInterestsResponseDto> getAvailableInterests() {
// Enum์—์„œ ์นดํ…Œ๊ณ ๋ฆฌ๋ณ„ displayName ๊ฐ’ ์ถ”์ถœ
Map<String, List<String>> categorizedInterests = Arrays.stream(UserInterestEnum.values())
.collect(Collectors.groupingBy(
UserInterestEnum::getCategory,
Collectors.mapping(UserInterestEnum::getDisplayName, Collectors.toList())
));
return ResponseEntity.ok(new CategorizedInterestsResponseDto(categorizedInterests));
}

// ๋ชจ๋“  ๊ด€์‹ฌ์‚ฌ์™€ ์‚ฌ์šฉ์ž ์„ ํƒ ์—ฌ๋ถ€ ์กฐํšŒ
@GetMapping("/me")
public ResponseEntity<CategorizedInterestsWithSelectionDto> getMyInterestsWithSelection(
@AuthenticationPrincipal CustomUserDetails userDetails) {
Long userId = userDetails.getId();
return ResponseEntity.ok(userInterestService.getUserInterestsWithSelection(userId));
}

// ์„ ํƒํ•œ ๊ด€์‹ฌ์‚ฌ ์ €์žฅ
@PostMapping("/me")
public ResponseEntity<Void> saveInterests(
@AuthenticationPrincipal CustomUserDetails userDetails,
@RequestBody InterestSelectionRequestDto requestDto
) {
Long userId = userDetails.getId();
userInterestService.saveUserInterests(userId, requestDto.getAllInterests());
return ResponseEntity.status(HttpStatus.OK).build();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
package com.hyetaekon.hyetaekon.UserInterest.dto;

import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.Setter;

import java.util.List;
import java.util.Map;

@Getter
@AllArgsConstructor
public class CategorizedInterestsResponseDto {
private Map<String, List<String>> categorizedInterests;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package com.hyetaekon.hyetaekon.UserInterest.dto;

import lombok.AllArgsConstructor;
import lombok.Getter;

import java.util.List;
import java.util.Map;

@Getter
@AllArgsConstructor
public class CategorizedInterestsWithSelectionDto {
private Map<String, List<InterestItemDto>> categorizedInterests;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package com.hyetaekon.hyetaekon.UserInterest.dto;

import lombok.AllArgsConstructor;
import lombok.Getter;

@Getter
@AllArgsConstructor
public class InterestItemDto {
private String name; // ๊ด€์‹ฌ์‚ฌ ์ด๋ฆ„
private boolean selected; // ์„ ํƒ ์—ฌ๋ถ€
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package com.hyetaekon.hyetaekon.UserInterest.dto;

import lombok.Getter;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

@Getter
public class InterestSelectionRequestDto {
private Map<String, List<String>> categorizedInterests;

public List<String> getAllInterests() {
if (categorizedInterests == null) {
return new ArrayList<>();
}
List<String> allInterests = new ArrayList<>();
categorizedInterests.values().forEach(allInterests::addAll);
return allInterests;
}
}

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,13 +1,31 @@
package com.hyetaekon.hyetaekon.UserInterest.entity;

import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import com.hyetaekon.hyetaekon.user.entity.User;
import jakarta.persistence.*;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;

@Entity
@AllArgsConstructor
@NoArgsConstructor
@Getter
@Builder
public class UserInterest {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

@ManyToOne
@JoinColumn(name = "user_id", nullable = false)
private User user;

@Column(nullable = false)
private String interest;

@Override
public String toString() {
return "{user_id: " + user.getId() + ", keyword: " + interest + "}";
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,26 +4,37 @@

@Getter
public enum UserInterestEnum {
HOT_WATER_PROVIDED("์˜จ์ˆ˜ ์ž˜ ๋‚˜์˜ค๋Š”"),
HEALING("ํž๋ง"),
FRIENDLY("์นœ์ ˆํ•œ"),
STAR_VIEWING("๋ณ„ ๋ณด๊ธฐ ์ข‹์€"),
COUPLE("์ปคํ”Œ"),
LOTS_OF_SHADE("๊ทธ๋Š˜์ด ๋งŽ์€"),
FAMILY("๊ฐ€์กฑ"),
SWIMMING("๋ฌผ๋†€์ด ํ•˜๊ธฐ ์ข‹์€"),
OCEAN_VIEW("๋ฐ”๋‹ค๊ฐ€ ๋ณด์ด๋Š”"),
GOOD_FOR_KIDS("์•„์ด๋“ค ๋†€๊ธฐ ์ข‹์€"),
RELAXING("์—ฌ์œ ์žˆ๋Š”"),
CLEAN("๊นจ๋—ํ•œ"),
EASY_CAR_PARKING("์ฐจ๋Œ€๊ธฐ ํŽธํ•œ"),
FUN("์žฌ๋ฏธ์žˆ๋Š”"),
WIDE_SITE_SPACING("์‚ฌ์ดํŠธ ๊ฐ„๊ฒฉ์ด ๋„“์€");
// ServiceCategory ๊ด€๋ จ ๊ด€์‹ฌ์‚ฌ
CHILDCARE_EDUCATION("๋ณด์œกยท๊ต์œก", "๊ด€์‹ฌ์ฃผ์ œ"),
HOUSING_INDEPENDENCE("์ฃผ๊ฑฐยท์ž๋ฆฝ", "๊ด€์‹ฌ์ฃผ์ œ"),
ADMINISTRATION_SAFETY("ํ–‰์ •ยท์•ˆ์ „", "๊ด€์‹ฌ์ฃผ์ œ"),
AGRICULTURE_FISHERY("๋†๋ฆผ์ถ•์‚ฐ์–ด์—…", "๊ด€์‹ฌ์ฃผ์ œ"),
EMPLOYMENT_STARTUP("๊ณ ์šฉยท์ฐฝ์—…", "๊ด€์‹ฌ์ฃผ์ œ"),
HEALTH_MEDICAL("๋ณด๊ฑดยท์˜๋ฃŒ", "๊ด€์‹ฌ์ฃผ์ œ"),
CULTURE_ENVIRONMENT("๋ฌธํ™”ยทํ™˜๊ฒฝ", "๊ด€์‹ฌ์ฃผ์ œ"),
LIFE_STABILITY("์ƒํ™œ์•ˆ์ •", "๊ด€์‹ฌ์ฃผ์ œ"),

// SpecialGroup ๊ด€๋ จ ๊ด€์‹ฌ์‚ฌ
IS_MULTI_CULTURAL("๋‹ค๋ฌธํ™”๊ฐ€์กฑ", "๊ฐ€๊ตฌํ˜•ํƒœ"),
IS_NORTH_KOREAN_DEFECTOR("๋ถํ•œ์ดํƒˆ์ฃผ๋ฏผ", "๊ฐ€๊ตฌํ˜•ํƒœ"),
IS_SINGLE_PARENT_FAMILY("ํ•œ๋ถ€๋ชจ๊ฐ€์ •/์กฐ์†๊ฐ€์ •", "๊ฐ€๊ตฌํ˜•ํƒœ"),
IS_SINGLE_MEMBER_HOUSEHOLD("1์ธ๊ฐ€๊ตฌ", "๊ฐ€๊ตฌํ˜•ํƒœ"),
IS_DISABLED("์žฅ์• ์ธ", "๊ฐ€๊ตฌํ˜•ํƒœ"),
IS_NATIONAL_MERIT_RECIPIENT("๊ตญ๊ฐ€๋ณดํ›ˆ๋Œ€์ƒ์ž", "๊ฐ€๊ตฌํ˜•ํƒœ"),
IS_CHRONIC_ILLNESS("์งˆ๋ณ‘/์งˆํ™˜์ž", "๊ฐ€๊ตฌํ˜•ํƒœ"),

// FamilyType ๊ด€๋ จ ๊ด€์‹ฌ์‚ฌ
// IS_NOT_APPLICABLE("ํ•ด๋‹น์‚ฌํ•ญ ์—†์Œ", "๊ฐ€๊ตฌ์ƒํ™ฉ"),
IS_MULTI_CHILDREN_FAMILY("๋‹ค์ž๋…€๊ฐ€๊ตฌ", "๊ฐ€๊ตฌ์ƒํ™ฉ"),
IS_NON_HOUSING_HOUSEHOLD("๋ฌด์ฃผํƒ์„ธ๋Œ€", "๊ฐ€๊ตฌ์ƒํ™ฉ"),
IS_NEW_RESIDENCE("์‹ ๊ทœ์ „์ž…", "๊ฐ€๊ตฌ์ƒํ™ฉ"),
IS_EXTENDED_FAMILY("ํ™•๋Œ€๊ฐ€์กฑ", "๊ฐ€๊ตฌ์ƒํ™ฉ");

private final String displayName;
private final String category;

UserInterestEnum(String displayName) {
UserInterestEnum(String displayName, String category) {
this.displayName = displayName;
this.category = category;
}

}
Original file line number Diff line number Diff line change
@@ -1,4 +1,10 @@
package com.hyetaekon.hyetaekon.UserInterest.repository;

public class UserInterestRepository {
import com.hyetaekon.hyetaekon.UserInterest.entity.UserInterest;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

@Repository
public interface UserInterestRepository extends JpaRepository<UserInterest, Long> {

}
Loading