private bool SetCurrentMission(PlayerMissionDto dto) { var mission = _unitOfWork.MissionRepository.DbSet.FirstOrDefault(x => x.Name == dto.MissionName); if (mission == null) { return(false); } var player = _unitOfWork.PlayerRepository.DbSet.FirstOrDefault(x => x.User.UserName == dto.UserName); if (player == null) { return(false); } if (player.CurrentMission != null) { return(false); } player.CurrentMission = mission; _unitOfWork.Save(); return(true); }
public async Task <IHttpActionResult> SetCurrentMission(PlayerMissionDto dto) { if (User?.Identity?.Name == null) { return(Unauthorized()); } var result = await _service.SetCurrentMissionAsync(dto); if (result) { return(Ok()); } return(BadRequest()); }
public async Task <bool> SetCurrentMissionAsync(PlayerMissionDto dto) { return(await Task.Run(() => SetCurrentMission(dto))); }