List of usage examples for java.lang Long equals
public boolean equals(Object obj)
From source file:ips1ap101.lib.core.web.app.GestorPaginaActualizacion.java
protected boolean isConsultaValida() { if (designing) { return true; }/*from ww w . ja v a 2 s .co m*/ track("isConsultaValida"); boolean ok = !isRestauracion() && getPaginaActualizacion().getRecursoDataProvider().isFuncionSelectAutorizada(); if (ok) { long f1 = getPaginaActualizacion().getRecursoDataProvider().getFuncionSelect(); long f2 = getPaginaActualizacion().getFuncionConsultarRecurso(); trace("funcion-actual=" + f1 + ", funcion-anterior=" + f2); ok = f1 == f2; } if (ok) { long v1 = getPaginaActualizacion().getRecursoDataProvider().getVersionComandoSelect(); long v2 = getPaginaActualizacion().getContextoSesion().getVersionComandoSelectPagina(); trace("version-actual=" + v1 + ", version-anterior=" + v2); ok = v1 == v2; } if (ok && isReinicio()) { String c1 = StringUtils .trimToNull(getPaginaActualizacion().getRecursoDataProvider().getConsultaBusqueda()); String c2 = StringUtils .trimToNull(getPaginaActualizacion().getContextoPeticion().getConsultaBusqueda()); trace("consulta-actual=" + c1 + ", consulta-anterior=" + c2); ok = c1 == null ? c2 == null : c1.equals(c2); } if (ok && isReinicio()) { String c1 = StringUtils .trimToNull(getPaginaActualizacion().getRecursoDataProvider().getCriteriosBusqueda()); String c2 = StringUtils .trimToNull(getPaginaActualizacion().getContextoPeticion().getCriteriosBusqueda()); trace("criterio-actual=" + c1 + ", criterio-anterior=" + c2); ok = c1 == null ? c2 == null : c1.equals(c2); } if (ok) { // String c1 = getColumnaIdentificacionRecursoMaestro(); String c1 = getPaginaActualizacion().getRecursoDataProvider().getColumnaMaestro(); String c2 = getPaginaActualizacion().getContextoSesion().getColumnaIdentificacionRecursoMaestroPagina(); trace("maestro-actual=" + c1 + ", maestro-anterior=" + c2); ok = c1 == null ? c2 == null : c1.equals(c2); } if (ok) { // Long i1 = getIdentificacionRecursoMaestro(); Long i1 = getPaginaActualizacion().getRecursoDataProvider().getIdentificacionMaestro(); Long i2 = getPaginaActualizacion().getContextoSesion().getIdentificacionRecursoMaestroPagina(); trace("maestro-actual=" + i1 + ", maestro-anterior=" + i2); ok = i1 == null ? i2 == null : i1.equals(i2); } return ok; }
From source file:ca.nrc.cadc.vos.server.NodeDAO.java
/** * Move the node to inside the destination container. * * @param src The node to move/*from w ww . j av a 2 s . c om*/ * @param dest The container in which to move the node. */ public void move(Node src, ContainerNode dest) throws TransientException { log.debug("move: " + src.getUri() + " to " + dest.getUri() + " as " + src.getName()); expectPersistentNode(src); expectPersistentNode(dest); // move rule checking if (src instanceof ContainerNode) { // check that we are not moving root or a root container if (src.getParent() == null || src.getParent().getUri().isRoot()) throw new IllegalArgumentException("Cannot move a root container."); // check that 'src' is not in the path of 'dest' so that // circular paths are not created Node target = dest; Long srcNodeID = getNodeID(src); Long targetNodeID = null; while (target != null && !target.getUri().isRoot()) { targetNodeID = getNodeID(target); if (targetNodeID.equals(srcNodeID)) throw new IllegalArgumentException("Cannot move to a contained sub-node."); target = target.getParent(); } } try { startTransaction(); prof.checkpoint("start.move"); // get the lock String sql = this.getUpdateLockSQL(src); jdbc.update(sql); prof.checkpoint("getUpdateLockSQL"); Long contentLength = new Long(0); if (!(src instanceof LinkNode)) { // get the contentLength sql = this.getSelectContentLengthForDeleteSQL(src); // Note: if contentLength is null, jdbc template will return zero. contentLength = jdbc.queryForLong(sql); prof.checkpoint("getSelectContentLengthSQL"); } // re-parent the node ContainerNode srcParent = src.getParent(); src.setParent(dest); // update the node with the new parent and potentially new name NodePutStatementCreator putStatementCreator = new NodePutStatementCreator(nodeSchema, true); putStatementCreator.setValues(src, null); int count = jdbc.update(putStatementCreator); prof.checkpoint("NodePutStatementCreator"); if (count == 0) { // tried to move a busy data node throw new IllegalStateException("src node busy: " + src.getUri()); } if (!(src instanceof LinkNode)) { // apply the size difference String sql1 = getApplySizeDiffSQL(srcParent, contentLength, false); String sql2 = getApplySizeDiffSQL(dest, contentLength, true); // these operations should happen in either child-parent or nodeID order // for consistency to avoid deadlocks if (srcParent.getParent() != null && src.getParent().equals(dest)) { // OK: sql1 is child and sql2 is parent } else if (dest.getParent() != null && dest.getParent().equals(srcParent)) { // sql1 is parent and sql2 is child: swap String swap = sql1; sql1 = sql2; sql2 = swap; } else if (getNodeID(srcParent) > getNodeID(dest)) { String swap = sql1; sql1 = sql2; sql2 = swap; } log.debug(sql1); jdbc.update(sql1); prof.checkpoint("getApplySizeDiffSQL"); log.debug(sql2); jdbc.update(sql2); prof.checkpoint("getApplySizeDiffSQL"); } // recursive chown removed since it is costly and nominally incorrect commitTransaction(); prof.checkpoint("commit.move"); } catch (IllegalStateException ex) { log.debug(ex.toString()); if (transactionStatus != null) try { rollbackTransaction(); prof.checkpoint("rollback.move"); } catch (Throwable oops) { log.error("failed to rollback transaction", oops); } throw ex; } catch (Throwable t) { log.error("move rollback for node: " + src.getUri().getPath(), t); if (transactionStatus != null) try { rollbackTransaction(); prof.checkpoint("rollback.move"); } catch (Throwable oops) { log.error("failed to rollback transaction", oops); } if (t instanceof IllegalStateException) throw (IllegalStateException) t; else if (DBUtil.isTransientDBException(t)) throw new TransientException("failed to move: " + src.getUri().getPath(), t); else throw new RuntimeException("failed to move: " + src.getUri().getPath(), t); } finally { if (transactionStatus != null) { try { log.warn("move - BUG - transaction still open in finally... calling rollback"); rollbackTransaction(); } catch (Throwable oops) { log.error("failed to rollback transaction in finally", oops); } } } }
From source file:es.caib.seycon.ng.servei.PuntEntradaServiceImpl.java
protected boolean handleReordenaPuntEntrada(PuntEntrada puntEntradaOrdenar, PuntEntrada puntEntradaSeguent) throws Exception { // 1) Obtenim la informaci del l'arbre origen Long idPareArbreOrigen = puntEntradaOrdenar.getIdPare(); Long idPueOrigen = puntEntradaOrdenar.getId(); // 2) Obtenim la informaci de l'arbre dest Long idPareArbreDesti = puntEntradaSeguent.getIdPare(); Long idPueDesti = puntEntradaSeguent.getId(); // Verifiquem autoritzacions a l'origen i al dest if (!canAdmin(puntEntradaOrdenar) || !canAdmin(puntEntradaSeguent)) throw new SeyconException(Messages.getString("PuntEntradaServiceImpl.NoAdminPermission")); //$NON-NLS-1$ // Analitzem l'arbre dels pares del node dest per verificar que no es // mou//from ww w .j a va2s. co m // un node origen dintre de la seua branca if (isOrigenAncestorDesti(idPueOrigen, idPareArbreDesti)) throw new SeyconException(Messages.getString("PuntEntradaServiceImpl.NotNodeMoviment")); //$NON-NLS-1$ // Podem tenir 2 casos: mateix pare (REORDENAR) o pare distint (MOURE) // (mateix pare = ordenar l'arbre dest) if (idPareArbreOrigen.equals(idPareArbreDesti)) { // Mateixa branca, noms hem de reordenar List<ArbrePuntEntradaEntity> branca = getArbrePuntEntradaEntityDao().findByPare(idPareArbreOrigen); // Ja est ordenada pel camp ordre (SEMPRE tindr fills) if (branca != null && branca.size() != 0) { // s l'arbre de fills del mateix pare ordenat per Ordre int posOrigen = -1; int posDesti = -1; int pos = -1; // Obtenim la posici de l'element a moure i la nova posici // (dest) for (Iterator<ArbrePuntEntradaEntity> it = branca.iterator(); it.hasNext();) { pos++; ArbrePuntEntradaEntity actual = it.next(); if (actual.getFill().getId().equals(idPueOrigen)) { posOrigen = pos; } else if (actual.getFill().getId().equals(idPueDesti)) { posDesti = pos; } } if (posOrigen == -1 || posDesti == -1) return false; // No trobats // Reordenem if (posOrigen < posDesti) { // pugem l'aplicaci int i = -1; for (Iterator<ArbrePuntEntradaEntity> it = branca.iterator(); it.hasNext();) { i++; ArbrePuntEntradaEntity actual = it.next(); // Modifiquem l'ordre if (i == posOrigen) { actual.setOrdre(posDesti - 1); //$NON-NLS-1$ // actual.setOrdre("" + (posDesti - 1)); } else if (i < posDesti) { // Abans de l'origen, // retrocedim 1 posici int posActual = (i - 1);// Integer.parseInt(actual.getOrdre()) // - 1; actual.setOrdre(posActual); //$NON-NLS-1$ //actual.setOrdre("" + posActual); } /* * else { // >= dest, es mant ; } */ } } else { // posOrigen > posDesti : baixem l'aplicaci int i = -1; for (Iterator<ArbrePuntEntradaEntity> it = branca.iterator(); it.hasNext();) { i++; ArbrePuntEntradaEntity actual = it.next(); // Modifiquem l'ordre if (i == posOrigen) { actual.setOrdre(posDesti); //$NON-NLS-1$ actual.setOrdre("" + posDesti); } else if (i > posOrigen) { // Desprs de l'origen , // mantenim l'arbre ; } else { // < origen, els avancem una posici int posActual = (i + 1);// Integer.parseInt(actual.getOrdre()) // + 1; actual.setOrdre(posActual); //$NON-NLS-1$ actual.setOrdre("" + posActual); } } } getArbrePuntEntradaEntityDao().update(branca); return true; } else return false; // cas no possible (origen i desti mateixa branca // = t fills el pare) } else { // sn de branques diferents List<ArbrePuntEntradaEntity> brancaDesti = getArbrePuntEntradaEntityDao().findByPare(idPareArbreDesti); // Hem de verificar que en la branca dest no existisca ja el node // actual [cas de que siga un enlla] if (brancaDesti != null) for (Iterator<ArbrePuntEntradaEntity> it = brancaDesti.iterator(); it.hasNext();) { ArbrePuntEntradaEntity arbreActual = it.next(); if (arbreActual.getFill().getId().equals(idPueOrigen)) throw new SeyconException( Messages.getString("PuntEntradaServiceImpl.EntryPointDuplicated")); //$NON-NLS-1$ } // Creen la nova entrada a l'arbre PuntEntradaEntity nouPare = getPuntEntradaEntityDao().findById(idPareArbreDesti); PuntEntradaEntity pueMogut = getPuntEntradaEntityDao().findById(idPueOrigen); ArbrePuntEntradaEntity nouArbre = getArbrePuntEntradaEntityDao().newArbrePuntEntradaEntity(); nouArbre.setOrdre(Integer.parseInt(puntEntradaSeguent.getOrdre())); //nouArbre.setOrdre(puntEntradaSeguent.getOrdre()); nouArbre.setFill(pueMogut); nouArbre.setPare(nouPare); // Obtenim la branca origen on estava el node a moure (el pare del // node mogut) List<ArbrePuntEntradaEntity> brancaOrigen = getArbrePuntEntradaEntityDao() .findByPare(idPareArbreOrigen); ArbrePuntEntradaEntity arbreAntic = null; boolean trobat = false; for (Iterator<ArbrePuntEntradaEntity> it = brancaOrigen.iterator(); !trobat && it.hasNext();) { ArbrePuntEntradaEntity a = it.next(); if (a.getFill().getId().equals(idPueOrigen)) { // En principi // it.remove(); // ja l'eliminem desprs (!!) arbreAntic = a; // l'eliminem desprs trobat = true; } } // Hem de reordenar les entrades de la nova branca if (brancaDesti != null && brancaDesti.size() != 0) { // Pot sser // que la nova // branca siga // buida // Si la seua posici es >= posDesti, sumem 1 a l'ordre boolean reordenar = false; int i = -1; for (Iterator<ArbrePuntEntradaEntity> it = brancaDesti.iterator(); it.hasNext();) { // Reordenem ArbrePuntEntradaEntity actual = it.next(); i++; if (reordenar) { // desprs de dest int posActual = i + 1;// Integer.parseInt(actual.getOrdre()) // + 1; actual.setOrdre(posActual); //$NON-NLS-1$ actual.setOrdre("" + posActual); } else if (actual.getFill().getId().equals(idPueDesti)) { reordenar = true; // movem dest una posici int posActual = actual.getOrdre() + 1; //Integer.parseInt(actual.getOrdre()) + 1; actual.setOrdre(posActual); //$NON-NLS-1$ actual.setOrdre("" + posActual); } } } if (brancaDesti == null) brancaDesti = new LinkedList<ArbrePuntEntradaEntity>(); // Fem els canvis // 1) Esborrem l'arbre antic if (arbreAntic != null) getArbrePuntEntradaEntityDao().remove(arbreAntic); // 2) Creem l'accs a la nova branca getArbrePuntEntradaEntityDao().create(nouArbre); brancaDesti.add(nouArbre); // 3) Actualitzem la branca dest (hem reordenat els fills de la // branca) getArbrePuntEntradaEntityDao().update(brancaDesti); // 4) Actualitzcem el men dest nouPare.setArbrePuntEntradaSocPare(brancaDesti); getPuntEntradaEntityDao().update(nouPare); return true; } }
From source file:com.square.adherent.noyau.service.implementations.AdherentServiceImpl.java
/** * Cr / met jour une option d'adhrent.//from www. j av a2 s. co m * @param uidPersonne l'identifiant de l'adhrent. * @param optionDto l'option crer / mettre jour. */ private void creerOuMajOptionAdherent(Long uidPersonne, OptionAdherentDto optionDto, final CoordonneesDto coordonnees) { final Long idOptionEnvoiMutuellement = adherentMappingService.getIdTypeOptionEnvoiMutuellementEmail(); final Long idOptionEnvoiRelevesPresta = adherentMappingService.getIdTypeOptionEnvoiRelevesPrestationEmail(); final Long idOptionEnvoiSms = adherentMappingService.getIdTypeOptionEnvoiSms(); final Long idNatureMobilePrive = squareMappingService.getIdNatureMobilePrive(); final Long idNatureMobileTravail = squareMappingService.getIdNatureMobileTravail(); Option option = null; if (optionDto.getId() != null) { option = optionDao.getOptionById(optionDto.getId()); } else if (optionDto.getType() != null && optionDto.getType().getIdentifiant() != null) { option = optionDao.getOptionByPersonneAndType(uidPersonne, optionDto.getType().getIdentifiant()); } final Calendar maintenant = Calendar.getInstance(); if (option == null) { // Si l'option est active if (optionDto.isActive()) { // On la sauvegarde dans la base de donnes. option = new Option(); final OptionType typeOption = optionTypeDao.getOptionTypeById(optionDto.getType().getIdentifiant()); if (typeOption == null) { logger.error(messageSourceUtil.get(MessageKeyUtil.LOGGER_ERROR_TYPE_OPTION_INVALIDE, new String[] { String.valueOf(optionDto.getType().getIdentifiant()) })); throw new TechnicalException( messageSourceUtil.get(MessageKeyUtil.ERROR_MAJ_OPTIONS_ADHERENT_UID_PERSONNE_NULL)); } // si l'option a activer est de de type 'envoie par email' if (optionDto.getType() != null && (idOptionEnvoiRelevesPresta.equals(optionDto.getType().getIdentifiant()) || idOptionEnvoiMutuellement.equals(optionDto.getType().getIdentifiant()))) { // si l'adhrent n'a pas d'email if (coordonnees.getEmails() == null || coordonnees.getEmails().isEmpty()) { throw new TechnicalException(messageSourceUtil .get(MessageKeyUtil.ERROR_MAJ_OPTIONS_ADHERENT_UID_PERSONNE_EMAIL_REQUIS)); } } // si l'option a activer est de de type 'envoie par sms' if (optionDto.getType() != null && (idOptionEnvoiSms.equals(optionDto.getType().getIdentifiant()))) { boolean existeTelephoneMobile = false; if (coordonnees.getTelephones() != null) { for (TelephoneDto telephone : coordonnees.getTelephones()) { if (idNatureMobilePrive.equals(telephone.getNature().getIdentifiant()) || idNatureMobileTravail.equals(telephone.getNature().getIdentifiant())) { existeTelephoneMobile = true; break; } } } // si l'adhrent n'a pas de telephone if (!existeTelephoneMobile) { throw new TechnicalException(messageSourceUtil.get( MessageKeyUtil.ERROR_MAJ_OPTIONS_ADHERENT_UID_PERSONNE_TELEPHONE_MOBILE_REQUIS)); } } option.setType(typeOption); option.setUidPersonne(uidPersonne); option.setDateCreation(maintenant); option.setDateDebut(maintenant); option.setDateModification(maintenant); option.setActive(true); // On crer l'option optionDao.saveOption(option); } } else { // On met jour l'option // Activation de l'option if (optionDto.isActive() && !option.isActive()) { // si l'option a activer est de de type 'envoie par email' if (optionDto.getType() != null && (idOptionEnvoiRelevesPresta.equals(optionDto.getType().getIdentifiant()) || idOptionEnvoiMutuellement.equals(optionDto.getType().getIdentifiant()))) { // si l'adhrent n'a pas d'email if (coordonnees.getEmails() == null || coordonnees.getEmails().isEmpty()) { throw new TechnicalException(messageSourceUtil .get(MessageKeyUtil.ERROR_MAJ_OPTIONS_ADHERENT_UID_PERSONNE_EMAIL_REQUIS)); } } // si l'option a activer est de de type 'envoie par sms' if (optionDto.getType() != null && (idOptionEnvoiSms.equals(optionDto.getType().getIdentifiant()))) { boolean existeTelephoneMobile = false; if (coordonnees.getTelephones() != null) { for (TelephoneDto telephone : coordonnees.getTelephones()) { if (idNatureMobilePrive.equals(telephone.getNature().getIdentifiant()) || idNatureMobileTravail.equals(telephone.getNature().getIdentifiant())) { existeTelephoneMobile = true; break; } } } // si l'adhrent n'a pas de telephone if (!existeTelephoneMobile) { throw new TechnicalException(messageSourceUtil.get( MessageKeyUtil.ERROR_MAJ_OPTIONS_ADHERENT_UID_PERSONNE_TELEPHONE_MOBILE_REQUIS)); } } option.setActive(true); option.setDateDebut(maintenant); option.setDateModification(maintenant); option.setDateFin(null); } // Dsactivation de l'option else if (!optionDto.isActive() && option.isActive()) { option.setActive(false); option.setDateModification(maintenant); option.setDateFin(maintenant); } } // Mise jour de la date de dmatrialisation des documents seulement pour les relevs de prestation if (optionDto.getType() != null && idOptionEnvoiRelevesPresta.equals(optionDto.getType().getIdentifiant())) { // Rcupration des infos de connexion de la personne final Long idNatureEspaceAdherent = adherentMappingService.getIdNatureConnexionEspaceClient(); final EspaceClientInternet espaceClientInternet = espaceClientInternetDao .getEspaceClientInternetByPersonneAndNature(uidPersonne, idNatureEspaceAdherent); espaceClientInternet.setDateDerniereDematerialisation(maintenant); espaceClientInternet.setDateModification(maintenant); } }
From source file:com.cloud.hypervisor.vmware.mo.HypervisorHostHelper.java
public static boolean isSpecMatch(DVPortgroupConfigInfo currentDvPortgroupInfo, DVPortgroupConfigSpec newDvPortGroupSpec) { String dvPortGroupName = newDvPortGroupSpec.getName(); s_logger.debug("Checking if configuration of dvPortGroup [" + dvPortGroupName + "] has changed."); boolean specMatches = true; DVSTrafficShapingPolicy currentTrafficShapingPolicy; currentTrafficShapingPolicy = currentDvPortgroupInfo.getDefaultPortConfig().getInShapingPolicy(); assert (currentTrafficShapingPolicy != null); LongPolicy oldAverageBandwidthPolicy = currentTrafficShapingPolicy.getAverageBandwidth(); LongPolicy oldBurstSizePolicy = currentTrafficShapingPolicy.getBurstSize(); LongPolicy oldPeakBandwidthPolicy = currentTrafficShapingPolicy.getPeakBandwidth(); BoolPolicy oldIsEnabledPolicy = currentTrafficShapingPolicy.getEnabled(); Long oldAverageBandwidth = null; Long oldBurstSize = null;/*from w ww. ja v a 2 s . co m*/ Long oldPeakBandwidth = null; Boolean oldIsEnabled = null; if (oldAverageBandwidthPolicy != null) { oldAverageBandwidth = oldAverageBandwidthPolicy.getValue(); } if (oldBurstSizePolicy != null) { oldBurstSize = oldBurstSizePolicy.getValue(); } if (oldPeakBandwidthPolicy != null) { oldPeakBandwidth = oldPeakBandwidthPolicy.getValue(); } if (oldIsEnabledPolicy != null) { oldIsEnabled = oldIsEnabledPolicy.isValue(); } DVSTrafficShapingPolicy newTrafficShapingPolicyInbound = newDvPortGroupSpec.getDefaultPortConfig() .getInShapingPolicy(); LongPolicy newAverageBandwidthPolicy = newTrafficShapingPolicyInbound.getAverageBandwidth(); LongPolicy newBurstSizePolicy = newTrafficShapingPolicyInbound.getBurstSize(); LongPolicy newPeakBandwidthPolicy = newTrafficShapingPolicyInbound.getPeakBandwidth(); BoolPolicy newIsEnabledPolicy = newTrafficShapingPolicyInbound.getEnabled(); Long newAverageBandwidth = null; Long newBurstSize = null; Long newPeakBandwidth = null; Boolean newIsEnabled = null; if (newAverageBandwidthPolicy != null) { newAverageBandwidth = newAverageBandwidthPolicy.getValue(); } if (newBurstSizePolicy != null) { newBurstSize = newBurstSizePolicy.getValue(); } if (newPeakBandwidthPolicy != null) { newPeakBandwidth = newPeakBandwidthPolicy.getValue(); } if (newIsEnabledPolicy != null) { newIsEnabled = newIsEnabledPolicy.isValue(); } if (!oldIsEnabled.equals(newIsEnabled)) { s_logger.info("Detected change in state of shaping policy (enabled/disabled) [" + newIsEnabled + "]"); specMatches = false; } if (oldIsEnabled || newIsEnabled) { if (oldAverageBandwidth != null && !oldAverageBandwidth.equals(newAverageBandwidth)) { s_logger.info( "Average bandwidth setting in new shaping policy doesn't match the existing setting."); specMatches = false; } else if (oldBurstSize != null && !oldBurstSize.equals(newBurstSize)) { s_logger.info("Burst size setting in new shaping policy doesn't match the existing setting."); specMatches = false; } else if (oldPeakBandwidth != null && !oldPeakBandwidth.equals(newPeakBandwidth)) { s_logger.info("Peak bandwidth setting in new shaping policy doesn't match the existing setting."); specMatches = false; } } boolean oldAutoExpandSetting = currentDvPortgroupInfo.isAutoExpand(); boolean autoExpandEnabled = newDvPortGroupSpec.isAutoExpand(); if (oldAutoExpandSetting != autoExpandEnabled) { specMatches = false; } if (!autoExpandEnabled) { // Allow update of number of dvports per dvPortGroup is auto expand is not enabled. int oldNumPorts = currentDvPortgroupInfo.getNumPorts(); int newNumPorts = newDvPortGroupSpec.getNumPorts(); if (oldNumPorts < newNumPorts) { s_logger.info("Need to update the number of dvports for dvPortGroup :[" + dvPortGroupName + "] from existing number of dvports " + oldNumPorts + " to " + newNumPorts); specMatches = false; } else if (oldNumPorts > newNumPorts) { s_logger.warn("Detected that new number of dvports [" + newNumPorts + "] in dvPortGroup [" + dvPortGroupName + "] is less than existing number of dvports [" + oldNumPorts + "]. Attempt to update this dvPortGroup may fail!"); specMatches = false; } } VMwareDVSPortSetting currentPortSetting = ((VMwareDVSPortSetting) currentDvPortgroupInfo .getDefaultPortConfig()); VMwareDVSPortSetting newPortSetting = ((VMwareDVSPortSetting) newDvPortGroupSpec.getDefaultPortConfig()); if ((currentPortSetting.getSecurityPolicy() == null && newPortSetting.getSecurityPolicy() != null) || (currentPortSetting.getSecurityPolicy() != null && newPortSetting.getSecurityPolicy() == null)) { specMatches = false; } if (currentPortSetting.getSecurityPolicy() != null && newPortSetting.getSecurityPolicy() != null) { if (currentPortSetting.getSecurityPolicy().getAllowPromiscuous() != null && newPortSetting.getSecurityPolicy().getAllowPromiscuous() != null && newPortSetting.getSecurityPolicy().getAllowPromiscuous().isValue() != null && !newPortSetting.getSecurityPolicy().getAllowPromiscuous().isValue() .equals(currentPortSetting.getSecurityPolicy().getAllowPromiscuous().isValue())) { specMatches = false; } if (currentPortSetting.getSecurityPolicy().getForgedTransmits() != null && newPortSetting.getSecurityPolicy().getForgedTransmits() != null && newPortSetting.getSecurityPolicy().getForgedTransmits().isValue() != null && !newPortSetting.getSecurityPolicy().getForgedTransmits().isValue() .equals(currentPortSetting.getSecurityPolicy().getForgedTransmits().isValue())) { specMatches = false; } if (currentPortSetting.getSecurityPolicy().getMacChanges() != null && newPortSetting.getSecurityPolicy().getMacChanges() != null && newPortSetting.getSecurityPolicy().getMacChanges().isValue() != null && !newPortSetting.getSecurityPolicy().getMacChanges().isValue() .equals(currentPortSetting.getSecurityPolicy().getMacChanges().isValue())) { specMatches = false; } } VmwareDistributedVirtualSwitchVlanSpec oldVlanSpec = currentPortSetting.getVlan(); VmwareDistributedVirtualSwitchVlanSpec newVlanSpec = newPortSetting.getVlan(); int oldVlanId, newVlanId; if (oldVlanSpec instanceof VmwareDistributedVirtualSwitchPvlanSpec && newVlanSpec instanceof VmwareDistributedVirtualSwitchPvlanSpec) { VmwareDistributedVirtualSwitchPvlanSpec oldpVlanSpec = (VmwareDistributedVirtualSwitchPvlanSpec) oldVlanSpec; VmwareDistributedVirtualSwitchPvlanSpec newpVlanSpec = (VmwareDistributedVirtualSwitchPvlanSpec) newVlanSpec; oldVlanId = oldpVlanSpec.getPvlanId(); newVlanId = newpVlanSpec.getPvlanId(); } else if (oldVlanSpec instanceof VmwareDistributedVirtualSwitchTrunkVlanSpec && newVlanSpec instanceof VmwareDistributedVirtualSwitchTrunkVlanSpec) { VmwareDistributedVirtualSwitchTrunkVlanSpec oldpVlanSpec = (VmwareDistributedVirtualSwitchTrunkVlanSpec) oldVlanSpec; VmwareDistributedVirtualSwitchTrunkVlanSpec newpVlanSpec = (VmwareDistributedVirtualSwitchTrunkVlanSpec) newVlanSpec; oldVlanId = oldpVlanSpec.getVlanId().get(0).getStart(); newVlanId = newpVlanSpec.getVlanId().get(0).getStart(); } else if (oldVlanSpec instanceof VmwareDistributedVirtualSwitchVlanIdSpec && newVlanSpec instanceof VmwareDistributedVirtualSwitchVlanIdSpec) { VmwareDistributedVirtualSwitchVlanIdSpec oldVlanIdSpec = (VmwareDistributedVirtualSwitchVlanIdSpec) oldVlanSpec; VmwareDistributedVirtualSwitchVlanIdSpec newVlanIdSpec = (VmwareDistributedVirtualSwitchVlanIdSpec) newVlanSpec; oldVlanId = oldVlanIdSpec.getVlanId(); newVlanId = newVlanIdSpec.getVlanId(); } else { s_logger.debug("Old and new vlan spec type mismatch found for [" + dvPortGroupName + "] has changed. Old spec type is: " + oldVlanSpec.getClass() + ", and new spec type is:" + newVlanSpec.getClass()); return false; } if (oldVlanId != newVlanId) { s_logger.info("Detected that new VLAN [" + newVlanId + "] of dvPortGroup [" + dvPortGroupName + "] is different from current VLAN [" + oldVlanId + "]"); specMatches = false; } return specMatches; }
From source file:com.yuwang.pinju.web.module.shop.action.ShopOpenFlowAction.java
/** * ? --2.0//from w w w . ja v a 2 s. c o m * @return shopOpenEnd: /my/sell.htm * @return openShopIndex1: shopOpentep2.ftl * @return openShopIndex2: shopOpentep3.ftl * @return openShopIndex3: shopOpentep4.ftl * @return openShopIndex4: shopOpentep5.ftl * @return openShopIndex: shopOpentep1.ftl **/ public String iWillOpenShop() { Long userId = queryUserId(); //???? try { //???? ShopInfoDO shopInfoDO = shopShowInfoManager.queryShopBaseInfoByUser(userId, null); if (shopInfoDO != null) { Long sellerType = Long.parseLong(shopInfoDO.getSellerType()); boolean booleanC = true; boolean booleanB = true; boolean booleanIShop = true; booleanC = shopShowInfoManager.checkHasCustomerInfo(userId); booleanIShop = shopShowInfoManager.checkHasIShopInfo(userId); booleanB = shopShowInfoManager.checkHasBusinessInfo(userId); boolean b2 = true; if (!booleanC && !booleanB && !booleanIShop) { if (sellerType.equals(ShopConstant.SELLER_TYPE_C)) { ShopCustomerInfoDO shopCustomerInfo = new ShopCustomerInfoDO(); shopCustomerInfo.setUserId(userId); shopCustomerInfo.setSellerType(String.valueOf(sellerType)); b2 = shopShowInfoManager.insertCustomerInfo(shopCustomerInfo); if (!b2) { errorMessage = "?!"; return "error"; } } else if (sellerType.equals(ShopConstant.SELLER_TYPE_IShop)) { ShopIshopInfoDO shopIshopInfo = new ShopIshopInfoDO(); shopIshopInfo.setUserId(userId); shopIshopInfo.setSellerType(String.valueOf(sellerType)); b2 = shopShowInfoManager.insertIShopInfo(shopIshopInfo); if (!b2) { errorMessage = "?!"; return "error"; } } else { ShopBusinessInfoDO shopBusinessInfo = new ShopBusinessInfoDO(); shopBusinessInfo.setUserId(userId); shopBusinessInfo.setSellerType(String.valueOf(sellerType)); b2 = shopShowInfoManager.insertBusinessInfo(shopBusinessInfo); if (!b2) { errorMessage = "?!"; return "error"; } } } List<ShopOpenFlowDO> shopOpenFlowDOList = shopOpenManager.queryShopOpenFlow(userId); if (shopOpenFlowDOList == null || shopOpenFlowDOList.size() == 0) { shopOpenFlowDO = new ShopOpenFlowDO(); shopOpenFlowDO.setUserId(userId); shopOpenFlowDO.setIsAgreement(ShopConstant.IS_AGREEMENT_TRUE); shopOpenFlowDO.setAuditStatus(ShopConstant.AUDIT_STATUS_NOT_APPLY); shopOpenFlowDO.setGmtCreate(new Date()); shopOpenFlowDO.setIsFillInfo(ShopConstant.IS_FILL_SHOP_INFO_NO); shopOpenFlowDO.setSellerType(Integer.parseInt(sellerType.toString())); shopOpenFlowDO.setConfiguration("USER_NAME=" + queryNickName()); shopOpenFlowDO.setAuditCount(0); shopOpenFlowDO.setIsKa(ShopConstant.IS_KA_NO); shopOpenFlowDO.setIsBlack(ShopConstant.BLACK_FALSE); shopOpenManager.saveShopOpenFlow(shopOpenFlowDO); } } //??? shopFlowInfoDO = shopOpenAO.queryFlowInfo(userId); if (shopFlowInfoDO != null) { if (shopFlowInfoDO.getIsAccountSet() != null && !shopFlowInfoDO.getIsAccountSet().equals(ShopConstant.IS_ACCOUNT_SET_COMPLETE)) { } else { MarginSellerDO marginSellerDO = marginManager.getMarginSellerDOBySellerId(userId); // ??,null?? //marginSellerDO = new MarginSellerDO(); if (marginSellerDO != null) { return "shopOpenEnd"; } if (shopInfoDO != null && shopInfoDO.getExchangeMargin() != null && shopInfoDO.getShopInfoConfig("MARGIN_PRICE") != null) { log.warn("???,??...."); return "shopOpenLast"; } } } //return "shopOpenEnd"; } catch (ManagerException e) { log.error("?,[marginManager.getMarginSellerDOBySellerId]!", e); } //?error? if (ActionContext.getContext().getParameters() != null) { Map<String, Object> map = ActionContext.getContext().getParameters(); if (map.get("errorMessage") != null && map.get("errorMessage").toString().length() > 0) { setErrorMessage(map.get("errorMessage").toString()); map.remove("errorMessage"); ActionContext.getContext().setParameters(map); } } if (null != shopFlowInfoDO) { if (null != shopFlowInfoDO.getSellerType() && !"".equals(shopFlowInfoDO.getSellerType())) { // ((?null && ( || ?)) // && (??null && (? || ??))) if ((null != shopFlowInfoDO.getIsAccountSet() && (ShopConstant.IS_ACCOUNT_SET_NOT_BEGIN .equals(shopFlowInfoDO.getIsAccountSet()) || ShopConstant.IS_ACCOUNT_SET_NOT_COMPLETE.equals(shopFlowInfoDO.getIsAccountSet()))) && (null != shopFlowInfoDO.getIsFillComplete() && (ShopConstant.IS_FILL_COMPLETE_NOT_BEGIN .equals(shopFlowInfoDO.getIsFillComplete()) || ShopConstant.IS_FILL_COMPLETE_NOT_COMPLETE .equals(shopFlowInfoDO.getIsFillComplete().intValue())))) { return "openShopIndex1"; } // ((?null && ?) // && (??null && (? || ??))) else if ((null != shopFlowInfoDO.getIsAccountSet() && ShopConstant.IS_ACCOUNT_SET_COMPLETE.equals(shopFlowInfoDO.getIsAccountSet().intValue())) && (null != shopFlowInfoDO.getIsFillComplete() && (ShopConstant.IS_FILL_COMPLETE_NOT_BEGIN .equals(shopFlowInfoDO.getIsFillComplete().intValue()) || ShopConstant.IS_FILL_COMPLETE_NOT_COMPLETE .equals(shopFlowInfoDO.getIsFillComplete().intValue())))) { return "openShopIndex2"; } //((??null && ??) && (?null && (? || ))) else if ((null != shopFlowInfoDO.getIsFillComplete() && ShopConstant.IS_FILL_COMPLETE_COMPLETE .equals(shopFlowInfoDO.getIsFillComplete().intValue())) && (null != shopFlowInfoDO.getIsAccountSet() && (ShopConstant.IS_ACCOUNT_SET_NOT_COMPLETE .equals(shopFlowInfoDO.getIsAccountSet().intValue()) || ShopConstant.IS_ACCOUNT_SET_NOT_BEGIN .equals(shopFlowInfoDO.getIsAccountSet().intValue())))) { return "openShopIndex4"; } //((?null && ?) && (??null && ??)) else if ((null != shopFlowInfoDO.getIsAccountSet() && ShopConstant.IS_ACCOUNT_SET_COMPLETE.equals(shopFlowInfoDO.getIsAccountSet().intValue())) && (null != shopFlowInfoDO.getIsFillComplete() && ShopConstant.IS_FILL_COMPLETE_COMPLETE .equals(shopFlowInfoDO.getIsFillComplete().intValue()))) { return "openShopIndex3"; } } } return "openShopIndex"; }
From source file:com.square.core.service.implementations.PersonneServiceImplementation.java
@Override public TelephoneDto creerOuMettreAJourTelephone(Long idPersonne, TelephoneDto telephoneDto, Boolean impacterFamille, Boolean forcerDesactivationEservices) { final RapportDto rapport = new RapportDto(); if (idPersonne == null) { throw new BusinessException( messageSourceUtil.get(PersonnePhysiqueKeyUtil.MESSAGE_ERREUR_PERSONNE_NULL)); }/*from w w w .j a v a2 s .co m*/ // Rcupration de la personne en base. final Personne personnePrincipale = personneDao.rechercherPersonneParId(idPersonne); if (personnePrincipale == null) { throw new BusinessException( messageSourceUtil.get(PersonnePhysiqueKeyUtil.MESSAGE_ERREUR_PERSONNE_INEXISTANTE)); } final Set<Personne> personnes = new LinkedHashSet<Personne>(); // On recherche les membres de la famille de la personne final Set<Personne> famille = getFamille(personnePrincipale); // Si le flag qui indique si l'on doit ajouter la nouvelle adresse aux bnficiaires n'est pas spcifi // Si la personne a une famille, on lve une exception car le flag impacterBeneficiaires doit tre renseign // pour dterminer si il faut ajouter l'adresse aux membres de la famille de la personne if (impacterFamille == null && famille.size() > 0) { throw new ConfirmationImpacterFamilleException( messageSourceUtil.get(PersonnePhysiqueKeyUtil.CONFIRMATION_IMPACTER_FAMILLE, new String[] { String.valueOf(famille.size()) })); } personnes.add(personnePrincipale); if (BooleanUtils.isTrue(impacterFamille)) { // On ajoute les membres de la famille la liste des personnes concernes par la cration de nouvelles coordonnes personnes.addAll(famille); } final Calendar maintenant = Calendar.getInstance(); // Traitement du tlphone final boolean numeroRenseigne = StringUtils.isNotBlank(telephoneDto.getNumero()); boolean isTelephoneModifie = false; if (telephoneDto.getId() != null) { // On rcupre le tlphone mettre jour partir de la base de donnes final Telephone telephoneAMaj = telephoneDao.rechercherTelephoneParId(telephoneDto.getId()); // Si on recoit un id ici, mais que le numro n'est pas renseign, il faut supprimer le tlphone correspondant // Note : on ne supprime pas tous les tlphones car d'autres peuvent exister mais ne pas tre affichs dans Square if (!numeroRenseigne) { // Si il faut impacter toute la famille, ou que le tlphone est li la personne principale uniquement if (BooleanUtils.isTrue(impacterFamille) || telephoneAMaj.getPersonnes().size() == 1) { // On supprime le tlphone supprimerTelephone(telephoneAMaj, maintenant); } else { // On enlve le tlphone de la liste des tlphones de la personne principale personnePrincipale.removeTelephone(telephoneAMaj); // on verifie si la personne est le porteur if (telephoneAMaj.getPorteurUid() != null && telephoneAMaj.getPorteurUid().equals(personnePrincipale.getId())) { // on supprime l'identifiant externe et le porteur du telephone restant sur la famille telephoneAMaj.setIdentifiantExterieur(null); telephoneAMaj.setPorteurUid(null); } } if (personnePrincipale instanceof PersonnePhysique && ((PersonnePhysique) personnePrincipale) .getNature().getId().equals(squareMappingService.getIdNaturePersonneAdherent())) { // on verifie si la personne possede l'eservice final List<Long> optionsSouscrites = adherentService .getListeIdsTypesOptionsSouscrites(personnePrincipale.getId()); boolean possedeEserviceTelephone = false; for (Long idTypeOption : optionsSouscrites) { if (idTypeOption.equals(adherentMappingService.getIdTypeOptionEnvoiSms())) { possedeEserviceTelephone = true; break; } } if (possedeEserviceTelephone && !BooleanUtils.isTrue(forcerDesactivationEservices)) { throw new ConfirmationDesactivationEserviceException(messageSourceUtil .get(PersonneKeyUtil.MESSAGE_CONFIRMATION_DESACTIVATION_ESERVICE_TELEPHONE)); } else if (possedeEserviceTelephone) { adherentService.desactiverOptionsEnvoiParTelephone(personnePrincipale.getId()); } } } else { // Sinon on dtermine si le tlphone a t modifi isTelephoneModifie = isTelephoneModifie(telephoneAMaj, telephoneDto); // Si le tlphone existe et a t modifi, et qu'il ne faut pas impacter la famille if (BooleanUtils.isFalse(impacterFamille) && isTelephoneModifie && telephoneAMaj.getPersonnes().size() > 1) { // on supprime le telephone de la personne personnePrincipale.removeTelephone(telephoneAMaj); // on supprime l'identifiant pour crer un nouveau telephone telephoneDto.setId(null); // on verifie si la personne est le porteur if (telephoneAMaj.getPorteurUid() != null && telephoneAMaj.getPorteurUid().equals(personnePrincipale.getId())) { // on supprime l'identifiant externe et le porteur du telephone restant sur la famille (pas de synchro aia) telephoneAMaj.setIdentifiantExterieur(null); telephoneAMaj.setPorteurUid(null); } else { // On supprime l'identifiant externe afin de ne pas synchroniser avec aia telephoneDto.setIdext(null); } } } } if (numeroRenseigne) { controlerTelephone(rapport, telephoneDto, 0); if (!rapport.getEnErreur()) { final Telephone telephone = creerOuMettreAJourTelephone(personnes, telephoneDto, impacterFamille); if (telephone.getId() == null) { // On rattache le tlphone la personne principale personnePrincipale.addTelephone(telephone); if (BooleanUtils.isTrue(impacterFamille)) { // On rattache aussi le tlphone aux membres de sa famille for (Personne personne : famille) { personne.addTelephone(telephone); } } } } } if (Boolean.TRUE.equals(rapport.getEnErreur())) { RapportUtil.logRapport(rapport, logger); throw new ControleIntegriteException(rapport); } // si il s'agit d'une personne physique et vivier ou bnficiaire vivier, on transforme en prospect ou bnficiaire prospect final PersonnePhysique personnePhysique = personnePhysiqueDao .rechercherPersonneParId(personnePrincipale.getId()); boolean vivierToProspect = false; Long idNaturePersonnePhysique = null; final Long idNaturePersonneVivier = squareMappingService.getIdNaturePersonneVivier(); final Long idNaturePersonneBeneficiaireVivier = squareMappingService .getIdNaturePersonneBeneficiaireVivier(); if (personnePhysique != null && personnePhysique.getNature() != null) { if (idNaturePersonneVivier.equals(personnePhysique.getNature().getId()) && validationPersonneUtil.verifierContrainteProspect(personnePhysique)) { idNaturePersonnePhysique = squareMappingService.getIdNaturePersonneProspect(); vivierToProspect = true; } else if (idNaturePersonneBeneficiaireVivier.equals(personnePhysique.getNature()) && validationPersonneUtil.verifierContrainteBeneficiaireProspect(personnePhysique)) { idNaturePersonnePhysique = squareMappingService.getIdNaturePersonneBeneficiaireProspect(); } if (idNaturePersonnePhysique != null) { final PersonnePhysiqueNature naturePersonne = personnePhysiqueNatureDao .rechercherPersonnePhysiqueParId(idNaturePersonnePhysique); personnePhysique.setNature(naturePersonne); } } // si la personne est passe de vivier prospect et qu'elle a des bnficiaires vivier, // on essaye de les passer en bnficiaire prospect si c'est possible if (vivierToProspect && famille != null && famille.size() > 0) { for (Personne beneficiaire : famille) { final PersonnePhysique beneficiairePhysique = (PersonnePhysique) beneficiaire; if (beneficiairePhysique.getNature() != null && idNaturePersonneBeneficiaireVivier.equals(beneficiairePhysique.getNature().getId()) && validationPersonneUtil.verifierContrainteBeneficiaireProspect(beneficiairePhysique)) { final PersonnePhysiqueNature naturePersonne = personnePhysiqueNatureDao .rechercherPersonnePhysiqueParId( squareMappingService.getIdNaturePersonneBeneficiaireProspect()); beneficiairePhysique.setNature(naturePersonne); } } } // Rcupration du tlphone cr ou modifi pour le retourner final CritereRechercheTelephone critereTel = new CritereRechercheTelephone(); final Set<Long> idsPersonnes = new HashSet<Long>(); idsPersonnes.add(idPersonne); critereTel.setIdsPersonnes(idsPersonnes); final List<TelephoneDto> telephones = mapperDozerBean .mapList(telephoneDao.rechercherTelephoneParCritere(critereTel), TelephoneDto.class); for (TelephoneDto telephoneTrouve : telephones) { if (telephoneTrouve.getNumero().equals(telephoneDto.getNumero())) { return telephoneTrouve; } } // Si tlphone non trouv, on retourne un tlphone vide final TelephoneDto telephoneVide = new TelephoneDto(); return telephoneVide; }
From source file:com.square.core.service.implementations.PersonneServiceImplementation.java
@Override public EmailDto creerOuMettreAJourEmail(Long idPersonne, EmailDto emailDto, Boolean impacterFamille, Boolean forcerDesactivationEservices) { final RapportDto rapport = new RapportDto(); if (idPersonne == null) { throw new BusinessException( messageSourceUtil.get(PersonnePhysiqueKeyUtil.MESSAGE_ERREUR_PERSONNE_NULL)); }//from www . ja va 2 s .c o m // Rcupration de la personne en base. final Personne personnePrincipale = personneDao.rechercherPersonneParId(idPersonne); if (personnePrincipale == null) { throw new BusinessException( messageSourceUtil.get(PersonnePhysiqueKeyUtil.MESSAGE_ERREUR_PERSONNE_INEXISTANTE)); } final Set<Personne> personnes = new LinkedHashSet<Personne>(); // On recherche les membres de la famille de la personne final Set<Personne> famille = getFamille(personnePrincipale); // Si le flag qui indique si l'on doit ajouter la nouvelle adresse aux bnficiaires n'est pas spcifi // Si la personne a une famille, on lve une exception car le flag impacterBeneficiaires doit tre renseign // pour dterminer si il faut ajouter l'adresse aux membres de la famille de la personne if (impacterFamille == null && famille.size() > 0) { throw new ConfirmationImpacterFamilleException( messageSourceUtil.get(PersonnePhysiqueKeyUtil.CONFIRMATION_IMPACTER_FAMILLE, new String[] { String.valueOf(famille.size()) })); } personnes.add(personnePrincipale); if (BooleanUtils.isTrue(impacterFamille)) { // On ajoute les membres de la famille la liste des personnes concernes par la cration de nouvelles coordonnes personnes.addAll(famille); } final Calendar maintenant = Calendar.getInstance(); // Traitement de l'email final boolean adresseEmailRenseignee = StringUtils.isNotBlank(emailDto.getAdresse()); boolean isEmailModifie = false; if (emailDto.getIdentifiant() != null) { // On rcupre l'email mettre jour partir de la base de donnes final Email emailAMaj = emailDao.rechercherEmailParId(emailDto.getIdentifiant()); // Si on recoit un id ici, mais que les infos ne sont pas renseignes, il faut supprimer le tlphone correspondant // Note : on ne supprime pas tous les tlphones car d'autres peuvent exister mais ne pas tre affichs dans Square if (!adresseEmailRenseignee) { // Si il faut impacter toute la famille, ou que l'email est li la personne principale uniquement if (BooleanUtils.isTrue(impacterFamille) || emailAMaj.getPersonnes().size() == 1) { // On supprime l'email supprimerEmail(emailAMaj, maintenant); } else { // On enlve le tlphone de la liste des tlphones de la personne principale personnePrincipale.removeEmail(emailAMaj); // on verifie si la personne est le porteur if (emailAMaj.getPorteurUid() != null && emailAMaj.getPorteurUid().equals(personnePrincipale.getId())) { // on supprime l'identifiant externe et le porteur de l'email restant sur la famille emailAMaj.setIdentifiantExterieur(null); emailAMaj.setPorteurUid(null); } } if (personnePrincipale instanceof PersonnePhysique && ((PersonnePhysique) personnePrincipale) .getNature().getId().equals(squareMappingService.getIdNaturePersonneAdherent())) { // on verifie si la personne possede l'eservice final List<Long> optionsSouscrites = adherentService .getListeIdsTypesOptionsSouscrites(personnePrincipale.getId()); boolean possedeEserviceTelephone = false; for (Long idTypeOption : optionsSouscrites) { if (idTypeOption.equals(adherentMappingService.getIdTypeOptionEnvoiMutuellementEmail()) || idTypeOption.equals( adherentMappingService.getIdTypeOptionEnvoiRelevesPrestationEmail())) { possedeEserviceTelephone = true; break; } } if (possedeEserviceTelephone && !BooleanUtils.isTrue(forcerDesactivationEservices)) { throw new ConfirmationDesactivationEserviceException(messageSourceUtil .get(PersonneKeyUtil.MESSAGE_CONFIRMATION_DESACTIVATION_ESERVICE_EMAIL)); } else if (possedeEserviceTelephone) { adherentService.desactiverOptionsEnvoiParEmail(personnePrincipale.getId()); } } } else { // Sinon on dtermine si l'email a t modifi isEmailModifie = isEmailModifie(emailAMaj, emailDto); // Si le tlphone existe et a t modifi, et qu'il ne faut pas impacter la famille if (BooleanUtils.isFalse(impacterFamille) && isEmailModifie && emailAMaj.getPersonnes().size() > 1) { // on supprime l'email de la personne personnePrincipale.removeEmail(emailAMaj); // on supprime l'identifiant pour crer un nouvel email emailDto.setIdentifiant(null); // on verifie si la personne est le porteur if (emailAMaj.getPorteurUid() != null && emailAMaj.getPorteurUid().equals(personnePrincipale.getId())) { // on supprime l'identifiant externe et le porteur de l'email restant sur la famille (pas de synchro aia) emailAMaj.setIdentifiantExterieur(null); emailAMaj.setPorteurUid(null); } else { // On supprime l'identifiant externe afin de ne pas synchroniser avec aia emailDto.setIdext(null); } } } } if (adresseEmailRenseignee) { controlerEmail(rapport, emailDto, 0); if (!rapport.getEnErreur()) { final Email email = creerOuMettreAJourEmail(personnes, emailDto, impacterFamille); // Si c'est un nouvel email if (email.getId() == null) { // On rattache le nouvel email la personne principale personnePrincipale.addEMail(email); if (BooleanUtils.isTrue(impacterFamille)) { // On rattache aussi le nouvel email aux membres de sa famille for (Personne personne : famille) { personne.addEMail(email); } } } } } if (Boolean.TRUE.equals(rapport.getEnErreur())) { RapportUtil.logRapport(rapport, logger); throw new ControleIntegriteException(rapport); } // si il s'agit d'une personne physique et vivier ou bnficiaire vivier, on transforme en prospect ou bnficiaire prospect final PersonnePhysique personnePhysique = personnePhysiqueDao .rechercherPersonneParId(personnePrincipale.getId()); boolean vivierToProspect = false; Long idNaturePersonnePhysique = null; final Long idNaturePersonneVivier = squareMappingService.getIdNaturePersonneVivier(); final Long idNaturePersonneBeneficiaireVivier = squareMappingService .getIdNaturePersonneBeneficiaireVivier(); if (personnePhysique != null && personnePhysique.getNature() != null) { if (idNaturePersonneVivier.equals(personnePhysique.getNature().getId()) && validationPersonneUtil.verifierContrainteProspect(personnePhysique)) { idNaturePersonnePhysique = squareMappingService.getIdNaturePersonneProspect(); vivierToProspect = true; } else if (idNaturePersonneBeneficiaireVivier.equals(personnePhysique.getNature()) && validationPersonneUtil.verifierContrainteBeneficiaireProspect(personnePhysique)) { idNaturePersonnePhysique = squareMappingService.getIdNaturePersonneBeneficiaireProspect(); } if (idNaturePersonnePhysique != null) { final PersonnePhysiqueNature naturePersonne = personnePhysiqueNatureDao .rechercherPersonnePhysiqueParId(idNaturePersonnePhysique); personnePhysique.setNature(naturePersonne); } } // si la personne est passe de vivier prospect et qu'elle a des bnficiaires vivier, // on essaye de les passer en bnficiaire prospect si c'est possible if (vivierToProspect && famille != null && famille.size() > 0) { for (Personne beneficiaire : famille) { final PersonnePhysique beneficiairePhysique = (PersonnePhysique) beneficiaire; if (beneficiairePhysique.getNature() != null && idNaturePersonneBeneficiaireVivier.equals(beneficiairePhysique.getNature().getId()) && validationPersonneUtil.verifierContrainteBeneficiaireProspect(beneficiairePhysique)) { final PersonnePhysiqueNature naturePersonne = personnePhysiqueNatureDao .rechercherPersonnePhysiqueParId( squareMappingService.getIdNaturePersonneBeneficiaireProspect()); beneficiairePhysique.setNature(naturePersonne); } } } // Rcupration de l'email cr ou modifi pour le retourner final CritereRechercheEmail critereEmail = new CritereRechercheEmail(); final Set<Long> idsPersonnes = new HashSet<Long>(); idsPersonnes.add(idPersonne); critereEmail.setIdsPersonnes(idsPersonnes); final List<EmailDto> emails = mapperDozerBean.mapList(emailDao.rechercherEmailParCritere(critereEmail), EmailDto.class); for (EmailDto emailTrouve : emails) { if (emailTrouve.getAdresse().equals(emailDto.getAdresse())) { return emailTrouve; } } // Si email non trouv, on retourne un email vide final EmailDto emailVide = new EmailDto(); return emailVide; }
From source file:com.square.tarificateur.noyau.service.implementations.TarificateurServiceImpl.java
/** * Remplit les adresses vides des membres de la famille avec l'adresse de la personne principale ou du conjoint. * @param personnePrincipale la personne principale *///www . j av a 2 s.c om private void remplirAdressesVidesFamilleDevis(PersonneTarificateurDto personnePrincipale) { AdresseTarificateurDto adressePersonnePrincipale = null; AdresseTarificateurDto adresseConjoint = null; // Recherche des membres de la famille n'ayant pas d'adresse principale final List<PersonneTarificateurDto> listePersonnesAdressesVides = new ArrayList<PersonneTarificateurDto>(); // Personne principale if (personnePrincipale.getAdressePrincipale() != null && personnePrincipale.getAdressePrincipale().getEidCodePostalCommune() != null) { adressePersonnePrincipale = personnePrincipale.getAdressePrincipale(); } else { listePersonnesAdressesVides.add(personnePrincipale); } // Bnficiaires final Long idLienFamilialConjoint = tarificateurSquareMappingService.getIdLienFamilialConjoint(); if (personnePrincipale.getListeBeneficiaires() != null) { for (BeneficiaireTarificateurDto beneficiaire : personnePrincipale.getListeBeneficiaires()) { if (beneficiaire.getAdressePrincipale() != null && beneficiaire.getAdressePrincipale().getEidCodePostalCommune() != null) { // Si c'est l'adresse principale du conjoint, on la stocke if (idLienFamilialConjoint.equals(beneficiaire.getIdLienFamilial()) && adresseConjoint == null) { adresseConjoint = beneficiaire.getAdressePrincipale(); } } else { listePersonnesAdressesVides.add(beneficiaire); } } } // Remplissage des adresses vides if (!listePersonnesAdressesVides.isEmpty()) { // Exception si aucune adresse touve if (adressePersonnePrincipale == null && adresseConjoint == null) { logger.error(messageSourceUtil.get(MessageKeyUtil.LOGGER_ERROR_ADRESSE_PRINCIPALE_INEXISTANTE)); throw new TechnicalException(messageSourceUtil .get(MessageKeyUtil.ERREUR_CREATION_DEVIS_ADRESSE_PRINCIPALE_NON_RENSEIGNEE)); } // Remplissage des adresses vides for (PersonneTarificateurDto personneSansAdresse : listePersonnesAdressesVides) { personneSansAdresse.setAdressePrincipale( adressePersonnePrincipale != null ? adressePersonnePrincipale : adresseConjoint); } } }
From source file:com.square.tarificateur.noyau.service.implementations.TarificateurServiceImpl.java
@Override public List<Long> rechercherIdsOpportunitesByCritere(CriteresRechercheOpportuniteDto criteres) { final List<Long> listeIdsOpportunitesSquare = new ArrayList<Long>(); // Rcupration des opportunits du tarificateur square correspondant aux critres final List<Opportunite> listeOpportunites = opportuniteDao.rechercherOpportunitesByCritere(criteres); // Filtre sur les opportunits sant si critre spcifi if (listeOpportunites != null && listeOpportunites.size() > 0 && criteres.getIsOppSante() != null && criteres.getIsOppSante()) { final Long idFinaliteAcceptee = tarificateurSquareMappingService.getIdFinaliteAcceptee(); final Long idFinaliteTransformee = tarificateurSquareMappingService.getIdFinaliteTransformee(); final Integer idCategorieGammeSante = tarificateurMappingService.getIdentifiantCategorieSante(); for (Opportunite opportunite : listeOpportunites) { final List<Devis> listeDevis = devisDao.getListeDevisByOpportunite(opportunite.getId()); if (listeDevis != null && listeDevis.size() > 0) { boucleDevis: for (Devis devis : listeDevis) { if (idFinaliteTransformee.equals(devis.getFinalite().getId()) && devis.getListeLigneDevis() != null && devis.getListeLigneDevis().size() > 0) { for (LigneDevis ligneDevis : devis.getListeLigneDevis()) { if (ligneDevis.getFinalite() != null && idFinaliteAcceptee.equals(ligneDevis.getFinalite().getId())) { // on regarde si le produit associ la ligne de devis est de type sant final Integer idProduit = ligneDevis.getEidProduit(); final ProduitCriteresDto critereProduit = new ProduitCriteresDto(); critereProduit.setIdentifiantProduit(idProduit); final List<ProduitDto> listeProduits = produitService .getListeProduits(critereProduit); if (listeProduits == null || listeProduits.size() != 1) { throw new BusinessException(messageSourceUtil.get( MessageKeyUtil.ERROR_IMPOSSIBLE_RECUPERER_PRODUIT, new String[] { String.valueOf(listeProduits.get(0).getIdentifiant()) })); }/*from ww w . ja v a 2 s . com*/ if (idCategorieGammeSante .equals(listeProduits.get(0).getGamme().getIdCategorie())) { listeIdsOpportunitesSquare .add(Long.valueOf(opportunite.getEidOpportunite())); break boucleDevis; } } } } } } } } else { if (listeOpportunites != null && listeOpportunites.size() > 0) { for (Opportunite opportunite : listeOpportunites) { listeIdsOpportunitesSquare.add(Long.valueOf(opportunite.getEidOpportunite())); } } } return listeIdsOpportunitesSquare; }