Skip to content

BusinessRule (Team)

JERI edited this page May 23, 2023 · 14 revisions

κ°œμš”

ν˜ΈμŠ€νŠΈμ™€ λ™ν–‰μ˜ 차이

  • ν•˜λ‚˜μ˜ μΌμ •μ—λŠ” λ°˜λ“œμ‹œ ν•œλͺ…μ˜ ν˜ΈμŠ€νŠΈκ°€ μ‘΄μž¬ν•˜λ©°, ν•΄λ‹Ή μΌμ •μ˜ ν˜ΈμŠ€νŠΈλŠ” λ™ν–‰μœΌλ‘œ κΆŒν•œμ΄ 변경될 수 μ—†μŠ΅λ‹ˆλ‹€.
  • 즉, ν•œλ²ˆ ν˜ΈμŠ€νŠΈλŠ” ν•΄λ‹Ή μΌμ •μ—μ„œ μ˜μ›νžˆ ν˜ΈμŠ€νŠΈμž…λ‹ˆλ‹€.
  • ν˜ΈμŠ€νŠΈλŠ” ν•΄λ‹Ή 일정에 λŒ€ν•œ λ™ν–‰μ˜ κΆŒν•œμ„ λ³€κ²½ν•  수 μžˆμ§€λ§Œ, 동행은 λ³€κ²½μ˜ κΆŒν•œμ΄ μ—†μŠ΅λ‹ˆλ‹€.
  • 일정에 λŒ€ν•œ κΆŒν•œμ€ λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
    • 일정에 λŒ€ν•œ μ“°κΈ° κΆŒν•œ
    • 일정에 λŒ€ν•œ 읽기 κΆŒν•œ
    • μΌμ •μ—μ„œ μ‚­μ œ 처리(동행 제거)
  • 동행은 뢀여받은 κΆŒν•œμ— λŒ€ν•œ ν–‰λ™λ§Œ κ°€λŠ₯ν•©λ‹ˆλ‹€.
  • 동행이 ν˜ΈμŠ€νŠΈκ°€ 될 μˆ˜λŠ” μ—†μŠ΅λ‹ˆλ‹€.
  • ν•΄λ‹Ή 일정에 μ΄ˆλŒ€λ°›μ€ μ‚¬λžŒμ€ μ „μ†‘λœ λ©”μΌμ˜ 링크λ₯Ό ν†΅ν•΄μ„œλ§Œ λ™ν–‰μœΌλ‘œ μ°Έμ—¬κ°€ κ°€λŠ₯ν•©λ‹ˆλ‹€.

λ™ν–‰μœΌλ‘œ 좔가될 μ‹œ DB의 λ³€ν™”

  • a의 νšŒμ›μ΄ 100번의 μŠ€μΌ€μ€„μ˜ 호슀트라고 κ°€μ •ν•œλ‹€λ©΄ μ €μž₯λ˜μ–΄ μžˆλŠ” DB 값은 μ•„λž˜μ™€ κ°™μŠ΅λ‹ˆλ‹€.
    • SCHEDULE ν…Œμ΄λΈ”
      • SC_NO : 100
    • TEAM ν…Œμ΄λΈ”
      • TEAM_NO : 1, TEAM_MID : a(ν˜ΈμŠ€νŠΈμ•„μ΄λ””), TEAM_SNO : 100(μŠ€μΌ€μ€„λ²ˆν˜Έ), TEAM_LEVEL : 9(호슀트), TEAM_BOOKMARK : 0
  • μ΄λ•Œ λ™ν–‰μœΌλ‘œ b의 νšŒμ›μ„ μ΄ˆλŒ€ν•˜μ˜€κ³  이λ₯Ό μˆ˜λ½ν–ˆλ‹€κ³  κ°€μ •ν•©λ‹ˆλ‹€. μΆ”κ°€λ˜λŠ” DB 값은 μ•„λž˜μ™€ κ°™μŠ΅λ‹ˆλ‹€.
    • TEAM ν…Œμ΄λΈ”
      • TEAM_NO : 2, TEAM_MID : b(동행아이디), TEAM_SNO : 100(μŠ€μΌ€μ€„λ²ˆν˜Έ), TEAM_LEVEL : 0(μ½κΈ°κΆŒν•œ), TEAM_BOOKMARK : 0
    • ALARM ν…Œμ΄λΈ”
      • AL_NO : 1, AL_SCNO : 100(μŠ€μΌ€μ€„λ²ˆν˜Έ), AL_MID : b(μ•ŒλžŒ 울릴 아이디), AL_STATUS : 1, AL_TIME : 23-05-23, AL_CATE : 2(μ•ŒλžŒ 울릴 μΉ΄ν…Œκ³ λ¦¬)
  • μœ„μ˜ ν…Œμ΄λΈ”μ—μ„œμ²˜λŸΌ 동행에 μΆ”κ°€λ˜λ©΄ ν•΄λ‹Ήν•˜λŠ” TEAMκ³Ό ALARM DBκ°€ μΆ”κ°€λ˜λŠ” 것을 λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.

API

[GET] νšŒμ› 검색(teams/share/members)

  • νšŒμ› 검색은 동행 μΆ”κ°€ μ‹œμ— ν•„μš”ν•˜λ―€λ‘œ TEAM BusinessRule에 μž‘μ„±ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
  • μž…λ ₯κ°’
    • νšŒμ› 아이디(memId)

[GET] 동행 쑰회(teams/share/{scNo})

  • μž…λ ₯κ°’
    • μŠ€μΌ€μ€„λ²ˆν˜Έ(scNo)

[POST] 동행 μΆ”κ°€(teams/share/{scNo})

  • API μ‹€ν–‰ μˆœμ„œ
    • μœ νš¨μ„± 검사
      • 동행이 MEMBER DB에 μ‘΄μž¬ν•˜λŠ” 동행인지 검사
      • 동행이 ν˜ΈμŠ€νŠΈμΈμ§€ μ•„λ‹Œμ§€ 검사
      • μŠ€μΌ€μ€„ λ²ˆν˜Έκ°€ μ‘΄μž¬ν•˜λŠ” μŠ€μΌ€μ€„μΈμ§€ 검사
    • μž…λ ₯받은 값에 λŒ€ν•΄ TEAM ν…Œμ΄λΈ”μ— insert 처리 λœλ‹€.
    • μž…λ ₯받은 값에 λŒ€ν•΄ ALARM ν…Œμ΄λΈ”μ— insert 처리 λœλ‹€.
  • μž…λ ₯κ°’
    • μŠ€μΌ€μ€„λ²ˆν˜Έ(scNo)
    • νšŒμ› 아이디(memId)
  • μ‚½μž… ν…Œμ΄λΈ”
    • TEAM(μ‚½μž…)
      • 동행 번호(teamNo) : μžλ™μ¦κ°€κ°’(AUTO_INCREMENT)
      • λ™ν–‰μ˜ 아이디(teamMid) : μž…λ ₯κ°’(memId)
      • μŠ€μΌ€μ€„ 번호(teamSno) : μž…λ ₯κ°’(scNo)
      • λ™ν–‰μ˜ κΆŒν•œλ ˆλ²¨(teamLevel) : 처음 insert μ‹œλŠ” κΆŒν•œλ ˆλ²¨μ„ 읽기둜 μ€λ‹ˆλ‹€. (후에 ν˜ΈμŠ€νŠΈκ°€ μˆ˜μ • κ°€λŠ₯) - μ½κΈ°κΆŒν•œ:0, μˆ˜μ •κΆŒν•œ:1
      • λ™ν–‰μ˜ μŠ€μΌ€μ€„μ— λŒ€ν•œ λΆλ§ˆν¬μ—¬λΆ€(teamBookmark) : 처음 insert μ‹œλŠ” λΆλ§ˆν¬μ—¬λΆ€λŠ” 0 μž…λ‹ˆλ‹€.(0 = λΆλ§ˆν¬ν•˜μ§€ μ•ŠμŒ)
    • ALARM(μ‚½μž…)
      • μ•ŒλžŒ 번호(alNo) : μžλ™μ¦κ°€κ°’(AUTO_INCREMENT)
      • μŠ€μΌ€μ€„ 번호(alScno) : μž…λ ₯κ°’(scNo)
      • μ•ŒλžŒλ°›μ„ 아이디(alMid) : μž…λ ₯κ°’(memId)
      • μ•ŒλžŒμ˜ 좜λ ₯μƒνƒœ(alStatus) : 처음 insert μ‹œλŠ” 좜λ ₯μƒνƒœλ₯Ό 1둜 μ€λ‹ˆλ‹€. (후에 μŠ€μΌ€μ€„μ΄ μ‚­μ œλ˜λ©΄ μƒνƒœκ°€ 0으둜 λ³€κ²½λ˜μ–΄ μ•ŒλžŒμ΄ 좜λ ₯λ˜μ§€ μ•Šμ„ κ²ƒμž„)
      • μ•ŒλžŒ μΉ΄ν…Œκ³ λ¦¬(alTime) :ν˜„μž¬μ‹œκ°(NOW())
      • μ•ŒλžŒ 번호(alCate) : AlarmCate.SAVE_TEAM.ordinal() - ENUM을 μ΄μš©ν–ˆμœΌλ©° DBμ—λŠ” 2κ°€ μ €μž₯λ©λ‹ˆλ‹€.

[PATCH] λ™ν–‰μ˜ κΆŒν•œ μƒνƒœ λ³€κ²½(teams/share/{scNo})

  • μž…λ ₯κ°’
    • μŠ€μΌ€μ€„λ²ˆν˜Έ(scNo)
    • λ³€κ²½ν•  동행 아이디(teamMid)
    • λ³€κ²½ν•  λ™ν–‰μ˜ κΆŒν•œλ ˆλ²¨(teamLevel)
  • λ³€κ²½ 및 μ‚½μž… ν…Œμ΄λΈ”
    • TEAM(λ³€κ²½)
      • λ™ν–‰μ˜ κΆŒν•œλ ˆλ²¨(teamLevel) : μ½κΈ°κΆŒν•œ:0 ν˜Ήμ€ μˆ˜μ •κΆŒν•œ:1
    • ALARM(μ‚½μž…)
      • μ•ŒλžŒ 번호(alNo) : μžλ™μ¦κ°€κ°’(AUTO_INCREMENT)
      • μŠ€μΌ€μ€„ 번호(alScno) : μž…λ ₯κ°’(scNo)
      • μ•ŒλžŒλ°›μ„ 아이디(alMid) : μž…λ ₯κ°’(teamMid)
      • μ•ŒλžŒμ˜ 좜λ ₯μƒνƒœ(alStatus) : 처음 insert μ‹œλŠ” 좜λ ₯μƒνƒœλ₯Ό 1둜 μ€λ‹ˆλ‹€. (후에 ν•΄λ‹Ή μŠ€μΌ€μ€„μ΄ μ‚­μ œλ˜λ©΄ μ•ŒλžŒλ„ 좜λ ₯λ˜μ§€ μ•Šμ•„μ•Ό ν•˜λ―€λ‘œ μƒνƒœκ°€ 0으둜 변경됨)
      • μ•ŒλžŒ μΉ΄ν…Œκ³ λ¦¬(alTime) : μžλ™μ¦κ°€κ°’(NOW())
      • μ•ŒλžŒ 번호(alCate) : AlarmCate.UPDATE_TEAMLEVEL_WRITE.ordinal() or AlarmCate.UPDATE_TEAMLEVEL_READ.ordinal() - ENUM을 μ΄μš©ν–ˆμœΌλ©° DBμ—λŠ” 4 λ˜λŠ” 5κ°€ μ €μž₯λ©λ‹ˆλ‹€.

[DELETE] 동행 μ‚­μ œ(teams/share/{scNo})

  • μž…λ ₯κ°’
    • μŠ€μΌ€μ€„λ²ˆν˜Έ(scNo)
    • μ‚­μ œν•  동행 아이디(teamMid)
  • μ‚­μ œ 및 μ‚½μž… ν…Œμ΄λΈ”
    • (μ‚­μ œ) μŠ€μΌ€μ€„(scNo)κ³Ό 아이디(teamMid)에 ν•΄λ‹Ήν•˜λŠ” TEAM ν…Œμ΄λΈ” μ‚­μ œ
    • (μ‚­μ œ) μŠ€μΌ€μ€„(scNo)에 아이디(teamMid)에 ν•΄λ‹Ήν•˜λŠ” ALARM ν…Œμ΄λΈ” 일괄 μ‚­μ œ
    • ALARM(μ‚½μž…)
      • μ•ŒλžŒ 번호(alNo) : μžλ™μ¦κ°€κ°’(AUTO_INCREMENT)
      • μŠ€μΌ€μ€„ 번호(alScno) : μž…λ ₯κ°’(scNo)
      • μ•ŒλžŒλ°›μ„ 아이디(alMid) : μž…λ ₯κ°’(teamMid)
      • μ•ŒλžŒμ˜ 좜λ ₯μƒνƒœ(alStatus) : 처음 insert μ‹œλŠ” 좜λ ₯μƒνƒœλ₯Ό 1둜 μ€λ‹ˆλ‹€.
      • μ•ŒλžŒ μΉ΄ν…Œκ³ λ¦¬(alTime) : ν˜„μž¬μ‹œκ°(NOW())
      • μ•ŒλžŒ 번호(alCate) : AlarmCate.REMOVE_TEAM.ordinal() - ENUM을 μ΄μš©ν–ˆμœΌλ©° DBμ—λŠ” 3이 μ €μž₯λ©λ‹ˆλ‹€.
Clone this wiki locally