diff --git a/modules/ncenterlite/ncenterlite.controller.php b/modules/ncenterlite/ncenterlite.controller.php
index 74c31b733..abb77d4ff 100644
--- a/modules/ncenterlite/ncenterlite.controller.php
+++ b/modules/ncenterlite/ncenterlite.controller.php
@@ -872,18 +872,8 @@ class ncenterliteController extends ncenterlite
{
return;
}
-
- $notify_list = ncenterliteModel::getInstance()->getNotifyMemberSrlBySrl($obj->comment_srl);
-
- // 대댓글의 대댓글일 경우 혹은 중복적으로 받는 경우 comment_srl 당 2개이상 notify가 생성될 수 있다.
- $member_srls = array();
- foreach($notify_list as $value)
- {
- if(!in_array($value->member_srl, $member_srls))
- {
- $member_srls[] = $value->member_srl;
- }
- }
+
+ $member_srls = ncenterliteModel::getInstance()->getNotifyMemberSrlBySrl($obj->comment_srl);
$args = new stdClass();
$args->srl = $obj->comment_srl;
@@ -905,26 +895,11 @@ class ncenterliteController extends ncenterlite
return;
}
- $notify_list = ncenterliteModel::getInstance()->getNotifyMemberSrlBySrl($obj->document_srl);
-
- // 대댓글의 대댓글일 경우 혹은 중복적으로 받는 경우 comment_srl 당 2개이상 notify가 생성될 수 있다.
- $member_srls = array();
- foreach($notify_list as $value)
- {
- if(!in_array($value->member_srl, $member_srls))
- {
- $member_srls[] = $value->member_srl;
- }
- }
-
+ $member_srls = ncenterliteModel::getInstance()->getNotifyMemberSrlBySrl($obj->document_srl);
+
$args = new stdClass();
$args->srl = $obj->document_srl;
$output = executeQuery('ncenterlite.deleteNotifyBySrl', $args);
- if(!$output->toBool())
- {
- return $output;
- }
-
if($output->toBool())
{
foreach($member_srls as $member_srl)
diff --git a/modules/ncenterlite/ncenterlite.model.php b/modules/ncenterlite/ncenterlite.model.php
index ea457be21..4a4c14d81 100644
--- a/modules/ncenterlite/ncenterlite.model.php
+++ b/modules/ncenterlite/ncenterlite.model.php
@@ -754,22 +754,33 @@ class ncenterliteModel extends ncenterlite
return $output->data;
}
-
- function getNotifyMemberSrlBySrl($comment_srl)
+
+ /**
+ * 알림에서 member_srl 만 정리해서 보내준다.
+ * @param int $srl
+ * @return array
+ */
+ function getNotifyMemberSrlBySrl(int $srl) : array
{
- if(!$comment_srl === null)
+ if(!$srl)
{
- return false;
+ return [];
}
$args = new stdClass();
- $args->srl = $comment_srl;
+ $args->srl = $srl;
$output = executeQueryArray('ncenterlite.getNotifyMemberSrlBySrl', $args);
if(!$output->toBool())
{
- return $output;
+ return [];
+ }
+
+ $member_srls = array();
+ foreach($output->data ?? [] as $value)
+ {
+ $member_srls[] = $value->member_srl;
}
- return $output->data;
+ return $member_srls;
}
function getUserUnsubscribeConfigByUnsubscribeSrl($unsubscribe_srl = 0)
diff --git a/modules/ncenterlite/queries/getNotifyMemberSrlBySrl.xml b/modules/ncenterlite/queries/getNotifyMemberSrlBySrl.xml
index 7e2727799..95662dea6 100644
--- a/modules/ncenterlite/queries/getNotifyMemberSrlBySrl.xml
+++ b/modules/ncenterlite/queries/getNotifyMemberSrlBySrl.xml
@@ -9,4 +9,7 @@
+
+
+