get('user'); if ($users["group_name"] === "Conseil") { try { $session = session(); $users = $session->get('user'); $users = session()->get('user_data'); if($users['group_name'] === "Direction"){ return $this ->where('demande_status', 'En attente') ->orderBy('date_demande', 'DESC') ->findAll(); } return $this->where('demande_status', 'En attente') ->orderBy('date_demande', 'DESC') ->findAll(); } catch (\Exception $e) { log_message('error', 'Erreur lors de la récupération des demandes du jour : ' . $e->getMessage()); return []; } } try { $session = session(); $users = $session->get('user'); return $this ->where('id_store',$users['store_id']) ->orderBy('date_demande', 'DESC') ->findAll(); } catch (\Exception $e) { log_message('error', 'Erreur lors de la récupération des demandes du jour : ' . $e->getMessage()); return []; } } public function addDemande( array $data) { try { return $this->insert($data); } catch (\Exception $e) { log_message('error', 'Erreur lors de l\'ajout de la demande de remise : ' . $e->getMessage()); return false; } } public function getRemiseData1(int $remise_id){ return $this->select('montant_demande','id_order') ->where('id_demande',$remise_id) ->first(); } public function updateRemise( $id,$data) { if ($id <= 0) { log_message('error', 'ID invalide pour la mise à jour du recouvrement : ' . $id); return false; } try { // Essayer de mettre à jour les données return $this->update($id, $data); if ($data['demande_status'] == 'accepte') { $Order = new Orders(); $remise_data = $this->getRemiseData1($id); $montant_demande = $remise_data->montant_demande; $order_id = $remise_data->id_order; $data1 = [ 'net_amount' => $montant_demande, 'gross_amount' => $montant_demande ]; $data2 = [ 'rate' => $montant_demande, 'amount' => $montant_demande ]; $Order->update1($order_id, $data1,$data2); } } catch (\Exception $e) { // En cas d'exception, loguer l'erreur log_message('error', 'Erreur lors de la mise à jour du recouvrement : ' . $e->getMessage()); return false; } } public function getProductByDemandeId(int $id_demande): ?string { $row = $this ->select('product') ->where('id_order', $id_demande) ->first(); return $row['product'] ?? null; } public function updateRemise1(int $id,$data) { $existing = $this->where('id_order', $id)->first(); if ($existing) { // Mise à jour $this->update($existing['id_demande'], $data); return "Remise mise à jour avec succès."; } else { // Création $this->insert($data); return "Nouvelle remise créée avec succès."; } } }