Code Monkey home page Code Monkey logo

gsm-gogo-server's Introduction

GSM-GOGO-SERVER

gogo_erd.png

gsm-gogo-server's People

Contributors

enbraining avatar tlsgmltjd avatar

Stargazers

 avatar  avatar  avatar  avatar

Forkers

hajeu

gsm-gogo-server's Issues

멀티모듈 기초 세팅

  • 프로젝트의 멀티 모듈을 세팅합니다
batch-module
   - Job
   - Config
 
entity-module
   - domin
      - user
 
api-module
   - domain
      - user
   - global

JWT Filter 오류

인증을 진행할때 UserDetails에 값이 담기지 않는 현상

buildSrc 적용

  • gradle 의존성을 더 명확하고 유지보수 쉽게 관리하기 위해 buildSrc를 적용합니다.

Entity 추가

스크린샷 2024-03-24 오후 6 01 23

ERD를 참고하여 엔티티들을 추가하겠습니다

팀 배팅 API

특정 팀에 배팅할 수 있는 API를 개발합니다.

{
	"match_id": Long,
	"team_id": Long,
	"bet_point": Long,
	"team_a_score": Int,
	"team_b_score": Int,
}

유저 리스트 조회 API

  • 일반 경기 등록시 사용할 같은 학년, 과 학생들 리스트 반환 API
  • LEADER 권한의 유저만 사용이 가능합니다.
  • 조회시 해당 유저와 같은 학년, 과인 학생들을 반환합니다.

Oauth 로그인 기능

  • oauth를 사용한 로그인 API를 추가합니다.

/auth/login: oauth로그인 페이지 url을 반환합니다.
/auth/callback?code=: 리다이렉트로 받은 code를 이용하여 로그인을 진행합니다.

Security 설정

  • 스프링 시큐리티,JWT 관련 설정을 추가합니다.

TeamClassType Enum Deplicate

  • TeamClassType Enum 객체가 domain, api 모듈에 중복되어있습니다.
  • doamin 모듈에만 존재하도록 변경합니다.

배팅 결과 정산 Batch 로직 작성

해당 Job은 아래와 같은 Step을 가집니다.

jobParameters: matchId, teamAScore, teamBScore

  • Step 1

    BetEntity -> UserEntity

    • iteamReader: 배팅 테이블을 조회합니다.
    • iteamProcessor: 배팅 테이블과 jobParameters로 받은 경기 결과를 바탕으로 유저 엔티티를 업데이트 합니다.
    • iteamWriter: 가공된 유저 엔티티를 save 합니다.
  • Step 2
    • tasklet
      • Match 테이블을 바탕으로 MatchResult 테이블을 생성하여 save 합니다.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.