function __construct(string $id_type, string $id_obje, $contexte = "", $handleGlobalEvent = null) {
global $user;
$this->id_type = $id_type;
$this->id_objet = $id_obje;
// Rollbar monitoring.
$this->monitoringHandler = new RollbarMonitoringHandler((int)$id_obje);
try {
// Initialisation du document source :
$this->document = fwc7_data_objet_att('', $this->id_type, $this->id_objet);
// Récupération des constantes tel que :
// - civilités
$this->civilites = fwc7_data_liste_valeurs('', '2', 'value', array('label'));
// Initialisation des modules codes lié à l'objet type
$this->setModuleCodes();
$att_id_user = $this->module_codes['id_user'];
// ... (truncated)
🔧 __construct
function __construct(string $id_type, string $id_obje, $contexte = "", $handleGlobalEvent = null) {
global $user;
$this->id_type = $id_type;
$this->id_objet = $id_obje;
// Rollbar monitoring.
$this->monitoringHandler = new RollbarMonitoringHandler((int)$id_obje);
try {
// Initialisation du document source :
$this->document = fwc7_data_objet_att('', $this->id_type, $this->id_objet);
// Récupération des constantes tel que :
// - civilités
$this->civilites = fwc7_data_liste_valeurs('', '2', 'value', array('label'));
// Initialisation des modules codes lié à l'objet type
$this->setModuleCodes();
$att_id_user = $this->module_codes['id_user'];
// ... (truncated)
🔧 __construct
function __construct(string $id_type, string $id_obje, $contexte = "", $handleGlobalEvent = null) {
global $user;
$this->id_type = $id_type;
$this->id_objet = $id_obje;
// Rollbar monitoring.
$this->monitoringHandler = new RollbarMonitoringHandler((int)$id_obje);
try {
// Initialisation du document source :
$this->document = fwc7_data_objet_att('', $this->id_type, $this->id_objet);
// Récupération des constantes tel que :
// - civilités
$this->civilites = fwc7_data_liste_valeurs('', '2', 'value', array('label'));
// Initialisation des modules codes lié à l'objet type
$this->setModuleCodes();
$att_id_user = $this->module_codes['id_user'];
// ... (truncated)
🔧 __construct
function __construct(string $id_type, string $id_obje, $contexte = "", $handleGlobalEvent = null) {
global $user;
$this->id_type = $id_type;
$this->id_objet = $id_obje;
// Rollbar monitoring.
$this->monitoringHandler = new RollbarMonitoringHandler((int)$id_obje);
try {
// Initialisation du document source :
$this->document = fwc7_data_objet_att('', $this->id_type, $this->id_objet);
// Récupération des constantes tel que :
// - civilités
$this->civilites = fwc7_data_liste_valeurs('', '2', 'value', array('label'));
// Initialisation des modules codes lié à l'objet type
$this->setModuleCodes();
$att_id_user = $this->module_codes['id_user'];
// ... (truncated)
🔧 __construct
function __construct(string $id_type, string $id_obje, $contexte = "", $handleGlobalEvent = null) {
global $user;
$this->id_type = $id_type;
$this->id_objet = $id_obje;
// Rollbar monitoring.
$this->monitoringHandler = new RollbarMonitoringHandler((int)$id_obje);
try {
// Initialisation du document source :
$this->document = fwc7_data_objet_att('', $this->id_type, $this->id_objet);
// Récupération des constantes tel que :
// - civilités
$this->civilites = fwc7_data_liste_valeurs('', '2', 'value', array('label'));
// Initialisation des modules codes lié à l'objet type
$this->setModuleCodes();
$att_id_user = $this->module_codes['id_user'];
// ... (truncated)
🔧 __construct
function __construct(string $id_type, string $id_obje, $contexte = "", $handleGlobalEvent = null) {
global $user;
$this->id_type = $id_type;
$this->id_objet = $id_obje;
// Rollbar monitoring.
$this->monitoringHandler = new RollbarMonitoringHandler((int)$id_obje);
try {
// Initialisation du document source :
$this->document = fwc7_data_objet_att('', $this->id_type, $this->id_objet);
// Récupération des constantes tel que :
// - civilités
$this->civilites = fwc7_data_liste_valeurs('', '2', 'value', array('label'));
// Initialisation des modules codes lié à l'objet type
$this->setModuleCodes();
$att_id_user = $this->module_codes['id_user'];
// ... (truncated)
🔧 __construct
function __construct(string $id_type, string $id_obje, $contexte = "", $handleGlobalEvent = null) {
global $user;
$this->id_type = $id_type;
$this->id_objet = $id_obje;
// Rollbar monitoring.
$this->monitoringHandler = new RollbarMonitoringHandler((int)$id_obje);
try {
// Initialisation du document source :
$this->document = fwc7_data_objet_att('', $this->id_type, $this->id_objet);
// Récupération des constantes tel que :
// - civilités
$this->civilites = fwc7_data_liste_valeurs('', '2', 'value', array('label'));
// Initialisation des modules codes lié à l'objet type
$this->setModuleCodes();
$att_id_user = $this->module_codes['id_user'];
// ... (truncated)
🔧 __construct
function __construct(string $id_type, string $id_obje, $contexte = "", $handleGlobalEvent = null) {
global $user;
$this->id_type = $id_type;
$this->id_objet = $id_obje;
// Rollbar monitoring.
$this->monitoringHandler = new RollbarMonitoringHandler((int)$id_obje);
try {
// Initialisation du document source :
$this->document = fwc7_data_objet_att('', $this->id_type, $this->id_objet);
// Récupération des constantes tel que :
// - civilités
$this->civilites = fwc7_data_liste_valeurs('', '2', 'value', array('label'));
// Initialisation des modules codes lié à l'objet type
$this->setModuleCodes();
$att_id_user = $this->module_codes['id_user'];
// ... (truncated)
🔧 __construct
function __construct(string $id_type, string $id_obje, $contexte = "", $handleGlobalEvent = null) {
global $user;
$this->id_type = $id_type;
$this->id_objet = $id_obje;
// Rollbar monitoring.
$this->monitoringHandler = new RollbarMonitoringHandler((int)$id_obje);
try {
// Initialisation du document source :
$this->document = fwc7_data_objet_att('', $this->id_type, $this->id_objet);
// Récupération des constantes tel que :
// - civilités
$this->civilites = fwc7_data_liste_valeurs('', '2', 'value', array('label'));
// Initialisation des modules codes lié à l'objet type
$this->setModuleCodes();
$att_id_user = $this->module_codes['id_user'];
// ... (truncated)
🔧 __construct
function __construct(string $id_type, string $id_obje, $contexte = "", $handleGlobalEvent = null) {
global $user;
$this->id_type = $id_type;
$this->id_objet = $id_obje;
// Rollbar monitoring.
$this->monitoringHandler = new RollbarMonitoringHandler((int)$id_obje);
try {
// Initialisation du document source :
$this->document = fwc7_data_objet_att('', $this->id_type, $this->id_objet);
// Récupération des constantes tel que :
// - civilités
$this->civilites = fwc7_data_liste_valeurs('', '2', 'value', array('label'));
// Initialisation des modules codes lié à l'objet type
$this->setModuleCodes();
$att_id_user = $this->module_codes['id_user'];
// ... (truncated)
🔧 __construct
function __construct(string $id_type, string $id_obje, $contexte = "", $handleGlobalEvent = null) {
global $user;
$this->id_type = $id_type;
$this->id_objet = $id_obje;
// Rollbar monitoring.
$this->monitoringHandler = new RollbarMonitoringHandler((int)$id_obje);
try {
// Initialisation du document source :
$this->document = fwc7_data_objet_att('', $this->id_type, $this->id_objet);
// Récupération des constantes tel que :
// - civilités
$this->civilites = fwc7_data_liste_valeurs('', '2', 'value', array('label'));
// Initialisation des modules codes lié à l'objet type
$this->setModuleCodes();
$att_id_user = $this->module_codes['id_user'];
// ... (truncated)
🔧 __construct
Constructor
function __construct(string $id_type, string $id_obje, $contexte = "", $handleGlobalEvent = null) {
global $user;
$this->id_type = $id_type;
$this->id_objet = $id_obje;
// Rollbar monitoring.
$this->monitoringHandler = new RollbarMonitoringHandler((int)$id_obje);
try {
// Initialisation du document source :
$this->document = fwc7_data_objet_att('', $this->id_type, $this->id_objet);
// Récupération des constantes tel que :
// - civilités
$this->civilites = fwc7_data_liste_valeurs('', '2', 'value', array('label'));
// Initialisation des modules codes lié à l'objet type
$this->setModuleCodes();
$att_id_user = $this->module_codes['id_user'];
// ... (truncated)
⚙️ Parameters
$id_type(string) Type ID
$id_obje(string) Object ID
$contexte(mixed) Optional context
🔧 initialize
Initialize the document
function initialize($contexte,$handleGlobalEvent);
/**
* Get user identification
* @param string $user_id User ID
* @param string $id_checker Checker ID
* @param callable $identificationFunction Function to calculate rights
* @param mixed|null $this_id_type Optional ID type parameter
* @param bool $all_franchise_documents Optional parameter for documents
* @return array User identification information
*/
public function getUserIdentification(
string $user_id,
string $id_checker,
callable $identificationFunction,
$this_id_type = null,
bool $all_franchise_documents = false
): array {
return $identificationFunction($user_id, $id_checker, $this_id_type, $all_franchise_documents);
}
application de la tva dans le cas de l'ajout d'une ligne de produit, en fonction du paramètre d'environnement renseigné : replication_taux_tva_ligne_de_produit et de la tva renseigné dans la première ligne. cette réplication tva dois se lance uniquement à la premier création de ligne elle vient override les calculs. peristence en base donnée également. TODO:LG --- faire en sore que utilisable pour facture
function setReplicationTVA(array $eventHandler): ?string
{
$currentLine_id = $eventHandler['this_lig_id'];
$first_line = null;
foreach ($this->lignesDeProduit as $arrayKey => $subArray) {
if (isset($subArray['ordre']) && $subArray['ordre'] == '1') {
$first_line= $subArray;
break;
}
}
// dans le cas de la saise d'une premiere ligne, on fait rien et dans le cas d'un création de lig on fait
if ((int)$first_line['id_lig'] !== (int)$currentLine_id && $this->optionTVA == 1 && ($eventHandler['isCreateLig'] || $eventHandler['isProduct_hasChanged'])) {
// ... (truncated)
↩️ Returns
(void)
🔧 loadProductLines
Récupérer les lignes de documents (ligne de produits, devis, factures, stocks)
Renvoie les lignes récupérés à la création de la classe.
function getProductLines($forceReload = false): array
{
if($forceReload){
// si force reload == True alors on vient forcer la récupération des lignes de Devis.
return $this->loadProductLines();
} else {
return $this->lignesDeProduit;
}
}
↩️ Returns
(array)
🔧 upsertDocumentLine
Create a new document line
function upsertDocumentLine(string $id_lig, array $eventHandler): ?array {
// construire le tableau à renvoyer.
// need to update totals when creating a document line
return Array();
}
⚙️ Parameters
$lineData(array) Line data
↩️ Returns
(IDocumentLineProvider) Document line object
🔧 calculateDocumentTotals
Calculate document totals depuis ligne de document de type lineItem_callback
$lineItems(array) Array of lineItem_callback outputs
↩️ Returns
(array) Document totals
⚠️ Throws
Exception:
🔧 submitTotals
Save calculated totals to the database
function submitTotals(?array $totals = null, ?array $additionnal_updates = null): bool {
try {
$datas = [];
foreach ($this->getFieldsToSum() as $key => $item) {
$datas[$this->module_codes[$key]] = $totals[$item];
}
// si on ajout des atts a modifier ici on les ajout à la update sql request.
// attention ils ont la forme dun tableau avec des att en dur like array(1) { ["att2"]=> string(3) "519" }
if(isset($additionnal_updates) && count($additionnal_updates) > 0){
$datas = array_merge($datas, $additionnal_updates[0]);
}
//document_calcul_euro_ttc_discount
fwc7_modify_att_edit('', $this->id_type, $this->id_objet, $datas, '', 'mise à jour des totaux','','');
// ... (truncated)