public async Task <ActionResult> ChargeOff([FromHeader(Name = "Authorization")] string JWT, Charge charge) { var admin = RightCredentials(charge.AdminId); if (admin.Result == null || !admin.Result.IsAdmin) { return(BadRequest("Вы не админ!")); } var client = _context.Cards.Where(c => c.CardCode == charge.CardCode).FirstOrDefaultAsync().Result; if (client == null) { return(NotFound("Клиент не найден")); } if (client.BonusQuantity < charge.BonusQuantity) { return new ContentResult() { StatusCode = (int)HttpStatusCode.MethodNotAllowed, Content = "Недостаточно бонусов на счете", } } ; client.BonusQuantity -= charge.BonusQuantity; _context.Entry(client).State = EntityState.Modified; await _context.SaveChangesAsync(); return(Ok()); }
public async Task <IActionResult> PutPromo(int id, Promo promo) { if (id != promo.Id) { return(BadRequest()); } _context.Entry(promo).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!PromoExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <IActionResult> PutClient([FromHeader(Name = "Authorization")] string JWT, int id, ClientRequest client) { var clientEntity = RightCredentials(id).Result; if (id != client.Id || clientEntity == null) { return(BadRequest()); } clientEntity.Birthdate = client.Birthdate; clientEntity.Name = client.Name; clientEntity.Surname = client.Surname; clientEntity.Phone = client.Phone; clientEntity.Email = client.Email; _context.Entry(clientEntity).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ClientExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
//[Authorize(Roles = Models.Client.Role)] public async Task <IActionResult> PutCard([FromHeader(Name = "Authorization")] string JWT, CardRequest card, int clientId) { var client = await RightCredentials(clientId); if (client == null) { return(BadRequest()); } var cardEntity = client.Card; if (cardEntity == null) { return(NotFound()); } cardEntity.StartDate = card.StartDate; cardEntity.EndDate = card.EndDate; cardEntity.BonusQuantity = card.BonusQuantity; _context.Entry(cardEntity).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!CardExists(cardEntity.Id)) { return(NotFound()); } else { throw; } } return(NoContent()); }