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é  Equipment (Equipements)  en lecture/écriture/suppression via un objet métier depuis une application externe.

...

Les tables utilisées sont :

  • sw_data_equipment

     

    : Table des équipements

Les tables liées sont :

  • sw_data_equipmentaddress

     

    : Table des adresses des équipements

Critères d'activation

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

Fonctionnement

...

settings parameters

Bloc de code
languagejson
"settings":
{
  "getContracts": "1", // pour le verb GET et LIST permet de retourner les informations des contrats actifs de l'équipement
  "getWarranties": "1" // pour le verb GET et LIST permet de retourner les informations des garanties actives de l'équipement
}

verb: GET
resultType: simple

info
Bloc de code
language
json
  "equipment":{
    "codeequipment": "BAL01-201910",
    "description": "Ballon 300 litres",
    "equipmenttype_ID": "BALL",
    "serialNumber": "BAL-169-2",
    "equipmentstatus_ID": "BEING_CREATED"
  }

verb: GET
resultType: extended

info
Bloc de code
language
json
  "equipment":{
    "codeequipment": "BAL01-201910",
    "description": "Ballon 300 litres",
    "equipmenttype_ID": "BALL",
    "serialNumber": "BAL-169-2",
    "equipment_ID_parent": "",
    "location": "Cave",
    "gpsLongitude": "",
    "gpsLatitude": "",
    "gpsAccuracy": "",
    "gpsUpdateDate_fixed": "",
    "gpsManual": "",
    "baseuser_ID_favoriteTechnician": "",
    "installationDate": "2020-08-04 00:00:00",
    "equipmentstatus_ID": "BEING_CREATED",
    "customerReference": "",
    "brand": "",
    "maker": "",
    "inServiceDate": "",
    "terminationDate": "",
    "replacementDate": "",
    "product_ID": "",
    "quantityRepresented": "1",
    "orderheader_ID": "",
    "externalID": "DTR 1 C1",
    "equipmentkind_ID": "DEFAULT"
  }

Verbverb: GET
resultType: extendedRelated
en complément du résultat pour resultType: extended on aura le détail pour les tables  equipmenttypeequipmenttype, equipmentkind, equipment_parent, baseuser_favoriteTechnician, equipmentstatus et product

Infocode
languagejson
"related":[
{
  "equipmenttype":{
    "codeequipmenttype": "BALL",
    "label": "Ballons d'eau chaude",
    "translationKey": "",
    "equipmentkind_ID": "DEFAULT"
  },
  "equipmentkind":{
    "codeequipmentkind": "DEFAULT",
    "label": "Par défaut"
    "translationKey": "Gen_ByDefault"
  }
}]

Verbverb: GET
resultType: simple, extended, extendedRelated

Paramètres getContract et getWarranties = 1

...


getContracts: "1",
getWarranties: "1"
getModuleColdEquipmentCharacteristic: “1”

Bloc de code
languagejson
"equipment": {
    ...
  },
"contracts": [
  {
    "codecontract": "2950000000014",
    "label": "Contrat maintenance",
    "contractNumber": "CONTRACT_000057",
    "startDate": "2020-07-13 00:00:00",
    "endDate": ""
  },
  {
    ... 
  }],
"warranties": [
  {
    "codeequipmentwarranty": "5550000000022",
    "equipmentwarrantytype_ID": "Garantie classique",
    "startDate": "2020-05-18 16:20:05",
    "endDate": "2021-05-18 16:20:05",
    "partIncluded": "0",
    "workIncluded": "0",
    "travelIncluded": "0"
  },
  {
    ...
  }]

verb: PUT
Selon webhookVersion renseigné dans le header :

  • webhookVersion = 1 -> les blocs json equipmenttype, customer et site sont obligatoires.

  • webhookVersion = 2 -> les blocs json equipmenttype, customer et site ne doivent plus être renseignés, sinon il y aura une erreur en retour. Ils doivent être appelés explicitement par leur webhooks correspondants (equipmenttype, customer et customeraddress) en amont.

Info
{ "equipmenttype

La description pour webhookVersion = 1 peut être consultée dans les pages de la version Divalto weavy 5.5 et antérieures.

Bloc de code
languagejson
{
  "equipment": {
    "
codeequipmenttype
codeequipment": "
BALL
BAL01-201910", /* Code globalement unique 
du
de 
type d
l'équipement (Varchar (255))*/
    "
label
equipmentkind_ID": "
Ballons d'eau chaude
DEFAULT", /* 
Libellé
Code du 
type
genre d'équipement (
Varchar
ForeignKey (
255
)
*/
 
"equipmentkind
- sw_data_equipmentkind.codeequipmentkind)*/
    "equipmenttype_ID": "
DEFAULT
BALL", /* Code du 
genre
type d'équipement (ForeignKey () - sw_data_
equipmentkind
equipmenttype.
codeequipmentkind
codeequipmenttype)*/
    "
internalcodeequipmenttype
description":
null
 "Ballon 300 litres", /* 
codeequipmenttype original
Description de 
weavy s'il y a eu transcodage (Varchar (255
l'équipement (Text (65535))*/
  
},
  
"
equipment
serialNumber": 
{ "codeequipment": "BAL01-201910", /* Code globalement unique de l'équipement
"BAL-169-2", /* N° de série (Varchar (
255
64))*/
    "
equipmentkind
equipment_ID_Parent": 
"DEFAULT"
null, /* Code 
du
de 
genre d
l'équipement parent (nécessite que le parent a été créée avant celui-ci) (ForeignKey () - sw_data_
equipmentkind
equipment.
codeequipmentkind
codeequipment)*/
    "
equipmenttype_ID
location": "
BALL
Cave", /* 
Code
Localisation 
du
sur 
type
le 
d'équipement
site (
ForeignKey
Varchar (
) - sw_data_equipmenttype.codeequipmenttype
255))*/
    "
description
equipmentstatus_ID": "
Ballon 300 litres
BEING_CREATED", /* 
Description
Statut de l'équipement (
Text
ForeignKey (
65535)
) - sw_data_equipmentstatus.codeequipmentstatus)*/
    "
serialNumber
customerReference": 
"BAL-169-2"
null, /* 
Référence 
de
chez 
série
le client (Varchar (64))*/
    "
equipment_ID_Parent
brand": 
null
"", /* 
Code de l'équipement parent (nécessite que le parent a été créée avant celui-ci) (ForeignKey () - sw_data_equipment.codeequipment
Marque (Varchar (255))*/
    "
location
maker": "
Cave
", /* 
Localisation sur le site
Constructeur (Varchar (255))*/
    "installationDate"
equipmentstatus_ID"
: "
BEING_CREATED
2020-08-04", /* 
Statut
Date 
de l
d'
équipement
installation (
ForeignKey
DateTime ()
- sw_data_equipmentstatus.codeequipmentstatus
)*/
    "
customerReference
inServiceDate": null, /* Date 
Référence
de 
chez
mise 
le
en 
client
service (
Varchar
DateTime (
64
))*/
    "
brand
terminationDate": 
""
null, /*
Marque
 Date de fin d'existence (
Varchar
DateTime (
255
))*/
    "
maker
replacementDate": 
""
null, /* 
Constructeur
Date de remplacement (
Varchar
DateTime (
255
))*/
    "
installationDate
product_ID": 
"2020-08-04"
null, /* 
Date
Code 
d'installation
article (
DateTime
ForeignKey () - sw_data_product.codeproduct)*/ 
    "
inServiceDate
quantityRepresented": 
null
"1", /* 
Date
Quantité 
de mise en service (DateTime
représentée (Int ())*/
    "
terminationDate
externalID": 
null, /* Date de fin d'existence (DateTime ())*/
"DTR                1         C12"
replacementDate": null
, /* 
Date
Origine 
de
externe 
remplacement
(
DateTime
Varchar (64))*/
    "
product_ID
internalcodeequipment": null, /*
Code article (ForeignKey () - sw_data_product.codeproduct
 codeequipment original de weavy pour transcodage (Varchar (255))*/

    
"quantityRepresented": "1", /* Quantité représentée (Int ())*/ "externalID": "DTR
/* Optionnel : pour mettre à jour les champs dynamiques selon paramétrage */
    /* Exemple 1 : */
    "dynamicfields": 
1
    [{
    
C12",
 
/* Origine externe (Varchar (64))*/
 "fieldname": "MATPRIX",
      "
internalcodeequipment
fieldvalue": 
null, /* codeequipment original de weavy s'il y a eu transcodage (Varchar (255)) */
"45.12"
    },
    {
      "fieldname": 
/* Optionnel : pour mettre à jour les champs dynamiques selon paramétrage */ /* Exemple 1 : */
"MATCODE",
      "fieldvalue": "Nickel"    
    },
    {
      
"dynamicfields":
...
    }]
[{
    /* Exemple 2 
"fieldname"
: 
"MATPRIX",
*/
    /* A 
"fieldvalue": "45.12" }, { "fieldname": "MATCODE",
partir de la version SUMMER'21, le mappage direct des champs dynamiques est possible en utilisant le nom du champ en bdd */
    "
fieldvalue
v_MATPRIX": "
Nickel
45.12",
    
},
"v_MATCODE": "Nickel",
   
{
 
...
  },
 
}]
 "equipmentaddress": {
  
/*
 
Exemple
 
2 : */ /* A partir de la version SUMMER'21, le mappage direct des champs dynamiques est possible en utilisant le nom du champ en bdd
"codeequipmentaddress": "BAL01-201910-SITE", /* Code globalement unique de l'adresse de l'équipement (Varchar (255))*/
    "
v
equipment_
MATPRIX
ID": "
45.12
BAL01-201910", /* Code de 
"v_MATCODE": "Nickel", ... }, "equipmentaddress": {
l'équipement. Reprendre le code équipement du bloc json "equipment" (ForeignKey () - sw_data_equipment.codeequipment)*/
    "
codeequipmentaddress
customeraddress_ID" : "
BAL01
C0000001-
201910-SITE
BDX", /* Code 
globalement unique de l'
adresse 
de
client 
l'équipement
 (
Varchar
ForeignKey (
255)
) - sw_data_customeraddress.codecustomeraddress)*/
    "
equipment_ID
startDate": "
BAL01
2019-10-
201910
26", /* 
Code
Date de 
l'équipement. Reprendre le code équipement du bloc json "equipment" (ForeignKey () - sw_data_equipment.codeequipment
début (DateTime ())*/
    "endDate": null, /* Date de fin (DateTime ())*/
    "
customeraddress_ID
internalcodeequipmentaddress"
: 
"C0000001-BDX",
null /* 
Code adresse client (ForeignKey () - sw_data_customeraddress.codecustomeraddress
codeequipmentaddress original de weavy pour transcodage (Varchar (255))*/
  }
}

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

Bloc de code
languagejson
"filters:" {
  "
startDate
codeEquipment": "
2019-10-26
value", 
/* Date de début (DateTime ())*/
filter is equal
  "description": "value", filter is contains
  "
endDate
serialNumber": 
null
"value", 
/* Date de fin (DateTime ())*/
filter is equal
  "equipmentType": "value", filter is equal
  "
internalcodeequipment
equipmentKind": 
null, /* codeequipment original de weavy s'il y a eu transcodage (Varchar (255)) */ "internalcustomeraddress_ID": null /* customeraddress_ID original de weavy s'il y a eu transcodage (Varchar (255)) */ }, "site": { "codecustomeraddress": "C0000001-BDX", /* Code globalement unique d'une adresse client (Varchar (255))*/ "customer_ID": "C0000001", /* Code client (ForeignKey () - sw_data_customer.codecustomer)*/ "name": "ENTREPÔT GUICHARD", /* Nom de l'adresse client (Varchar (255))*/ "address1": "15 Avenue Champollion", /* Adresse 1 (Varchar (255))*/ "address2": null, /* Adresse 2 (Varchar (255))*/ "address3": null, /* Adresse 3 (Varchar (255))*/ "postalCode": "21000 ", /* Code postal (Varchar (16))*/ "city": "Dijon", /* Ville (Varchar (64))*/ "phoneNumber": "03 90 22 75 45", /* N° de téléphone (Varchar (64))*/ "faxNumber": "03 90 22 75 40", /* N° de télécopie (Varchar (64))*/ "mobilePhoneNumber": null, /* N° de portable (Varchar (64))*/ "email": null, /* Email (Varchar (255))*/ "generictype_ID_country": "COUNTRY-FR", /* Code pays (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = COUNTRY)*/ "generictype_ID_province": null, /* Code province (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = PROVINCE)*/ "billingAddress": "1", /* Adresse de facturation (Valeurs possibles : 0,1) (Bool ()) */ "defaultBillingAddress": "0", /* Adresse de facturation par défaut (Valeurs possibles : 0,1) (Bool ()) */ "deliveryAddress": "1", /* Adresse de livraison (Valeurs possibles : 0,1) (Bool ()) */ "defaultDeliveryAddress": "0", /* Adresse de livraison par défaut (Valeurs possibles : 0,1) (Bool ()) */ "areaCode": "", /* Code région (Varchar (64))*/ "contact": "M. James", /* Contact (Varchar (64))*/ "accessCode": "", /* Code d'accès (Varchar (64))*/ "floor": "", /* Etage (Varchar (64))*/ "apartment": "", /* Appartement(Varchar (64))*/ "miscInfos": "", /* Informations diverses (Text (65535))*/ "baseuser_ID_favoriteTechnician": "TECH-01", /* Code technicien préféré (ForeignKey () - sw_data_baseuser.codebaseuser)*/ "branchoffice_ID": "", /* Code de l'agence de rattachement (ForeignKey () - sw_data_branchoffice.codebranchoffice)*/ "bankholidayparamheader_ID": "", /* Code entête paramétrage jours fériés (ForeignKey () - sw_data_bankholidayparamheader.codebankholidayparamheader)*/ "baseculture_ID": "", /* Code culture (ForeignKey () - sw_data_baseculture.codebaseculture)*/ "site": 1, /* Site. Ici toujours mettre la valeur 1 car il s'agit d'une adresse qui est un site. (Valeurs possibles : 0,1) (Bool ())*/ "siteCode": "BDX", /* Code du site (Varchar (255)) "siteName": "Entrepôt Dijon", /* Nom du site (Varchar (255))*/ "erpAddressID": "BDX", /* ID adresse ERP (Varchar (255)) "internalCodeCustomeraddress": null, /* CodeCustomeraddress original de weavy s'il y a eu transcodage (Varchar (255)) */ "internalCodeCustomer": null /* CodeCustomer original de weavy s'il y a eu transcodage (Varchar (255)) */ }, "customer": { "codecustomer": "C0000001", /* Code globalement unique du client (Varchar (255))*/ "name": "ENTREPRISE DIJON GUICHARD", /* Nom du client (Varchar (255))*/ "address1": "33 Avenue du Drapeau", /* Adresse 1 (Varchar (255))*/ "address2": null, /* Adresse 2 (Varchar (255))*/ "address3": null, /* Adresse 3 (Varchar (255))*/ "postalCode": "21000", /* Code postal (Varchar (16))*/ "city": "DIJON", /* Ville (Varchar (64))*/ "phoneNumber": "03 90 11 22 33", /* N° de téléphone (Varchar (64))*/ "faxNumber": "03 90 11 22 44", /* N° de télécopie (Varchar (64))*/ "mobilePhoneNumber": "06 90 11 22 33", /* N° de portable (Varchar (64))*/ "email": "contact@guichard.com", /* Email (Varchar (255))*/ "website": "https://www.guichard.com", /* Site internet (Varchar (255))*/ "siretNumber": null, /* N° siret (Varchar (40))*/ "generictype_ID_customerType": "CUSTOMER_TYPE-CTC", /* Code type de tiers. Mettre CUSTOMER_TYPE-CTC pour un client. (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = CUSTOMER_TYPE)*/ "generictype_ID_country": "COUNTRY-FR", /* Code pays (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = COUNTRY)*/ "baseuser_ID": "GRO-OUES", /* Code utilisateur (ForeignKey () - sw_data_baseuser.codebaseuser)*/ "deliveryDays": "1A;1B;2A;2B;3A;3B;4A;4B;5A;5B;", /* Jours de livraison (Varchar (255))*/ "openingDays": "1A;1B;2A;2B;3A;3B;4A;4B;5A;5B;", /* Jours d'ouverture (Varchar (255))*/ "comment": "", /* Commentaires (Text (65535))*/ "blocked": "0", /* Client bloqué (Valeurs possibles : 0,1) (Bool ())*/ "blockedComment": "", /* Commentaires client bloqué (Text (65535))*/ "message": "", /* Message (Text (65535))*/ "vacationStart": "", /* Début des congés (Date ())*/ "vacationEnd": "", /* Fin des congés (Date ())*/ "underSurveillance": "0", /* Client sous surveillance (Valeurs possibles : 0,1) (Bool ())*/ "generictype_ID_customerFamily": "CUSTOMER_FAMILY-GROSARTG", /* Code famille client (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = CUSTOMER_FAMILY)*/ "generictype_ID_paymentMean": "PAYMENT_MEAN-N30", /* Code mode de règlement (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = PAYMENT_MEAN)*/ "generictype_ID_deliveryMode": "DELIVERY_MODE-CHRO", /* Code mode de livraison (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = DELIVERY_MODE)*/ "pricecategory_ID": "GR", /* Code catégorie tarifaire (ForeignKey () - sw_data_pricecategory.codepricecategory)*/ "discountRate": "0.00", /* Taux de remise (Double ())*/ "authorizedCredit": "0", /* Encours autorisé (Valeurs possibles : 0,1) (Bool ())*/ "apeCode": "516K", /* Code APE (Varchar (64))*/ "vatIntra": null, /* TVA intracommunautaire (Varchar (64))*/ "legalStatus": "Société Anonyme avec Directoire", /* Forme juridique (Varchar (64))*/ "workforce": "23", /* Effectif (Int ())*/ "customer_ID_paying": null, /* Code client payeur (ForeignKey () - sw_data_customer.codecustomer)*/ "generictype_ID_taxCode": "TAX_CUSTOMER-0", /* Code TVA client (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = TAX_CUSTOMER)*/ "risk": "1", /* Risque (Varchar (64))*/ "language": "FR", /* Code langue (ForeignKey () - sw_sys_language.codelanguage)*/ "accountNumber": "C0000001", /* N° de compte principal (Varchar (64))*/ "currency_ID": "EUR", /* Code devise ForeignKey () - sw_data_currency.codecurrency)*/ "generictype_ID_province": null, /* Code province (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = PROVINCE)*/ "generictype_ID_civility": "CIVILITY-SA", /* Code civilité (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = CIVILITY)*/ "customergroup_ID": "", /* Code groupe client (ForeignKey () - sw_data_customergroup.codecustomergroup)*/ "confirmationFax": "03 90 11 22 44", /* N° de télécopie de confirmation (Varchar (64))*/ "confirmationEmail": "contact@guichard.com", /* Email de confirmation (Varchar (255))*/ "generictype_ID_accountingCategory": "", /* Code catégorie comptable (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = ACCOUNTING_CATEGORY)*/ "generictype_ID_customerPotential": "CUSTOMER_POTENTIAL-B", /* Code potentiel client (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = CUSTOMER_POTENTIAL)*/ "generictype_ID_role": "", /* Code rôle (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = ROLE)*/ "unused": "0", /* Client inactif (Valeurs possibles : 0,1) (Bool ())*/ "generictype_ID_referencing": "PRODUCT_REFERENCING-NOTSTRICT", /* Code mode de référencement articles (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = PRODUCT_REFERENCING)*/ "generictype_ID_distribution": "DISTRIBUTION-SELF", /* Code type de distribution (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = DISTRIBUTION)*/ "generictype_ID_market": "MARKET-BIG", /* Code type de magasin (ForeignKey () - sw_data_generictype.codegenerictype avec datatype = MARKET)*/ "area": "", /* Superficie (Double ())*/ "baseculture_ID": "FR-FR", /* Code culture (ForeignKey () - sw_data_baseculture.codebaseculture)*/ "baseuser_ID_favoriteTechnician": "TECH-01", /* Code technicien préféré (ForeignKey () - sw_data_baseuser.codebaseuser)*/ "branchoffice_ID": "SXB", /* Code de l'agence de rattachement (ForeignKey () - sw_data_branchoffice.codebranchoffice)*/ "emailFormat": "", /* Format d'email (Varchar (255))*/ "isIndividual": "0", /* Client est un particulier (Valeurs possibles : 0,1) (Bool ())*/ "skype": "contact@guichard.com", /* Skype (Varchar (255))*/ "facebook": "https://www.facebook.com/guichard/", /* Facebook (Varchar (255))*/ "twitter": "https://twitter.com/guichard", /* Twitter (Varchar (255))*/ "youtube": "https://www.youtube.com/watch?v=6jGbnEwQJ54", /* YouTube (Varchar (255))*/ "linkedin": "https://www.linkedin.com/company/guichard", /* LinkedIn(Varchar (255))*/ "activity": "", /* Activité (Text (65535))*/ "internalCodeCustomer": null /* CodeCustomer original de weavy s'il y a eu transcodage (Varchar (255)) */ } }

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

Info
"filters:" { "codeEquipment": "value", filter is equal "description": "value", filter is contains "serialNumber": "value", filter is equal "equipmentType": "value", filter is equal "equipmentKind": "value", filter is equal "codeCustomerAddress": "value", filter is equal "codeEquipmentStatus": "value", filter is equal "equipmentNotClosed": "value", filter is codeEquipmentStatus <> 'DELETED' and (terminationDate is null OR terminationDate >= value) }
"value", filter is equal
  "codeCustomerAddress": "value", filter is equal
  "codeEquipmentStatus": "value", filter is equal
  "equipmentNotClosed": "value", filter is codeEquipmentStatus <> 'DELETED' and (terminationDate is null OR terminationDate >= value)
},
"orderBy": "value"

Valeurs possibles pour le tri "orderBy" :

  • codeEquipmentAsc : par code équipement ascendant

  • descriptionAsc : par description ascendant

  • serialNumberAsc : par n° de série ascendant

  • installationDateAsc : par date d'installation ascendant

  • installationDateDesc : par date d'installation descendant

  • codeEquipmentTypeAsccodeEquipmentAsc : par code type d'équipement ascendant et code équipement ascendant

  • codeEquipmentKindAsccodeEquipmentAsc : par code genre d'équipement ascendant et code équipement ascendant

  • codeEquipmentKindAsccodeEquipmentTypeAsccodeEquipmentAsc : par code genre d'équipement ascendant, code type d'équipement ascendant et code équipement ascendant