Importação Clientes - Número fidelidade por empresa (fixed bug #5011)
git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@34368 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
bf5bd7f559
commit
bb664b6f46
|
@ -6,7 +6,7 @@ import java.util.List;
|
||||||
import com.rjconsultores.ventaboletos.entidad.Empresa;
|
import com.rjconsultores.ventaboletos.entidad.Empresa;
|
||||||
|
|
||||||
public interface ImportacaoClientesService {
|
public interface ImportacaoClientesService {
|
||||||
public List<String[]> lerArquivo(Reader reader);
|
public String[] lerArquivo(Reader reader, List<Empresa> empresas);
|
||||||
|
|
||||||
public String[] salvarClientes(List<String[]> clientes, List<Empresa> empresa);
|
public void salvarClientes(String[] cliente);
|
||||||
}
|
}
|
||||||
|
|
|
@ -28,35 +28,55 @@ public class ImportacaoClientesServiceImpl implements ImportacaoClientesService
|
||||||
private TarjetaFidelidadService tarjetaFidelidadService;
|
private TarjetaFidelidadService tarjetaFidelidadService;
|
||||||
private static Logger log = Logger.getLogger(ImportacaoClientesServiceImpl.class);
|
private static Logger log = Logger.getLogger(ImportacaoClientesServiceImpl.class);
|
||||||
|
|
||||||
|
private Integer index;
|
||||||
|
private StringBuilder qtdeGravados;
|
||||||
|
private StringBuilder erros;
|
||||||
|
|
||||||
|
private Integer inseridos;
|
||||||
|
private Integer atualizados;
|
||||||
|
|
||||||
|
private List<Empresa> empresas;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<String[]> lerArquivo(Reader reader) {
|
public String[] lerArquivo(Reader reader, List<Empresa> empresas) {
|
||||||
String linha = null;
|
String linha = null;
|
||||||
|
index = 0;
|
||||||
|
qtdeGravados = new StringBuilder();
|
||||||
|
erros = new StringBuilder();
|
||||||
|
|
||||||
|
inseridos = 0;
|
||||||
|
atualizados = 0;
|
||||||
|
|
||||||
|
this.empresas = empresas;
|
||||||
|
|
||||||
List<String[]> listaClientes = new ArrayList<String[]>();
|
List<String[]> listaClientes = new ArrayList<String[]>();
|
||||||
try {
|
try {
|
||||||
BufferedReader leitor = new BufferedReader(reader);
|
BufferedReader leitor = new BufferedReader(reader);
|
||||||
|
|
||||||
while ((linha = leitor.readLine()) != null) {
|
while ((linha = leitor.readLine()) != null) {
|
||||||
String[] dados = linha.split(",");
|
String[] dados = linha.replace("\"", "").split(",");
|
||||||
listaClientes.add(dados);
|
salvarClientes(dados);
|
||||||
|
index++;
|
||||||
}
|
}
|
||||||
|
|
||||||
leitor.close();
|
leitor.close();
|
||||||
|
|
||||||
|
qtdeGravados.append("Gravados ").append(inseridos + atualizados).append(" clientes de ").append(index).append(" importados.\n");
|
||||||
|
qtdeGravados.append("Atualizados ").append(atualizados).append(" clientes.\n");
|
||||||
|
qtdeGravados.append("Inseridos ").append(inseridos).append(" novos clientes.");
|
||||||
|
|
||||||
|
String[] resultado = { qtdeGravados.toString(), erros.toString() };
|
||||||
|
return resultado;
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error(e);
|
log.error(e);
|
||||||
|
String[] resultado = { e.toString() };
|
||||||
|
return resultado;
|
||||||
}
|
}
|
||||||
|
|
||||||
return listaClientes;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String[] salvarClientes(List<String[]> clientes, List<Empresa> empresas) {
|
public void salvarClientes(String[] cliente) {
|
||||||
StringBuilder qtdeGravados = new StringBuilder();
|
|
||||||
StringBuilder erros = new StringBuilder();
|
|
||||||
|
|
||||||
Integer inseridos = 0;
|
|
||||||
Integer atualizados = 0;
|
|
||||||
for (int i = 0; i < clientes.size(); i++) {
|
|
||||||
String[] cliente = clientes.get(i);
|
|
||||||
try {
|
try {
|
||||||
String nomeCliente = cliente[1].replace("\"", "").toUpperCase();
|
String nomeCliente = cliente[1].replace("\"", "").toUpperCase();
|
||||||
|
|
||||||
|
@ -119,19 +139,10 @@ public class ImportacaoClientesServiceImpl implements ImportacaoClientesService
|
||||||
|
|
||||||
atualizados = atualizados + 1;
|
atualizados = atualizados + 1;
|
||||||
}
|
}
|
||||||
} catch (Exception e) {
|
}catch (Exception e) {
|
||||||
erros.append("Linha ").append(i).append(" do arquivo de clientes, erro: ").append(e.getCause().getCause()).append("\n");
|
erros.append("Linha ").append(index).append(" do arquivo de clientes, erro: ").append(e.getCause().getCause()).append("\n");
|
||||||
|
|
||||||
log.error(e);
|
log.error(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
qtdeGravados.append("Gravados ").append(inseridos + atualizados).append(" clientes de ").append(clientes.size()).append(" importados.\n");
|
|
||||||
qtdeGravados.append("Atualizados ").append(atualizados).append(" clientes.\n");
|
|
||||||
qtdeGravados.append("Inseridos ").append(inseridos).append(" novos clientes.");
|
|
||||||
|
|
||||||
String[] resultado = { qtdeGravados.toString(), erros.toString() };
|
|
||||||
|
|
||||||
return resultado;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue