Exemple #1
0
        public async Task <ShelterStock> Update(ShelterStock shelterStock)
        {
            _context.Entry <ShelterStock>(shelterStock).State = EntityState.Modified;
            _context.SaveChanges();

            return(shelterStock);
        }
Exemple #2
0
        public async Task <ShelterStock> Create(ShelterStock shelterStock)
        {
            _context.ShelterStocks.Add(shelterStock);
            _context.SaveChanges();

            return(shelterStock);
        }
        public ResultViewModel Create(CreateTransactionViewModel model)
        {
            var create = false;
            var stock  = _stockRepository.GetStock(model.ShelterId, model.ResourceId).Result;

            if (stock == null)
            {
                create           = true;
                stock            = new ShelterStock();
                stock.ShelterId  = model.ShelterId;
                stock.ResourceId = model.ResourceId;
                stock.CreatedAt  = DateTime.Now;
                stock.UpdatedAt  = DateTime.Now;
                stock.Quantity   = 0;
            }
            var transaction = new Transaction();

            transaction.Type          = model.Type;
            transaction.QuantityMoved = model.QuantityMoved;


            transaction.InitialBalance = stock.Quantity;
            if (transaction.Type == TransactionEnums.Type.Acquire)
            {
                transaction.FinalBalance = Convert.ToInt32(Math.Abs(model.QuantityMoved)) + transaction.InitialBalance;
            }
            else
            {
                transaction.FinalBalance = Convert.ToInt32(Math.Abs(model.QuantityMoved)) - transaction.InitialBalance;
            }

            stock.Quantity         = transaction.FinalBalance;
            transaction.ShelterId  = model.ShelterId;
            transaction.ResourceId = model.ShelterId;
            transaction.SurvivorId = model.SurvivorId;
            transaction.CreatedAt  = DateTime.Now;
            if (create)
            {
                _stockRepository.Create(stock);
            }
            else
            {
                _stockRepository.Update(stock);
            }

            var newTransaction = _repository.Create(transaction).Result;

            return(new ResultViewModel
            {
                Success = true,
                Message = "Transacao feita com sucesso!",
                Data = newTransaction
            });
        }
 public IActionResult UpdateShelterStock([FromBody] ShelterStock shelterStock)
 {
     try
     {
         return(Ok(_service.Update(shelterStock)));
     }
     catch (Exception ex)
     {
         var e = ex.GetBaseException();
         return(BadRequest(new { msg = e.Message }));
     }
 }
 public ShelterStock Update(ShelterStock shelterStock)
 {
     return(_repository.Update(shelterStock).Result);
 }