참고 자료
mock password encoder
세부 로직
- 매칭 상세보기 수작 전 경기전 ?? -> api 는 하나 매칭 수락 전에는 널값 보내기
- 매칭 평가 : 백엔드 팀 ID 고민 주체가 누구인지 어떻게 구분할지
- 매칭 신청 수락시 웨이팅 상태 변경 / 매치 상태 변경
- 매칭 등록시 : 권한 제한
- 매치 수정시 상태 확인 → 성사 후는 못바뀝니다.
- 권한별 api 호출 막기 ex) 팀원은 매치 수정 api 에 접근하면 에러!!
- 매칭 팀원 등록시 제한인원 설정
- 자기가 쓴 글에 자기가 신청 못하게
- 매치 수정 자기 팀인지 확인
- 매치 평가를 안한다면?
- 시간 유효성 검증 : 오늘 시간 이후 / 끝나는 시간은 시작 시간 이후로
해야 할일
12-08
- 토큰 만료시 어떤 에러 호출?
- 검증
- 에러 처리 로직
- 순환 참조
- 테스트 코드
- 팀원 권한 검사 service 빼기\
java.lang.NoClassDefFoundError: org/apache/catalina/Lifecycle$SingleUse
java.lang.NoClassDefFoundError: org/apache/catalina/Lifecycle$SingleUse at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:269) ~[tomcat-embed-core-9.0.54.jar!/:na] at org.apache.catalina.startup.Tomcat.stop(Tomcat.java:496) ~[tomcat-embed-core-9.0.54.jar!/:na] at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.stopTomcat(TomcatWebServer.java:273) ~[spring-boot-2.5.6.jar!/:2.5.6] at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.stop(TomcatWebServer.java:331) ~[spring-boot-2.5.6.jar!/:2.5.6] at org.springframework.boot.web.servlet.context.WebServerStartStopLifecycle.stop(WebServerStartStopLifecycle.java:51) ~[spring-boot-2.5.6.jar!/:2.5.6] at org.springframework.context.SmartLifecycle.stop(SmartLifecycle.java:117) ~[spring-context-5.3.12.jar!/:5.3.12] at org.springframework.context.support.DefaultLifecycleProcessor.doStop(DefaultLifecycleProcessor.java:234) ~[spring-context-5.3.12.jar!/:5.3.12] at org.springframework.context.support.DefaultLifecycleProcessor.access$300(DefaultLifecycleProcessor.java:54) ~[spring-context-5.3.12.jar!/:5.3.12] at org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.stop(DefaultLifecycleProcessor.java:373) ~[spring-context-5.3.12.jar!/:5.3.12] at org.springframework.context.support.DefaultLifecycleProcessor.stopBeans(DefaultLifecycleProcessor.java:206) ~[spring-context-5.3.12.jar!/:5.3.12] at org.springframework.context.support.DefaultLifecycleProcessor.onClose(DefaultLifecycleProcessor.java:129) ~[spring-context-5.3.12.jar!/:5.3.12] at org.springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:1067) ~[spring-context-5.3.12.jar!/:5.3.12] at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.doClose(ServletWebServerApplicationContext.java:172) ~[spring-boot-2.5.6.jar!/:2.5.6] at org.springframework.context.support.AbstractApplicationContext.close(AbstractApplicationContext.java:1021) ~[spring-context-5.3.12.jar!/:5.3.12] at org.springframework.boot.SpringApplicationShutdownHook.closeAndWait(SpringApplicationShutdownHook.java:137) ~[spring-boot-2.5.6.jar!/:2.5.6] at java.base/java.lang.Iterable.forEach(Iterable.java:75) ~[na:na] at org.springframework.boot.SpringApplicationShutdownHook.run(SpringApplicationShutdownHook.java:106) ~[spring-boot-2.5.6.jar!/:2.5.6] at java.base/java.lang.Thread.run(Thread.java:829) ~[na:na]
DROP TABLE IF EXISTS teams CASCADE; DROP TABLE IF EXISTS users CASCADE; DROP TABLE IF EXISTS sports CASCADE; DROP TABLE IF EXISTS team_users CASCADE; DROP TABLE IF EXISTS tags CASCADE; DROP TABLE IF EXISTS user_tags CASCADE; DROP TABLE IF EXISTS matches CASCADE; DROP TABLE IF EXISTS hire_posts CASCADE; DROP TABLE IF EXISTS user_match_histories CASCADE; DROP TABLE IF EXISTS hire_applications CASCADE; DROP TABLE IF EXISTS team_waitings CASCADE; DROP TABLE IF EXISTS team_tags CASCADE; DROP TABLE IF EXISTS team_invitations CASCADE; DROP TABLE IF EXISTS member_waitings CASCADE; DROP TABLE IF EXISTS grouping_permission CASCADE; DROP TABLE IF EXISTS groupings CASCADE; DROP TABLE IF EXISTS permissions CASCADE; CREATE TABLE teams ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, sport_id BIGINT NOT NULL, name VARCHAR(20) NOT NULL UNIQUE, bio TEXT NULL, logo TEXT NULL, age_group VARCHAR(20) NULL, match_count INT NOT NULL DEFAULT 0, member_count INT NOT NULL DEFAULT 1, manner_temperature DECIMAL(4, 1) NOT NULL DEFAULT 36.5, is_deleted TINYINT NOT NULL DEFAULT 0, created_date DATETIME NOT NULL, modified_date DATETIME NOT NULL ); CREATE TABLE users ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, sport_id BIGINT NOT NULL, email VARCHAR(320) NOT NULL UNIQUE, name VARCHAR(255) NOT NULL, password VARCHAR(255) NOT NULL, nickname VARCHAR(20) NOT NULL UNIQUE, gender VARCHAR(10) NOT NULL, bio TEXT NULL, age_group VARCHAR(10) NOT NULL, manner_temperature DECIMAL(4, 1) NOT NULL DEFAULT 36.5, grouping_id BIGINT NOT NULL, is_disaffiliated TINYINT NOT NULL DEFAULT 0, created_date DATETIME NOT NULL, modified_date DATETIME NOT NULL ); CREATE TABLE permissions ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, name VARCHAR(20) NOT NULL ); CREATE TABLE groupings ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, name VARCHAR(20) NOT NULL ); CREATE TABLE grouping_permissions ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, grouping_id BIGINT NOT NULL, permission_id BIGINT NOT NULL ); CREATE TABLE sports ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, name VARCHAR(10) NOT NULL ); CREATE TABLE team_users ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, team_id BIGINT NOT NULL, user_id BIGINT NOT NULL, grade VARCHAR(20) NOT NULL, is_disaffiliated TINYINT NOT NULL ); CREATE TABLE tags ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, name VARCHAR(20) NOT NULL, type VARCHAR(10) NOT NULL ); CREATE TABLE user_tags ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, tag_id BIGINT NOT NULL, user_id BIGINT NOT NULL, tag_count INT NOT NULL DEFAULT 0 ); CREATE TABLE matches ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, register_team_id BIGINT NOT NULL, apply_team_id BIGINT NULL, sport_id BIGINT NOT NULL, city_id BIGINT NOT NULL, region_id BIGINT NOT NULL, ground_id BIGINT NOT NULL, date DATE NOT NULL, start_time TIME NOT NULL, end_time TIME NOT NULL, age_group VARCHAR(10) NULL, cost INT NOT NULL, detail VARCHAR(255) NULL, is_cancelled TINYINT NOT NULL DEFAULT 0, status VARCHAR(20) NOT NULL, created_date DATETIME NOT NULL, modified_date DATETIME NOT NULL ); CREATE TABLE hire_posts ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, team_id BIGINT NOT NULL, title VARCHAR(100) NOT NULL, position VARCHAR(50) NULL, city_id BIGINT NOT NULL, region_id BIGINT NOT NULL, ground_id BIGINT NOT NULL, date DATE NOT NULL, start_time TIME NOT NULL, end_time TIME NOT NULL, age_group VARCHAR(10) NULL, detail VARCHAR(255) NULL, hire_player_number INT NOT NULL DEFAULT 1, created_date DATETIME NOT NULL, modified_date DATETIME NOT NULL, is_deleted TINYINT NOT NULL ); CREATE TABLE user_match_histories ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, user_id BIGINT NOT NULL, match_id BIGINT NOT NULL ); CREATE TABLE hire_applications ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, hire_post_id BIGINT NOT NULL, user_id BIGINT NOT NULL ); CREATE TABLE team_waitings ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, match_id BIGINT NOT NULL, team_id BIGINT NOT NULL, type VARCHAR(10) NOT NULL ); CREATE TABLE team_tags ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, tag_id BIGINT NOT NULL, team_id BIGINT NOT NULL, tag_count INT NOT NULL DEFAULT 0 ); CREATE TABLE team_invitations ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, team_id BIGINT NOT NULL, user_id BIGINT NOT NULL ); CREATE TABLE member_waitings ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, user_id BIGINT NOT NULL, team_waiting_id BIGINT NOT NULL ); CREATE TABLE cities ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, name varchar(255) NOT NULL ); CREATE TABLE regions ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, city_id BIGINT NOT NULL, name VARCHAR(255) NOT NULL ); CREATE TABLE grounds ( id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, region_id BIGINT NOT NULL, name VARCHAR(255) NOT NULL ); ALTER TABLE teams ADD CONSTRAINT FK_sports_TO_teams_1 FOREIGN KEY (sport_id) REFERENCES sports (id); ALTER TABLE users ADD CONSTRAINT FK_sports_TO_users_1 FOREIGN KEY (sport_id) REFERENCES sports (id); ALTER TABLE team_users ADD CONSTRAINT FK_teams_TO_team_users_1 FOREIGN KEY (team_id) REFERENCES teams (id); ALTER TABLE team_users ADD CONSTRAINT FK_users_TO_team_users_1 FOREIGN KEY (user_id) REFERENCES users (id); ALTER TABLE user_tags ADD CONSTRAINT FK_tags_TO_user_tags_1 FOREIGN KEY (tag_id) REFERENCES tags (id); ALTER TABLE user_tags ADD CONSTRAINT FK_users_TO_user_tags_1 FOREIGN KEY (user_id) REFERENCES users (id); ALTER TABLE matches ADD CONSTRAINT FK_teams_TO_matches_1 FOREIGN KEY (register_team_id) REFERENCES teams (id); ALTER TABLE matches ADD CONSTRAINT FK_teams_TO_matches_2 FOREIGN KEY (apply_team_id) REFERENCES teams (id); ALTER TABLE matches ADD CONSTRAINT FK_cities_TO_matches_1 FOREIGN KEY (city_id) REFERENCES cities (id); ALTER TABLE matches ADD CONSTRAINT FK_regions_TO_matches_1 FOREIGN KEY (region_id) REFERENCES regions (id); ALTER TABLE matches ADD CONSTRAINT FK_grounds_TO_matches_1 FOREIGN KEY (ground_id) REFERENCES grounds (id); ALTER TABLE matches ADD CONSTRAINT FK_sports_TO_matches_1 FOREIGN KEY (sport_id) REFERENCES sports (id); ALTER TABLE hire_posts ADD CONSTRAINT FK_teams_TO_hire_posts_1 FOREIGN KEY (team_id) REFERENCES teams (id); ALTER TABLE user_match_histories ADD CONSTRAINT FK_users_TO_user_match_histories_1 FOREIGN KEY (user_id) REFERENCES users (id); ALTER TABLE user_match_histories ADD CONSTRAINT FK_matches_TO_user_match_histories_1 FOREIGN KEY (match_id) REFERENCES matches (id); ALTER TABLE hire_applications ADD CONSTRAINT FK_hire_posts_TO_hire_applications_1 FOREIGN KEY (hire_post_id) REFERENCES hire_posts (id); ALTER TABLE hire_applications ADD CONSTRAINT FK_users_TO_hire_applications_1 FOREIGN KEY (user_id) REFERENCES users (id); ALTER TABLE team_waitings ADD CONSTRAINT FK_matches_TO_team_waitings_1 FOREIGN KEY (match_id) REFERENCES matches (id); ALTER TABLE team_waitings ADD CONSTRAINT FK_teams_TO_team_waitings_1 FOREIGN KEY (team_id) REFERENCES teams (id); ALTER TABLE team_tags ADD CONSTRAINT FK_tags_TO_team_tags_1 FOREIGN KEY (tag_id) REFERENCES tags (id); ALTER TABLE team_tags ADD CONSTRAINT FK_teams_TO_team_tags_1 FOREIGN KEY (team_id) REFERENCES teams (id); ALTER TABLE team_invitations ADD CONSTRAINT FK_teams_TO_team_invitations_1 FOREIGN KEY (team_id) REFERENCES teams (id); ALTER TABLE team_invitations ADD CONSTRAINT FK_users_TO_team_invitations_1 FOREIGN KEY (user_id) REFERENCES users (id); ALTER TABLE member_waitings ADD CONSTRAINT FK_users_TO_member_waitings_1 FOREIGN KEY (user_id) REFERENCES users (id); ALTER TABLE grouping_permissions ADD CONSTRAINT fk_permission_id_for_grouping_permission FOREIGN KEY (permission_id) REFERENCES permissions (id); ALTER TABLE grouping_permissions ADD CONSTRAINT fk_grouping_id_for_grouping_permission FOREIGN KEY (grouping_id) REFERENCES groupings (id); ALTER TABLE regions ADD CONSTRAINT FK_cities_TO_regions_1 FOREIGN KEY (city_id) REFERENCES cities (id); ALTER TABLE grounds ADD CONSTRAINT FK_regions_TO_grounds_1 FOREIGN KEY (region_id) REFERENCES regions (id);
/********************permissions**********************************/ INSERT INTO permissions(id, name) VALUES (1, 'ROLE_USER'); INSERT INTO permissions(id, name) VALUES (2, 'ROLE_ADMIN'); INSERT INTO groupings(id, name) VALUES (1, 'USER_GROUP'); INSERT INTO groupings(id, name) VALUES (2, 'ADMIN_GROUP'); INSERT INTO grouping_permissions(id, grouping_id, permission_id) VALUES (1, 1, 1); INSERT INTO grouping_permissions(id, grouping_id, permission_id) VALUES (2, 2, 1); INSERT INTO grouping_permissions(id, grouping_id, permission_id) VALUES (3, 2, 2); INSERT INTO sports (id, name) VALUES (1, '축구'); INSERT INTO sports (id, name) VALUES (2, '풋살'); INSERT INTO cities (id, name) VALUES (1, '서울특별시'); INSERT INTO cities (id, name) VALUES (2, '경기도'); INSERT INTO regions (id, city_id, name) VALUES (1, 1, '강남구'); INSERT INTO regions (id, city_id, name) VALUES (2, 1, '영등포구'); INSERT INTO regions (id, city_id, name) VALUES (3, 2, '남양주시'); INSERT INTO regions (id, city_id, name) VALUES (4, 2, '성남시'); INSERT INTO grounds (id, region_id, name) VALUES (1, 1, '대륭축구장'); INSERT INTO grounds (id, region_id, name) VALUES (2, 1, '대륭풋살장'); INSERT INTO grounds (id, region_id, name) VALUES (3, 1, '머쓱축구장'); INSERT INTO grounds (id, region_id, name) VALUES (4, 1, '머쓱풋살장'); INSERT INTO grounds (id, region_id, name) VALUES (5, 2, '쭝축구장'); INSERT INTO grounds (id, region_id, name) VALUES (6, 2, '쭝풋살장'); INSERT INTO grounds (id, region_id, name) VALUES (7, 2, '시즈축구장'); INSERT INTO grounds (id, region_id, name) VALUES (8, 2, '시즈풋살장'); INSERT INTO grounds (id, region_id, name) VALUES (9, 3, '체리축구장'); INSERT INTO grounds (id, region_id, name) VALUES (10, 3, '체리풋살장'); INSERT INTO grounds (id, region_id, name) VALUES (11, 3, '용스톤축구장'); INSERT INTO grounds (id, region_id, name) VALUES (12, 3, '용스톤풋살장'); INSERT INTO grounds (id, region_id, name) VALUES (13, 4, '호세축구장'); INSERT INTO grounds (id, region_id, name) VALUES (14, 4, '호세풋살장'); INSERT INTO grounds (id, region_id, name) VALUES (15, 4, '쌈축구장'); INSERT INTO grounds (id, region_id, name) VALUES (16, 4, '쌈풋살장'); INSERT INTO `tags` VALUES (1, '시간을 잘 지켜요', 'GOOD'), (2, '그라운드의 1004', 'GOOD'), (3, '연락이 잘돼요', 'GOOD'), (4, '안전제일', 'GOOD'), (5, '이쁜말해요', 'GOOD'), (6, '시간을 잘 안지켜요', 'BAD'), (7, '욕쟁이', 'BAD'), (8, '몸이 거칠어요', 'BAD'), (9, '노쇼', 'BAD'), (10, '히드라', 'BAD'), (11, '훌륭한 피니셔', 'NONE'), (12, '엄청난 발재간', 'NONE'), (13, '두 개의 심장', 'NONE'), (14, '패스 마스터', 'NONE'), (15, '빠름빠름', 'NONE'); /*******************user**********************************/ INSERT INTO users (id, sport_id, email, name, password, nickname, gender, bio, age_group, manner_temperature, grouping_id, is_disaffiliated, created_date, modified_date) VALUES (1, 1, 'cpfl1@naver.com', '체리1', '$2a$10$V49VkeuUVRLT2ky0h/jG6uCnper8.51LjQ9d9fBnDESwGMF8Dvyzm', '체리1', 'WOMEN', NULL, 'FIFTIES', 36.5, 1, 0, '2021-12-16 15:01:40', '2021-12-16 15:01:40'), (2, 1, 'cpfl2@naver.com', '체리2', '$2a$10$V49VkeuUVRLT2ky0h/jG6uCnper8.51LjQ9d9fBnDESwGMF8Dvyzm', '체리2', 'WOMEN', NULL, 'FIFTIES', 36.5, 1, 0, '2021-12-16 15:01:40', '2021-12-16 15:01:40'), (3, 1, 'cpfl3@naver.com', '체리3', '$2a$10$oXsJbTja1aR2xTVIeTAC3.npXWIgZDF2z419/i3s8WK2.6.oxYQBO', '체리3', 'MAN', NULL, 'THIRTIES', 36.5, 1, 0, '2021-12-16 15:03:37', '2021-12-16 15:03:37'), (4, 1, 'cpfl4@naver.com', '체리4', '$2a$10$ItP8aXKCxX9MgiH7H63kNu2aElj5K5F5roFWRo.F0oSuDhCmpLLq6', '체리4', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:31:16', '2021-12-16 15:31:16'), (5, 1, 'cpfl5@naver.com', '체리5', '$2a$10$D.WjKGnQG/Bdz/j2TmCEVOgfI/wwUCNYc2XWpQz/p2iCDb2gmg6Dy', '체리5', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:35:53', '2021-12-16 15:35:53'), (6, 1, 'cpfl6@naver.com', '체리6', '$2a$10$Xg7j.Hs6uQSFP638zA6f9efpbUsSqh.SSvZvMpfUevaPz7SY984J6', '체리6', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:36:11', '2021-12-16 15:36:11'), (7, 1, 'tlwm1@naver.com', '시즈1', '$2a$10$7K9fSnuOW6E36HwsFNu4ZuEC1m95SYh3dn6mrawLs75fl4Ak77Lqq', '시즈1', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:36:31', '2021-12-16 15:36:31'), (8, 1, 'tlwm2@naver.com', '시즈1', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '시즈2', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (9, 1, 'tlwm3@naver.com', '시즈1', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '시즈3', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (10, 1, 'tlwm4@naver.com', '시즈1', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '시즈4', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (11, 1, 'tlwm5@naver.com', '시즈1', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '시즈5', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (12, 1, 'tlwm6@naver.com', '시즈1', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '시즈6', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (13, 1, 'tmxhs1@naver.com', '스톤', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '스톤1', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (14, 1, 'tmxhs2@naver.com', '스톤', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '스톤2', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (15, 1, 'tmxhs3@naver.com', '스톤', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '스톤3', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (16, 1, 'tmxhs4@naver.com', '스톤', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '스톤4', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (17, 1, 'tmxhs5@naver.com', '스톤', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '스톤5', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (18, 1, 'tmxhs6@naver.com', '스톤', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '스톤6', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (19, 1, 'wwnd1@naver.com', '쭝', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '쭝1', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (20, 1, 'wwnd2@naver.com', '쭝', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '쭝2', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (21, 1, 'wwnd3@naver.com', '쭝', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '쭝3', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (22, 1, 'wwnd4@naver.com', '쭝', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '쭝4', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (23, 1, 'wwnd5@naver.com', '쭝', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '쭝5', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (24, 1, 'wwnd6@naver.com', '쭝', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '쭝6', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (25, 1, 'ghtp1@naver.com', '호세', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '호세1', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'), (26, 1, 'tkandpf1@naver.com', '사무엘', '$2a$10$DEMwRiv0mbIoezv0BU5eI.bJCZhUESMNxth7GJyPWsGnuexH/g732', '사무엘1', 'MAN', NULL, 'SIXTIES', 36.5, 1, 0, '2021-12-16 15:37:03', '2021-12-16 15:37:03'); /********************team**********************************/ INSERT INTO teams (id, sport_id, name, bio, logo, age_group, manner_temperature, is_deleted, created_date, modified_date) VALUES (1, 1, '시즈팀', '팀소개1', '팀로고', 'TWENTIES', 36.5, false, '2021-12-07T12:32:22', '2021-12-07T12:32:22'), (2, 1, '체리팀', '팀소개1', '팀로고', 'TWENTIES', 36.5, false, '2021-12-07T12:32:22', '2021-12-07T12:32:22'), (3, 1, '쭝팀', '팀소개1', '팀로고', 'TWENTIES', 36.5, false, '2021-12-07T12:32:22', '2021-12-07T12:32:22'), (4, 1, '스톤팀', '팀소개1', '팀로고', 'TWENTIES', 36.5, false, '2021-12-07T12:32:22', '2021-12-07T12:32:22'), (5, 2, '호세팀', '팀소개1', '팀로고', 'TWENTIES', 36.5, false, '2021-12-07T12:32:22', '2021-12-07T12:32:22'), (6, 2, '사무엘팀', '팀소개1', '팀로고', 'TWENTIES', 36.5, false, '2021-12-07T12:32:22', '2021-12-07T12:32:22'); /********************team_users**********************************/ INSERT INTO team_users (id, team_id, user_id, grade, is_disaffiliated) VALUES (1, 1, 7, 'CAPTAIN', false), (2, 1, 8, 'SUB_CAPTAIN', false), (3, 1, 9, 'GENERAL', false), (4, 2, 10, 'GENERAL', false), (5, 2, 11, 'GENERAL', false), (6, 2, 12, 'GENERAL', false), (7, 3, 25, 'HIRED', false), (8, 3, 26, 'HIRED', false), (9, 2, 1, 'CAPTAIN', false), (10, 2, 2, 'GENERAL', false), (11, 2, 3, 'GENERAL', false), (13, 2, 4, 'GENERAL', false), (14, 2, 5, 'GENERAL', false), (15, 2, 6, 'GENERAL', false), (16, 3, 19, 'CAPTAIN', false), (17, 3, 20, 'GENERAL', false), (18, 3, 21, 'GENERAL', false), (19, 3, 22, 'GENERAL', false), (20, 3, 23, 'GENERAL', false), (21, 3, 24, 'GENERAL', false), (22, 3, 1, 'HIRED', false), (23, 4, 13, 'CAPTAIN', false), (24, 4, 14, 'GENERAL', false), (25, 4, 15, 'GENERAL', false), (26, 4, 16, 'GENERAL', false), (27, 4, 17, 'GENERAL', false), (28, 4, 18, 'GENERAL', false), (29, 4, 1, 'GENERAL', false), (30, 5, 25, 'CAPTAIN', false), (31, 6, 26, 'CAPTAIN', false); INSERT INTO hire_posts (id, team_id, position, city_id, region_id, ground_id, date, start_time, end_time, age_group, detail, hire_player_number, is_deleted, created_date, modified_date) VALUES (1, 1, '윙백', 1, 1, 1, '2021-12-31', '12:32:22', '12:32:22', 'TEENAGER', '세부내용', 3, false, '2021-12-06T12:32:22', '2021-12-06T12:32:22'), (2, 5, '윙백', 1, 2, 2, '2021-12-30', '12:32:22', '12:32:22', 'TEENAGER', '세부내용', 3, false, '2021-12-06T12:32:22', '2021-12-06T12:32:22'), (3, 6, '윙백', 1, 2, 3, '2021-12-29', '12:32:22', '12:32:22', 'TEENAGER', '세부내용', 3, false, '2021-12-06T12:32:22', '2021-12-06T12:32:22'); /*********************************************Match ******************************************/ INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (1, 2, null, 2, 1, 1, 1, '2021-12-23', '12:32:22', '12:40:22', 'TEENAGER', 1000, '안녕하세요', false, false, false, 'WAITING', '2021-12-06T12:32:22', '2021-12-06T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (2, 2, null, 2, 1, 1, 1, '2021-12-23', '12:32:22', '12:40:22', 'TEENAGER', 1000, '안녕하세요', false, false, false, 'WAITING', '2021-12-06T12:32:22', '2021-12-06T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (3, 3, null, 1, 1, 1, 1, '2021-12-25', '12:32:22', '12:40:22', 'FORTIES', 1000, '안녕하세요', false, false, false, 'WAITING', '2021-12-06T12:32:22', '2021-12-06T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (4, 3, null, 1, 1, 1, 1, '2021-12-25', '12:32:22', '12:40:22', 'FORTIES', 5000, '안녕하세요', false, false, false, 'WAITING', '2021-12-06T12:32:22', '2021-12-06T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (5, 4, null, 1, 1, 1, 1, '2021-12-25', '12:32:22', '12:40:22', 'FORTIES', 5000, '안녕하세요', false, false, false, 'WAITING', '2021-12-06T12:32:22', '2021-12-06T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (6, 4, null, 1, 1, 1, 1, '2021-12-25', '12:32:22', '12:40:22', 'SIXTIES', 5000, '안녕하세요', false, false, false, 'WAITING', '2021-12-06T12:32:22', '2021-12-06T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (7, 1, null, 1, 1, 1, 1, '2021-12-25', '12:32:22', '12:40:22', 'SIXTIES', 5000, '안녕하세요', false, false, false, 'WAITING', '2021-12-06T12:32:22', '2021-12-06T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (8, 1, null, 1, 2, 1, 1, '2021-12-26', '12:32:22', '12:40:22', 'TEENAGER', 1000000, '안녕하세요', false, false, false, 'WAITING', '2021-12-06T12:32:22', '2021-12-06T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (9, 4, null, 1, 2, 1, 1, '2021-12-26', '12:32:22', '12:40:22', 'TEENAGER', 1000, '안녕하세요', false, false, false, 'WAITING', '2021-12-06T12:32:22', '2021-12-06T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (10, 1, null, 2, 2, 1, 2, '2021-12-26', '12:32:22', '12:40:22', 'TEENAGER', 1000, '안녕하세요', false, false, false, 'WAITING', '2021-12-06T12:32:22', '2021-12-06T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (11, 1, null, 2, 2, 1, 2, '2021-12-28', '12:32:22', '12:40:22', 'TEENAGER', 1000, '안녕하세요', false, false, false, 'WAITING', '2021-12-06T12:32:22', '2021-12-06T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (12, 2, 3, 1, 1, 1, 3, '2021-12-28', '12:40:00', '14:40:00', 'TWENTIES', 50000, '안녕하세요', false, false, false, 'COMPLETION', '2021-12-16T12:32:22', '2021-12-16T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (13, 2, 4, 1, 1, 1, 3, '2021-12-28', '12:40:00', '14:40:00', 'TWENTIES', 50000, '안녕하세요', false, false, false, 'COMPLETION', '2021-12-16T12:32:22', '2021-12-16T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (14, 2, 4, 1, 1, 1, 3, '2021-12-28', '12:40:00', '14:40:00', 'TWENTIES', 50000, '안녕하세요', false, false, false, 'COMPLETION', '2021-12-16T12:32:22', '2021-12-16T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (15, 3, 1, 1, 1, 1, 3, '2021-12-28', '12:40:00', '14:40:00', 'TWENTIES', 50000, '안녕하세요', true, true, false, 'REVIEWED', '2021-12-16T12:32:22', '2021-12-16T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (16, 4, 1, 1, 1, 1, 3, '2021-12-28', '12:40:00', '14:40:00', 'TWENTIES', 50000, '안녕하세요', true, true, false, 'REVIEWED', '2021-12-16T12:32:22', '2021-12-16T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (17, 1, 2, 1, 1, 1, 3, '2021-12-28', '12:40:00', '14:40:00', 'TWENTIES', 50000, '안녕하세요', false, true, false, 'COMPLETION', '2021-12-16T12:32:22', '2021-12-16T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (18, 1, 4, 1, 1, 1, 3, '2021-12-28', '12:40:00', '14:40:00', 'TWENTIES', 50000, '안녕하세요', true, false, false, 'COMPLETION', '2021-12-16T12:32:22', '2021-12-16T12:32:22'); INSERT INTO matches (id, register_team_id, apply_team_id, sport_id, city_id, region_id, ground_id, date, start_time, end_time, age_group, cost, detail, is_register_team_reviewed, is_apply_team_reviewed, is_cancelled, status, created_date, modified_date) VALUES (19, 1, 3, 1, 1, 1, 3, '2021-12-28', '12:40:00', '14:40:00', 'TWENTIES', 50000, '안녕하세요', false, false, false, 'COMPLETION', '2021-12-16T12:32:22', '2021-12-16T12:32:22'); /*****************************************team_waitings********************************************/ INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (1, 1, 2, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (2, 2, 2, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (3, 3, 3, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (4, 4, 3, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (5, 5, 4, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (6, 6, 4, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (7, 7, 1, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (8, 8, 1, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (9, 9, 4, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (10, 10, 1, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (11, 11, 1, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (12, 12, 2, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (13, 12, 3, 'SELECTED'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (14, 13, 2, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (15, 13, 4, 'SELECTED'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (16, 14, 2, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (17, 14, 4, 'SELECTED'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (18, 15, 3, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (19, 15, 1, 'SELECTED'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (20, 16, 4, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (21, 16, 1, 'SELECTED'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (22, 17, 1, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (23, 17, 2, 'SELECTED'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (24, 18, 1, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (25, 18, 4, 'SELECTED'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (26, 19, 1, 'REGISTER'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (27, 19, 3, 'SELECTED'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (28, 5, 1, 'WAITING'); INSERT INTO team_waitings (id, match_id, team_id, type) VALUES (29, 5, 2, 'WAITING'); /********************member_waitings**********************************/ INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (1, 1, 1); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (2, 2, 1); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (3, 3, 1); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (4, 1, 2); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (5, 2, 2); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (6, 3, 2); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (7, 13, 3); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (8, 14, 3); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (9, 15, 3); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (10, 13, 4); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (11, 14, 4); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (12, 15, 4); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (13, 19, 5); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (14, 20, 5); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (15, 21, 5); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (16, 19, 6); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (17, 20, 6); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (18, 21, 6); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (19, 7, 7); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (20, 8, 7); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (21, 9, 7); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (22, 7, 8); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (23, 8, 8); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (24, 9, 8); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (25, 13, 9); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (26, 14, 9); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (27, 15, 9); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (28, 7, 10); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (29, 8, 10); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (30, 9, 10); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (31, 7, 11); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (32, 8, 11); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (33, 9, 11); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (34, 1, 12); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (35, 2, 12); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (36, 3, 12); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (37, 19, 13); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (38, 20, 13); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (39, 21, 13); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (40, 1, 14); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (41, 2, 14); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (42, 3, 14); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (43, 13, 15); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (44, 14, 15); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (45, 15, 15); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (46, 1, 16); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (47, 2, 16); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (48, 3, 16); INSERT INTO member_waitings (id, user_id, team_waiting_id) VALUES (49, 13, 17), (50, 14, 17), (51, 15, 17), (52, 19, 18), (53, 20, 18), (54, 21, 18), (55, 7, 19), (56, 8, 19), (57, 9, 19), (58, 13, 20), (59, 14, 20), (60, 15, 20), (61, 7, 21), (62, 8, 21), (63, 9, 21), (64, 7, 22), (65, 8, 22), (66, 9, 22), (67, 1, 23), (68, 2, 23), (69, 3, 23), (70, 7, 24), (71, 8, 24), (72, 9, 24), (73, 13, 25), (74, 14, 25), (75, 15, 25), (76, 7, 26), (77, 8, 26), (78, 9, 26), (79, 19, 27), (80, 20, 27), (81, 21, 27), (82, 7, 28), (83, 8, 28), (84, 9, 28), (85, 1, 29), (86, 2, 29), (87, 3, 29); /**********************user_match_histories*************************/ INSERT INTO user_match_histories (id, user_id, match_id) VALUES (1, 1, 12), (2, 2, 12), (3, 3, 12), (4, 19, 12), (5, 20, 12), (6, 21, 12), (7, 1, 13), (8, 2, 13), (9, 3, 13), (10, 13, 13), (11, 14, 13), (12, 15, 13), (13, 1, 14), (14, 2, 14), (15, 3, 14), (16, 13, 14), (17, 14, 14), (18, 15, 14), (19, 19, 15), (20, 20, 15), (21, 21, 15), (22, 7, 15), (23, 8, 15), (24, 9, 15), (25, 13, 16), (26, 14, 16), (27, 15, 16), (28, 7, 16), (29, 8, 16), (30, 9, 16), (31, 7, 17), (32, 8, 17), (33, 9, 17), (34, 1, 17), (35, 2, 17), (36, 3, 17), (37, 7, 18), (38, 8, 18), (39, 9, 18), (40, 13, 18), (41, 14, 18), (42, 15, 18), (43, 7, 19), (44, 8, 19), (45, 9, 19), (46, 19, 19), (47, 20, 19), (48, 21, 19); INSERT INTO team_invitations (id, team_id, user_id) VALUES (1, 1, 1); INSERT INTO team_invitations (id, team_id, user_id) VALUES (2, 5, 1); INSERT INTO team_invitations (id, team_id, user_id) VALUES (3, 6, 1); INSERT INTO hire_applications (id, hire_post_id, user_id) VALUES (1, 1, 1); INSERT INTO hire_applications (id, hire_post_id, user_id) VALUES (2, 2, 1); INSERT INTO hire_applications (id, hire_post_id, user_id) VALUES (3, 3, 1); INSERT INTO user_tags (id, tag_id, user_id, tag_count) VALUES (1, 1, 1, 15), (2, 2, 1, 5), (3, 3, 1, 6), (4, 8, 1, 18), (5, 9, 1, 1), (6, 15, 1, 9); INSERT INTO team_tags (id, tag_id, team_id, tag_count) VALUES (1, 1, 1, 3), (2, 3, 1, 4), (3, 4, 1, 8), (4, 5, 1, 2), (5, 8, 1, 2), (6, 13, 1, 2);
백엔드 자체 평가 의견
잘한 점 :
- 정한 코드 컨벤션을 통해 가시적이고 통일성 있는 코드를 작성하였다.
- CI/CD 구축을 통해 개발 파이프라인에서 장애 유발을 감소시키며 개발 속도를 증가 시켰다.
- Jira를 통해 프론트와 백엔드 간의 일정 관리와 업무 공유를 효율적으로 진행하였다.
- 슬랙, 게더, 깃헙 리뷰를 활용해 이슈를 빠르게 공유하였다.
부족한 점:
- 엣지 케이스를 많지 고려하지 못 한것 같아 리펙토링이 필요하다.
- 인증 부분 토큰 사용방식에 있어서 보안이 취약해 보완이 필요하다.
- 테스트 주도 개발을 지키지 못하였다.
데모(gif)
기술 스택 (버전)
아키텍처
팀소개 (닉네임 ) ~평냉 좋아함
팀원 (만든 사람들)
팀문화?
소개 영상
버전 정리
language : java 11
Library & Framework : Spring-boot(
2.5.6
), Spring Security, QueryDSLORM: JPA
data : mysql8, h2
build : gradle(7.3)
infra: nginx, AWS(ec2, s3, code deploy)
test: junit5, mockito
ci/cd : Github Actions
INVALID_USERNAME: '이름은 8자이하의 한글만 가능합니다.',
INVALID_NICKNAME_FORM: '닉네임에는 특수문자가 들어갈 수 없습니다.', INVALID_NICKNAME_LEN:
닉네임은 ${NICKNAME_MAX_LEN}자까지 만들 수 있습니다.
, → 8INVALID_EMAIL: '이메일 형식이 올바르지 않습니다.',
INVALID_PASSWORD_FORM: '패스워드는 특수문자, 대문자, 소문자를 포함해야 합니다.', INVALID_PASSWORD_LEN:
패스워드는 ${PASSWORD_MIN_LEN}자 이상 ${PASSWORD_MAX_LEN}자 이하이어야 합니다.
, → 10~16INVALID_CONFIRMED_PASSWORD: '패스워드가 일치하지 않습니다.', → 에러
INVALID_GENDER: '성별을 선택해주세요.',
INVALID_AGEGROUP: '연령대를 선택해주세요.',
INVALID_SPORTS: '주종목을 선택해주세요.',
DUPLICATE_EMIAL: '이미 존재하는 이메일입니다.',
DUPLICATE_NICKNAME: '이미 존재하는 닉네임입니다.',
INVALID_BIO_MSG:
자기소개는 ${BIO_MAX_LEN}을 넘길 수 없습니다.
자기소개 30"/hire-applications", "/hire-applications/{applicationsId}", "/hires", "/hires/{postId}/applications", "/hires/{postId}/applications", "/hires/me"