public async Task <ActionResult <Models.Response.ChecklistResponse> > AdicionarChecklistAsync(Models.Request.ChecklistRequest req)
        {
            try
            {
                Models.TbUsuario tbUsuario = await usuarioBsn.ConsultarUsuarioPorIdLoginAsync(req.IdLogin);

                Models.TbCartao tbCartao = cartaoCnv.ToTbCartaoCheck(req, tbUsuario);

                tbCartao = await cartaoBsn.CadastrarCartaoTarefaAsync(tbCartao);

                Models.TbChecklist tbChecklist = checklistCnv.ToTbChecklist(req, tbCartao);

                tbChecklist = await checklistBsn.AdicionarChecklistAsync(tbChecklist);

                Models.Response.ChecklistResponse resp = checklistCnv.ToChecklistResponse(tbChecklist);

                return(resp);
            }
            catch (Exception e)
            {
                return(BadRequest(
                           new Models.Response.ErroResponse(400, e.Message)
                           ));
            }
        }
        public Models.Response.ChecklistResponse ToChecklistResponse(Models.TbChecklist tb)
        {
            Models.Response.ChecklistResponse resp = new Models.Response.ChecklistResponse();

            resp.IdChecklist   = tb.IdChecklist;
            resp.NomeChecklist = tb.NmChecklist;

            return(resp);
        }
        public async Task <ActionResult <Models.Response.ChecklistResponse> > DeletarChecklistAsync(int idChecklist)
        {
            try
            {
                Models.TbChecklist tbChecklist = await checklistBsn.ConsultarChecklistPorIdAsync(idChecklist);

                tbChecklist = await checklistBsn.DeletarChecklistAsync(tbChecklist);

                Models.Response.ChecklistResponse resp = checklistCnv.ToChecklistResponse(tbChecklist);

                return(resp);
            }
            catch (Exception e)
            {
                return(BadRequest(
                           new Models.Response.ErroResponse(400, e.Message)
                           ));
            }
        }
        public Models.Response.ChecklistsResponse ToChecklistsResponse(List <Models.TbChecklist> tbs)
        {
            Models.Response.ChecklistsResponse resps = new Models.Response.ChecklistsResponse();

            List <Models.Response.ChecklistResponse> checklists = new List <Models.Response.ChecklistResponse>();

            foreach (Models.TbChecklist tb in tbs)
            {
                Models.Response.ChecklistResponse check = new Models.Response.ChecklistResponse();

                check.IdChecklist   = tb.IdChecklist;
                check.NomeChecklist = tb.NmChecklist;

                checklists.Add(check);
            }

            resps.Checklists = checklists;

            return(resps);
        }
        public async Task <ActionResult <Models.Response.ChecklistResponse> > AlterarChecklistAsync(int idChecklist, Models.Request.ChecklistRequest req)
        {
            try
            {
                Models.TbChecklist tbChecklistAtual = await checklistBsn.ConsultarChecklistPorIdAsync(idChecklist);

                Models.TbCartao tbCartao = await cartaoBsn.ConsultarCartaoTarefaPorIdAsync(tbChecklistAtual.IdCartao);

                Models.TbChecklist tbChecklistNovo = checklistCnv.ToTbChecklist(req, tbCartao);

                tbChecklistAtual = await checklistBsn.AlterarChecklistAsync(tbChecklistAtual, tbChecklistNovo);

                Models.Response.ChecklistResponse resp = checklistCnv.ToChecklistResponse(tbChecklistAtual);

                return(resp);
            }
            catch (Exception e)
            {
                return(BadRequest(
                           new Models.Response.ErroResponse(400, e.Message)
                           ));
            }
        }