package com.capgemini.framework.teamcenter.object;

import com.capgemini.framework.teamcenter.TeamcenterObjectProperties;
import lombok.EqualsAndHashCode;

/** Class regrouping all the properties for objects. */
@EqualsAndHashCode(callSuper = true)
public final class SnecmaObjectProperties extends TeamcenterObjectProperties {

    /** Property for retrieving the Tc type of an object. */
    public static final String OBJECT_TYPE = "object_type";
    /** Property for retrieving the documents in the pseudofolder &quot;Documents de definition&quot;. */
    public static final String PV_DEFINITION_DOCS = "_PV_definition_docs";
    /** Property for retrieving the documents in the pseudofolder &quot;Documents de reference&quot;. */
    public static final String PV_REFERENCE_DOCS = "_PV_reference_docs";
    /** Property for retrieving the ChangeRequests in the pseudofolder CR. */
    public static final String PV4_RUNTIME_CR_RELATED = "pv4_runtime_cr_related";
    /** Property for retrieving the ChangeRequests in the pseudofolder CN. */
    public static final String PV4_RUNTIME_CN_RELATED = "pv4_runtime_cn_related";
    /** Property for retrieving the list of ReleaseStatus. */
    public static final String RELEASE_STATUS_LIST = "release_status_list";
    /** Property for retrieving the due date on a EPMTask. */
    public static final String DUE_DATE = "due_date";
    /** Property for retrieving the list of changes for a Unit via the pseudofolder "liste des modifications". */
    public static final String PV_CHANGE_LIST = "_PV_change_list";
    /** Property for retrieving the list of Units for a Product via the pseudofolder "Unit". */
    public static final String PV_UNIT = "_PV_unit";
    /** Property for retrieving the domain of a Product Revision. */
    public static final String PV_DOMAINE = "pv_domaine";
    /** Property for retrieving the ligne produit. */
    public static final String PV_LIGNE_PRODUIT = "pv_ligne_produit";
    /** Property for retrieving Oui/Yes if the Unit is exceptionnel. Else Non/No. */
    public static final String PV_UNIT_EXCEPTIONNEL = "pv_unit_exceptionnel";
    /** Property for retrieving the deliverables. */
    public static final String PV_DELIVERABLES = "_PV_deliverables";
    /** Property for retrieving the generic for a Unit via the pseudofolder "generique". */
    public static final String PV_GENERIC = "_PV_generic";
    /** Property for retrieving the ChangeNotice implementing a ChangeRequest, or the ChangeRequest implementing a ProblemReport. */
    public static final String CM_IMPLEMENTED_BY = "CMImplementedBy";
    /** Pseudo-folder where the Change object links to the Parts that are solution of the change. */
    public static final String CM_HAS_SOLUTION_ITEM = "CMHasSolutionItem";
    /** Property for retrieving the ChangeRequest of an Object. */
    public static final String CM_IMPLEMENTS = "CMImplements";
    /** Property for retrieving the 'external approbation'. */
    public static final String PV_EXTERNAL_APPROBATION = "_PV_external_approbation";
    /** Property for retrieving the 'numero d'approbation SO' (services officiels). */
    public static final String PV_NUMERO_APPROBATION = "pv_numero_approbation_so";
    /** Property for retrieving the type of a modification. */
    public static final String PV4_TYPE_MODIFICATION = "pv4_type_modification";
    /** Property for retrieving the list of generic with interruption for a ChangeItem. */
    public static final String PV_IMP_GENERICS_WITH_INTER = "_PV_imp_generics_with_inter";
    /** Property for retrieving the list of generic without interruption for a ChangeItem. */
    public static final String PV_IMP_GENERICS_WITHOUT_INTER = "_PV_imp_generics_without_inter";
    /** Property for retrieving the 'indice plan'. */
    public static final String PV_INDICE_PLAN = "pv_indice_plan";
    /** Property for retrieving the 'indice cartouche'. */
    public static final String PV_INDICE_CARTOUCHE = "pv_indice_cartouche";
    /** Property for retrieving the 'id origine'. */
    public static final String PV_ID_ORIGINE = "pv_id_origine";
    /** Property for retrieving the security message. */
    public static final String PV_SENSIBILITE_SECURITE = "pv_sensibilite_securite";
    /** Property for retrieving the 'niveau de sensibilite'. */
    public static final String NIVEAU_SENSIBILITE = "ip_classification";
    /** Property for retrieving the 'indice' of a document. */
    public static final String PV_INDICE_DOCUMENT = "pv_indice_document";
    /** Property for retrieving the 'type DocTechnic 1'. */
    public static final String PV_TYPE_DOC_TECHNIC_1 = "pv_type_doc_technic_1";
    /** Property for retrieving the 'type DocTechnic 2'. */
    public static final String PV_TYPE_DOC_TECHNIC_2 = "pv_type_doc_technic_2";
    /** Property for retrieving the mass (double). */
    public static final String PV_MASSE_INDICATIVE = "pv_masse_indicative";
    /** Property for retrieving the mass unit. */
    public static final String PV_UNITE_MASSE = "pv_unite_masse";
    /** Property for retrieving the 'Date de péremption'. */
    public static final String PV4_EXPIRATION_DATE = "pv4_Expiration_date";
    /** Property for retrieving the 'suivi duree de vie'. */
    public static final String PV_SUIVI_DUREE_VIE = "pv_suivi_duree_vie";
    /** Property for retrieving the 'duree de vie'. */
    public static final String PV_DUREE_VIE = "pv_duree_vie";
    /** Property for retrieving the 'unite duree de vie'. */
    public static final String PV_UNITE_DUREE_VIE = "pv_unite_duree_vie";
    /** DMD value of type docNorm */
    public static final String DMD_VALUE_OF_TYPE_DOCNORM = "DMD-Document Matériaux Définition";
    /** DMF value of type docNorm */
    public static final String DMF_VALUE_OF_TYPE_DOCNORM = "DMF général-Document Matériaux Fabrication";
    /** Property for retrieving the 'suivi utilisation'. */
    public static final String PV_SUIVI_UTILISATION = "pv_suivi_utilisation";
    /** Property for retrieving the effectivity. */
    public static final String PV4_TYPE_EFFECTIVITY = "pv4_type_effectivite";
    /**
     * Property for retrieving the 'suivi utilisation'.
     */
    public static final String PV_SUIVI_DEVELOPPEMENT = "pv_suivi_developpement";
    /** Property for retrieving the 'suivi montage'. */
    public static final String PV_SUIVI_MONTAGE = "pv_suivi_montage";
    /**
     * Property for retrieving the 'transfert lien logitique'.
     */
    public static final String PV_TRANSFERT_LIEN_LOGISTI = "pv_transfert_lien_logisti";
    /**
     * Property for retrieving the 'transfert lien montage'.
     */
    public static final String PV_TRANSFERT_LIEN_MONTAGE = "pv_transfert_lien_montage";
    /** Property for retrieving the 'classement'. */
    public static final String PV_CLASSEMENT = "pv_classement";
    /** Property for retrieving the 'classement matiere'. */
    public static final String PV_CLASSEMENT_MATIERE = "pv_classement_matiere";
    /** Property for retrieving the 'responsable conception' user id. */
    public static final String PV_RESPONSABLE_CONCEPTION = "pv_responsable_conception";
    /** Property for retrieving the 'fournisseurs' (Array of String). */
    public static final String PV_FOURNISSEURS = "pv4_pv_fournisseurs";
    /** Property for retrieving the responsable repere of a Form. */
    public static final String PV_RESPONSABLE_REPERE = "pv_responsable_repere";
    /** Property for retrieving the reference transposee snecma of a Form. */
    public static final String PV_REF_TRANSPO_SNECMA = "pv_ref_transpo_snecma";
    /** Property for retrieving the designationEN of a Form. */
    public static final String PV_REF_COMPLETE_CONCEPTEUR = "pv_ref_complete_concepteur";
    /** Property for retrieving the designationEN of a Form. */
    public static final String PV_DESIGNATION_EN = "pv_designation_en";
    /** Property for retrieving the document controle of a Part. */
    public static final String PV_DOCUMENT_CONTROLE = "pv_document_controle";
    /** Property for retrieving the obturation of a Part. */
    public static final String PV_OBTURATION = "pv_obturation";
    /** Property for retrieving the ref associated. */
    public static final String PV_REF_ASSOCIEE = "pv_ref_associee";
    /** Property for retrieving the coherence control. */
    public static final String PV_COHERENCE_CONTROL = "pv_controle_coherence";
    /** Property for retrieving the equivalent sns sin of a RF. */
    public static final String PV_EQUIVALENT_SNS_SIN = "pv_equivalent_sns_sin";
    /**
     * Property for retrieving the equivalent maquette int ext of a RF Admin / RF Admin A.
     */
    public static final String PV_MAQ_INT_EXT = "pv_maq_int_ext";
    /** Property for retrieving the type produit of a Part PV. */
    public static final String PV_TYPE_PRODUIT = "pv_type_produit";
    /** Property for retrieving the frontiere cooperant of a RF Admin Revision. */
    public static final String PV_FRONTIERE_COOPERANT = "pv_frontiere_cooperant";
    /** Property for retrieving the frontiere avion of a RF Admin Revision. */
    public static final String PV_FRONTIERE_AVION = "pv_frontiere_avion";
    /** Property for retrieving the 'origine demande'. */
    public static final String PV_ORIGINE_DEMANDE = "pv4_origine_demande";
    /** Property for retrieving the status of a User. */
    public static final String STATUS = "status";
    /** Property for retrieving the parts which are alternatives to an Alt Part. */
    public static final String PV_ALTERNATIVE = "_PV_alternative";
    /** Property for retrieving the 'Clause de propriete'. */
    public static final String PV_CLAUSE_PROPRIETE = "pv_clause_propriete";
    /**
     * Property for retrieving the Effectivities of an effectivity TcReleaseStatus.
     */
    public static final String EFFECTIVITIES = "effectivities";

    // Internal Object types
    /** Property for retrieving the type alternative 1 of an Alternate Revision Master. */
    public static final String PV_TYPE_ALTERNATIVE_1 = "pv_type_alternative_1";
    /** Property for retrieving the type alternative 2 of an Alternate Revision Master. */
    public static final String PV_TYPE_ALTERNATIVE_2 = "pv_type_alternative_2";
    /** Property for retrieving the type det 1 of a DET Revision Master. */
    public static final String PV_TYPE_DET_1 = "pv_type_det_1";
    /** Property for retrieving the type det 2 of a DET Revision Master. */
    public static final String PV_TYPE_DET_2 = "pv_type_det_2";
    /** Property for retrieving the type part montage 1 of a Part Assemb Revision Master. */
    public static final String PV_TYPE_PART_MONTAGE_1 = "pv_type_part_montage_1";
    /** Property for retrieving the type part montage 2 of a Part Assemb Revision Master. */
    public static final String PV_TYPE_PART_MONTAGE_2 = "pv_type_part_montage_2";
    /** Property for retrieving the type part non aero of a Part No Aero Revision Master. */
    public static final String PV_TYPE_PART_NON_AERO = "pv_type_part_non_aero";
    /** Property for retrieving the type part aero 3 of a Part Aero Revision Master. */
    public static final String PV_TYPE_PART_AERO_3 = "pv_type_part_aero_3";
    /** Property for retrieving the type part aero 2 of a Part Aero Revision Master. */
    public static final String PV_TYPE_PART_AERO_2 = "pv_type_part_aero_2";
    /** Property for retrieving the type part aero 1 of a Part Aero Revision Master. */
    public static final String PV_TYPE_PART_AERO_1 = "pv_type_part_aero_1";
    /** Property for retrieving the type standard of a Standard Revision Master. */
    public static final String PV_TYPE_STANDARD = "pv_type_standard";
    /** Property for retrieving the type of a DocNorm. */
    public static final String PV_TYPE_DOC_NORM = "pv_type_doc_norm";

    // TcReleaseStatus names
    /** TcReleaseStatus name 'Def Approved'. */
    public static final String DEF_APPROVED = "Def Approved";

    // Geometry properties
    /** Property for retrieving the 'geometrie piece rigide'. */
    public static final String PV_GEOMETRIE_PIECE_RIGIDE = "pv_geo_piece_rigide";
    /** Property for retrieving the 'geometrie simplifiee'. */
    public static final String PV_GEOMETRIE_SIMPLIFIEE = "pv_geo_piece_simplifiee";
    /** Property for retrieving the 'enveloppe cinematique'. */
    public static final String PV_ENVELOPPE_CINEMATIQUE = "pv_enveloppe_cinematique";
    /** Property for retrieving the 'enveloppe maintenance'. */
    public static final String PV_ENVELOPPE_MAINTENANCE = "pv_enveloppe_maintenance";
    /** Property for retrieving the 'enveloppe montage'. */
    public static final String PV_ENVELOPPE_MONTAGE = "pv_enveloppe_montage";
    /** Property for retrieving the 'trace axiale'. */
    public static final String PV_TRACE_AXIALE = "pv_trace_axiale";
    /** Property for retrieving the 'interface RF Admn'. */
    public static final String PV_INTERFACE_RF_ADMIN = "pv_interface";
    public static final String PV_PROJET_MOTEUR = "pv_projet_moteur";
    public static final String PV_MAQ_ECHANGEABLE = "pv_maq_echangeable";
    public static final String PV_WORKPACKAGE = "pv_workpackage";

    // TcEffectivity properties
    /** Property for retrieving the date_range_text of a date TcEffectivity. */
    public static final String DATE_TEXT_RANGE = "date_range_text";
    /** Property for retrieving the unit_range_text of a Unit. */
    public static final String UNIT_RANGE_TEXT = "unit_range_text";

    // documentation pseudo-folder (Specific Snecma)
    /** Property for retrieving the REACH documents of a Part. */
    public static final String FOLDER_PV_REACH_DOCS = "_PV_reach_docs";
    /** Property for retrieving the ITAR documents of a Part. */
    public static final String FOLDER_PV_ITAR_DOCS = "_PV_itar_docs";
    /** Property for retrieving the definition documents of a Part. */
    public static final String FOLDER_PV_DEFINITION_DOCS = "_PV_definition_docs";

    // Spare Parts form properties
    /** Property for retrieving the 'mot cle EN' */
    public static final String PV_MOT_CLEF_EN  = "pv_mot_clef_en";
    /** Property for retrieving the 'mot cle FR' */
    public static final String PV_MOT_CLEF_FR  = "pv_mot_clef_fr";
}
