|
|
@@ -2,11 +2,6 @@ package es.uv.saic.service;
|
|
|
|
|
|
import java.io.IOException;
|
|
|
import java.io.InputStreamReader;
|
|
|
-import java.net.HttpURLConnection;
|
|
|
-import java.net.URI;
|
|
|
-import java.net.http.HttpClient;
|
|
|
-import java.net.http.HttpRequest;
|
|
|
-import java.net.http.HttpResponse;
|
|
|
import java.sql.Connection;
|
|
|
import java.sql.DriverManager;
|
|
|
import java.sql.ResultSet;
|
|
|
@@ -48,6 +43,8 @@ public class DataService {
|
|
|
|
|
|
@Autowired
|
|
|
private DatasourceService dss;
|
|
|
+ @Autowired
|
|
|
+ private UsuariService us;
|
|
|
|
|
|
@Autowired
|
|
|
private CoreClient cc;
|
|
|
@@ -64,7 +61,7 @@ public class DataService {
|
|
|
centresMap.put("EDOC", "62");
|
|
|
}
|
|
|
|
|
|
- public String doImport(InputStreamReader in, Usuari usuari, String enquesta, String ambit, String estudi,
|
|
|
+ public String doImport(InputStreamReader in, String usuari, String enquesta, String ambit, String estudi,
|
|
|
String locale, String delim, String clau, List<String> ignoredColumns) throws IOException, MessagingException {
|
|
|
|
|
|
CSVFormat format = CSVFormat.DEFAULT.builder()
|
|
|
@@ -167,7 +164,7 @@ public class DataService {
|
|
|
ie.setNum(null);
|
|
|
ie.setCursd(cursd);
|
|
|
ie.setTipus(type);
|
|
|
- ie.setUsuari(usuari.getUsuari());
|
|
|
+ ie.setUsuari(usuari);
|
|
|
ie.setData(new Timestamp(System.currentTimeMillis()));
|
|
|
ie.setCursEnquesta(cursEnquesta);
|
|
|
ie.setTitulacioOrigen(titulacioOrigen);
|
|
|
@@ -190,15 +187,16 @@ public class DataService {
|
|
|
|
|
|
/* 5) Notificar administradores y usuario implicado */
|
|
|
this.sendNotificacion(usuari, enquesta, ambit, estudi);
|
|
|
- if(!usuari.isAdmin()){
|
|
|
- this.sendConfirmation(usuari.getUsuari(), enquesta, ambit, estudi);
|
|
|
+ Usuari usuario = us.findByUsername(usuari);
|
|
|
+ if(!usuario.isAdmin()){
|
|
|
+ this.sendConfirmation(usuari, enquesta, ambit, estudi);
|
|
|
}
|
|
|
|
|
|
errors.append("[INFO] " + (locale.equals("es") ? ("Se han importado "+numRecords.toString()+" nuevos registros para un total de "+numTuples.toString()+" titulaciones") : ("[INFO] S'han importat "+numRecords.toString()+" nous registres per a un total de "+numTuples.toString()+" titulacions")));
|
|
|
return errors.toString();
|
|
|
}
|
|
|
|
|
|
- public String doDbImport(Integer dbOrigen, String vista, Integer srcCurs, Integer dstCurs, Usuari usuari, String enquesta, String ambit,
|
|
|
+ public String doDbImport(Integer dbOrigen, String vista, Integer srcCurs, Integer dstCurs, String usuari, String enquesta, String ambit,
|
|
|
String estudi, String locale, String clau, List<String> ignoredColumns) throws SQLException, ClassNotFoundException {
|
|
|
|
|
|
StringBuilder errors = new StringBuilder();
|
|
|
@@ -312,7 +310,7 @@ public class DataService {
|
|
|
ie.setNum(null);
|
|
|
ie.setCursd(cursd);
|
|
|
ie.setTipus(tipus);
|
|
|
- ie.setUsuari(usuari.getUsuari());
|
|
|
+ ie.setUsuari(usuari);
|
|
|
ie.setData(new Timestamp(System.currentTimeMillis()));
|
|
|
ie.setCursEnquesta(cursEnquesta);
|
|
|
ie.setTitulacioOrigen(titulacioOrigen);
|
|
|
@@ -337,8 +335,9 @@ public class DataService {
|
|
|
|
|
|
/* 5) Notificar administradores y usuario implicado */
|
|
|
this.sendNotificacion(usuari, enquesta, ambit, estudi);
|
|
|
- if(!usuari.isAdmin()){
|
|
|
- this.sendConfirmation(usuari.getUsuari(), enquesta, ambit, estudi);
|
|
|
+ Usuari usuario = us.findByUsername(usuari);
|
|
|
+ if(!usuario.isAdmin()){
|
|
|
+ this.sendConfirmation(usuari, enquesta, ambit, estudi);
|
|
|
}
|
|
|
errors.append("[INFO] " + (locale.equals("es") ? ("Se han importado "+numRecords.toString()+" nuevos registros para un total de "+numTuples.toString()+" titulaciones") : ("[INFO] S'han importat "+numRecords.toString()+" nous registres per a un total de "+numTuples.toString()+" titulacions")));
|
|
|
return errors.toString();
|
|
|
@@ -482,10 +481,10 @@ public class DataService {
|
|
|
return isvalid;
|
|
|
}
|
|
|
|
|
|
- private void sendNotificacion(Usuari usuari, String enquesta, String ambit, String estudi) {
|
|
|
+ private void sendNotificacion(String usuari, String enquesta, String ambit, String estudi) {
|
|
|
sendMail("saic@uv.es", "[SYS] Datos pendientes de consolidar", "Estimado/a administrador: \n"
|
|
|
+ "\n"
|
|
|
- + "El usuario "+usuari.getUsuari()+" ha importado nuevos datos referentes a: \n"
|
|
|
+ + "El usuario "+usuari+" ha importado nuevos datos referentes a: \n"
|
|
|
+ "Origen: "+enquesta+"\n"
|
|
|
+ "Ámbito: "+ambit+"\n"
|
|
|
+ "Tipo titulación: "+estudi+"\n"
|