Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public String checarCpf(){
- String cpf = request.getParameter("cpfParametro");
- Long id = null;
- try{
- String idTeste = request.getParameter("id");
- if(idTeste!=null && !idTeste.equals("")){
- id = Long.parseLong(request.getParameter("id"));
- }
- } catch(Exception e){
- System.out.println("não é um número");
- }
- if(checarCpf(cpf, id)){
- request.setAttribute("retornoAjax", true);
- return "erroLogin";
- }
- else {
- request.setAttribute("html", false);
- return "html";
- }
- }
- public Boolean checarCpf(String cpf, Long id){
- boolean erro = false;
- if(cpf!=null){
- Filtro filtro = new Filtro();
- filtro.setClazz(ClienteTO.class);
- filtro.setActionContext(ActionContext.getContext());
- ClienteTO exampleCpf = new ClienteTO();
- exampleCpf.setRemovido(false);
- exampleCpf.setCpf(cpf.replace(".", "").replace("-", "").replace("/", ""));
- filtro.setExample(exampleCpf);
- List<ClienteTO> listCpf = mgr.getList(filtro);
- for(int k = 0; k < listCpf.size(); k++) {
- if(listCpf.get(k).getRepetido() != null && listCpf.get(k).getRepetido() == true) {
- listCpf.remove(k);
- k--;
- }
- }
- if(listCpf.size() > 0) {
- if(listCpf.get(0).getAtivo() == false) {
- request.setAttribute("contaInativa", true);
- erro = true;
- }
- // Loja: MMM, Cliente: MMM
- if(id == null && (request.getParameter("parceria") == null || request.getParameter("parceria").equals("")) && (listCpf.get(0).getParceria() == null || listCpf.get(0).getParceria().equals(""))) {
- request.setAttribute("mesmaLoja", mascararEmail(listCpf.get(0).getEmail()));
- session.put("emailSessao", listCpf.get(0).getEmail());
- erro = true;
- }
- // Loja: MC, Cliente: MC
- else if(id == null && request.getParameter("parceria") != null && request.getParameter("parceria").equals("minhacasa") && listCpf.get(0).getParceria() != null && listCpf.get(0).getParceria().equals("minhacasa")) {
- request.setAttribute("mesmaLoja", mascararEmail(listCpf.get(0).getEmail()));
- session.put("emailSessao", listCpf.get(0).getEmail());
- erro = true;
- }
- // Loja: MMM, Cliente: MC
- else if(id == null && (request.getParameter("parceria") == null || request.getParameter("parceria").equals("")) && listCpf.get(0).getParceria()!= null && listCpf.get(0).getParceria().equals("minhacasa")) {
- request.setAttribute("lojaDiferente", mascararEmail(listCpf.get(0).getEmail()));
- session.put("emailSessao", listCpf.get(0).getEmail());
- erro = true;
- }
- // Loja: MC, Cliente: MMM
- else if(id == null && request.getParameter("parceria") != null && request.getParameter("parceria").equals("minhacasa") && (listCpf.get(0).getParceria() == null || listCpf.get(0).getParceria().equals(""))) {
- request.setAttribute("lojaDiferente", mascararEmail(listCpf.get(0).getEmail()));
- session.put("emailSessao", listCpf.get(0).getEmail());
- erro = true;
- }
- if(id != null && (listCpf.get(0).getAtivo() == null || listCpf.get(0).getAtivo() == true)) {
- long y = listCpf.get(0).getId();
- if(id != y) {
- request.setAttribute("cpfAtribuido", listCpf.get(0).getCpf());
- erro = true;
- }
- }
- }
- }
- return erro;
- }
- public String checarEmail(){
- String email = request.getParameter("emailParametro");
- Long id = null;
- try{
- String idTeste = request.getParameter("id");
- if(idTeste!=null && !idTeste.equals("")){
- id = Long.parseLong(request.getParameter("id"));
- }
- } catch(Exception e){
- System.out.println("não é um número");
- }
- if(checarEmail(email, id)){
- request.setAttribute("retornoAjax", true);
- return "erroLogin";
- }
- else {
- request.setAttribute("html", false);
- return "html";
- }
- }
- public Boolean checarEmail(String email, Long id){
- Boolean erro = false;
- Filtro filtro = new Filtro();
- filtro.setClazz(ClienteTO.class);
- filtro.setActionContext(ActionContext.getContext());
- ClienteTO exampleEmail = new ClienteTO();
- exampleEmail.setRemovido(false);
- exampleEmail.setEmail(email.trim());
- exampleEmail.setCpf(null);
- filtro.setExample(exampleEmail);
- List<ClienteTO> listEmail = mgr.getList(filtro);
- List<ClienteTO> listEmailRepetido = new ArrayList<ClienteTO>();
- for(int k = 0; k < listEmail.size(); k++) {
- if(listEmail.get(k).getRepetido() != null && listEmail.get(k).getRepetido() == true) {
- listEmailRepetido.add(listEmail.remove(k));
- k--;
- }
- }
- if(listEmail.size() > 0 && !erro) {
- if(listEmail.get(0).getAtivo() == false) {
- request.setAttribute("contaInativa", true);
- erro = true;
- }
- // Loja: MMM, Cliente: MMM
- if(id == null && (request.getParameter("parceria") == null || request.getParameter("parceria").equals("")) && (listEmail.get(0).getParceria() == null || listEmail.get(0).getParceria().equals(""))) {
- request.setAttribute("mesmaLojaEmail", listEmail.get(0).getEmail());
- erro = true;
- }
- // Loja: MC, Cliente: MC
- else if(id == null && request.getParameter("parceria") != null && request.getParameter("parceria").equals("minhacasa") && listEmail.get(0).getParceria()!= null && listEmail.get(0).getParceria().equals("minhacasa")) {
- request.setAttribute("mesmaLojaEmail", listEmail.get(0).getEmail());
- erro = true;
- }
- // Loja: MMM, Cliente: MC
- else if(id == null && (request.getParameter("parceria") == null || request.getParameter("parceria").equals("")) && listEmail.get(0).getParceria()!= null && listEmail.get(0).getParceria().equals("minhacasa")) {
- request.setAttribute("lojaDiferenteEmail", listEmail.get(0).getEmail());
- erro = true;
- }
- // Loja: MC, Cliente: MMM
- else if(id == null && request.getParameter("parceria") != null && request.getParameter("parceria").equals("minhacasa") && (listEmail.get(0).getParceria() == null || listEmail.get(0).getParceria().equals(""))) {
- request.setAttribute("lojaDiferenteEmail", listEmail.get(0).getEmail());
- erro = true;
- }
- if(id != null && (listEmail.get(0).getAtivo() == null || listEmail.get(0).getAtivo() == true)) {
- long idList;
- // FIXME Isto não deveria ser feito antes de tudo igual no cpf?
- for(int k = 0; k < listEmail.size(); k++){
- idList = listEmail.get(k).getId();
- //if((listEmail.get(k).getRepetido() != null && listEmail.get(k).getRepetido() == true) || id == idList) {
- if (id == idList) {
- listEmail.remove(k);
- k--;
- }
- }
- if(listEmail.size() > 0) {
- //TODO para saber de onde este email ve,: listEmail.get(0).getEmail(), so que vale fazer para todos
- request.setAttribute("emailAtribuido", listEmail.get(0).getEmail());
- erro = true;
- }
- }
- }
- // Caso alguém retome a usar um e-mail que esta repetido, estrague este e-mail concatenando um ponto para não influenciar negativamente no login de ambos.
- for(int k = 0; k < listEmailRepetido.size(); k++){
- ClienteTO aux;
- //if(listEmailRepetido.get(k).getEmail() != null && listEmailRepetido.get(k).getEmail().equals(cliente.getEmail().trim()) && listEmailRepetido.get(k).getRepetido() != null && listEmailRepetido.get(k).getRepetido() == true){
- aux = listEmailRepetido.get(k);
- aux.setEmail(aux.getEmail().concat("."));
- mgr.save(aux);
- //}
- }
- return erro;
- }
- public String save(){
- ClienteTO cliente = (ClienteTO)base;
- ((HttpServletResponse)response).setHeader("P3P","CP='IDC DSP COR CURa ADMa OUR IND PHY ONL COM STA'");
- String osklen = (String) ((SessionMap)getSession()).get("osklen");
- if(osklen != null && osklen.equals("true"))
- ((SessionMap)getSession()).put("manterOsklen", "true");
- String twitter = cliente.getTwitter().replaceAll("[\\s|\\n]+", "");
- String facebook = cliente.getFacebook().replaceAll("[\\s|\\n]+", "");
- //Caso facebook e twitter não tenham sido preenchidos
- if(twitter.equals("@") || twitter.equals("") || twitter.isEmpty()) {
- cliente.setTwitter(null);
- }
- if(facebook.equals("http://") || facebook.equals("") || facebook.isEmpty()){
- cliente.setFacebook(null);
- }
- boolean erro = false;
- erro = checarCpf(cliente.getCpf(), cliente.getId());
- if(!erro){
- checarEmail(cliente.getEmail(), cliente.getId());
- }
- if(erro) {
- return "input";
- }
- cliente.setLogin(cliente.getEmail());
- if(!Validador.validarCep(cliente.getEndereco().getCep())) {
- //erro ->> cep esta errado
- request.setAttribute("erroEmail", "cep");
- return "input";
- }
- else {
- String senha = cliente.getSenha();
- if( cliente.getId() == null ||
- cliente.getId() != null && !cliente.getSenha().equals( ((ClienteTO)mgr.get(cliente.getId().toString())).getSenha() )) {
- senha = Md5.getHash(senha);
- cliente.setSenha(senha);
- cliente.setConfirmacao(senha);
- }
- }
- cliente = tratInput(cliente);
- if( cliente.getId() == null ) {
- cliente.setFuncionarioGrupo(Boolean.FALSE);
- cliente.setConfirmadoErp(Boolean.TRUE);
- cliente.setIp(request.getRemoteAddr());
- if(((HttpServletRequest) request).getServletPath().contains("/minhacasa")){
- cliente.setParceria("minhacasa");
- }
- }
- ProfissaoTO profissao = null;
- if(cliente.getProfissao() != null && cliente.getProfissao().getId() != null) {
- profissao = (ProfissaoTO)mgrProfissao.get(cliente.getProfissao().getId().toString());
- if (profissao!=null && (profissao.getAceitaOutro()==null || !profissao.getAceitaOutro()))
- cliente.setOutraProfissaoDescricao(null);
- }
- else
- cliente.setOutraProfissaoDescricao(null);
- OrigemClienteTO origemCliente = null;
- if (cliente.getOrigemCliente() != null && cliente.getOrigemCliente().getId() != null) {
- origemCliente = (OrigemClienteTO)mgrOrigemCliente.get(cliente.getOrigemCliente().getId().toString());
- if (origemCliente!=null && (origemCliente.getAceitaOutro()==null || !origemCliente.getAceitaOutro()))
- cliente.setOutraOrigemDescricao(null);
- }
- else
- cliente.setOutraOrigemDescricao(null);
- cliente.setProfissao(profissao);
- cliente.setOrigemCliente(origemCliente);
- if((cliente.getTipoPessoa().equals(ClienteTO.TIPO_PESSOA_FISICA) && !Validador.validarCpf(cliente.getCpf()))) {
- //erro ->> cpf inválido
- request.setAttribute("erroEmail", "cpf");
- return "input";
- } else if ((cliente.getTipoPessoa().equals(ClienteTO.TIPO_PESSOA_JURIDICA) && !Validador.validarCnpj(cliente.getCpf()))) {
- //erro ->> cnpj inválido
- request.setAttribute("erroEmail", "cnpj");
- return "input";
- }
- //Tirando a máscara do CPF pra salvar apenas numeros
- cliente.setCpf(cliente.getCpf().replace(".", "").replace("-", "").replace("/", ""));
Advertisement
Add Comment
Please, Sign In to add comment