Rev 629 | Rev 631 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 620 | blopes | 1 | package br.com.ec.domain.dto; |
| 2 | |||
| 623 | blopes | 3 | import java.util.Date; |
| 620 | blopes | 4 | import java.util.List; |
| 5 | |||
| 625 | blopes | 6 | import javax.persistence.Transient; |
| 7 | |||
| 624 | blopes | 8 | import br.com.ec.core.util.VerificadorUtil; |
| 629 | blopes | 9 | import br.com.ec.domain.model.NpsPosVenda; |
| 624 | blopes | 10 | |
| 620 | blopes | 11 | public class PosVendaDTO { |
| 12 | |||
| 13 | // INICIAR PÓS-VENDA APÓS A REALIZAÇÃO DE UMA VENDA COM O CONTATO DO CLIENTE |
||
| 621 | blopes | 14 | // PARA FINALIZAR, AO MENOS, É PRECISO TER AS DUAS ATIVAÇÕES INICIAIS (AGRADECIMENTO+NPS ATENDIMENTO E NPS DO PRODUTO |
| 623 | blopes | 15 | |
| 621 | blopes | 16 | private Long sequencial; |
| 620 | blopes | 17 | private VendaDTO vendaDTO; |
| 623 | blopes | 18 | private ClienteDTO clienteDTO; |
| 620 | blopes | 19 | private Date dataCadastro; |
| 625 | blopes | 20 | private Date dataInicio; |
| 21 | private Date dataFinalizacao; |
||
| 627 | blopes | 22 | private String tipoFinalizacao; // A - ATENDIMENTO ENCERRADO // V - NOVA VENDA |
| 623 | blopes | 23 | private String observacao; |
| 625 | blopes | 24 | private String scriptAtivacaoAgradecimento; |
| 620 | blopes | 25 | |
| 630 | blopes | 26 | private NpsPosVendaDTO npsPosVendaAgradecimento; |
| 629 | blopes | 27 | private NpsPosVendaDTO npsPosVendaProduto; |
| 28 | |||
| 620 | blopes | 29 | private List<PosVendaAtivacaoDTO> listaAtivacoes; |
| 30 | |||
| 629 | blopes | 31 | public PosVendaDTO() {} |
| 32 | |||
| 33 | public PosVendaDTO(Long sequencial) { |
||
| 34 | this.sequencial = sequencial; |
||
| 620 | blopes | 35 | } |
| 36 | |||
| 623 | blopes | 37 | public static String CONSULTA_DTO_SIMPLES = "e.sequencial, e.venda.sequencial, e.venda.dataVenda, e.cliente.sequencial, e.cliente.nome, e.cliente.dataNascimento," |
| 627 | blopes | 38 | + "e.cliente.contato, e.cliente.telefone, e.dataCadastro, e.dataInicio, e.dataFinalizacao, e.tipoFinalizacao, e.observacao"; |
| 623 | blopes | 39 | public PosVendaDTO(Long sequencial, Long sequencialVenda, Date dataVenda, Long sequencialCliente, String nomeCliente, Date dataNascimentoCliente, |
| 627 | blopes | 40 | String contatoCliente, String telefoneCliente, Date dataCadastro, Date dataInicio, Date dataFinalizacao, String tipoFinalizacao, String observacao) { |
| 623 | blopes | 41 | super(); |
| 42 | this.sequencial = sequencial; |
||
| 43 | VendaDTO vendaDTO = new VendaDTO(sequencialVenda); |
||
| 44 | vendaDTO.setDataVenda(dataVenda); |
||
| 45 | this.vendaDTO = vendaDTO; |
||
| 46 | this.clienteDTO = new ClienteDTO(sequencialCliente, nomeCliente, dataNascimentoCliente, contatoCliente, telefoneCliente); |
||
| 47 | this.dataCadastro = dataCadastro; |
||
| 627 | blopes | 48 | this.dataInicio = dataInicio; |
| 623 | blopes | 49 | this.dataFinalizacao = dataFinalizacao; |
| 50 | this.tipoFinalizacao = tipoFinalizacao; |
||
| 627 | blopes | 51 | this.observacao = observacao; |
| 623 | blopes | 52 | } |
| 53 | |||
| 621 | blopes | 54 | public Long getSequencial() { |
| 55 | return sequencial; |
||
| 56 | } |
||
| 57 | public void setSequencial(Long sequencial) { |
||
| 58 | this.sequencial = sequencial; |
||
| 59 | } |
||
| 60 | |||
| 620 | blopes | 61 | public VendaDTO getVendaDTO() { |
| 62 | return vendaDTO; |
||
| 63 | } |
||
| 64 | public void setVendaDTO(VendaDTO vendaDTO) { |
||
| 65 | this.vendaDTO = vendaDTO; |
||
| 66 | } |
||
| 67 | |||
| 623 | blopes | 68 | public ClienteDTO getClienteDTO() { |
| 69 | return clienteDTO; |
||
| 70 | } |
||
| 71 | public void setClienteDTO(ClienteDTO clienteDTO) { |
||
| 72 | this.clienteDTO = clienteDTO; |
||
| 73 | } |
||
| 74 | |||
| 620 | blopes | 75 | public Date getDataCadastro() { |
| 76 | return dataCadastro; |
||
| 77 | } |
||
| 78 | public void setDataCadastro(Date dataCadastro) { |
||
| 79 | this.dataCadastro = dataCadastro; |
||
| 80 | } |
||
| 81 | |||
| 625 | blopes | 82 | public Date getDataInicio() { |
| 83 | return dataInicio; |
||
| 84 | } |
||
| 85 | public void setDataInicio(Date dataInicio) { |
||
| 86 | this.dataInicio = dataInicio; |
||
| 87 | } |
||
| 88 | |||
| 623 | blopes | 89 | public Date getDataFinalizacao() { |
| 90 | return dataFinalizacao; |
||
| 91 | } |
||
| 92 | public void setDataFinalizacao(Date dataFinalizacao) { |
||
| 93 | this.dataFinalizacao = dataFinalizacao; |
||
| 94 | } |
||
| 95 | |||
| 96 | public String getObservacao() { |
||
| 97 | return observacao; |
||
| 98 | } |
||
| 99 | public void setObservacao(String observacao) { |
||
| 100 | this.observacao = observacao; |
||
| 101 | } |
||
| 102 | |||
| 103 | public String getTipoFinalizacao() { |
||
| 104 | return tipoFinalizacao; |
||
| 105 | } |
||
| 106 | public void setTipoFinalizacao(String tipoFinalizacao) { |
||
| 107 | this.tipoFinalizacao = tipoFinalizacao; |
||
| 108 | } |
||
| 109 | |||
| 630 | blopes | 110 | public NpsPosVendaDTO getNpsPosVendaAgradecimento() { |
| 111 | return npsPosVendaAgradecimento; |
||
| 629 | blopes | 112 | } |
| 630 | blopes | 113 | public void setNpsPosVendaAgradecimento(NpsPosVendaDTO npsPosVendaAgradecimento) { |
| 114 | this.npsPosVendaAgradecimento = npsPosVendaAgradecimento; |
||
| 629 | blopes | 115 | } |
| 116 | |||
| 117 | public NpsPosVendaDTO getNpsPosVendaProduto() { |
||
| 118 | return npsPosVendaProduto; |
||
| 119 | } |
||
| 120 | public void setNpsPosVendaProduto(NpsPosVendaDTO npsPosVendaProduto) { |
||
| 121 | this.npsPosVendaProduto = npsPosVendaProduto; |
||
| 122 | } |
||
| 123 | |||
| 620 | blopes | 124 | public List<PosVendaAtivacaoDTO> getListaAtivacoes() { |
| 125 | return listaAtivacoes; |
||
| 126 | } |
||
| 127 | public void setListaAtivacoes(List<PosVendaAtivacaoDTO> listaAtivacoes) { |
||
| 128 | this.listaAtivacoes = listaAtivacoes; |
||
| 129 | } |
||
| 130 | |||
| 625 | blopes | 131 | public String getScriptAtivacaoAgradecimento() { |
| 624 | blopes | 132 | String scriptAtivacaoAgradecimento = "Olá, [Nome]! 👋" |
| 621 | blopes | 133 | + "\nAgradecemos por comprar na Espaço Case! 💙" |
| 624 | blopes | 134 | + "\nEsperamos que você curta muito o seu novo produto." |
| 625 | blopes | 135 | + "\nSe precisar de ajuda com algo ou quiser dicas de uso, estamos por aqui! 😉" |
| 136 | + "\n\n📲 Siga a gente no Instagram para novidades e promoções: @espacocaseoficial" |
||
| 137 | + "\n\nPara melhorar nosso atendimento, que tal responder rapidinho?" |
||
| 624 | blopes | 138 | + "\nDe 1 a 5, qual a probabilidade de você recomendar nosso atendimento para um amigo?" |
| 139 | + "\n👉 [Link]" |
||
| 140 | + ""; |
||
| 625 | blopes | 141 | scriptAtivacaoAgradecimento = scriptAtivacaoAgradecimento.replace("[Link]", linkNpsAtendimento()); |
| 624 | blopes | 142 | if (VerificadorUtil.naoEstaNulo(getClienteDTO())) { |
| 143 | scriptAtivacaoAgradecimento = scriptAtivacaoAgradecimento.replace("[Nome]", getClienteDTO().getObterPrimeiroNome()); |
||
| 144 | } |
||
| 145 | return scriptAtivacaoAgradecimento; |
||
| 621 | blopes | 146 | } |
| 625 | blopes | 147 | public void setScriptAtivacaoAgradecimento(String scriptAtivacaoAgradecimento) { |
| 148 | this.scriptAtivacaoAgradecimento = scriptAtivacaoAgradecimento; |
||
| 149 | } |
||
| 621 | blopes | 150 | |
| 625 | blopes | 151 | public String linkNpsAtendimento() { |
| 152 | return "https://espacocase.net/novo/sistema/comercial/nps_atendimento.xhtml?sq=" + getSequencial(); |
||
| 153 | } |
||
| 154 | |||
| 630 | blopes | 155 | public String corDaSituacaoAgradecimento() { |
| 156 | return VerificadorUtil.estaNulo(getDataInicio())? "danger" : VerificadorUtil.naoEstaNulo(getNpsPosVendaAgradecimento())? VerificadorUtil.naoEstaNulo(getNpsPosVendaAgradecimento().getDataFinalizacao())? "success" : "warning" : "warning"; |
||
| 625 | blopes | 157 | } |
| 158 | |||
| 629 | blopes | 159 | public String notaNpsPosVendaAtendimento() { |
| 630 | blopes | 160 | return VerificadorUtil.naoEstaNulo(getNpsPosVendaAgradecimento())? "" + getNpsPosVendaAgradecimento().getNota() : "SEM NOTA!"; |
| 629 | blopes | 161 | } |
| 162 | |||
| 620 | blopes | 163 | } |