public async Task <ActionResult <CaixaResponse> > PutAsync(long id, [FromBody] CaixaInput caixaInput)
        {
            var result = await _caixaService.UpdateCaixaAsync(id, caixaInput);

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

            return(Ok(result));
        }
        public async Task <CaixaResponse> UpdateCaixaAsync(long id, CaixaInput caixaInput)
        {
            var existingCaixa = await _caixaRepository.FindByIdAsync(id);

            if (existingCaixa == null)
            {
                return(new CaixaResponse("Friend not found"));
            }

            existingCaixa.Active = caixaInput.Status;

            try
            {
                _caixaRepository.Update(existingCaixa);
                await _unitOfWork.CompleteAsync();

                return(new CaixaResponse(existingCaixa));
            }
            catch (Exception ex)
            {
                return(new CaixaResponse($"An error occurred when updating : {ex.Message}"));
            }
        }