Skip to content

Commit

Permalink
synchronize (#457)
Browse files Browse the repository at this point in the history
Co-authored-by: jongmin.jung <jongmin.jung@navercorp.com>
  • Loading branch information
alertjjm and jongmin.jung authored Aug 24, 2024
1 parent 47955f0 commit 5442b2c
Showing 1 changed file with 14 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -32,16 +32,24 @@ public class MashongMissionFacadeService {
public void apply(MissionStrategyType missionStrategyType, MemberGeneration memberGeneration, Double value) {
MashongMission mission = mashongMissionService.findMissionByStrategyType(missionStrategyType);
if (mission.getMissionType() == MissionType.INDIVIDUAL) {
MashongMissionLevel latestMissionLevel = getLatestMissionLevel(memberGeneration, mission);
MashongMissionLog mashongMissionLog = mashongMissionLogService.getMissionLog(latestMissionLevel, memberGeneration.getId());
mashongMissionLog.incrementCurrentStatus(value);
applyIndividual(memberGeneration, mission, value);
} else {
MashongMissionLevel latestMissionLevel = getLatestMissionLevel(memberGeneration.getPlatform(), memberGeneration.getGeneration().getId(), mission);
MashongMissionTeamLog mashongMissionLog = mashongMissionTeamLogService.getMissionLog(latestMissionLevel, memberGeneration.getPlatform(), memberGeneration.getGeneration().getId());
mashongMissionLog.incrementCurrentStatus(value);
applyTeam(memberGeneration, mission, value);
}
}

private void applyIndividual(MemberGeneration memberGeneration, MashongMission mission, Double value) {
MashongMissionLevel latestMissionLevel = getLatestMissionLevel(memberGeneration, mission);
MashongMissionLog mashongMissionLog = mashongMissionLogService.getMissionLog(latestMissionLevel, memberGeneration.getId());
mashongMissionLog.incrementCurrentStatus(value);
}

synchronized private void applyTeam(MemberGeneration memberGeneration, MashongMission mission, Double value) {
MashongMissionLevel latestMissionLevel = getLatestMissionLevel(memberGeneration.getPlatform(), memberGeneration.getGeneration().getId(), mission);
MashongMissionTeamLog mashongMissionLog = mashongMissionTeamLogService.getMissionLog(latestMissionLevel, memberGeneration.getPlatform(), memberGeneration.getGeneration().getId());
mashongMissionLog.incrementCurrentStatus(value);
}

@Transactional
public void setToValue(MissionStrategyType missionStrategyType, MemberGeneration memberGeneration, Double value) {
MashongMission mission = mashongMissionService.findMissionByStrategyType(missionStrategyType);
Expand Down

0 comments on commit 5442b2c

Please sign in to comment.