52 $this->family =
"crm";
53 $this->module_position =
'41';
55 $this->
name = preg_replace(
'/^mod/i',
'', get_class($this));
56 $this->
description =
"Gestion des fiches d'intervention";
59 $this->version =
'dolibarr';
61 $this->const_name =
'MAIN_MODULE_'.strtoupper($this->
name);
62 $this->picto =
"intervention";
65 $this->dirs = array(
"/ficheinter/temp");
68 $this->depends = array(
"modSociete");
69 $this->requiredby = array();
70 $this->conflictwith = array();
71 $this->langfiles = array(
"bills",
"companies",
"interventions");
74 $this->config_page_url = array(
"fichinter.php");
77 $this->
const = array();
80 if (!isset($conf->ficheinter) || !isset($conf->ficheinter->enabled)) {
81 $conf->ficheinter =
new stdClass();
82 $conf->ficheinter->enabled = 0;
85 $this->
const[$r][0] =
"FICHEINTER_ADDON_PDF";
86 $this->
const[$r][1] =
"chaine";
87 $this->
const[$r][2] =
"soleil";
90 $this->
const[$r][0] =
"FICHEINTER_ADDON";
91 $this->
const[$r][1] =
"chaine";
92 $this->
const[$r][2] =
"pacific";
96 $this->boxes = array(0=>array(
'file'=>
'box_ficheinter.php',
'enabledbydefaulton'=>
'Home'));
99 $this->rights = array();
100 $this->rights_class =
'ficheinter';
104 $this->rights[$r][0] = 61;
105 $this->rights[$r][1] =
'Lire les fiches d\'intervention';
106 $this->rights[$r][2] =
'r';
107 $this->rights[$r][3] = 0;
108 $this->rights[$r][4] =
'lire';
111 $this->rights[$r][0] = 62;
112 $this->rights[$r][1] =
'Creer/modifier les fiches d\'intervention';
113 $this->rights[$r][2] =
'w';
114 $this->rights[$r][3] = 0;
115 $this->rights[$r][4] =
'creer';
118 $this->rights[$r][0] = 64;
119 $this->rights[$r][1] =
'Supprimer les fiches d\'intervention';
120 $this->rights[$r][2] =
'd';
121 $this->rights[$r][3] = 0;
122 $this->rights[$r][4] =
'supprimer';
125 $this->rights[$r][0] = 67;
126 $this->rights[$r][1] =
'Exporter les fiches interventions';
127 $this->rights[$r][2] =
'r';
128 $this->rights[$r][3] = 0;
129 $this->rights[$r][4] =
'export';
132 $this->rights[$r][0] = 68;
133 $this->rights[$r][1] =
'Envoyer les fiches d\'intervention par courriel';
134 $this->rights[$r][2] =
'r';
135 $this->rights[$r][3] = 0;
136 $this->rights[$r][4] =
'ficheinter_advance';
137 $this->rights[$r][5] =
'send';
140 $this->rights[$r][0] = 69;
141 $this->rights[$r][1] =
'Valider les fiches d\'intervention ';
142 $this->rights[$r][2] =
'a';
143 $this->rights[$r][3] = 0;
144 $this->rights[$r][4] =
'ficheinter_advance';
145 $this->rights[$r][5] =
'validate';
148 $this->rights[$r][0] = 70;
149 $this->rights[$r][1] =
'Dévalider les fiches d\'intervention';
150 $this->rights[$r][2] =
'a';
151 $this->rights[$r][3] = 0;
152 $this->rights[$r][4] =
'ficheinter_advance';
153 $this->rights[$r][5] =
'unvalidate';
165 $this->export_code[$r] = $this->rights_class.
'_'.$r;
166 $this->export_label[$r] =
'InterventionCardsAndInterventionLines';
167 $this->export_permission[$r] = array(array(
"ficheinter",
"export"));
168 $this->export_fields_array[$r] = array(
169 's.rowid'=>
"IdCompany",
's.nom'=>
'CompanyName',
's.address'=>
'Address',
's.zip'=>
'Zip',
's.town'=>
'Town',
's.fk_pays'=>
'Country',
's.phone'=>
'Phone',
170 's.siren'=>
'ProfId1',
's.siret'=>
'ProfId2',
's.ape'=>
'ProfId3',
's.idprof4'=>
'ProfId4',
's.code_compta'=>
'CustomerAccountancyCode',
171 's.code_compta_fournisseur'=>
'SupplierAccountancyCode',
'f.rowid'=>
"InterId",
'f.ref'=>
"InterRef",
'f.datec'=>
"InterDateCreation",
172 'f.duree'=>
"InterDuration",
'f.fk_statut'=>
'InterStatus',
'f.description'=>
"InterNote");
173 $keyforselect =
'fichinter';
174 $keyforelement =
'intervention';
175 $keyforaliasextra =
'extra';
176 include DOL_DOCUMENT_ROOT.
'/core/extrafieldsinexport.inc.php';
177 $this->export_fields_array[$r] += array(
178 'pj.ref'=>
'ProjectRef',
'pj.title'=>
'ProjectLabel',
179 'fd.rowid'=>
'InterLineId',
180 'fd.date'=>
"InterLineDate",
'fd.duree'=>
"InterLineDuration",
'fd.description'=>
"InterLineDesc"
182 $this->export_TypeFields_array[$r] = array(
183 's.rowid'=>
"Numeric",
's.nom'=>
'Text',
's.address'=>
'Text',
's.zip'=>
'Text',
's.town'=>
'Text',
's.fk_pays'=>
'List:c_country:label',
's.phone'=>
'Text',
's.siren'=>
'Text',
184 's.siret'=>
'Text',
's.ape'=>
'Text',
's.idprof4'=>
'Text',
's.code_compta'=>
'Text',
's.code_compta_fournisseur'=>
'Text',
185 'f.rowid'=>
'Numeric',
'f.ref'=>
"Text",
'f.datec'=>
"Date",
186 'f.duree'=>
"Duree",
'f.fk_statut'=>
'Numeric',
'f.description'=>
"Text",
'f.datee'=>
"Date",
'f.dateo'=>
"Date",
'f.fulldayevent'=>
"Text",
187 'pj.ref'=>
'Text',
'pj.title'=>
'Text',
188 'fd.rowid'=>
"Numeric",
'fd.date'=>
"Date",
'fd.duree'=>
"Duree",
'fd.description'=>
"Text",
'fd.total_ht'=>
"Numeric"
190 $this->export_entities_array[$r] = array(
191 's.rowid'=>
"company",
's.nom'=>
'company',
's.address'=>
'company',
's.zip'=>
'company',
's.town'=>
'company',
's.fk_pays'=>
'company',
's.phone'=>
'company',
192 's.siren'=>
'company',
's.siret'=>
'company',
's.ape'=>
'company',
's.idprof4'=>
'company',
's.code_compta'=>
'company',
193 's.code_compta_fournisseur'=>
'company',
'f.rowid'=>
"intervention",
'f.ref'=>
"intervention",
'f.datec'=>
"intervention",
'f.duree'=>
"intervention",
194 'f.fk_statut'=>
"intervention",
'f.description'=>
"intervention",
'pj.ref'=>
'project',
'pj.title'=>
'project',
'fd.rowid'=>
"inter_line",
'fd.date'=>
"inter_line",
195 'fd.duree'=>
'inter_line',
'fd.description'=>
'inter_line'
197 $this->export_dependencies_array[$r] = array(
'inter_line'=>
'fd.rowid');
198 $keyforselect =
'fichinterdet';
199 $keyforelement =
'inter_line';
200 $keyforaliasextra =
'extradet';
201 include DOL_DOCUMENT_ROOT.
'/core/extrafieldsinexport.inc.php';
203 $this->export_sql_start[$r] =
'SELECT DISTINCT ';
204 $this->export_sql_end[$r] =
' FROM '.MAIN_DB_PREFIX.
'fichinter as f';
205 $this->export_sql_end[$r] .=
' LEFT JOIN '.MAIN_DB_PREFIX.
'fichinter_extrafields as extra ON f.rowid = extra.fk_object';
206 $this->export_sql_end[$r] .=
' LEFT JOIN '.MAIN_DB_PREFIX.
'projet as pj ON f.fk_projet = pj.rowid';
207 $this->export_sql_end[$r] .=
' LEFT JOIN '.MAIN_DB_PREFIX.
'fichinterdet as fd ON f.rowid = fd.fk_fichinter';
208 $this->export_sql_end[$r] .=
' LEFT JOIN '.MAIN_DB_PREFIX.
'fichinterdet_extrafields as extradet ON fd.rowid = extradet.fk_object,';
209 $this->export_sql_end[$r] .=
' '.MAIN_DB_PREFIX.
'societe as s';
210 $this->export_sql_end[$r] .=
' WHERE f.fk_soc = s.rowid';
211 $this->export_sql_end[$r] .=
' AND f.entity IN ('.getEntity(
'intervention').
')';