public async Task <IActionResult> BuyEquipment([FromBody] ApiEquipment equipment) { var user = await _userManager.GetUserAsync(User); var result = await _equipmentService.BuyEquipmentForUser(equipment, user.UserName); return(Ok(result)); }
public async Task <string> BuyEquipmentForUser(ApiEquipment equipment, string userName) { var account = await _accountRepository.getUserByUsername(userName); if (account.AccountStatistics.Gold < equipment.Cost) { return("Insufficient gold!"); } Equipment equip = await GetEquipmentFromDB(equipment); EquipmentOwned equipOwned = CreateEquipmentForAccount(userName, equip); await _equipmentRepository.BuyEquipmentForAccount(equipOwned); return("Equipment successfully added to your collection!"); }
private async Task <Equipment> GetEquipmentFromDB(ApiEquipment equipment) { return(await _equipmentRepository.getEquipmentByName(equipment.Name)); }
public static Equipment converToDbModel(ApiEquipment ApiModel) { return(new Equipment { Name = ApiModel.Name, Avatar = ApiModel.Avatar, Cost = ApiModel.Cost, Icon = ApiModel.Icon, Description = ApiModel.Description }); }