Skip to content

Commit 2a8d022

Browse files
authored
Merge pull request #121 from solid-connection/main
[RELEASE] 241216 릴리즈
2 parents b3b17ea + c0426c9 commit 2a8d022

File tree

130 files changed

+1533
-1917
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

130 files changed

+1533
-1917
lines changed

.github/workflows/release.yml

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -63,15 +63,6 @@ jobs:
6363
key: ${{ secrets.PRIVATE_KEY }}
6464
source: "./docker-compose.yml"
6565
target: "/home/${{ secrets.USERNAME }}/solid-connect-server/"
66-
67-
- name: Copy nginx configuration file to remote
68-
uses: appleboy/scp-action@master
69-
with:
70-
host: ${{ secrets.HOST }}
71-
username: ${{ secrets.USERNAME }}
72-
key: ${{ secrets.PRIVATE_KEY }}
73-
source: "./nginx.conf"
74-
target: "/home/${{ secrets.USERNAME }}/solid-connect-server/"
7566

7667
- name: Run docker compose
7768
uses: appleboy/ssh-action@master
@@ -82,5 +73,5 @@ jobs:
8273
script_stop: true
8374
script: |
8475
cd /home/${{ secrets.USERNAME }}/solid-connect-server
85-
docker-compose down
86-
docker-compose up -d --build
76+
docker compose down
77+
docker compose up -d --build

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[submodule "src/main/resources/secret"]
2+
path = src/main/resources/secret
3+
url = https://github.com/solid-connection/solid-connect-secret

build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@ dependencies {//todo: 안쓰는 의존성이나 deprecated된 의존성 제거
3636
implementation 'com.amazonaws:aws-java-sdk-s3:1.12.470'
3737
implementation 'org.hibernate.validator:hibernate-validator:8.0.1.Final'
3838
implementation 'jakarta.annotation:jakarta.annotation-api:2.1.1'
39-
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.2.0'
40-
testImplementation "org.mockito:mockito-core:3.3.3"
39+
implementation 'org.apache.commons:commons-lang3:3.12.0'
40+
testImplementation 'org.mockito:mockito-core:3.3.3'
4141
implementation 'org.springframework.boot:spring-boot-starter-actuator'
4242
implementation 'io.micrometer:micrometer-registry-prometheus'
4343

docker-compose.yml

Lines changed: 3 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -17,27 +17,15 @@ services:
1717
depends_on:
1818
- redis
1919

20-
solid-connect-server:
20+
solid-connection-server:
2121
build:
2222
context: .
2323
dockerfile: Dockerfile
24-
container_name: solid-connect-server
24+
container_name: solid-connection-server
2525
ports:
2626
- "8080:8080"
2727
environment:
2828
- SPRING_DATA_REDIS_HOST=redis
2929
- SPRING_DATA_REDIS_PORT=6379
3030
depends_on:
31-
- redis
32-
33-
nginx:
34-
image: nginx:latest
35-
container_name: nginx
36-
ports:
37-
- "80:80"
38-
- "443:443"
39-
volumes:
40-
- ./nginx.conf:/etc/nginx/conf.d/default.conf
41-
- /etc/letsencrypt:/etc/letsencrypt
42-
depends_on:
43-
- solid-connect-server
31+
- redis

nginx.conf renamed to docs/nginx.conf

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ server {
33

44
# http를 사용하는 경우 주석 해제
55
# location / {
6-
# proxy_pass http://solid-connect-server:8080;
6+
# proxy_pass http://solid-connection-server:8080;
77
# proxy_set_header Host $host;
88
# proxy_set_header X-Real-IP $remote_addr;
99
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
@@ -18,8 +18,8 @@ server {
1818
server {
1919
listen 443 ssl;
2020

21-
ssl_certificate /etc/letsencrypt/live/api.solid-connect.net/fullchain.pem;
22-
ssl_certificate_key /etc/letsencrypt/live/api.solid-connect.net/privkey.pem;
21+
ssl_certificate /etc/letsencrypt/live/api.solid-connection.com/fullchain.pem;
22+
ssl_certificate_key /etc/letsencrypt/live/api.solid-connection.com/privkey.pem;
2323
client_max_body_size 10M;
2424

2525
ssl_protocols TLSv1.2 TLSv1.3;
@@ -31,14 +31,10 @@ server {
3131
ssl_stapling_verify on;
3232

3333
location / {
34-
proxy_pass http://solid-connect-server:8080;
34+
proxy_pass http://solid-connection-server:8080;
3535
proxy_set_header Host $host;
3636
proxy_set_header X-Real-IP $remote_addr;
3737
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
3838
proxy_set_header X-Forwarded-Proto $scheme;
3939
}
40-
41-
location ~ /.well-known/acme-challenge { # 인증서 갱신에 필요한 경로 설정
42-
allow all;
43-
}
4440
}

src/main/java/com/example/solidconnection/application/controller/ApplicationController.java

Lines changed: 7 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,9 @@
22

33
import com.example.solidconnection.application.dto.ApplicationSubmissionResponse;
44
import com.example.solidconnection.application.dto.ApplicationsResponse;
5-
import com.example.solidconnection.application.dto.ScoreRequest;
6-
import com.example.solidconnection.application.dto.UniversityChoiceRequest;
7-
import com.example.solidconnection.application.dto.VerifyStatusResponse;
5+
import com.example.solidconnection.application.dto.ApplyRequest;
86
import com.example.solidconnection.application.service.ApplicationQueryService;
97
import com.example.solidconnection.application.service.ApplicationSubmissionService;
10-
import com.example.solidconnection.application.service.VerifyStatusQueryService;
118
import jakarta.validation.Valid;
129
import lombok.RequiredArgsConstructor;
1310
import org.springframework.http.HttpStatus;
@@ -24,32 +21,22 @@
2421
@RequiredArgsConstructor
2522
@RequestMapping("/application")
2623
@RestController
27-
public class ApplicationController implements ApplicationControllerSwagger {
24+
public class ApplicationController {
2825

2926
private final ApplicationSubmissionService applicationSubmissionService;
3027
private final ApplicationQueryService applicationQueryService;
31-
private final VerifyStatusQueryService verifyStatusQueryService;
3228

33-
@PostMapping("/score")
34-
public ResponseEntity<ApplicationSubmissionResponse> submitScore(
29+
// 지원서 제출하기 api
30+
@PostMapping()
31+
public ResponseEntity<ApplicationSubmissionResponse> apply(
3532
Principal principal,
36-
@Valid @RequestBody ScoreRequest scoreRequest) {
37-
boolean result = applicationSubmissionService.submitScore(principal.getName(), scoreRequest);
33+
@Valid @RequestBody ApplyRequest applyRequest) {
34+
boolean result = applicationSubmissionService.apply(principal.getName(), applyRequest);
3835
return ResponseEntity
3936
.status(HttpStatus.OK)
4037
.body(new ApplicationSubmissionResponse(result));
4138
}
4239

43-
@PostMapping("/university")
44-
public ResponseEntity<ApplicationSubmissionResponse> submitUniversityChoice(
45-
Principal principal,
46-
@Valid @RequestBody UniversityChoiceRequest universityChoiceRequest) {
47-
boolean result = applicationSubmissionService.submitUniversityChoice(principal.getName(), universityChoiceRequest);
48-
return ResponseEntity
49-
.status(HttpStatus.OK)
50-
.body(new ApplicationSubmissionResponse(result));
51-
}
52-
5340
@GetMapping
5441
public ResponseEntity<ApplicationsResponse> getApplicants(
5542
Principal principal,
@@ -69,11 +56,4 @@ public ResponseEntity<ApplicationsResponse> getApplicantsForUserCompetitors(
6956
return ResponseEntity
7057
.ok(result);
7158
}
72-
73-
@GetMapping("/status")
74-
public ResponseEntity<VerifyStatusResponse> getApplicationVerifyStatus(Principal principal) {
75-
VerifyStatusResponse result = verifyStatusQueryService.getVerifyStatus(principal.getName());
76-
return ResponseEntity
77-
.ok(result);
78-
}
7959
}

src/main/java/com/example/solidconnection/application/controller/ApplicationControllerSwagger.java

Lines changed: 0 additions & 104 deletions
This file was deleted.

src/main/java/com/example/solidconnection/application/domain/Application.java

Lines changed: 49 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import jakarta.persistence.Entity;
99
import jakarta.persistence.EnumType;
1010
import jakarta.persistence.Enumerated;
11+
import jakarta.persistence.FetchType;
1112
import jakarta.persistence.GeneratedValue;
1213
import jakarta.persistence.GenerationType;
1314
import jakarta.persistence.Id;
@@ -51,16 +52,19 @@ public class Application {
5152
@Column(length = 50, nullable = false)
5253
private String term;
5354

54-
@ManyToOne
55+
@Column(columnDefinition = "TINYINT(1) NOT NULL DEFAULT 0")
56+
private Boolean isDelete;
57+
58+
@ManyToOne(fetch = FetchType.LAZY)
5559
private UniversityInfoForApply firstChoiceUniversity;
5660

57-
@ManyToOne
61+
@ManyToOne(fetch = FetchType.LAZY)
5862
private UniversityInfoForApply secondChoiceUniversity;
5963

60-
@ManyToOne
64+
@ManyToOne(fetch = FetchType.LAZY)
6165
private UniversityInfoForApply thirdChoiceUniversity;
6266

63-
@ManyToOne
67+
@ManyToOne(fetch = FetchType.LAZY)
6468
private SiteUser siteUser;
6569

6670
public Application(
@@ -76,14 +80,53 @@ public Application(
7680
this.verifyStatus = PENDING;
7781
}
7882

79-
public void updateGpaAndLanguageTest(
83+
public Application(
84+
SiteUser siteUser,
85+
Gpa gpa,
86+
LanguageTest languageTest,
87+
String term,
88+
Integer updateCount,
89+
UniversityInfoForApply firstChoiceUniversity,
90+
UniversityInfoForApply secondChoiceUniversity,
91+
UniversityInfoForApply thirdChoiceUniversity,
92+
String nicknameForApply) {
93+
this.siteUser = siteUser;
94+
this.gpa = gpa;
95+
this.languageTest = languageTest;
96+
this.term = term;
97+
this.updateCount = updateCount;
98+
this.firstChoiceUniversity = firstChoiceUniversity;
99+
this.secondChoiceUniversity = secondChoiceUniversity;
100+
this.thirdChoiceUniversity = thirdChoiceUniversity;
101+
this.nicknameForApply = nicknameForApply;
102+
this.verifyStatus = PENDING;
103+
}
104+
105+
public Application(
106+
SiteUser siteUser,
80107
Gpa gpa,
81-
LanguageTest languageTest) {
108+
LanguageTest languageTest,
109+
String term,
110+
UniversityInfoForApply firstChoiceUniversity,
111+
UniversityInfoForApply secondChoiceUniversity,
112+
UniversityInfoForApply thirdChoiceUniversity,
113+
String nicknameForApply) {
114+
this.siteUser = siteUser;
82115
this.gpa = gpa;
83116
this.languageTest = languageTest;
117+
this.term = term;
118+
this.updateCount = 0;
119+
this.firstChoiceUniversity = firstChoiceUniversity;
120+
this.secondChoiceUniversity = secondChoiceUniversity;
121+
this.thirdChoiceUniversity = thirdChoiceUniversity;
122+
this.nicknameForApply = nicknameForApply;
84123
this.verifyStatus = PENDING;
85124
}
86125

126+
public void setIsDeleteTrue() {
127+
this.isDelete = true;
128+
}
129+
87130
public void updateUniversityChoice(
88131
UniversityInfoForApply firstChoiceUniversity,
89132
UniversityInfoForApply secondChoiceUniversity,

src/main/java/com/example/solidconnection/application/domain/Gpa.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,15 @@
33
import jakarta.persistence.Column;
44
import jakarta.persistence.Embeddable;
55
import lombok.AllArgsConstructor;
6+
import lombok.EqualsAndHashCode;
67
import lombok.Getter;
78
import lombok.NoArgsConstructor;
89

910
@Getter
1011
@AllArgsConstructor
1112
@NoArgsConstructor(access = lombok.AccessLevel.PROTECTED)
1213
@Embeddable
14+
@EqualsAndHashCode(of = {"gpa", "gpaCriteria", "gpaReportUrl"})
1315
public class Gpa {
1416

1517
@Column(nullable = false, name = "gpa")

src/main/java/com/example/solidconnection/application/domain/LanguageTest.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,15 @@
66
import jakarta.persistence.EnumType;
77
import jakarta.persistence.Enumerated;
88
import lombok.AllArgsConstructor;
9+
import lombok.EqualsAndHashCode;
910
import lombok.Getter;
1011
import lombok.NoArgsConstructor;
1112

1213
@Getter
1314
@AllArgsConstructor
1415
@NoArgsConstructor(access = lombok.AccessLevel.PROTECTED)
1516
@Embeddable
17+
@EqualsAndHashCode(of = {"languageTestType", "languageTestScore", "languageTestReportUrl"})
1618
public class LanguageTest {
1719

1820
@Column(nullable = false, name = "language_test_type", length = 10)

0 commit comments

Comments
 (0)