From 77ba40578fb1d09b973433e01cda07ff00a761cf Mon Sep 17 00:00:00 2001
From: raja <rafaelraja.sitorus@gmail.com>
Date: Fri, 28 Mar 2025 21:29:51 +0800
Subject: [PATCH] Edit Product service methods to call notify after
 create/delete.

---
 src/repository/product.rs | 2 ++
 src/service/product.rs    | 4 ++++
 2 files changed, 6 insertions(+)

diff --git a/src/repository/product.rs b/src/repository/product.rs
index bfe55c2..5de1572 100644
--- a/src/repository/product.rs
+++ b/src/repository/product.rs
@@ -36,4 +36,6 @@ impl ProductRepository {
         }
         return None;
     }
+
+
 }
diff --git a/src/service/product.rs b/src/service/product.rs
index 64261da..3eecc37 100644
--- a/src/service/product.rs
+++ b/src/service/product.rs
@@ -4,6 +4,7 @@ use rocket::serde::json::Json;
 use bambangshop::{Result, compose_error_response};
 use crate::model::product::Product;
 use crate::repository::product::ProductRepository;
+use crate::service::notification::NotificationService;
 
 pub struct ProductService;
 
@@ -12,6 +13,8 @@ impl ProductService {
         product.product_type = product.product_type.to_uppercase();
         let product_result: Product = ProductRepository::add(product);
 
+        NotificationService.notify(&product_result.product_type, "CREATED",
+            product_result.clone());
         return Ok(product_result);
     }
 
@@ -40,6 +43,7 @@ impl ProductService {
         }
         let product: Product = product_opt.unwrap();
 
+        NotificationService::notify(&product.product_type, "DELETED", product.clone());
         return Ok(Json::from(product));
     }
 
-- 
GitLab