<%@page import="com.edeal.frontline.helper.custom.EnterprisePersonEventHelper"%> <%@page import="com.edeal.frontline.helper.DecisionDataBaseHelper"%> <% /****************************************************************************** * Copyright (c) 2000-2011 E-DEAL * * E-DEAL S.A. * 41, rue P�rier * 92120 Montrouge * France * * T: +33 (0)1 73 03 29 80 * F: +33 (0)1 73 01 69 77 * http://www.e-deal.com * * La diffusion de ce code source sous quelque forme que ce soit sans * l'autorisation de E-DEAL est interdite. * * Vous �tes autoris�s � modifier ce code source uniquement pour votre usage * propre et sous r�serve que les mentions de copyright demeurent intactes. * * Ce code est fourni en l'�tat. Aucune garantie d'aucune sorte, explicite ou * implicite n'est donn�e. En aucun cas E-DEAL ne pourra �tre tenu pour * responsable des dommages pouvant r�sulter de l'utilisation de ce code * source. ******************************************************************************/ %><%@ page session="true"%> <%@ page import="java.util.*" %> <%@ page import="com.edeal.frontline.navigation.FlRequest" %> <%@ page import="com.edeal.frontline.*" %> <%@ page import="com.edeal.frontline.AccessControlManager" %> <%@ page import="com.edeal.frontline.PersonBean" %> <%@ page import="com.edeal.frontline.LocationBean" %> <%@ page import="com.edeal.frontline.InteractionBean" %> <%@ page import="com.edeal.frontline.OpportunityBean" %> <%@ page import="com.edeal.frontline.custom.*" %> <%@ page import="com.edeal.frontline.FlContext" %> <%@ page import="com.edeal.frontline.helper.ContextHelper" %> <%@ page import="com.edeal.frontline.helper.custom.DocumentHelper" %> <%@ page import="com.edeal.frontline.helper.custom.EnterpriseHelper"%> <%@taglib uri="http://www.e-deal.com/taglib/fl" prefix="fl" %> <% final org.apache.commons.logging.Log logger = org.apache.commons.logging.LogFactory.getLog(getClass()); FlRequest flRequest = new FlRequest(request); FlContext context = flRequest.getContext(); DataDictionary dico = context.getDataDictionary(); String etiqMasseDocTyp = null; String clientCase = "2"; String actRoleIDactuel=null; String roleAsso_avec_SalID=null; String roleAsso_sans_SalID=null; boolean fHasRightModif = false; boolean fHasRightSuppTiers = false; boolean fHasRightSupp = false; boolean conformeWeb = false; boolean isConsLogis = false; try { etiqMasseDocTyp = dico.getRefIdByCode("Fdc", "Te1", "ASSO"); } catch (Exception e) { etiqMasseDocTyp = null; } String id; try { id = Enterprise.getID(); } catch (Exception e) { id = null; } String corrID; try { corrID = dico.getRefIdByCode("IntType_", "COR"); } catch (FrontlineException e) { corrID = ""; } String todoID; try { todoID = dico.getRefIdByCode("IntType_", "ACT"); } catch (FrontlineException e) { todoID = ""; } //Traitement de la hierarchie boolean hasHierarchy = false; try { Enterprise.getEntParentID(); hasHierarchy = true; } catch (FieldNotInitializedException fe) { } catch (Exception e) {} if (!hasHierarchy) { String[] hFields={"EntID"}; String[][] hQuery={{"EntParentID="+Utils.formatToSQL(context,id),"EntID <> "+Utils.formatToSQL(context,id)}}; Vector hList = EnterpriseBean.listSummary(context,hFields,hQuery); if (hList.size() > 0) hasHierarchy = true; } // Tiers is an association String typOrganisation = null; boolean isAssociation = false; boolean isPartenaire = false; boolean isRestaurant = false; boolean isCabaudit = false; boolean isJournaliste = false; boolean isPresta = false; boolean isHotel = false; boolean isEtab = false; try { typOrganisation = Enterprise.getEntTyeID(); isAssociation = typOrganisation.equals((String)dico.getRefIdByCode("EntTyeID", "ASSO")); isPartenaire = typOrganisation.equals((String)dico.getRefIdByCode("EntTyeID", "PART")); if(typOrganisation.equals((String)dico.getRefIdByCode("EntTyeID", "RESTO"))) { isRestaurant = true; } isCabaudit = typOrganisation.equals((String)dico.getRefIdByCode("EntTyeID", "AUDIT")); isJournaliste = typOrganisation.equals((String)dico.getRefIdByCode("EntTyeID", "JOURN")); isPresta = typOrganisation.equals((String)dico.getRefIdByCode("EntTyeID", "PRESTA")); isEtab = typOrganisation.equals((String)dico.getRefIdByCode("EntTyeID", "ETAB")); isHotel= typOrganisation.equals((String)dico.getRefIdByCode("EntTyeID", "HOTEL")); } catch (FieldNotInitializedException e) { typOrganisation=""; } boolean isEnvoyerWeb = false; String codeReservit = null; try { codeReservit = (String)dico.getRefDisp(session, "Tye", "Te2", typOrganisation); } catch (Exception e) { codeReservit = null; } //System.out.println("codeReservit"+codeReservit); if(codeReservit != null) isEnvoyerWeb = true; else isEnvoyerWeb = false; //System.out.println("isEnvoyerWeb"+isEnvoyerWeb); // On récupère l'ID de l'acteur connecté String actID = null; if (session != null) { actID = (String)session.getAttribute("effectiveActorID"); if (actID == null) { actID = (String)session.getAttribute("actorID"); if (actID == null) { throw new FrontlineException("there is not an actor ID in session"); } } } try { ActorBean act = new ActorBean(actID, context); Vector actRolesIDs = new Vector(); actRolesIDs.addAll(act.getRoles()); String roleADMID = dico.getRefIdByCode("ActRoles", "ADMIN"); /* Role Administrateur*/ String roleTECHADMID = dico.getRefIdByCode("ActRoles", "S_ADM_TECH"); /* Role Administrateur Technique*/ String role6ID = dico.getRefIdByCode("ActRoles", "R_CHARGE_WEB"); /* Role charge web*/ String roleConsLogis = dico.getRefIdByCode("ActRoles", "C_CONS_LOGIS"); roleAsso_avec_SalID = dico.getRefIdByCode("ActRoles", "ASSO_SAL"); /* Association avec salarié*/ roleAsso_sans_SalID = dico.getRefIdByCode("ActRoles", "ASSO_SANS_SAL"); /* Association sans salarié */ String roleAssrespAffID = dico.getRefIdByCode("ActRoles", "R_ASSIST_RES_AFFIL"); /* Role Assistant Réseau Affilies */ // rappatrier les rôles concernés par le type actuel de l'entreprise String roles = ""; roles = (String)dico.getRefDisp(session, "Tye", "Te3", typOrganisation); if(roles != null){ String rolesTab[] = roles.split(";"); for (int i = 0; i < actRolesIDs.size(); i++) { actRoleIDactuel = actRolesIDs.get(i).toString(); if( (actRoleIDactuel.equalsIgnoreCase(roleADMID) ) ) { fHasRightModif = true; fHasRightSupp = true; fHasRightSuppTiers= true; conformeWeb=true; } else if (actRoleIDactuel.equalsIgnoreCase(roleTECHADMID)){ fHasRightModif = true; conformeWeb=true; } else if (actRoleIDactuel.equalsIgnoreCase(role6ID)){ conformeWeb=true; }else if (actRoleIDactuel.equalsIgnoreCase(roleAssrespAffID)){ conformeWeb=true; } if(actRoleIDactuel.equals(roleConsLogis)){ fHasRightModif = true; isConsLogis = true; } for (int j=0; j roleNameType = Utils.explodeList(roletabActuel, "|"); String roleType = roleNameType.firstElement(); String roleName = roleNameType.lastElement(); if(roleType.equals("M")) { // Modification String refValueRole = (String) dico.getRefCode("ActRoles", actRoleIDactuel); if(refValueRole.equals(roleName)) { fHasRightModif = true; } else if("ALL".equals(roleName)) { fHasRightModif = true; } } else if (roleType.equals("S")) { // Suppression // Modification String refValueRole = (String) dico.getRefCode("ActRoles", actRoleIDactuel); if(refValueRole.equals(roleName)) { fHasRightSupp = true; } else if("ALL".equals(roleName)) { fHasRightSupp = true; } } } } } } catch (Exception e) { } String activID; try { activID = dico.getRefIdByCode("EntStatus", "ON"); } catch (FrontlineException e) { activID = ""; } String desactivID; try { desactivID = dico.getRefIdByCode("EntStatus", "OFF"); } catch (FrontlineException e) { desactivID = ""; } String entStatusID = null; try { entStatusID = (String)Enterprise.getEntStatus(); } catch (FieldNotInitializedException e){ entStatusID = ""; } Boolean ccsTiers = false; String ctrPrincipalID = null; EnterpriseHelper entHelper = new EnterpriseHelper(Enterprise); Boolean res = entHelper.getTiersContrat(context, id); if (!isAssociation && !isPartenaire && !isCabaudit && !isJournaliste && !isPresta) { // rappatrier le contrat principal ctrPrincipalID = entHelper.getCtrPrincipal(Enterprise); } if (actRoleIDactuel.equalsIgnoreCase(roleAsso_avec_SalID)|| actRoleIDactuel.equalsIgnoreCase(roleAsso_sans_SalID)) { if (isEtab || isHotel || isRestaurant) { if (res == true) { fHasRightModif = false; } else { fHasRightModif = true; } } else { if (isEnvoyerWeb == true && res == true){ fHasRightModif = false; } else { fHasRightModif = true; } } } String mensualite=null; mensualite=EnterpriseHelper.getModeReglement(context,id); String modeReg=null; try { modeReg = dico.getRefIdByCode("Mg_", "Te1", "MS"); } catch (Exception e) { modeReg = ""; } boolean isStat = false; String linkPart2 = EnterprisePersonEventHelper.getJSOpenWindowEditResponse(id,"EVQSTAT",context); if(linkPart2!=null) isStat = true; String linkPart3 = EnterprisePersonEventHelper.getQuestGuideCurrentMillesime(id,"EVQG",context); %>
<% if (hasHierarchy){ %> " href="javascript:doOpenHierarchy();"> <fl:getMessage code=" style="border: 0px;"/>   <% } if (DocumentHelper.hasDocumentWordML(session, context, "Enterprise")) { %> " href="javascript:doWord('','Enterprise','Word');"> <fl:getMessage code=">   " href="javascript:doWord('','Enterprise','PDF');"> <fl:getMessage code=">   <% } String objSqlID=null; try { objSqlID=context.getDataDictionary().getTable("sql","Enterprise").getID(); } catch (Exception e) {} %> <% if(DecisionDataBaseHelper.objectHasAccess(session, context, objSqlID)) { %> ','<%= objSqlID %>');"> <fl:getMessage code="> <% } %>
<%if(!actRoleIDactuel.equalsIgnoreCase(roleAsso_avec_SalID) && !actRoleIDactuel.equalsIgnoreCase(roleAsso_sans_SalID)){ %> <% /*les droits de Modification de la fiche*/ if(fHasRightModif) { %> <%if(fHasRightSuppTiers) { %> <%} %> <% if( (entStatusID.equalsIgnoreCase(activID)) && fHasRightSupp) { %> <%} else if (entStatusID.equalsIgnoreCase(desactivID)){ %> <%} %> <%} %> <% if(!isAssociation && !isPartenaire && !isCabaudit && !isJournaliste){ %> <% } %> <% if(!isAssociation && !isPartenaire && !isCabaudit && !isJournaliste && !isPresta){ %> <%if(conformeWeb || isConsLogis){ %> <%} %> <% if(!isConsLogis){ %> <%-- Devis + Commande --%> <%} if (ccsTiers) {%> <%} %> <%if(!isRestaurant){ if( typOrganisation.equals((String)dico.getRefIdByCode("EntTyeID", "ETAB")) || typOrganisation.equals((String)dico.getRefIdByCode("EntTyeID", "HOTEL")) //ABM: Evolution : http://u-project2.umanis.com/view.php?id=41789 || typOrganisation.equals((String)dico.getRefIdByCode("EntTyeID", "MAISON")) || typOrganisation.equals((String)dico.getRefIdByCode("EntTyeID", "INSOLIT"))) { %> <% } %> <% } %> <%if(conformeWeb){ %> <%} }%> <% // Voir Mantis 27454 11/06/2015 if(isEnvoyerWeb){ %> <%} if(!isAssociation && !isPartenaire && !isCabaudit && !isJournaliste && !isPresta){ if(res && !isConsLogis){%> <%if(modeReg.equals(mensualite)){%> <% } %> <% if(isStat && !isConsLogis){%> <%} %> <%} %> <%-- Correspondance --%> <%-- TODO --%> <% if(!isRestaurant){ %> <% } %> <% }else{ if(!isConsLogis) { %> <%-- Devis + Commande --%> <%} }%> <% if(isPartenaire || isCabaudit || isJournaliste || isPresta) { %> <%} %> <% if (isAssociation ) {%> <%-- TODO --%> <%if(!isConsLogis){ %> <%} } if(!isConsLogis){%> <%} }else{ /*les droits de Modification est d'Activation/Désactivation de la fiche*/ if(fHasRightModif) { %> <% if( (entStatusID.equalsIgnoreCase(activID))) { %> <%} else if (entStatusID.equalsIgnoreCase(desactivID)){ %> <%} %> <%} %> <% if(isEtab || isHotel || isRestaurant){ %> <% if(isStat){ %> <% } %> <% } %> <%if(isPartenaire || isPresta){ %> <% } %> <% } %> <% if(isEtab || isHotel){ %> <% } %>