public async Task <IActionResult> CreatePlannedPurchase(PlannedPurchase newPurchase)
        {
            if (newPurchase == null)
            {
                return(BadRequest("PlannedPurchase was null"));
            }

            await plannedPurchaseRepository.CreatePlannedPurchaseAsync(dtoMapper.Map <PlannedPurchaseDTO>(newPurchase));

            return(CreatedAtRoute(nameof(GetSpecificPlannedPurchase), new { listId = newPurchase.PlannedPurchase_Id }, newPurchase));
        }
        public async Task <IActionResult> UpdatePlannedPurchase(long purchaseId, PlannedPurchase purchaseToUpdate)
        {
            if (purchaseToUpdate == null)
            {
                return(BadRequest("You must provide a PlannedPurchase to update"));
            }

            if (purchaseId == purchaseToUpdate.PlannedPurchase_Id)
            {
                return(BadRequest("A matching purchase ID must be provided"));
            }

            PlannedPurchaseDTO checkPurchase = await plannedPurchaseRepository.GetPlannedPurchaseByIdAsync(purchaseId);

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

            await plannedPurchaseRepository.UpdatePlannedPurchaseAsync(dtoMapper.Map <PlannedPurchaseDTO>(purchaseToUpdate));

            return(Ok());
        }