use of fr.univlorraine.ecandidat.entities.ecandidat.PjOpiPK in project esup-ecandidat by EsupPortail.
the class OpiController method deversePjOpi.
/**
* Deverse les PJ dans la table des PJ OPI
* @param opi
* @param codOpiIntEpo
* @param codIndOpi
*/
public void deversePjOpi(final Opi opi, final String codOpiIntEpo, final Long codIndOpi) {
if (opi == null || opi.getDatPassageOpi() == null || opi.getCodOpi() == null) {
return;
}
final Candidature candidature = opi.getCandidature();
final List<PjCand> listPjOpiToDeverse = getPJToDeverse(candidature);
logger.debug("deversement PJ OPI dans eCandidat " + codOpiIntEpo + " Nombre de PJ : " + listPjOpiToDeverse.size());
listPjOpiToDeverse.forEach(pjCand -> {
logger.debug("deversement PJ OPI dans eCandidat " + codOpiIntEpo + " PJ : " + pjCand.getPieceJustif());
/* On créé la clé primaire */
final PjOpiPK pk = new PjOpiPK(codOpiIntEpo, pjCand.getPieceJustif().getCodApoPj());
/* On charge une eventuelle piece */
PjOpi pjOpi = pjOpiRepository.findOne(pk);
/* Dans le cas ou il y a deja une PJ Opi */
if (pjOpi != null) {
/* on va vérifier que la pièce n'a pas été déversée et que le fichier existe
* encore */
if (pjOpi.getDatDeversement() == null && fichierRepository.findOne(pjOpi.getIdFichier()) == null) {
// dans ce cas, on supprime
pjOpiRepository.delete(pjOpi);
pjOpi = null;
}
}
/* On l'insert */
if (pjOpi == null) {
pjOpi = new PjOpi();
pjOpi.setId(pk);
pjOpi.setCandidat(candidature.getCandidat());
if (codIndOpi != null) {
try {
pjOpi.setCodIndOpi(String.valueOf(codIndOpi));
} catch (final Exception e) {
}
}
pjOpi.setDatDeversement(null);
pjOpi.setIdFichier(pjCand.getFichier().getIdFichier());
pjOpi = pjOpiRepository.save(pjOpi);
logger.debug("Ajout PJ OPI dans eCandidat " + pjOpi);
}
});
}
use of fr.univlorraine.ecandidat.entities.ecandidat.PjOpiPK in project esup-ecandidat by EsupPortail.
the class TestWsController method testWs.
@SuppressWarnings("unchecked")
public void testWs() throws IOException {
logger.info("********** Début des Tests des Webservices **********");
final EntityManagerFactory emf = Persistence.createEntityManagerFactory("pun-jpa-siscol");
final EntityManager em = emf.createEntityManager();
final ResourceBundle bundle = ResourceBundle.getBundle("test-ws");
final String codOpi = bundle.getString("opi.codOpi");
try {
logger.info("********** Vérifications OPI **********");
final Candidature candOpi = candidatureRepository.findOne(Integer.valueOf(bundle.getString("opi.idCand")));
if (countOpiData(em, "IND_OPI", codOpi) > 0) {
throw new RuntimeException("Impossible de lancer les tests, nettoyez d'abord les OPI");
}
logger.info("********** Vérifications OPI terminée, lancement des tests **********");
/* Checkine */
logger.info("********** Vérifications Checkine **********");
final Boolean isInes = siScolService.checkStudentINES(bundle.getString("checkine.ine"), bundle.getString("checkine.key"));
if (!isInes) {
throw new RuntimeException("Checkines ne fonctionne pas");
} else {
logger.info("Ok - " + bundle.getString("checkine.ine") + bundle.getString("checkine.key"));
}
/* Données individu */
logger.info("********** Test Données individu **********");
final String codEtu = bundle.getString("ind.codEtu");
final WSIndividu ind = siScolService.getIndividu(codEtu, null, null);
checkString(bundle, String.valueOf(ind.getCodEtu()), "ind.codEtu");
checkString(bundle, String.valueOf(ind.getCodInd()), "ind.codInd");
checkString(bundle, ind.getCodNneInd(), "ind.codNneInd");
checkString(bundle, ind.getCodCleNneInd(), "ind.codCleNneInd");
checkString(bundle, ind.getCodPayNai(), "ind.codPayNai");
checkString(bundle, ind.getCodDepNai(), "ind.codDepNai");
checkString(bundle, ind.getCodPayNat(), "ind.codPayNat");
checkString(bundle, ind.getLibNomPatInd(), "ind.libNomPatInd");
checkString(bundle, ind.getLibNomUsuInd(), "ind.libNomUsuInd");
checkString(bundle, ind.getLibPr1Ind(), "ind.libPr1Ind");
checkString(bundle, ind.getLibPr2Ind(), "ind.libPr2Ind");
checkString(bundle, ind.getLibVilNaiEtu(), "ind.libVilNaiEtu");
/* Données bac */
logger.info("********** Test Données bac **********");
final WSBac bac = ind.getBac();
checkString(bundle, bac.getCodBac(), "bac.codBac");
checkString(bundle, bac.getCodDep(), "bac.codDep");
checkString(bundle, bac.getCodEtb(), "bac.codEtb");
checkString(bundle, bac.getCodMnb(), "bac.codMnb");
checkString(bundle, bac.getDaaObtBacIba(), "bac.daaObtBacIba");
checkString(bundle, bac.getTemInsAdm(), "bac.temInsAdm");
checkString(bundle, bac.getCodSpeBacPre(), "bac.codSpeBacPre");
checkString(bundle, bac.getCodSpe1Bac(), "bac.codSpe1Bac");
checkString(bundle, bac.getCodSpe2Bac(), "bac.codSpe2Bac");
checkString(bundle, bac.getCodOpt1Bac(), "bac.codOpt1Bac");
checkString(bundle, bac.getCodOpt2Bac(), "bac.codOpt2Bac");
checkString(bundle, bac.getCodOpt3Bac(), "bac.codOpt3Bac");
checkString(bundle, bac.getCodOpt4Bac(), "bac.codOpt4Bac");
/* Données Adresse */
logger.info("********** Test Données adresse **********");
final WSAdresse adr = ind.getAdresse();
checkString(bundle, adr.getCodBdi(), "adr.codBdi");
checkString(bundle, adr.getCodCom(), "adr.codCom");
checkString(bundle, adr.getCodPay(), "adr.codPay");
checkString(bundle, adr.getLibAd1(), "adr.libAd1");
checkString(bundle, adr.getLibAd2(), "adr.libAd2");
checkString(bundle, adr.getLibAd3(), "adr.libAd3");
checkString(bundle, adr.getLibAde(), "adr.libAde");
checkString(bundle, adr.getNumTel(), "adr.numTel");
checkString(bundle, adr.getNumTelPort(), "adr.numTelPort");
/* Données Cursus (test de la taille de liste et de la premiere inscription) */
logger.info("********** Test Données Cursus interne **********");
final List<WSCursusInterne> listCursus = ind.getListCursusInterne();
checkString(bundle, String.valueOf(listCursus.size()), "cursus.size");
final WSCursusInterne cursus = listCursus.get(0);
checkString(bundle, cursus.getCodVet(), "cursus.codVet");
checkString(bundle, cursus.getLibVet(), "cursus.libVet");
checkString(bundle, cursus.getCodAnu(), "cursus.codAnu");
checkString(bundle, cursus.getCodMen(), "cursus.codMen");
checkString(bundle, cursus.getCodTre(), "cursus.codTre");
checkString(bundle, cursus.getNotVet(), "cursus.notVet");
checkString(bundle, String.valueOf(cursus.getBarNotVet()), "cursus.barNotVet");
/* Données PJ */
logger.info("********** Test Données PJ **********");
final WSPjInfo pjInfo = siScolService.getPjInfoFromApogee(bundle.getString("pj.codAnu"), bundle.getString("pj.codEtu"), bundle.getString("pj.codTpj"));
checkString(bundle, pjInfo.getCodAnu(), "pj.codAnu");
checkString(bundle, pjInfo.getCodTpj(), "pj.codTpj");
checkString(bundle, pjInfo.getLibTpj(), "pj.libTpj");
checkString(bundle, pjInfo.getNomFic(), "pj.nomFic");
checkString(bundle, String.valueOf(pjInfo.getTemDemPJ()), "pj.temDemPJ");
checkString(bundle, pjInfo.getStuPj(), "pj.stuPj");
checkString(bundle, pjInfo.getMtfRefus(), "pj.mtfRefus");
checkString(bundle, pjInfo.getCmtMtfRefus(), "pj.cmtMtfRefus");
checkString(bundle, pjInfo.getDatDemPj(), "pj.datDemPj");
checkString(bundle, pjInfo.getDatRecPj(), "pj.datRecPj");
checkString(bundle, pjInfo.getDatRefus(), "pj.datRefus");
checkString(bundle, pjInfo.getDatVal(), "pj.datVal");
checkString(bundle, pjInfo.getDatExp(), "pj.datExp");
checkString(bundle, pjInfo.getDaaPreTra(), "pj.daaPreTra");
/* Données PJ */
logger.info("********** Test Fichier PJ **********");
final InputStream pjFichier = siScolService.getPjFichierFromApogee(bundle.getString("pj.codAnu"), bundle.getString("pj.codEtu"), bundle.getString("pj.codTpj"));
final ByteArrayOutputStream out = new ByteArrayOutputStream();
final byte[] bytes = new byte[1024];
int count;
while ((count = pjFichier.read(bytes)) > 0) {
out.write(bytes, 0, count);
}
checkString(bundle, String.valueOf(out.size()), "filepj.size");
logger.info("********** Test OPI **********");
final Opi opi = opiRepository.findOne(candOpi.getIdCand());
opi.setDatPassageOpi(null);
opi.setCodOpi(null);
opiRepository.save(opi);
final PjOpiPK pk = new PjOpiPK(bundle.getString("opi.codOpi"), bundle.getString("opi.codTpj"));
final PjOpi pj = pjOpiRepository.findOne(pk);
pj.setDatDeversement(null);
pjOpiRepository.save(pj);
siScolService.creerOpiViaWS(candOpi.getCandidat(), true);
logger.info("********** Vérification OPI **********");
checkOpiData(em, "IND_OPI", codOpi);
checkOpiData(em, "OPI_BAC", codOpi);
checkOpiData(em, "VOEUX_INS", codOpi);
checkOpiData(em, "ADRESSE_OPI", codOpi);
checkOpiData(em, "OPI_PJ", codOpi);
logger.info("********** Vérification OPI PJ **********");
final String requete = "Select a from IndOpi a where a.codOpiIntEpo='" + codOpi + "'";
final Query query = em.createQuery(requete, IndOpi.class);
final List<IndOpi> lindopi = query.getResultList();
final IndOpi indOpi = lindopi.get(0);
final Session cmisSession = getCmisSession(bundle);
final Folder folder = (Folder) cmisSession.getObject(cmisSession.createObjectId(bundle.getString("opi.pj.candidatureId")));
final String pathDoc = folder.getPath() + "/" + indOpi.getCodIndOpi() + "_OPI/PJ_" + bundle.getString("pj.codTpj") + "_" + indOpi.getCodIndOpi() + bundle.getString("opi.pj.ext");
logger.info("Recherche par path : " + pathDoc);
final Document d = (Document) cmisSession.getObjectByPath(pathDoc);
checkString(bundle, String.valueOf(d.getContentStreamLength()), "opi.pj.size");
logger.info("********** Fin des Tests des Webservices **********");
} catch (final Exception e) {
e.printStackTrace();
} finally {
em.close();
}
}
Aggregations