Exemplo n.º 1
0
        public async Task <IActionResult> UpdatePurchase(int id, SavePurchaseResource savePurchase)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var purchase = await repository.GetPurchase(id);


            if (purchase == null)
            {
                return(NotFound());
            }


            mapper.Map <Purchase, PurchaseResource>(purchase);

            purchase.LastUpdatedDate = DateTime.Now;


            await unitOfWork.CompleteAsync();

            var result = mapper.Map <Purchase, PurchaseResource>(purchase);



            return(Ok(result));
        }
Exemplo n.º 2
0
        public async Task <IActionResult> CreatePurchase([FromBody] SavePurchaseResource savePurchase)

        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }


            /*
             * var model = await context.myDbAccts.FindAsync(purchaseResource.accId);
             *
             * if (model == null)
             * {
             *  ModelState.AddModelError("Account Id", "Invalid Account Id");
             *  return BadRequest(ModelState);
             *
             * }
             */

            /*
             * Buisness role validation;
             *
             * if(true)
             * {
             *  ModelState.AddModelError("....", "ErrorMessage");
             *  return BadRequest(ModelState);
             *
             * }
             */

            var purchase = mapper.Map <SavePurchaseResource, Purchase>(savePurchase);

            purchase.LastUpdatedDate = DateTime.Now;

            repository.Add(purchase);



            //foreach (var item in purchaseResource.purchaseItems)
            //{
            //    context.purchaseItems.Add(item);

            //}


            await unitOfWork.CompleteAsync();

            purchase = await repository.GetPurchase(purchase.purchId);

            var result = mapper.Map <Purchase, PurchaseResource>(purchase);



            return(Ok(result));
        }
Exemplo n.º 3
0
        public async Task <IActionResult> PutAsync(int id, [FromBody] SavePurchaseResource resource)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.GetErrorMessages()));
            }

            var purchase = _mapper.Map <SavePurchaseResource, Purchase>(resource);
            var result   = await _purchaseService.UpdateAsync(id, purchase);

            if (!result.Success)
            {
                return(BadRequest(result.Message));
            }

            return(Ok(_mapper.Map <Purchase, PurchaseResource>(result.Resource)));
        }
Exemplo n.º 4
0
        public async Task <ActionResult <Purchase> > CreatePurchase([FromBody] SavePurchaseResource purchase)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                var retailer = await _retailerService.GetRetailerByDocumentId(purchase.RetailerDocumentId);

                if (retailer == null)
                {
                    return(NotFound("O(a) revendedor(a) não foi encontrado(a) pelo CPF informado. Favor checar"));
                }

                purchase.Retailer = retailer;

                if (!DateTime.TryParseExact(purchase.Date, "dd/MM/yyyy",
                                            CultureInfo.InvariantCulture,
                                            DateTimeStyles.None,
                                            out var result))
                {
                    DateTime.TryParse(purchase.Date, out result);
                }

                purchase.Date = result.ToShortDateString();

                var purchaseToCreate = _mapper.Map <SavePurchaseResource, Purchase>(purchase);

                var newPurchase = await _purchaseService.CreatePurchase(purchaseToCreate);

                var createdPurchase = await _purchaseService.GetPurchaseById(newPurchase.Id);

                var purchaseResource = _mapper.Map <Purchase, PurchaseResource>(createdPurchase);

                return(Ok(new { retorno = "Compra cadastrada com sucesso!", purchaseResource }));
            }
            catch (ArgumentException ex)
            {
                var statusCode = (int)HttpStatusCode.InternalServerError;
                _logger.LogError($"StatusCode: {statusCode}. Erro: {ex.Message}");
                return(StatusCode(statusCode, ex.Message));
            }
        }
        public async Task <IActionResult> PostAsync([FromBody] SavePurchaseResource resource)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.GetErrorMessages()));
            }

            var purchase = _mapper.Map <SavePurchaseResource, Purchase>(resource);
            var result   = await _purchaseService.SaveAsync(purchase);

            if (!result.Sucess)
            {
                return(BadRequest(result.Message));
            }

            var companyResource = _mapper.Map <Purchase, PurchaseResource>(result.Purchase);

            return(Ok(companyResource));
        }
Exemplo n.º 6
0
        public async Task <IActionResult> PostAsync([FromBody] SavePurchaseResource resource)
        {
            if (!ModelState.IsValid)                                         //if body is balid
            {
                return(BadRequest(ModelState.GetErrorMessages()));
            }

            var purchase = _mapper.Map <SavePurchaseResource, Purchase>(resource); //create instance of purchase
            var result   = await _purchaseService.SaveAsync(purchase);             //save instance

            if (!result.Success)
            {
                return(BadRequest(result.Message));
            }

            var PurchaseResource = _mapper.Map <Purchase, PurchaseResource>(result.Purchase);

            return(Ok(PurchaseResource));
        }