Skip to content

Commit 3a8a2b8

Browse files
committed
chore[initdate]: 테스트용 계정 생성
1 parent 66aeaa2 commit 3a8a2b8

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
package com.ai.lawyer.global.initData;
2+
3+
import com.ai.lawyer.domain.member.entity.Member;
4+
import com.ai.lawyer.domain.member.repositories.MemberRepository;
5+
import lombok.RequiredArgsConstructor;
6+
import lombok.extern.slf4j.Slf4j;
7+
import org.springframework.boot.ApplicationArguments;
8+
import org.springframework.boot.ApplicationRunner;
9+
import org.springframework.context.annotation.Profile;
10+
import org.springframework.core.annotation.Order;
11+
import org.springframework.security.crypto.password.PasswordEncoder;
12+
import org.springframework.stereotype.Component;
13+
import org.springframework.transaction.annotation.Transactional;
14+
15+
@Slf4j
16+
@Component
17+
@Order(1)
18+
@Profile("!test")
19+
@RequiredArgsConstructor
20+
public class InitData implements ApplicationRunner {
21+
22+
private final MemberRepository memberRepository;
23+
private final PasswordEncoder passwordEncoder;
24+
25+
@Override
26+
@Transactional
27+
public void run(ApplicationArguments args) {
28+
makeAdmin();
29+
}
30+
31+
@Transactional
32+
void makeAdmin() {
33+
long count = memberRepository.count();
34+
if (count > 0) {
35+
log.info("InitData skipped: users count={}", count);
36+
return;
37+
}
38+
39+
Member member = memberRepository.save(
40+
Member.builder()
41+
.loginId("[email protected]")
42+
.password(passwordEncoder.encode("1234"))
43+
.age(30)
44+
.gender(Member.Gender.FEMALE)
45+
.name("admin")
46+
.role(Member.Role.USER)
47+
.build()
48+
);
49+
50+
log.warn("=== Admin user created: {} ===", member.getLoginId());
51+
}
52+
}

0 commit comments

Comments
 (0)