예제 #1
0
        public JsonResult Excluir(long Id)
        {
            if (Id == 0)
            {
                List <string> erros = (from item in ModelState.Values
                                       from error in item.Errors
                                       select error.ErrorMessage).ToList();

                Response.StatusCode = 400;
                return(Json(string.Join(Environment.NewLine, erros)));
            }
            else
            {
                BoBeneficiario boBeneficiario = new BoBeneficiario();
                boBeneficiario.Excluir(Id);

                Response.StatusCode = 200;
                return(Json("Cadastro excluído com sucesso"));
            }
        }
예제 #2
0
        public JsonResult Deletar(long Id)
        {
            BoBeneficiario bo = new BoBeneficiario();

            if (!this.ModelState.IsValid)
            {
                List <string> erros = (from item in ModelState.Values
                                       from error in item.Errors
                                       select error.ErrorMessage).ToList();

                Response.StatusCode = 400;
                return(Json(string.Join(Environment.NewLine, erros)));
            }
            else
            {
                bo.Excluir(Id);

                return(Json("Excluído com sucesso"));
            }
        }
예제 #3
0
        public JsonResult ExcluirBeneficiario(string id)
        {
            var bo        = new BoBeneficiario();
            var boCliente = new BoCliente();

            if (!ModelState.IsValid)
            {
                var erros = (from item in ModelState.Values
                             from error in item.Errors
                             select error.ErrorMessage).ToList();

                Response.StatusCode = 400;
                return(Json(string.Join(Environment.NewLine, erros)));
            }
            else
            {
                var beneficiario = bo.Consultar(Convert.ToInt64(id));
                if (beneficiario != null)
                {
                    var idCliente = beneficiario.IdCliente;
                    bo.Excluir(Convert.ToInt64(id));
                    ViewBag.IdCliente = idCliente;
                    var cliente = boCliente.Consultar(idCliente);
                    ViewBag.Beneficiarios = cliente.Beneficiarios.Count > 0
                    ? cliente.Beneficiarios.Select(p => new BeneficiarioModel
                    {
                        CPF       = p.CPF,
                        Id        = p.Id,
                        IdCliente = p.IdCliente,
                        Nome      = p.Nome
                    }).ToList()
                    : new List <BeneficiarioModel>();
                }

                return(Json("Cadastro removido com sucesso"));
            }
        }
        public JsonResult Alterar(ClienteModel model)
        {
            BoCliente      boCliente      = new BoCliente();
            BoBeneficiario boBeneficiario = new BoBeneficiario();

            if (!this.ModelState.IsValid)
            {
                List <string> erros = (from item in ModelState.Values
                                       from error in item.Errors
                                       select error.ErrorMessage).ToList();

                Response.StatusCode = 400;
                return(Json(string.Join(Environment.NewLine, erros)));
            }
            else
            {
                var cpfJaExiste = boCliente.VerificarExistencia(model.CPF, model.Id);
                if (cpfJaExiste)
                {
                    Response.StatusCode = 400;
                    return(Json("CPF já existe"));
                }

                boCliente.Alterar(new Cliente()
                {
                    Id            = model.Id,
                    CEP           = model.CEP,
                    Cidade        = model.Cidade,
                    Email         = model.Email,
                    Estado        = model.Estado,
                    Logradouro    = model.Logradouro,
                    Nacionalidade = model.Nacionalidade,
                    Nome          = model.Nome,
                    Sobrenome     = model.Sobrenome,
                    Telefone      = model.Telefone,
                    CPF           = model.CPF
                });

                if (model.Beneficiarios?.Count > 0)
                {
                    foreach (var beneficiario in model.Beneficiarios)
                    {
                        if (beneficiario.Id > 0)
                        {
                            if (beneficiario.Excluido)
                            {
                                boBeneficiario.Excluir(beneficiario.Id);
                            }
                            else
                            {
                                boBeneficiario.Alterar(new Beneficiario()
                                {
                                    Id   = beneficiario.Id,
                                    Nome = beneficiario.Nome,
                                    CPF  = beneficiario.CPF
                                });
                            }
                        }
                        else
                        {
                            boBeneficiario.Incluir(new Beneficiario()
                            {
                                Nome      = beneficiario.Nome,
                                CPF       = beneficiario.CPF,
                                IdCliente = model.Id
                            });
                        }
                    }
                }

                return(Json("Cadastro alterado com sucesso"));
            }
        }
        public ActionResult Alterar(string list, string idCliente)
        {
            List <Beneficiario> registrosAlterados = new List <Beneficiario>();
            List <Beneficiario> beneficiarios      = new BoBeneficiario().Listar(long.Parse(idCliente));


            JArray array = JArray.Parse(list);

            foreach (JObject obj in array.Children <JObject>())
            {
                BeneficiarioModel model = new BeneficiarioModel();

                foreach (JProperty singleProp in obj.Properties())
                {
                    string name = singleProp.Name;

                    switch (name)
                    {
                    case "id":
                        model.Id = singleProp.Value.ToString() == "" ? 0 : long.Parse(singleProp.Value.ToString());
                        break;

                    case "cpf":
                        model.CPF = singleProp.Value.ToString();
                        break;

                    case "nome":
                        model.Nome = singleProp.Value.ToString();
                        break;
                    }
                }
                model.IdCliente = long.Parse(idCliente);

                BoBeneficiario bo = new BoBeneficiario();

                if (!this.ModelState.IsValid)
                {
                    List <string> erros = (from item in ModelState.Values
                                           from error in item.Errors
                                           select error.ErrorMessage).ToList();

                    Response.StatusCode = 400;
                    return(Json(string.Join(Environment.NewLine, erros)));
                }
                else
                {
                    if (model.Id != 0)
                    {
                        bo.Alterar(new Beneficiario()
                        {
                            Id        = model.Id,
                            Nome      = model.Nome,
                            IdCliente = model.IdCliente,
                            CPF       = model.CPF.Replace(".", "").Replace("-", "")
                        });
                    }
                    else
                    {
                        model.Id = bo.Incluir(new Beneficiario()
                        {
                            Nome      = model.Nome,
                            IdCliente = model.IdCliente,
                            CPF       = model.CPF.Replace(".", "").Replace("-", "")
                        });
                    }

                    registrosAlterados.Add(new Beneficiario()
                    {
                        Id        = model.Id,
                        Nome      = model.Nome,
                        IdCliente = model.IdCliente,
                        CPF       = model.CPF.Replace(".", "").Replace("-", "")
                    });
                }
            }

            var Excluidos = beneficiarios.Where(x => !registrosAlterados.Any(z => z.Id == x.Id)).ToList();

            foreach (Beneficiario excluido in Excluidos)
            {
                BoBeneficiario bo = new BoBeneficiario();
                bo.Excluir(excluido.Id);
            }

            return(Json("Cadastro alterado com sucesso"));
        }
        public JsonResult Alterar(ClienteModel model)
        {
            BoCliente bo = new BoCliente();

            if (!this.ModelState.IsValid)
            {
                List <string> erros = (from item in ModelState.Values
                                       from error in item.Errors
                                       select error.ErrorMessage).ToList();

                Response.StatusCode = 400;
                return(Json(string.Join(Environment.NewLine, erros)));
            }
            else
            {
                try
                {
                    bool BeneficiarioValido = true;

                    if (!(model.Beneficiarios == null))
                    {
                        foreach (BeneficiarioModel beneficiario in model.Beneficiarios)
                        {
                            if (!IsCpf(beneficiario.CPF))
                            {
                                BeneficiarioValido = false;
                            }
                        }
                    }
                    if (IsCpf(model.CPF) && BeneficiarioValido)
                    {
                        bo.Alterar(new Cliente()
                        {
                            Id            = model.Id,
                            CEP           = model.CEP,
                            Cidade        = model.Cidade,
                            Email         = model.Email,
                            Estado        = model.Estado,
                            Logradouro    = model.Logradouro,
                            Nacionalidade = model.Nacionalidade,
                            Nome          = model.Nome,
                            Sobrenome     = model.Sobrenome,
                            CPF           = model.CPF,
                            Telefone      = model.Telefone
                        });

                        BoBeneficiario boBen = new BoBeneficiario();
                        boBen.Excluir(model.Id);
                        if (!(model.Beneficiarios == null))
                        {
                            foreach (BeneficiarioModel beneficiario in model.Beneficiarios)
                            {
                                boBen.Incluir(new Beneficiario()
                                {
                                    CPF       = beneficiario.CPF,
                                    Nome      = beneficiario.Nome,
                                    IdCliente = model.Id
                                });
                            }
                        }
                    }
                    else
                    {
                        throw new Exception("CPF Inválido");
                    }
                }
                catch (Exception ex)
                {
                    List <string> erros = new List <string>();
                    erros.Add(ex.Message);
                    Response.StatusCode = 400;
                    return(Json(string.Join(Environment.NewLine, erros)));
                }

                return(Json("Cadastro alterado com sucesso"));
            }
        }
        public JsonResult Alterar(ClienteModel model)
        {
            BoCliente bo = new BoCliente();

            if (!this.ModelState.IsValid)
            {
                List <string> erros = (from item in ModelState.Values
                                       from error in item.Errors
                                       select error.ErrorMessage).ToList();

                Response.StatusCode = 400;
                return(Json(string.Join(Environment.NewLine, erros)));
            }
            else
            {
                bo.Alterar(new Cliente()
                {
                    Id            = model.Id,
                    CEP           = model.CEP,
                    Cidade        = model.Cidade,
                    Email         = model.Email,
                    Estado        = model.Estado,
                    Logradouro    = model.Logradouro,
                    Nacionalidade = model.Nacionalidade,
                    Nome          = model.Nome,
                    Sobrenome     = model.Sobrenome,
                    Telefone      = model.Telefone,
                    CPF           = model.CPF
                });

                BoBeneficiario boBenefi = new BoBeneficiario();

                if (model.Beneficiarios != null)
                {
                    string strCpf = "";

                    dynamic dynBenefi = Newtonsoft.Json.JsonConvert.DeserializeObject(model.Beneficiarios);

                    boBenefi.Excluir(model.Id);

                    foreach (var objBenefi in dynBenefi)
                    {
                        if (boBenefi.VerificarExistencia(objBenefi.cpf.ToString(), model.Id))
                        {
                            strCpf += objBenefi.cpf.ToString() + "<br>";
                        }
                        else
                        {
                            boBenefi.Incluir(new Beneficiario()
                            {
                                CPF       = objBenefi.cpf.ToString(),
                                Nome      = objBenefi.nome.ToString(),
                                IdCliente = model.Id
                            });
                        }
                    }

                    if (strCpf.Length > 0)
                    {
                        return(Json(new { Result = false, Message = "Cadastro do Cliente alterado com sucesso.<br><br>Porém, Beneficiários com os CPF abaixo já exitem:<br><br>" + strCpf }));
                    }
                }
                else
                {
                    boBenefi.Excluir(model.Id);
                }

                return(Json(new { Result = true, Message = "Cadastro alterado com sucesso" }));
            }
        }
        public JsonResult Alterar(ClienteModel model)
        {
            BoCliente      bo    = new BoCliente();
            BoBeneficiario boBen = new BoBeneficiario();

            if (!this.ModelState.IsValid)
            {
                List <string> erros = (from item in ModelState.Values
                                       from error in item.Errors
                                       select error.ErrorMessage).ToList();

                Response.StatusCode = 400;
                return(Json(string.Join(Environment.NewLine, erros)));
            }
            else
            {
                if (!ValidaDigitoCPF.Valida(model.CPF))
                {
                    Response.StatusCode = 400;
                    return(Json("CPF inválido"));
                }
                if (bo.VerificarExistencia(model.CPF) && cli.CPF != model.CPF)
                {
                    Response.StatusCode = 400;
                    return(Json("Já existe um cliente cadastrado com este CPF"));
                }
                bo.Alterar(new Cliente()
                {
                    Id            = model.Id,
                    CPF           = ValidaDigitoCPF.RemoveCaracte(model.CPF),
                    CEP           = model.CEP,
                    Cidade        = model.Cidade,
                    Email         = model.Email,
                    Estado        = model.Estado,
                    Logradouro    = model.Logradouro,
                    Nacionalidade = model.Nacionalidade,
                    Nome          = model.Nome,
                    Sobrenome     = model.Sobrenome,
                    Telefone      = model.Telefone
                });
                foreach (var benModel in model.Beneficiarios)
                {
                    var ben = cli.Beneficiarios.FirstOrDefault(p => p.CPF == benModel.CPF);
                    if (ben != null)
                    {
                        //Se existe alterar
                        boBen.Alterar(new Beneficiario()
                        {
                            Id   = ben.Id,
                            CPF  = ValidaDigitoCPF.RemoveCaracte(ben.CPF),
                            Nome = benModel.Nome
                        });
                    }
                    else
                    {
                        //Se não existe inclui
                        boBen.Incluir(new Beneficiario()
                        {
                            CPF       = ValidaDigitoCPF.RemoveCaracte(benModel.CPF),
                            Nome      = benModel.Nome,
                            IdCliente = model.Id
                        });
                    }
                }
                foreach (var cliModel in cli.Beneficiarios)
                {
                    var ben = model.Beneficiarios.FirstOrDefault(p => p.CPF == cliModel.CPF);
                    if (ben == null)
                    {
                        //cliModel.Id EXLUIR
                        boBen.Excluir(cliModel.Id);
                    }
                }


                return(Json("Cadastro alterado com sucesso"));
            }
        }
        public string ManipulaBeneficiarios(List <BeneficiarioModel> beneficiarios, long clienteId)
        {
            BoBeneficiario           boBeneficiario       = new BoBeneficiario();
            BoValidarCPF             boValidarCPF         = new BoValidarCPF();
            List <BeneficiarioModel> beneficiarioAlterado = new List <BeneficiarioModel>();
            List <long> beneficiariosModelIds             = new List <long>();
            List <long> beneficiariosDelIds = new List <long>();
            List <long> beneficiariosIds    = new List <long>();

            List <Beneficiario> listBeneficiarios = new BoBeneficiario().Pesquisar(clienteId);

            beneficiarios.ForEach(item => beneficiariosModelIds.Add(item.Id));
            beneficiarioAlterado = beneficiarios.Where(w => w.Alterado).ToList();

            if (listBeneficiarios.Count > 0)
            {
                beneficiariosDelIds = listBeneficiarios.Where(w => !beneficiariosModelIds.Contains(w.Id)).Select(x => x.Id).ToList();
                beneficiariosIds    = listBeneficiarios.Where(w => beneficiariosModelIds.Contains(w.Id)).Select(x => x.Id).ToList();
            }

            if (beneficiariosDelIds.Count > 0)
            {
                beneficiariosDelIds.ForEach(id => boBeneficiario.Excluir(id));
            }
            if (beneficiarios.Count > 0)
            {
                beneficiarioAlterado.ForEach(
                    beneficiario => boBeneficiario.Alterar(
                        new Beneficiario()
                {
                    Id        = beneficiario.Id,
                    IdCliente = beneficiario.IdCliente,
                    Nome      = beneficiario.Nome,
                    CPF       = beneficiario.CPF
                }
                        )
                    );
            }

            foreach (var beneficiario in beneficiarios)
            {
                if (!beneficiariosIds.Contains(beneficiario.Id))
                {
                    if (!boValidarCPF.ValidaCPF(beneficiario.CPF))
                    {
                        return($"Este não é um CPF valido: {beneficiario.CPF}");
                    }

                    if (boBeneficiario.VerificarExistencia(beneficiario.CPF))
                    {
                        return($"Este CPF ja esta em uso: {beneficiario.CPF}");
                    }

                    beneficiario.Id = boBeneficiario.Incluir(new Beneficiario()
                    {
                        IdCliente = clienteId,
                        Nome      = beneficiario.Nome,
                        CPF       = beneficiario.CPF
                    });
                }
            }

            return("");
        }