162 lines
6.6 KiB
Java
162 lines
6.6 KiB
Java
package it.acxent.face.fr;
|
|
|
|
import it.acxent.common.Parm;
|
|
import it.acxent.db.ApplParmFull;
|
|
import it.acxent.db.WcString;
|
|
import it.acxent.face.api.vision.GoogleVisionApi;
|
|
import it.acxent.util.StringTokenizer;
|
|
import it.acxent.util.Vectumerator;
|
|
import java.io.File;
|
|
import java.sql.PreparedStatement;
|
|
|
|
public class Users extends it.acxent.anag.Users {
|
|
public Users() {}
|
|
|
|
public Users(ApplParmFull newApplParmFull) {
|
|
super(newApplParmFull);
|
|
}
|
|
|
|
public void initApplicationParms(ApplParmFull ap) {
|
|
if (ap != null) {
|
|
super.initApplicationParms(ap);
|
|
String l_tipoParm = "";
|
|
Parm bean = new Parm(ap);
|
|
l_tipoParm = "FACE-FR";
|
|
bean.findByCodice("path_opencv_lib");
|
|
bean.setFlgAdmin(1L);
|
|
bean.setTipoParm(l_tipoParm);
|
|
bean.setCodice("path_opencv_lib");
|
|
bean.setDescrizione("path_opencv_lib");
|
|
bean.setFlgTipo(0L);
|
|
if (bean.getTesto().isEmpty())
|
|
bean.setTesto("/usr/local/Cellar/opencv/4.8.1_1/share/java/opencv4/libopencv_java481.dylib");
|
|
bean.setNota("PERCORSO LIBRERIA NATIVA OPENCV<BR>MAC: /usr/local/Cellar/opencv/4.8.1_1/share/java/opencv4/libopencv_java481.dylib<br>ubuntu: /home/ocv/build/lib/libopencv_java480.so");
|
|
bean.save();
|
|
bean.findByCodice("path_img_base");
|
|
bean.setFlgAdmin(1L);
|
|
bean.setTipoParm(l_tipoParm);
|
|
bean.setCodice("path_img_base");
|
|
bean.setDescrizione("path_img_base");
|
|
bean.setFlgTipo(0L);
|
|
if (bean.getTesto().isEmpty())
|
|
bean.setTesto("/Users/acolzi/Downloads/_ocv/img/");
|
|
bean.setNota("PERCORSO MEMORIZZAZIONI IMMAGINI CHE ARRIVANO<br>/Users/acolzi/Downloads/_ocv/img/");
|
|
bean.save();
|
|
File dirFace = new File(bean.getTesto() + "_face/");
|
|
if (!dirFace.exists())
|
|
dirFace.mkdirs();
|
|
File dirFaceRecognition = new File(bean.getTesto() + "_faceRecognition/");
|
|
if (!dirFaceRecognition.exists())
|
|
dirFaceRecognition.mkdirs();
|
|
bean.findByCodice("path_img_tmp");
|
|
bean.setFlgAdmin(1L);
|
|
bean.setTipoParm(l_tipoParm);
|
|
bean.setCodice("path_img_tmp");
|
|
bean.setDescrizione("path_img_tmp");
|
|
bean.setFlgTipo(0L);
|
|
if (bean.getTesto().isEmpty())
|
|
bean.setTesto("/Users/acolzi/Downloads/_ocv/_tmp/");
|
|
bean.setNota("PERCORSO MEMORIZZAZIONI TEMPORANEO IMMAGINI<br>/Users/acolzi/Downloads/_ocv/_tmp/ /mnt/foto/_ocv/_tmp/");
|
|
bean.save();
|
|
File dirTmp = new File(bean.getTesto());
|
|
if (!dirTmp.exists())
|
|
dirTmp.mkdirs();
|
|
bean.findByCodice("PATH_FACE_TRAINING_MODELS");
|
|
bean.setFlgAdmin(1L);
|
|
bean.setTipoParm(l_tipoParm);
|
|
bean.setCodice("PATH_FACE_TRAINING_MODELS");
|
|
bean.setDescrizione("PATH_FACE_TRAINING_MODELS");
|
|
bean.setFlgTipo(0L);
|
|
if (bean.getTesto().isEmpty())
|
|
bean.setTesto("/Users/acolzi/Downloads/_ocv/models/training/");
|
|
bean.setNota("PERCORSO DOVE MEMORIZZO I TRAINIG MODELS<br>/Users/acolzi/Downloads/_ocv/models/training/");
|
|
bean.save();
|
|
File dirTM = new File(bean.getTesto());
|
|
if (!dirTM.exists())
|
|
dirTM.mkdirs();
|
|
bean.findByCodice("NUMBER_BOX_DECT_CONFIG");
|
|
bean.setFlgAdmin(1L);
|
|
bean.setTipoParm(l_tipoParm);
|
|
bean.setCodice("NUMBER_BOX_DECT_CONFIG");
|
|
bean.setDescrizione("NUMBER_BOX_DECT_CONFIG");
|
|
bean.setFlgTipo(0L);
|
|
if (bean.getTesto().isEmpty())
|
|
bean.setTesto("/Users/acolzi/Downloads/_ocv/models/detection.cfg");
|
|
bean.setNota("DETECTION CONFIG PER BOX PETTORALI<br>/Users/acolzi/Downloads/_ocv/models/detection.cfg");
|
|
bean.save();
|
|
bean.findByCodice("NUMBER_BOX_DECT_MODEL");
|
|
bean.setFlgAdmin(1L);
|
|
bean.setTipoParm(l_tipoParm);
|
|
bean.setCodice("NUMBER_BOX_DECT_MODEL");
|
|
bean.setDescrizione("NUMBER_BOX_DECT_MODEL");
|
|
bean.setFlgTipo(0L);
|
|
if (bean.getTesto().isEmpty())
|
|
bean.setTesto("/Users/acolzi/Downloads/_ocv/models/detection.weights");
|
|
bean.setNota("DETECTION MODEL PER BOX PETTORALI<br>/Users/acolzi/Downloads/_ocv/models/detection.weights");
|
|
bean.save();
|
|
bean.findByCodice("NUMBER_RECOG_CONFIG");
|
|
bean.setFlgAdmin(1L);
|
|
bean.setTipoParm(l_tipoParm);
|
|
bean.setCodice("NUMBER_RECOG_CONFIG");
|
|
bean.setDescrizione("NUMBER_RECOG_CONFIG");
|
|
bean.setFlgTipo(0L);
|
|
if (bean.getTesto().isEmpty())
|
|
bean.setTesto("/Users/acolzi/Downloads/_ocv/models/recognition.cfg");
|
|
bean.setNota("RECOGNITION CONFIG PER IMMAGINE CON SOLO NUMERI<br>/Users/acolzi/Downloads/_ocv/models/recognition.cfg");
|
|
bean.save();
|
|
bean.findByCodice("NUMBER_RECOG_MODEL");
|
|
bean.setFlgAdmin(1L);
|
|
bean.setTipoParm(l_tipoParm);
|
|
bean.setCodice("NUMBER_RECOG_MODEL");
|
|
bean.setDescrizione("NUMBER_RECOG_MODEL");
|
|
bean.setFlgTipo(0L);
|
|
if (bean.getTesto().isEmpty())
|
|
bean.setTesto("/Users/acolzi/Downloads/_ocv/models/recognition.weights");
|
|
bean.setNota("RECOGNITION MODEL PER IMMAGINE CON SOLO NUMERI<br>/Users/acolzi/Downloads/_ocv/models/recognition.weights");
|
|
bean.save();
|
|
GoogleVisionApi.initApplicationParms(ap);
|
|
}
|
|
}
|
|
|
|
public Vectumerator<Users> findByCR(UsersCR CR, int pageNumber, int pageRows) {
|
|
String s_Sql_Find = "select A.* from USERS AS A";
|
|
WcString wc = new WcString();
|
|
wc.addWc("dataFineVld is null");
|
|
wc = managePolicyFind(CR, wc);
|
|
if (!CR.isCode1())
|
|
wc.addWc("A.id_users <>1");
|
|
if (!CR.getFlgValido().isEmpty())
|
|
wc.addWc("A.flgValido='" + CR.getFlgValido() + "'");
|
|
if (!CR.getSearchTxt().trim().isEmpty()) {
|
|
String temp = CR.getSearchTxt().trim().replace("*", "%");
|
|
StringTokenizer st = new StringTokenizer(temp, " ");
|
|
StringBuffer txt = new StringBuffer("(");
|
|
int countToken = 0;
|
|
while (st.hasMoreTokens()) {
|
|
String token = prepareSqlString(st.nextToken());
|
|
countToken++;
|
|
if (countToken > 1)
|
|
token = "%" + token;
|
|
txt.append("(A.nome like'%" + token + "%' or A.cognome like'%" + token + "%' or A.eMail like'%" + token + "%' or A.codFisc like'%" + token + "%' or A.login like'%" + token + "%')");
|
|
if (st.hasMoreTokens())
|
|
txt.append(" and ");
|
|
}
|
|
txt.append(")");
|
|
wc.addWc(txt.toString());
|
|
}
|
|
if (!CR.getEMail().isEmpty())
|
|
wc.addWc("A.eMail like'%" + CR.getEMail() + "%'");
|
|
if (CR.getFlgMl() == 0L) {
|
|
wc.addWc("(A.flgMl is null or A.flgMl=0)");
|
|
} else if (CR.getFlgMl() > 0L) {
|
|
wc.addWc("A.flgMl =" + CR.getFlgMl());
|
|
}
|
|
try {
|
|
PreparedStatement stmt = getConn().prepareStatement(s_Sql_Find + s_Sql_Find);
|
|
return findRows(stmt, pageNumber, pageRows);
|
|
} catch (Exception e) {
|
|
handleDebug(e);
|
|
return AB_EMPTY_VECTUMERATOR;
|
|
}
|
|
}
|
|
}
|