SmarMaker - Documentation
Docs» back:start

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
back:start [2025/09/03 08:39] – [ Fichier api.php] caprelback:start [2025/09/16 20:45] (Version actuelle) – modification externe 127.0.0.1
Ligne 1: Ligne 1:
-# DoliMobile - Back (PHP)+#SmartMaker - Back (PHP)
  
-La partie backoffice de dolimobile doit s'intégrer dans un module normal de dolibarr.+La partie backoffice de smartmaker doit s'intégrer dans un module normal de dolibarr.
  
-De ce fait lorsque vous déployez dolimobile dans votre module dolibarr vous aurez quelques nouveaux dossiers qui vont apparaître: +De ce fait lorsque vous déployez smartmaker dans votre module dolibarr vous aurez quelques nouveaux dossiers qui vont apparaître:
-  * `mobile` : dossier qui contiendra tout le code source de la partie mobile (front en React, voir plus loin) +
-  * `pwa` : le dossier dans lequel sera copié le contenu de l'application mobile "compilée" ainsi que le point d'entrée `api.php` +
-  * `smartmaker-api` : le dossier dans lequel vous devrez stocker les controleurs et mappeurs php de vos objets qui seront accessible via le routeur api.php présent dans le dossier `pwa`+
  
-Ainsi qu'un fichier `smartmaker-api-prepend.php` qui est utilisé pour factoriser du code et éviter d'avoir des entêtes php trop verbeux. +  * ''mobile'' : dossier qui contiendra tout le code source de la partie mobile (front en React, voir plus loin) 
-## Mapping dolibarr <-> application react+  * ''pwa'' : le dossier dans lequel sera copié le contenu de l'application mobile "compilée" ainsi que le point d'entrée ''api.php'' 
 +  * ''smartmaker-api'' : le dossier dans lequel vous devrez stocker les controleurs et mappeurs php de vos objets qui seront accessible via le routeur api.php présent dans le dossier ''pwa'' 
 + 
 +Ainsi qu'un fichier ''smartmaker-api-prepend.php'' qui est utilisé pour factoriser du code et éviter d'avoir des entêtes php trop verbeux. 
 +##Mapping dolibarr <-> application react
  
 Les objets dolibarr ne peuvent pas être directement transposés en react nous avons donc développé un système de "mapping" qui permet de faire correspondre des objets dolibarr avec leur équivalent react. Les objets dolibarr ne peuvent pas être directement transposés en react nous avons donc développé un système de "mapping" qui permet de faire correspondre des objets dolibarr avec leur équivalent react.
Ligne 15: Ligne 16:
 Chaque classe dolibarr qui a besoin d'être mappée peut l'être via un ensemble de techniques fines dont vous trouverez le détail ci dessous. Chaque classe dolibarr qui a besoin d'être mappée peut l'être via un ensemble de techniques fines dont vous trouverez le détail ci dessous.
  
-Exemple pour l'objet dolibarr Societe vous trouverez une classe dmSociete dans le projet smartAuth.+Exemple pour l'objet dolibarr ''Societe'' (qui est un objet du coeur) vous trouverez une classe ''dmSociete'' livrée dans le projet ''smartAuth''. Tout objet du coeur qui n'a pas encore de mapping fera l'objet d'une implémentation officielle dans ce projet, il faudrait pour celà nous indiquer (via une issue/ticket) sur le projet smartAuth qu'il manque un mapping...
  
-Si votre module apporte un objet SmartInter par exemple vous pourrez mapper ses champs vers react en implémentant un fichier dmSmartInter tout simplement.+Au niveau de votre module complémentaire, si vous avez un objet ''SmartInter'' (par exemple) vous pourrez mapper ses champs vers le front react en implémentant un fichier ''dmSmartInter''.
  
-Plus de détails sur le moteur de [[mapping dolibarr <-> react]]+Suivez le lien suivant pour plus de détails sur le moteur de [[mapping dolibarr - react]]
  
 ##Fichier api.php ##Fichier api.php
Ligne 25: Ligne 26:
 C'est dans ce fichier que vous aurez à implémenter les différents points d'entrée sur l'API dédiée à votre application. C'est dans ce fichier que vous aurez à implémenter les différents points d'entrée sur l'API dédiée à votre application.
  
-### Le routeur PHP+###Le routeur PHP
  
 Ce routeur php comprends la grammaire suivante: Ce routeur php comprends la grammaire suivante:
Ligne 31: Ligne 32:
   * Route::action   * Route::action
     * action pouvant être get post ou put (delete n'est pas encore implémenté)     * action pouvant être get post ou put (delete n'est pas encore implémenté)
-  * le 1er argument de la fonction est le nom du point d'entrée que vous voulez sur votre api, ainsi `Route::get('login'` correspond à la requête http `GET /login`+  * le 1er argument de la fonction est le nom du point d'entrée que vous voulez sur votre api, ainsi ''Route::get('login'... '' correspond à la requête http ''GET /login''
   * l'argument suivant donne le nom de la classe PHP qui soit être sollicitée   * l'argument suivant donne le nom de la classe PHP qui soit être sollicitée
   * le suivant contient le nom de la fonction à utiliser dans cette classe PHP   * le suivant contient le nom de la fonction à utiliser dans cette classe PHP
Ligne 39: Ligne 40:
 Grâce à ce routeur PHP il devient extrêmement facile de "suivre" les différentes actions possibles sur votre API ! Grâce à ce routeur PHP il devient extrêmement facile de "suivre" les différentes actions possibles sur votre API !
  
-Par exemple un `GET /login` appelle la fonction `index` de la classe `AuthController` et un `POST /login` appelle la fonction `login` de cette même classe ... +Par exemple un ''GET /login'' appelle la fonction ''index'' de la classe ''AuthController'' et un ''POST /login'' appelle la fonction ''login'' de cette même classe ... 
  
 ``` ```
Ligne 53: Ligne 54:
 ``` ```
  
-Et implémentez la fonction `logout` dans votre classe `AuthController` ... +Et implémentez la fonction ''logout'' dans votre classe ''AuthController'' ... 
  
 ``` ```
Ligne 67: Ligne 68:
 ``` ```
  
-Note: cette fonction est naturellement déjà implémentée nativement dans DoliMobile+Note: cette fonction est naturellement déjà implémentée nativement dans SmartMaker
SmarMaker - Documentation

Table of Contents


  • SmartMaker
    • SmartAuth
    • Back (PHP)
      • Mapping en détail
    • Front (React)
    • SmartCommon
    • HowTo first app
  • Formations
  • Démonstration
  • Afficher la page
  • Anciennes révisions
  • Liens de retour
  • Haut de page
  • S'identifier
back/start.1756888772.txt.gz · Dernière modification : 2025/09/03 08:39 de caprel