Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feat] develop 브랜치 버전 맞추기 #102

Closed
wants to merge 104 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
104 commits
Select commit Hold shift + click to select a range
af77c15
chore: Gemini, openai API 추가 (#41)
Haewonny Feb 15, 2024
fd4fa48
feat: Gemini RestTemplate 설정 (#41)
Haewonny Feb 15, 2024
19179a2
feat: Gemini 요청, 응답 dto 추가 (#41)
Haewonny Feb 15, 2024
0c26bb6
feat: Gemini 카드 추천 구현 (#41)
Haewonny Feb 15, 2024
aef3223
feat: Openai RestTemplate 설정 (#41)
Haewonny Feb 15, 2024
7f6fe59
feat: Openai 요청, 응답 dto 추가 (#41)
Haewonny Feb 15, 2024
9d05c50
feat: Openai gpt 카드 추천 구현 (#41)
Haewonny Feb 15, 2024
1ed2270
Merge pull request #42 from EWHA-LUX/feature/#41
Haewonny Feb 16, 2024
a9030b2
feat: FCM 주카드 실적 알림, 목표 응원 알림 (#43)
julia-heo Feb 28, 2024
f0a987e
feat: CODEF 연결, 주카드 등록 (#43)
julia-heo Feb 28, 2024
ffd28d3
fix: Timezone 변경 (#12)
Haewonny Mar 1, 2024
2ea3a95
feat: 알림 리스트 조회 닉네임 추가 (#12)
Haewonny Mar 1, 2024
d5e5d33
Merge pull request #44 from EWHA-LUX/feature/#12
Haewonny Mar 3, 2024
5ae4bb3
fix: TimeZone 변경 (#45)
Haewonny Mar 3, 2024
bc2abd2
Merge pull request #46 from EWHA-LUX/feature/#45
Haewonny Mar 3, 2024
af676e6
fix: Docker timezone 설정 (#45)
Haewonny Mar 4, 2024
88d9122
Merge pull request #47 from EWHA-LUX/feature/#45
Haewonny Mar 5, 2024
99ec85b
feat: Subscription -> FCMToken 엔티티 이름 변경 (#43)
julia-heo Mar 6, 2024
c66ca46
feat: 매달 주카드 아닌 보유카드 실적 초기화 (#43)
julia-heo Mar 6, 2024
b7432a3
fix: deploy 오류 해결
Haewonny Mar 6, 2024
de0bc0e
feat: 주카드 실적 업데이트 api (#43)
julia-heo Mar 6, 2024
38cfad9
fix: date type 변경
Haewonny Mar 6, 2024
2f91cdd
feat: FCM Token 등록 url 변경 (#43)
julia-heo Mar 10, 2024
c8cf48e
feat: CODEF AccessToken redis 처리부분 (#43)
julia-heo Mar 11, 2024
f23f347
feat: 주카드 등록 로직 수정 (#43)
julia-heo Mar 11, 2024
517c34c
feat: 배포 시 firebase/once-firebase-adminsdk.json 생성 (#43)
julia-heo Mar 11, 2024
c6ca267
Merge pull request #51 from EWHA-LUX/feature/#43
Haewonny Mar 12, 2024
5ce44a8
feat: ERD 수정사항 반영 (#52)
Haewonny Mar 12, 2024
55ff88a
Merge pull request #53 from EWHA-LUX/feature/#52
Haewonny Mar 12, 2024
0040353
fix: dbData가 null인 경우 return null (#54)
julia-heo Mar 14, 2024
4659d05
Merge pull request #55 from EWHA-LUX/fix/#54
Haewonny Mar 15, 2024
9b054df
feat: 카드 혜택 크롤링 자동화 (#56)
julia-heo Mar 18, 2024
9d72544
fix: Logger 수정 (#56)
julia-heo Mar 19, 2024
3d11350
Merge pull request #59 from EWHA-LUX/feature/#56
Haewonny Mar 19, 2024
7f51e7b
fix: FCM json 파일 오류 해결, python 파일 위치 변경
julia-heo Mar 20, 2024
a287fc2
feat: 카드 검색 시 type(신용카드/체크카드) 추가 (#23)
julia-heo Mar 21, 2024
6be37d1
Merge pull request #60 from EWHA-LUX/feature/#23
julia-heo Mar 21, 2024
54bb4d0
feat: ERD 수정사항 반영 (#57)
Haewonny Mar 23, 2024
2b70134
refactor: 결제 카드 추천 메소드명 변경 (#57)
Haewonny Mar 23, 2024
2a701f0
feat: 카드 혜택 요약 자동화 구현 (#57)
Haewonny Mar 23, 2024
1390d4f
Merge pull request #61 from EWHA-LUX/feature/#57
Haewonny Mar 24, 2024
6964612
fix: 회원 정보 patch 오류 해결 (#29)
Haewonny Mar 27, 2024
c27f352
feat: 회원 정보 조회 username 추가 (#29)
Haewonny Mar 27, 2024
2c7a5c0
Merge pull request #65 from EWHA-LUX/feature/#29
Haewonny Mar 29, 2024
c761f1d
fix: 파이썬 크롤링 코드 업데이트 (#66)
Haewonny Mar 29, 2024
b67e51a
test: 크롤링 테스트 코드 작성 (#66)
Haewonny Mar 29, 2024
e524a53
fix: 크롤링 자동화 오류 해결 -ing (#66)
Haewonny Mar 29, 2024
c70fdfa
fix: 오타 수정 (#66)
Haewonny Mar 29, 2024
7a8c5e4
Merge pull request #67 from EWHA-LUX/fix/#66
Haewonny Mar 29, 2024
b21ea47
fix: 크롤링 로그 출력 문제 해결 (#66)
Haewonny Mar 29, 2024
ba62c3d
Merge pull request #68 from EWHA-LUX/fix/#66
Haewonny Mar 29, 2024
395ebef
fix: S3정보 config.ini로 처리 (#66)
julia-heo Mar 29, 2024
95dc2d8
fix: 국민 크롤링 경로 수정 (#66)
julia-heo Mar 29, 2024
3c944e8
Merge pull request #70 from EWHA-LUX/fix/#66
julia-heo Mar 29, 2024
57e008e
fix: 도커 Timezone 변경 (#66)
Haewonny Mar 30, 2024
d3ca42a
fix: 삼성 크롤링 코드 수정 (#66)
Haewonny Mar 30, 2024
170a023
fix: 롯데 환경변수 수정 (#66)
Haewonny Mar 30, 2024
679eee2
fix: unexpected indent 제거
julia-heo Mar 31, 2024
11f8f29
test: 크롤링 자동화 테스트 -ing
Haewonny Apr 1, 2024
d4cf92d
test: 혜택 요약 테스트 컨트롤러 추가
Haewonny Apr 1, 2024
fea5ff2
feat: 카드 혜택 test api 작성
julia-heo Apr 1, 2024
5e33734
test: 카드 혜택 test api 수정
julia-heo Apr 1, 2024
e27e31a
test: 카드 혜택 test api 수정
julia-heo Apr 1, 2024
3555c1d
test: 범위로 혜택 요약하는 컨트롤러 추가
Haewonny Apr 1, 2024
a7e46ad
Merge pull request #73 from julia-heo/develop
Haewonny Apr 7, 2024
5580118
feat: 마이월렛 조회 닉네임 추가 (#31)
Haewonny Apr 8, 2024
7694ab2
feat: 마이월렛 조회 카드사 추가 (#31)
Haewonny Apr 8, 2024
3b32b72
Merge pull request #74 from EWHA-LUX/feature/#31
Haewonny Apr 8, 2024
d3b1bfd
feat: gpt 프롬프트 업데이트 (#41)
julia-heo Apr 9, 2024
d584694
Merge pull request #75 from EWHA-LUX/feature/#41
julia-heo Apr 9, 2024
8c45122
feat: 카드사 연결 현황 확인 api (#72)
julia-heo Apr 10, 2024
d33ff8d
feat: 사용자 근처 단골가게 조회 (#72)
julia-heo Apr 10, 2024
b0ab09e
feat: 홈 기본 정보 응답 추가 (#8)
Haewonny Apr 15, 2024
0ef04ed
Merge pull request #77 from EWHA-LUX/feature/#8
Haewonny Apr 15, 2024
afbb493
feat: 챗봇 응답에 카드사 추가 (#41)
Haewonny Apr 16, 2024
71ea830
Merge pull request #78 from EWHA-LUX/feature/#41
Haewonny Apr 16, 2024
258ea6e
fix: 홈화면 검색 키워드 중복 제거 (#79)
julia-heo Apr 19, 2024
1efda2d
Merge pull request #80 from EWHA-LUX/fix/#79
julia-heo Apr 19, 2024
bf93041
feat: 마이웰렛 카테고리 분류 추가 (#81)
julia-heo Apr 22, 2024
9722b00
Merge pull request #82 from EWHA-LUX/feature/#81
julia-heo Apr 22, 2024
88347cd
Merge branch 'develop' into feature/#72
julia-heo May 2, 2024
93a6119
Merge pull request #84 from EWHA-LUX/feature/#72
julia-heo May 2, 2024
8ff3090
fix: 회원 탈퇴 api 수정 (#83)
julia-heo May 2, 2024
9e20568
feat: 추천 카드 주카드 여부 반환 (#86)
julia-heo May 2, 2024
ad6f01a
Merge pull request #85 from EWHA-LUX/fix/#83
Haewonny May 4, 2024
43e7c02
Merge pull request #87 from EWHA-LUX/feature/#86
Haewonny May 4, 2024
8d96b39
fix: 비밀번호 변경 오류 수정 (#88)
jiminnee May 5, 2024
58834e0
Merge pull request #89 from EWHA-LUX/fix/#88
jiminnee May 5, 2024
b2a2b68
fix: codef 보유 카드 조회 post 변경 (#91)
julia-heo May 17, 2024
0a3f75f
Merge pull request #92 from EWHA-LUX/fix/#91
julia-heo May 17, 2024
83d2ae9
feat: 스케줄러 시간 변경
Haewonny May 19, 2024
4dd5fa0
fix: 카드 실적 입력 cardId에서 ownedCardId로 수정 (#93)
jiminnee May 22, 2024
8ec3203
fix: 카드 실적 입력 users에서 nowUser로 조회 변경 (#93)
jiminnee May 22, 2024
00a9802
Merge pull request #94 from EWHA-LUX/fix/#93
jiminnee May 22, 2024
c94f525
feat: 프롬프트 업데이트 (#72)
julia-heo May 23, 2024
6e45ea3
feat: 단골가게 저장 로직 변경 (#72)
julia-heo May 23, 2024
1019abf
feat: 비콘 엔티티 생성, 알림 생성 요청 api (#72)
julia-heo May 23, 2024
f03216f
feat: 푸시 알림 title 수정 (#72)
julia-heo May 23, 2024
6013be1
Merge pull request #95 from EWHA-LUX/feature/#72-2
julia-heo May 24, 2024
d625fda
feat: 푸시 알림 페이지 이동을 위한 알림id추가 (#72)
julia-heo May 24, 2024
97d3abb
fix: post로 변경 (#98)
julia-heo May 25, 2024
9b4f03e
Merge pull request #97 from EWHA-LUX/feature/#72
julia-heo May 25, 2024
bb51592
Merge pull request #99 from EWHA-LUX/fix/#98
julia-heo May 25, 2024
6052467
fix: 월별혜택 receivedSum 수정
julia-heo May 26, 2024
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
20 changes: 13 additions & 7 deletions .github/workflows/gradle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,15 @@ jobs:
java-version: '17'
distribution: "adopt"

- name: Make application.properties
- name: Make application.properties & Firebase Service Account Key & DB Config
run: |
cd ./src/main/resources
touch ./application.properties
echo "${{ secrets.PROPERTIES }}" > ./application.properties
echo "${{ secrets.RDS_CONFIG_INI }}" > ./crawling/config.ini
mkdir firebase
touch ./firebase/once-firebase-adminsdk.json
echo '${{ secrets.ONCE_FIREBASE_ADMINSDK }}' > ./firebase/once-firebase-adminsdk.json
shell: bash

- name: Build with Gradle
Expand All @@ -51,11 +55,15 @@ jobs:
java-version: '17'
distribution: "adopt"

- name: Make application.properties
- name: Make application.properties & Firebase Service Account Key & DB Config
run: |
cd ./src/main/resources
touch ./application.properties
echo "${{ secrets.PROPERTIES }}" > ./application.properties
echo "${{ secrets.RDS_CONFIG_INI }}" > ./crawling/config.ini
mkdir firebase
touch ./firebase/once-firebase-adminsdk.json
echo '${{ secrets.ONCE_FIREBASE_ADMINSDK }}' > ./firebase/once-firebase-adminsdk.json
shell: bash

- name: Build with Gradle
Expand All @@ -66,9 +74,7 @@ jobs:
- name: Docker build & push to prod
run: |
echo "${{ secrets.DOCKER_PASSWORD }}" | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
# docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }}
# docker build -f Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/${{ secrets.DOCKER_REPO }} .
docker build -t ${{ secrets.DOCKER_USERNAME }}/${{ secrets.DOCKER_REPO }} .
docker build -f Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/${{ secrets.DOCKER_REPO }} .
docker push ${{ secrets.DOCKER_USERNAME }}/${{ secrets.DOCKER_REPO }}

- name: Deploy start
Expand All @@ -83,5 +89,5 @@ jobs:
sudo docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }}
sudo docker rm -f $(docker ps -qa)
sudo docker pull ${{ secrets.DOCKER_USERNAME }}/${{ secrets.DOCKER_REPO }}
docker-compose up -d
docker image prune -f
sudo docker-compose up -d
sudo docker image prune -f
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -39,4 +39,6 @@ out/


### Security ###
application.properties
application.properties
once-firebase-adminsdk.json
config.ini
24 changes: 22 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,25 @@
FROM openjdk:17-jdk
FROM openjdk:17-jdk-slim-bullseye

RUN apt-get update && apt-get install -y python3 python3-pip wget unzip curl && apt-get install -y systemd && apt-get install -y tzdata

RUN ln -snf /usr/share/zoneinfo/Asia/Seoul /etc/localtime

RUN wget https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_114.0.5735.198-1_amd64.deb && \
apt -y install ./google-chrome-stable_114.0.5735.198-1_amd64.deb

RUN wget -O /tmp/chromedriver.zip https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip && \
unzip /tmp/chromedriver.zip -d /usr/bin && \
chmod +x /usr/bin/chromedriver

COPY ./requirements.txt .
RUN pip install --no-cache-dir --upgrade pip && \
pip install -r requirements.txt

COPY ./src/main/resources/crawling /crawling

ARG JAR_FILE=build/libs/once-0.0.1-SNAPSHOT.jar
COPY ${JAR_FILE} /app.jar

ENTRYPOINT ["java","-jar","/app.jar"]
ENV TZ=Asia/Seoul

ENTRYPOINT ["java","-jar","/app.jar"]
21 changes: 21 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,14 @@ dependencies {
implementation 'io.jsonwebtoken:jjwt-jackson:0.11.5'

implementation 'org.springframework.cloud:spring-cloud-starter-aws:2.2.6.RELEASE'

//FCM
implementation 'com.google.firebase:firebase-admin:9.2.0'

//CODEF
implementation 'com.googlecode.json-simple:json-simple:1.1.1'

implementation 'commons-io:commons-io:2.11.0'
}

tasks.named('test') {
Expand All @@ -50,4 +58,17 @@ tasks.named('test') {

jar {
enabled = false
}
sourceSets{
main{
resources {
srcDirs 'src/main/resources'
}
}
}

tasks {
processResources {
duplicatesStrategy = org.gradle.api.file.DuplicatesStrategy.INCLUDE
}
}
11 changes: 10 additions & 1 deletion docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,13 @@ services:
- 8080
restart: always
ports:
- 8080:8080
- 8080:8080
environment:
- TZ=Asia/Seoul
shm_size: 2gb
logging:
driver: json-file
options:
mode: non-blocking
stdin_open: true
tty: true
7 changes: 7 additions & 0 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
beautifulsoup4==4.12.2
pandas==2.1.3
selenium==4.15.2
webdriver-manager==4.0.1
pymysql==1.1.0
boto3==1.19.0
Pillow==9.0.0
4 changes: 4 additions & 0 deletions src/main/java/ewha/lux/once/OnceApplication.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,13 @@
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.scheduling.annotation.EnableScheduling;

@EnableJpaAuditing
@SpringBootApplication
@EnableScheduling
@EnableAsync
public class OnceApplication {

public static void main(String[] args) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
package ewha.lux.once.domain.card.controller;

import ewha.lux.once.domain.card.dto.CardGoalRequestDto;
import ewha.lux.once.domain.card.dto.CardPerformanceRequestDto;
import com.fasterxml.jackson.core.JsonProcessingException;
import ewha.lux.once.domain.card.dto.*;
import ewha.lux.once.domain.card.service.CardService;
import ewha.lux.once.domain.card.service.CrawlingService;
import ewha.lux.once.global.common.CommonResponse;
import ewha.lux.once.global.common.CustomException;
import ewha.lux.once.global.common.ResponseCode;
Expand All @@ -12,13 +13,55 @@
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;


@Controller
@RestController
@RequiredArgsConstructor
@RequestMapping("card")
public class CardController {

private final CardService cardService;
private final CrawlingService crawlingService;

// ** 추후 삭제해야 함 - 테스트용 ** ==================================
@GetMapping("/test/{companyID}")
@ResponseBody
public CommonResponse<?> testtest(@AuthenticationPrincipal UserAccount user, @PathVariable("companyID") int companyId) {
try {
crawlingService.cardCrawlingTest(companyId);
return new CommonResponse<>(ResponseCode.SUCCESS);
} catch (CustomException e) {
return new CommonResponse<>(e.getStatus());
}
}

@GetMapping("/test/summary")
@ResponseBody
public CommonResponse<?> testSummary(@AuthenticationPrincipal UserAccount user, @RequestBody TestSummaryDto testSummaryDto) {
try {
cardService.updateBenefitSummaryTest(testSummaryDto.getPrompt(), testSummaryDto.getModel_name());
return new CommonResponse<>(ResponseCode.SUCCESS);
} catch (CustomException e) {
return new CommonResponse<>(e.getStatus());
} catch (JsonProcessingException e) {
throw new RuntimeException(e);
}
}

@GetMapping("/test/summary/index")
@ResponseBody
public CommonResponse<?> testSummaryByIndex(@AuthenticationPrincipal UserAccount user, @RequestBody TestSummaryIndexDto testSummaryIndexDto) {
try {
cardService.updateBenefitSummaryTestByIndex(testSummaryIndexDto.getPrompt(), testSummaryIndexDto.getModel_name(), testSummaryIndexDto.getStart_index(), testSummaryIndexDto.getEnd_index());
return new CommonResponse<>(ResponseCode.SUCCESS);
} catch (CustomException e) {
return new CommonResponse<>(e.getStatus());
} catch (JsonProcessingException e) {
throw new RuntimeException(e);
}
}

// ============================================================

// [Get] 마이월렛 조회
@GetMapping("")
Expand Down Expand Up @@ -65,4 +108,51 @@ public CommonResponse<?> cardGoal(@AuthenticationPrincipal UserAccount user, @Re
return new CommonResponse<>(e.getStatus());
}
}
}

// [Get] CODEF 보유 카드 조회
@PostMapping("/list")
@ResponseBody
public CommonResponse<?> codefCardList(@AuthenticationPrincipal UserAccount user, @RequestBody CodefCardListRequestDto codefCardListRequestDto) {
try {
return new CommonResponse<>(ResponseCode.SUCCESS, cardService.getCodefCardList(user.getUsers(), codefCardListRequestDto));
} catch (CustomException e) {
return new CommonResponse<>(e.getStatus());
}
}

// [Post] 주카드 등록
@PostMapping("/main")
@ResponseBody
public CommonResponse<?> registerMainCard(@AuthenticationPrincipal UserAccount user, @RequestBody MainCardRequestDto mainCardRequestDto) {
try {
cardService.postRegisterCard(user.getUsers(), mainCardRequestDto);
return new CommonResponse<>(ResponseCode.SUCCESS);
} catch (CustomException e) {
return new CommonResponse<>(e.getStatus());
}
}

// [Get] 주카드 실적 업데이트
@GetMapping("/main/performance")
@ResponseBody
public CommonResponse<?> registerMainCard(@AuthenticationPrincipal UserAccount user) {
try {
cardService.updateOwnedCardsPerformance(user.getUsers());
return new CommonResponse<>(ResponseCode.SUCCESS);
} catch (CustomException e) {
return new CommonResponse<>(e.getStatus());
}
}

// [Get] 카드사 연결 현황
@GetMapping("/connect")
@ResponseBody
public CommonResponse<?> checkConnectedCardCompany (@AuthenticationPrincipal UserAccount user) {
try {
return new CommonResponse<>(ResponseCode.SUCCESS,cardService.getConnectedCardCompany(user.getUsers()));
} catch (CustomException e) {
return new CommonResponse<>(e.getStatus());
}
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package ewha.lux.once.domain.card.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class CodefCardListRequestDto {
private String code;
private String id;
private String password;

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package ewha.lux.once.domain.card.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class CodefCardListResponseDto {
private String cardName;
private String cardImg;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package ewha.lux.once.domain.card.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class ConnectedCardCompanyResponseDto {
private String cardCompanyName;
private String connectedAt;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package ewha.lux.once.domain.card.dto;

import java.util.List;

import lombok.ToString;

@ToString
public class GoogleMapPlaceResponseDto {

private List<Place> places;

public GoogleMapPlaceResponseDto() {
}

public GoogleMapPlaceResponseDto(List<Place> places) {
this.places = places;
}

public List<Place> getPlaces() {
return places;
}

public void setPlaces(List<Place> places) {
this.places = places;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package ewha.lux.once.domain.card.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;


@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class MainCardRequestDto {
private String code;
private String cardName;

}
Loading
Loading