예제 #1
0
        public async Task <TbClientes> PutCliente(TbClientes cliente)
        {
            //VERIFICA SE CLIENTE EXISTE ANTES DE ATUALIZAR PARA NÃO PERMITIR ALTERAR O CPF PARA UM EXISTENTE
            var cliExis = await _tbClientesRepository.SelectClientes(cliente.CPF);

            if (cliExis.Count() == 0)
            {
                log.Error("Cliente não pode ser localizado!");
                throw new Exception("Cliente não pode ser localizado!");
            }

            if (cliExis.Count() > 1)
            {
                log.Error("Cliente não pode ser inserido com este CPF!");
                throw new Exception("Cliente não pode ser inserido com este CPF!");
            }
            var resp = await _tbClientesRepository.UpdateClientes(cliente);

            if (resp == false)
            {
                log.Error("Erro ao atualizar Cliente!");
                throw new Exception("Erro ao atualizar Cliente!");
            }
            var cli = await _tbClientesRepository.SelectClientes(cliente.CPF);

            return(cli.FirstOrDefault());
        }
        public async Task <bool> CreateClientes(TbClientes cliente)
        {
            int retorno = 0;

            using (IDbConnection db = new SqlConnection(stringConnection))
            {
                var parameters = new DynamicParameters();
                parameters.Add("@NOME", cliente.Nome);
                parameters.Add("@CPF", cliente.CPF);
                parameters.Add("@SEXO", cliente.Sexo);
                parameters.Add("@TIPOCLIENTE", cliente.IdTipoCLiente);
                parameters.Add("@SITCLIENTE", cliente.IdSituacaoCliente);
                parameters.Add("@OUTSTATUS", retorno);
                retorno = await db.ExecuteAsync("SP_TB_CLIENTES_CREATE", parameters,
                                                commandType : CommandType.StoredProcedure);
            }

            if (retorno > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
        public async Task <IActionResult> Edit(int id, [Bind("Id,Nome,Cpf,Aniversario,Cep,Logradouro,Nro,Complemento,Bairro,Cidade,Estado")] TbClientes tbClientes)
        {
            if (id != tbClientes.Id)
            {
                return(NotFound());
            }

            tbClientes.Cep  = tbClientes.Cep.Replace("-", "");
            tbClientes.Cpf  = tbClientes.Cpf.Replace(".", "").Replace("-", "");
            tbClientes.Nome = tbClientes.Nome.ToUpper();

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(tbClientes);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!TbClientesExists(tbClientes.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(tbClientes));
        }
        public async Task <IActionResult> Create([Bind("Id,Nome,Cpf,Aniversario,Cep,Logradouro,Nro,Complemento,Bairro,Cidade,Estado")] TbClientes tbClientes)
        {
            tbClientes.Cep  = tbClientes.Cep.Replace("-", "");
            tbClientes.Cpf  = tbClientes.Cpf.Replace(".", "").Replace("-", "");
            tbClientes.Nome = tbClientes.Nome.ToUpper();

            if (ModelState.IsValid)
            {
                _context.Add(tbClientes);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(tbClientes));
        }
예제 #5
0
        public async Task <IActionResult> Put(long id, [FromBody] TbClientes cliente)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var mod = await _itesteAPIService.PutCliente(cliente);

                    if (mod == null)
                    {
                        return(BadRequest());
                    }

                    return(Ok(mod));
                }
                return(BadRequest());
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex.Message));
            }
        }
예제 #6
0
        public async Task <TbClientes> PostCliente(TbClientes cliente)
        {
            //VERIFICA SE CPF EXISTE NO BANCO ANTES DE INSERIR
            var cliExis = await _tbClientesRepository.SelectClientes(cliente.CPF);

            if (cliExis.Count() > 0)
            {
                log.Error("Cliente não pode ser inserido, já existe um CPF Cadastrado!");
                throw new Exception("Cliente não pode ser inserido, já existe um CPF Cadastrado!");
            }

            var resp = await _tbClientesRepository.CreateClientes(cliente);

            if (resp == false)
            {
                log.Error("Erro ao inserir Cliente!");
                throw new Exception("Erro ao inserir Cliente!");
            }

            var cli = await _tbClientesRepository.SelectClientes(cliente.CPF);

            return(cli.FirstOrDefault());
        }
예제 #7
0
        public async Task <IActionResult> Delete([FromBody] TbClientes cliente)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var delCli = await _itesteAPIService.DeleteCliente(cliente.CPF);

                    if (delCli)
                    {
                        return(Ok());
                    }
                    else
                    {
                        return(NotFound());
                    }
                }
                return(NotFound());
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex.Message));
            }
        }
예제 #8
0
        public async Task <IActionResult> Post([FromBody] TbClientes cliente)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var postCli = await _itesteAPIService.PostCliente(cliente);

                    if (postCli != null)
                    {
                        return(Ok(postCli));
                    }
                    else
                    {
                        return(BadRequest());
                    }
                }
                return(BadRequest());
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex.Message));
            }
        }
예제 #9
0
        public IActionResult Create([FromBody] TbClientes Cliente)
        {
            _ClientesRepository.Add(Cliente);

            return(CreatedAtRoute("Getclientes", new{ id = Cliente.ICodClientes }, Cliente));
        }