UID de l'utilisateur * @id_machine UID de la machine * @id_action UID de l'action * @timestamp Timestamp de l'action * * @return id_history Renvoie l'UID de l'entree cree * Renvoie FALSE si une erreur occure * */ public static function create($id_user, $id_machine, $id_action, $timestamp){ /* [1] On retourne l'id_history ou FALSE si erreur =========================================================*/ $inserted = Table::get('history')->insert([ 'id_history' => Rows::INSERT_DEFAULT, 'id_user' => $id_user, 'id_machine' => $id_machine, 'id_action' => $id_action, 'timestamp' => $timestamp ]); // Si erreur d'insertion, erreur if( !$inserted ) return false; // Si pb d'unicité du code ou username (car sont uniques) ou autre /* [2] On récupère l'id_history =========================================================*/ $check_history = self::getByTimestamp($timestamp); // Si on trouve pas, erreur if( $check_history === false ) return false; // Sinon, on retourne son id return $check_history['id_history']; } /* SUPPRIME UNE ENTREE DONNEE * * @id_history UID de l'entreee * * @return status Retourne si oui ou non l'entree a bien ete supprimee * */ public static function delete($id_history){ /* [1] On redige/execute la requete =========================================================*/ $delete = Table::get('history') ->whereId($id_history); // On retourne l'état return $delete->delete(); } /* RETOURNE UNE ENTREE SPECIFIQUE * * @id_history UID de l'entree * * @return entry Données de l'entree * FALSE si aucun résultat * */ public static function getById($id_history){ /* [1] On rédige/execute la requête =========================================================*/ $user = Table::get('user') ->whereIdWarehouse($id_warehouse) ->whereIdUser($id_user) ->select('*') ->unique(); return $user->fetch(); } /* RETOURNE TOUT L'HISTORIQUE DE L'ENTREPOT * * @id_warehouse UID de l'entrepot * * @return entries Entrees de l'historique * */ public static function getAll($id_warehouse){ /* [1] On rédige/execute la requête =========================================================*/ $users = Table::get('user') ->whereIdWarehouse($id_warehouse) ->select('id_user') ->select('username', null, null, 'user_name') ->select('firstname', null, null, 'user_firstname') ->select('lastname', null, null, 'user_lastname'); $machines = Table::get('machine') ->whereIdWarehouse($id_warehouse) ->select('id_machine') ->select('name', null, null, 'machine_name'); $actions = Table::get('action') ->select('id_action') ->select('name', null, null, 'action_name'); $history = Table::get('history') ->join('id_user', $users) ->join('id_machine', $machines) ->join('id_action', $actions) ->select('id_history') ->select('timestamp') ->orderby('timestamp', Rows::ORDER_ASC); return $history->fetch(); } } ?>