From 9fc5a33d610c27fc22b1387f70ce3c7050534bc8 Mon Sep 17 00:00:00 2001 From: vadivelJ96 Date: Thu, 21 Aug 2025 11:19:06 +0530 Subject: [PATCH] CHANGE UI LEVEL FIXES - VADIVEL J 2025-08-21 --- app/Controllers/ThzController.php | 53 +++++++++++++++++++++++-------- 1 file changed, 40 insertions(+), 13 deletions(-) diff --git a/app/Controllers/ThzController.php b/app/Controllers/ThzController.php index 564cde2a..123c06da 100644 --- a/app/Controllers/ThzController.php +++ b/app/Controllers/ThzController.php @@ -114,10 +114,13 @@ class ThzController extends BaseController return $this->response->setJSON((['status' => 'error', 'message' => 'No tickets found']))->setStatusCode(404); } + $emailNotificationResult = $this->ticketConversationSaveNotification($data); + return $this->response->setJSON([ 'status' => $result ? 'success' : 'error', - 'message' => $result ? "Ticket Notes created successfully" : "Unable to create ticket notes. Please try again." + 'message' => $result ? "Ticket Notes created successfully" : "Unable to create ticket notes. Please try again." , + 'notification' => $emailNotificationResult ? 'Email Notification Success..!!' : 'Email Notification Failed..!!' ])->setStatusCode($result ? 200 : 400); } @@ -179,10 +182,6 @@ class ThzController extends BaseController } - public function ticketConversationSaveNotification($data){ - - } - public function ticketAssigning(){ $returnType = strtolower($this->request->getGet('return_type') ?? 'api'); @@ -275,6 +274,32 @@ class ThzController extends BaseController } + private function ticketConversationSaveNotification($data){ + + $thz_id = $data['thz_id'] ; + + $user_email = $data['email'] ?? ''; + + $assignee_email = $this->findAssigneeEmail($data['assign_to']) ?? ''; + + $sender_mail = $data['notes_by'] == "User" ? $user_email : $assignee_email ; + $receiver_mail = $data['notes_by'] == "User" ? $assignee_email : $user_email ; + + $templateName = "ticket_conversation_save_notification"; + + $to_email = $receiver_mail; + + $ticketId = $thz_id; + + $message = $data['notes'] ?? ''; + + $this->sendEmail( $templateName, $data , $to_email , $ticketId , $message); + + return true; + + } + + private function findAssigneeEmail($assignee_id){ $row = $this->userModel->where('id', $assignee_id)->get()->getRow(); @@ -361,25 +386,27 @@ class ThzController extends BaseController } - private function sendEmail( $templateName, $data , $to_email , $ticketId){ + private function sendEmail( $templateName, $data , $to_email , $ticketId , $message = ""){ - $mail = $this->ticketMailTemplateModel->where('template_name',$templateName )->findAll()[0] ?? []; + $mailTemplate = $this->ticketMailTemplateModel->where('template_name',$templateName )->findAll()[0] ?? []; - if(empty($mail)){ + if(empty($mailTemplate)){ return ; } - $mail['subject'] = str_replace('%subject%', $data['subject'] ?? '', $mail['subject']); + $mailTemplate['subject'] = str_replace('%subject%', $data['subject'] ?? '', $mailTemplate['subject']); - $mail['mail_content'] = str_replace('%subject%', $data['subject'] ?? '', $mail['mail_content']); + $mailTemplate['mail_content'] = str_replace('%subject%', $data['subject'] ?? '', $mailTemplate['mail_content']); - $mail['mail_content'] = str_replace('%ticketId%', $ticketId ?? '', $mail['mail_content']); + $mailTemplate['mail_content'] = str_replace('%ticketId%', $ticketId ?? '', $mailTemplate['mail_content']); + + $mailTemplate['mail_content'] = str_replace('%message%', $message ?? '', $mailTemplate['mail_content']); $from_mail = ""; $to_mail = $to_email; $cc_string = ""; - $subject = $mail['subject'] ; - $message = $mail['mail_content'] ; + $subject = $mailTemplate['subject'] ; + $message = $mailTemplate['mail_content'] ; $attachments = ""; $reply_to = ""; $bcc_string = "";