Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

Résumé

Manipulation de l'entité

...

BaseUser (Utilisateurs)

...

en lecture/écriture/suppression via un objet métier depuis une application externe.

Par défaut, les enregistrements baseuser renvoyés correspondent uniquement à des "vraies" personnes (donc sont exclus les baseuser où resourcetype_id, teamtype_id ou customer_ID_subcontractor sont renseignés)

Tables

Les tables utilisées sont :

  • sw_data_baseuser

...

  • : Table des utilisateurs

Les tables liées sont :

  • sw_data_baseprofileheaderuser

...

  • : Table des entêtes de profils utilisateurs

  • sw_data_baseuserprofile

...

  • : Table des profils utilisateurs (variables)

  • sw_sys_device

...

  • : Table système des comptes

Critères d'activation

WHK_Baseuser

...

est défini dans la gestion des webhooks du studio.

Fonctionnement

verb: GET
resultType: simple

Bloc de codeinfo
languagejson
  "baseuser":{
    "codebaseuser": "RJ",
    "lastName": "ROSEN",
    "firstName": "Jean",
    "initials": "RJ",
    "email": "jrosen@papyrus.fr",
    "phoneNumber": "03 88 81 50 10",
    "faxNumber": "",
    "address1": "12 rue des érables",
    "address2": "",
    "postalCode": "67000",
    "city": "STRASBOURG",
    "position": "User",
    "department": "",
    "generictype_ID_country": "FR",
    "generictype_ID_province": "",
    "baseculture_ID": "FR-FR",
    "branchoffice_ID": "SXB",
    "resourcetype_ID": ""
  }

verb: GET
resultType: extended

Bloc de codeinfo
languagejson
  "baseuser":{
    "codebaseuser": "RJ",
    "lastName": "ROSEN",
    "firstName": "Jean",
    "initials": "RJ",
    "email": "jrosen@papyrus.fr",
    "phoneNumber": "03 88 81 50 10",
    "faxNumber": "",
    "address1": "12 rue des érables",
    "address2": "",
    "postalCode": "67000",
    "city": "STRASBOURG",
    "position": "User",
    "department": "",
    "generictype_ID_country": "FR",
    "generictype_ID_province": "",
    "baseculture_ID": "FR-FR",
    "branchoffice_ID": "SXB",
    "resourcetype_ID": "",
    "supervisor": "",
    "useMileageRate": "",
    "account": "",
    "analyticSection": "",
    "productdepot_ID": "Dépôt Jean ROSEN",
    "lastGPSDate": "",
    "gpsLongitude": "",
    "gpsLatitude": "",
    "fullView": "",
    "changeAuthorization": "",
    "productdepot_ID_current": "",
    "techSyncRule": "",
    "homePage": "",
    "teamtype_ID": "",
    "customer_ID_subcontractor": "" 
  }

Verbverb: GET
resultType: extendedRelated
en complément du résultat pour resultType: extended on aura le détail pour les tables productdepot, productdepot_current, generictype_country, generictype_province, baseculture, branchoffice, resourcetype et teamtype.

...

Bloc de code
languagejson
"related":[
{
  "productdepot":{
    "codeproductdepot": "D-RJ",
    "label": "Dépôt Jean ROSEN",
    "vehicle": "1",
    "main": "0",
    "vehicleRegistration": "DV-092-SW"
  },
  "productdepot_current":{
    "codeproductdepot": "",
    "label": "",
    "vehicle": "",
    "main": "",
    "vehicleRegistration": ""
  },
  "generictype_country":{
    "codegenerictype": "COUNTRY-FR",
    "label": "FRANCE",
    "originalCode": "FR",
    "dataType": "COUNTRY",
    "description": "",
    "translationKey": "GenType_COUNTRY-FR",
    "generictype_ID_parent": "",
    "tag": "",
    "orderNumber": ""
  },
  "generictype_province":{
    "codegenerictype": "",
    "label": "",
    "originalCode": "",
    "dataType": "",
    "description": "",
    "translationKey": "",
    "generictype_ID_parent": "",
    "tag": "",
    "orderNumber": ""
  },
  "baseculture":{
    "codebaseculture": "FR-FR",
    "label": "French - France",
    "codelanguage": "FR"
  },
  "branchoffice":{
    "codebranchoffice": "SXB",
    "name": "Strasbourg",
    "address1": "10 Rue du Homard",
    "address2": "",
    "postalCode": "67000",
    "city": "Strasbourg",
    "generictype_ID_country": "FR",
    "phoneNumber": "0388123456",
    "faxNumber": "0388123400",
    "email": "weavysxb@divalto.com",
    "website": "",
    "bankholidayparamheader_ID": "FRANCE-ALSACE-MOSELLE",
    "gpsLongitude": "7.7475",
    "gpsLatitude": "48.58367",
    "baseusergroup_ID": "SXB-BRANCHOFFICE"
  },
  "resourcetype":{
    "coderesourcetype": "",
    "label": ""
  },
  "teamtype":{
    "codeteamtype": "",
    "label": "" 
  }
}]

verb: PUT

info
Bloc de code
language
json
{
  "baseuser": {
    "codebaseuser": "RJ", /* Code globalement unique de l'utilisateur (Varchar (255))*/
    "lastName": "ROSEN", /* Nom de famille (Varchar (64))*/
    "firstName": "Jean", /* Prénom (Varchar (64))*/
    "initials": "RJ", /* Initiales (Varchar (64))*/
    "email": "jrosen@papyrus.fr", /* Email (Varchar (255))*/
    "phoneNumber": "03 88 81 50 10", /* Numéro de téléphone (Varchar (64))*/
    "faxNumber": "", /* Numéro de télécopie (Varchar (64))*/
    "address1": "", /* Adresse 1 (Varchar (64))*/
    "address2": "", /* Adresse 2 (Varchar (64))*/
    "postalCode": "67000", /* Code postal (Varchar (10))*/
    "city": "STRASBOURG", /* Ville (Varchar (64))*/
    "position": "User", /* Fonction (Varchar (64))*/
    "department": "", /* Service (Varchar (64))*/
    "supervisor": "0", /* Superviseur (Valeurs possibles : 0,1) (Bool ())*/
    "useMileageRate": "0", /* Forfait indemnité kilométrique (Valeurs possibles : 0,1) (Bool ())*/
    "account": "", /* Compte comptable (Varchar (64))*/
    "analyticSection": "", /* Section analytique (Varchar (64))*/
    "productdepot_ID": "1", /* Code dépôt (ForeignKey () - sw_data_productdepot.codeproductdepot)*/
    "productdepot_ID_current": "", /* Code dépôt actuel (ForeignKey () - sw_data_productdepot.codeproductdepot)*/
    "password": "", /* Mot de passe (Varchar (255))*/
    "fullView": 0, /* Vue totale (Valeurs possibles : 0,1) (Bool ())*/
    "changeAuthorization": "", /* Niveau d'autorisation de modification (Int ())*/
    "generictype_ID_country": "COUNTRY-FR", /* Code pays (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = COUNTRY)*/
    "generictype_ID_province": "", /* Code province (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = PROVINCE)*/
    "baseculture_ID": "FR-FR", /* Code culture (ForeignKey () - sw_data_baseculture.codebaseculture)*/
    "branchoffice_ID": "SXB", /* Code de l'agence de rattachement (ForeignKey () - sw_data_branchoffice.codebranchoffice)*/
    "techSyncRule": "", /* Règle de synchronisation du technicien (Valeurs possibles : 0,1,2,3) (Int ())*/
    "homePage": "", /* Page d'accueil (Varchar (255))*/
    "resourcetype_ID": "", /* Code type de ressource (ForeignKey () - sw_data_resourcetype.coderesourcetype)*/
    "teamtype_ID": "", /* Code type d'équipe (ForeignKey () - sw_data_teamtype.codeteamtype)*/
    "customer_ID_subcontractor": "" /* Code tiers sous-traitant (ForeignKey () - sw_data_customer.codecustomer)*/
  },
  /* Profils de l'utilisateur (0 à n) */
  "baseprofileheaderuser": [
  {
    "codebaseprofileheaderuser": "RJ-COMM", /* Code globalement unique de l'entête du profil utilisateur. Composé : codebaseuser + "-" + codebaseprofileheader (Varchar (255))*/
    "baseuser_ID": "RJ", /* Code utilisateur. Reprendre le code utilisateur du bloc json "baseuser" (ForeignKey () - sw_data_baseuser.codebaseuser)*/
    "baseprofileheader_ID": "COMM", /* Code entête de profil (ForeignKey () - sw_data_baseprofileheader.codebaseprofileheader)*/
    "orderNumber": 1 /* Numéro d'ordre (Int ())*/
  },
  {
    "codebaseprofileheaderuser": "RJ-COORD", /* Code globalement unique de l'entête du profil utilisateur. Composé : codebaseuser + "-" + codebaseprofileheader (Varchar (255))*/
    "baseuser_ID": "RJ", /* Code utilisateur. Reprendre le code utilisateur du bloc json "baseuser" (ForeignKey () - sw_data_baseuser.codebaseuser)*/
    "baseprofileheader_ID": "COORD", /* Code entête de profil (ForeignKey () - sw_data_baseprofileheader.codebaseprofileheader)*/
    "orderNumber": 2 /* Numéro d'ordre (Int ())*/
  }],
  /* Groupe de variable de l'utilisateur (0 à 1) */
  "baseuserprofile": {
    "codebaseuserprofile": "RJ-SWS.Options", /* Code globalement unique du profil utilisateur. Composé : codebaseuser + "-" + codebasevariablegroup (Varchar (255))*/
    "baseuser_ID": "RJ", * Code utilisateur. Reprendre le code utilisateur du bloc json "baseuser" (ForeignKey () - sw_data_baseuser.codebaseuser)*/
    "basevariablegroup_ID": "SWS.Options" /* Code groupement de variable (ForeignKey () - sw_data_basevariablegroup.codebasevariablegroup)*/
  }
}

Compléments :

  • Valeurs du champ "techSyncRule"

    • 0 : [Clients] Le technicien récupère tous les tiers

    • 1 : [Interventions] Le technicien récupère uniquement les tiers des interventions qui lui sont attribuées

    • 2 : [Contrats] Le technicien récupère les tiers des interventions qui lui sont attribuées ainsi que les tiers sous contrat de l'agence à laquelle il est rattaché

    • 3 : [Agence] Le technicien récupère les tiers des interventions qui lui sont attribuées ainsi que tous les tiers de l'agence à laquelle il est rattaché

  • A la fin de la création/modification d'un utilisateur, l'event "Webhook Account creation" est appelé afin de créer les comptes manquants pour les profils coordinateurs, commerciaux et techniciens. Cet event ne fera pas de mise à jour.

verb: LIST
resultType: simple, extended , extendedRelated reprendre les définitions du GET

info
Bloc de code
language
json
"filters:" {
  "codeBaseuser": "value", filter is equal
  "lastName": "value", filter is contains
  "firstName": "value", filter is contains
  "codeCountry": "value", filter is equal
  "codeBranchoffice": "value", filter is equal
  "codeResourcetype": "value", filter is equal
  "codeTeamtype": "value", filter is equal
  "codeQueue": "value", filter is equal
  "deviceName": "value", filter is equal
},
"orderBy": "value"

Valeurs possibles pour le tri "orderBy" :

  • lastNameAscfirstNameAsc : par nom et prénom ascendant

Compléments :

  • Pour les verb LIST et GET, les utilisateurs renvoyés ne correspondent qu'à des personnes (sont exclus les ressources, les équipes et les sous-traitants)

verb: DELETE
Une suppression d'un utilisateur (sw_data_baseuser) va supprimer en cascade les éléments dans les tables liées sw_data_baseprofileheaderuser et sw_data_baseuserprofile.